diff --git a/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.cpp b/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.cpp
index a917988753b95cb2a26db42c572d4701b8bfa566..99634ffd7536ad54c7838accf91eab618614a7f7 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.cpp
@@ -1,366 +1,366 @@
-/** 
-
-    @file idc.cpp 
-    
-    IDC interface - minimal socket interface to the DAE
-    
-    @author Freddie Akeroyd, STFC ISIS Facility
-    @date 31/07/2008
-
-    Copyright © 2007-8 STFC Rutherford Appleton Laboratory
-
-    This file is part of ISIS Instrument control program.
-    you can redistribute it and/or modify it under the terms of the 
-    GNU General Public License
-*/
-
-#include <stdio.h>
-#include <stdlib.h>
-#include <string.h>
-#include <stdarg.h>
-#include "idc.h"
-#include "isisds_command.h"
-
-///@cond nodoc
-/** used to keep status information about the DAE connection */
-struct idc_info
-{
-	SOCKET s; ///< The socket
-};
-
-/** default function used by IDCreport() - changed by calling IDCsetreportfunc() */
-static void default_status_reporter(int status, int code, const char* message)
-{
-	printf("IDC: %d %d %s\n", status, code, message);
-}
-
-/** pointer to current IDC error reporing function */
-static idc_error_report_t status_reporter = default_status_reporter;
-
-/** report an error */
-int IDCreport(int status, int code, const char* format, ... )
-{
-	va_list ap;
-	char* message = (char*)malloc(1024);
-	va_start(ap, format);
-	vsprintf(message, format, ap);
-	va_end(ap);
-    (*status_reporter)(status, code, message);
-	free(message);
-	return 0;
-}
-
-/** change the error report function */
-int IDCsetreportfunc(idc_error_report_t report_func)
-{
-	status_reporter = report_func;
-	return 0;
-}
-
-/** returns 0 on success, -1 on failure */
-int IDCopen(const char* host, int mode, int options, idc_handle_t* pfh)
-{
-  (void) mode; // Avoid compiler warning
-  (void) options; // Avoid compiler warning
-
-	SOCKET s;
-	*pfh = NULL;
-	s = isisds_send_open(host, ISISDSDAEAccess);
-	if (s == INVALID_SOCKET)
-	{
-		IDCreport(0, 0, "Error accessing DAE");
-		return -1;
-	}
-	(*pfh) = (struct idc_info*)malloc(sizeof(struct idc_info));
-	(*pfh)->s = s;
-	return 0;
-}
- ///Close the IDC
-int IDCclose(idc_handle_t* pfh)
-{
-	isisds_send_close((*pfh)->s);
-	free((*pfh));
-	*pfh = NULL;
-	return 0;
-}
-
-/** main worker routine for all data reading. Returns 0 on success, -1 on error */
-static int getdat(idc_handle_t fh, int ifsn, int nos, int** value, int dims_array[], int* ndims, int do_alloc)
-{
-	int stat, comm_buff_size;
-	ISISDSDataType ret_type;
-	int spec_nos[2] = { ifsn, nos };
-	int spec_nos_dims[1] = { 2 };
-	char* command = NULL;
-	char comm_buffer[256];
-	if (isisds_send_command(fh->s, "GETDAT", spec_nos, ISISDSInt32, spec_nos_dims, 1) <= 0)
-	{
-		IDCreport(0, 0, "error sending command (getdat)");
-		return -1;
-	};
-        ret_type = ISISDSInt32;
-	if (do_alloc)
-	{
-		stat = isisds_recv_command_alloc(fh->s, &command, (void**)value, &ret_type, dims_array, ndims);
-	}
-	else
-	{
-		comm_buff_size = sizeof(comm_buffer);
-		stat = isisds_recv_command(fh->s, comm_buffer, &comm_buff_size, *value, &ret_type, dims_array, ndims);
-	}
-	if (stat <= 0)
-	{
-		IDCreport(0, 0, "error reading command (getdat)");
-		return -1;
-	}
-	if (ret_type != ISISDSInt32)
-	{
-		IDCreport(0, 0, "invalid return type command (getdat)");
-		return -1;
-	}
-/*	IDCreport(0, 0, "type %s\n", isisds_type_name[ret_type]); */
-	return 0;
-}
-
-int IDCgetdat(idc_handle_t fh, int ifsn, int nos, int* value, int dims_array[], int* ndims)
-{
-	return getdat(fh, ifsn, nos, &value, dims_array, ndims, 0);
-}
-
-int IDCAgetdat(idc_handle_t fh, int ifsn, int nos, int** value, int dims_array[], int* ndims)
-{
-	return getdat(fh, ifsn, nos, value, dims_array, ndims, 1);
-}
-
-
-///Get a parameter
-static int IDCgetpar(idc_handle_t fh, const char* name, void** value, ISISDSDataType type,
-					 int dims_array[], int* ndims, int do_alloc)
-{
-	int n, stat, comm_buff_size;
-	ISISDSDataType ret_type;
-	char* command = NULL;
-	char comm_buffer[256];
-	sprintf(comm_buffer, "GETPAR%s", isisds_type_code[type]);
-	n = strlen(name);
-	if (isisds_send_command(fh->s, comm_buffer, name, ISISDSChar, &n, 1) <= 0)
-	{
-		IDCreport(0, 0, "error sending command %s (getpar)", name);
-		return -1;
-	};
-	ret_type = type;
-	if (do_alloc)
-	{
-		stat = isisds_recv_command_alloc(fh->s, &command, value, &ret_type, dims_array, ndims);
-	}
-	else
-	{
-		comm_buff_size = sizeof(comm_buffer);
-		stat = isisds_recv_command(fh->s, comm_buffer, &comm_buff_size, *value, &ret_type, dims_array, ndims);
-	}
-	if (stat <= 0)
-	{
-		IDCreport(0, 0, "error receiving command %s (getpar)", name);
-		return -1;
-	}
-/*	IDCreport(0, 0, "type %s\n", isisds_type_name[ret_type]); */
-	if (ret_type != type)
-	{
-	    return -1;
-	}
-	return 0;
-}
-
-///Get a parameter
-int IDCAgetpari(idc_handle_t fh, const char* name, int** value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSInt32;
-	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
-	return stat;
-}
-
-///Get a parameter
-int IDCgetpari(idc_handle_t fh, const char* name, int* value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSInt32;
-	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
-	return stat;
-}
-
-///Get a parameter
-int IDCgetparr(idc_handle_t fh, const char* name, float* value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSReal32;
-	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
-	return stat;
-}
-
-///Get a parameter
-int IDCAgetparr(idc_handle_t fh, const char* name, float** value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSReal32;
-	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
-	return stat;
-}
-
-///Get a parameter
-int IDCgetpard(idc_handle_t fh, const char* name, double* value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSReal64;
-	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
-	return stat;
-}
-
-///Get a parameter
-int IDCAgetpard(idc_handle_t fh, const char* name, double** value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSReal64;
-	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
-	return stat;
-}
-
-///Get a parameter
-int IDCgetparc(idc_handle_t fh, const char* name, char* value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSChar;
-	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
-	return stat;
-}
-
-///Get a parameter
-int IDCAgetparc(idc_handle_t fh, const char* name, char** value, int dims_array[], int* ndims)
-{
-	int stat;
-	ISISDSDataType type = ISISDSChar;
-	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
-	return stat;
-}
-
-
-#ifdef _WIN32
-void __stdcall IDCFOPEN(const char* host, unsigned len_host, int* mode, int* options, int fh[], int* errcode)
-#else
-void idcfopen_(const char* host, int* mode, int* options, int fh[], int* errcode, unsigned len_host)
-#endif
-{
-	int stat;
-	idc_handle_t tfh;
-	char t_host[256];
-	strncpy(t_host, host, len_host);
-	t_host[len_host] = '\0';
-	stat = IDCopen(t_host, *mode, *options, &tfh);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-#ifdef _WIN32
-void __stdcall IDCFCLOSE(int fh[], int* errcode)
-#else
-void idcfclose_(int fh[], int* errcode)
-#endif
-{
-	int stat;
-	idc_handle_t tfh;
-	memcpy(&tfh, fh, sizeof(idc_handle_t));
-	stat = IDCclose(&tfh);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-#ifdef _WIN32
-void __stdcall IDCFGETPARI(int fh[], const char* name, unsigned len_name, int value[], int dims_array[], int* ndims,  int* errcode)
-#else
-void idcfgetpari_(int fh[], const char* name, int value[], int dims_array[], int* ndims,  int* errcode, unsigned len_name)
-#endif
-{
-	int stat;
-	char t_name[256];
-	idc_handle_t tfh;
-	strncpy(t_name, name, len_name);
-	t_name[len_name] = '\0';
-	memcpy(&tfh, fh, sizeof(idc_handle_t));
-	stat = IDCgetpari(tfh, t_name, value, dims_array, ndims);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-#ifdef _WIN32
-void __stdcall IDCFGETPARR(int fh[], const char* name, unsigned len_name, float value[], int dims_array[], int* ndims,  int* errcode)
-#else
-void idcfgetparr_(int fh[], const char* name, float value[], int dims_array[], int* ndims,  int* errcode, unsigned len_name)
-#endif
-{
-	int stat;
-	char t_name[256];
-	idc_handle_t tfh;
-	strncpy(t_name, name, len_name);
-	t_name[len_name] = '\0';
-	memcpy(&tfh, fh, sizeof(idc_handle_t));
-	stat = IDCgetparr(tfh, t_name, value, dims_array, ndims);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-#ifdef _WIN32
-void __stdcall IDCFGETPARD(int fh[], const char* name, unsigned len_name, double value[], int dims_array[], int* ndims,  int* errcode)
-#else
-void idcfgetpard_(int fh[], const char* name, double value[], int dims_array[], int* ndims,  int* errcode, unsigned len_name)
-#endif
-{
-	int stat;
-	char t_name[256];
-	idc_handle_t tfh;
-	strncpy(t_name, name, len_name);
-	t_name[len_name] = '\0';
-	memcpy(&tfh, fh, sizeof(idc_handle_t));
-	stat = IDCgetpard(tfh, t_name, value, dims_array, ndims);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-#ifdef _WIN32
-void __stdcall IDCFGETPARC(int fh[], const char* name, unsigned len_name, char value[], unsigned len_value, int dims_array[], int* ndims,  int* errcode)
-#else
-void idcfgetparc_(int fh[], const char* name, char* value, int dims_array[], int* ndims,  int* errcode, unsigned len_name, unsigned len_value)
-#endif
-{
-  (void) len_value; // Avoid compiler warning
-
-	int stat;
-	char t_name[256];
-	idc_handle_t tfh;
-        if (len_name > 255)
-        {
-	    len_name = 255;
-        }
-	strncpy(t_name, name, len_name);
-	t_name[len_name] = '\0';
-	memcpy(&tfh, fh, sizeof(idc_handle_t));
-	stat = IDCgetparc(tfh, t_name, value, dims_array, ndims);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-#ifdef _WIN32
-void __stdcall IDCFGETDAT(int fh[], int* ifsn, int* nos, int value[], int dims_array[], int* ndims, int* errcode)
-#else
-void idcfgetdat_(int fh[], int* ifsn, int* nos, int value[], int dims_array[], int* ndims, int* errcode)
-#endif
-{
-	int stat;
-	idc_handle_t tfh;
-	memcpy(&tfh, fh, sizeof(idc_handle_t));
-	stat = IDCgetdat(tfh, *ifsn, *nos, value, dims_array, ndims);
-	memcpy(fh, &tfh, sizeof(idc_handle_t));
-	*errcode = stat;
-}
-
-
-///@endcond
+/** 
+
+    @file idc.cpp 
+    
+    IDC interface - minimal socket interface to the DAE
+    
+    @author Freddie Akeroyd, STFC ISIS Facility
+    @date 31/07/2008
+
+    Copyright &copy; 2007-8 STFC Rutherford Appleton Laboratory
+
+    This file is part of ISIS Instrument control program.
+    you can redistribute it and/or modify it under the terms of the 
+    GNU General Public License
+*/
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <stdarg.h>
+#include "idc.h"
+#include "isisds_command.h"
+
+///@cond nodoc
+/** used to keep status information about the DAE connection */
+struct idc_info
+{
+	SOCKET s; ///< The socket
+};
+
+/** default function used by IDCreport() - changed by calling IDCsetreportfunc() */
+static void default_status_reporter(int status, int code, const char* message)
+{
+	printf("IDC: %d %d %s\n", status, code, message);
+}
+
+/** pointer to current IDC error reporing function */
+static idc_error_report_t status_reporter = default_status_reporter;
+
+/** report an error */
+int IDCreport(int status, int code, const char* format, ... )
+{
+	va_list ap;
+	char* message = (char*)malloc(1024);
+	va_start(ap, format);
+	vsprintf(message, format, ap);
+	va_end(ap);
+    (*status_reporter)(status, code, message);
+	free(message);
+	return 0;
+}
+
+/** change the error report function */
+int IDCsetreportfunc(idc_error_report_t report_func)
+{
+	status_reporter = report_func;
+	return 0;
+}
+
+/** returns 0 on success, -1 on failure */
+int IDCopen(const char* host, int mode, int options, idc_handle_t* pfh)
+{
+  (void) mode; // Avoid compiler warning
+  (void) options; // Avoid compiler warning
+
+	SOCKET s;
+	*pfh = NULL;
+	s = isisds_send_open(host, ISISDSDAEAccess);
+	if (s == INVALID_SOCKET)
+	{
+		IDCreport(0, 0, "Error accessing DAE");
+		return -1;
+	}
+	(*pfh) = (struct idc_info*)malloc(sizeof(struct idc_info));
+	(*pfh)->s = s;
+	return 0;
+}
+ ///Close the IDC
+int IDCclose(idc_handle_t* pfh)
+{
+	isisds_send_close((*pfh)->s);
+	free((*pfh));
+	*pfh = NULL;
+	return 0;
+}
+
+/** main worker routine for all data reading. Returns 0 on success, -1 on error */
+static int getdat(idc_handle_t fh, int ifsn, int nos, int** value, int dims_array[], int* ndims, int do_alloc)
+{
+	int stat, comm_buff_size;
+	ISISDSDataType ret_type;
+	int spec_nos[2] = { ifsn, nos };
+	int spec_nos_dims[1] = { 2 };
+	char* command = NULL;
+	char comm_buffer[256];
+	if (isisds_send_command(fh->s, "GETDAT", spec_nos, ISISDSInt32, spec_nos_dims, 1) <= 0)
+	{
+		IDCreport(0, 0, "error sending command (getdat)");
+		return -1;
+	};
+        ret_type = ISISDSInt32;
+	if (do_alloc)
+	{
+		stat = isisds_recv_command_alloc(fh->s, &command, (void**)value, &ret_type, dims_array, ndims);
+	}
+	else
+	{
+		comm_buff_size = sizeof(comm_buffer);
+		stat = isisds_recv_command(fh->s, comm_buffer, &comm_buff_size, *value, &ret_type, dims_array, ndims);
+	}
+	if (stat <= 0)
+	{
+		IDCreport(0, 0, "error reading command (getdat)");
+		return -1;
+	}
+	if (ret_type != ISISDSInt32)
+	{
+		IDCreport(0, 0, "invalid return type command (getdat)");
+		return -1;
+	}
+/*	IDCreport(0, 0, "type %s\n", isisds_type_name[ret_type]); */
+	return 0;
+}
+
+int IDCgetdat(idc_handle_t fh, int ifsn, int nos, int* value, int dims_array[], int* ndims)
+{
+	return getdat(fh, ifsn, nos, &value, dims_array, ndims, 0);
+}
+
+int IDCAgetdat(idc_handle_t fh, int ifsn, int nos, int** value, int dims_array[], int* ndims)
+{
+	return getdat(fh, ifsn, nos, value, dims_array, ndims, 1);
+}
+
+
+///Get a parameter
+static int IDCgetpar(idc_handle_t fh, const char* name, void** value, ISISDSDataType type,
+					 int dims_array[], int* ndims, int do_alloc)
+{
+	int n, stat, comm_buff_size;
+	ISISDSDataType ret_type;
+	char* command = NULL;
+	char comm_buffer[256];
+	sprintf(comm_buffer, "GETPAR%s", isisds_type_code[type]);
+	n = strlen(name);
+	if (isisds_send_command(fh->s, comm_buffer, name, ISISDSChar, &n, 1) <= 0)
+	{
+		IDCreport(0, 0, "error sending command %s (getpar)", name);
+		return -1;
+	};
+	ret_type = type;
+	if (do_alloc)
+	{
+		stat = isisds_recv_command_alloc(fh->s, &command, value, &ret_type, dims_array, ndims);
+	}
+	else
+	{
+		comm_buff_size = sizeof(comm_buffer);
+		stat = isisds_recv_command(fh->s, comm_buffer, &comm_buff_size, *value, &ret_type, dims_array, ndims);
+	}
+	if (stat <= 0)
+	{
+		IDCreport(0, 0, "error receiving command %s (getpar)", name);
+		return -1;
+	}
+/*	IDCreport(0, 0, "type %s\n", isisds_type_name[ret_type]); */
+	if (ret_type != type)
+	{
+	    return -1;
+	}
+	return 0;
+}
+
+///Get a parameter
+int IDCAgetpari(idc_handle_t fh, const char* name, int** value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSInt32;
+	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
+	return stat;
+}
+
+///Get a parameter
+int IDCgetpari(idc_handle_t fh, const char* name, int* value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSInt32;
+	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
+	return stat;
+}
+
+///Get a parameter
+int IDCgetparr(idc_handle_t fh, const char* name, float* value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSReal32;
+	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
+	return stat;
+}
+
+///Get a parameter
+int IDCAgetparr(idc_handle_t fh, const char* name, float** value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSReal32;
+	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
+	return stat;
+}
+
+///Get a parameter
+int IDCgetpard(idc_handle_t fh, const char* name, double* value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSReal64;
+	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
+	return stat;
+}
+
+///Get a parameter
+int IDCAgetpard(idc_handle_t fh, const char* name, double** value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSReal64;
+	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
+	return stat;
+}
+
+///Get a parameter
+int IDCgetparc(idc_handle_t fh, const char* name, char* value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSChar;
+	stat = IDCgetpar(fh, name, (void**)&value, type, dims_array, ndims, 0);
+	return stat;
+}
+
+///Get a parameter
+int IDCAgetparc(idc_handle_t fh, const char* name, char** value, int dims_array[], int* ndims)
+{
+	int stat;
+	ISISDSDataType type = ISISDSChar;
+	stat = IDCgetpar(fh, name, (void**)value, type, dims_array, ndims, 1);
+	return stat;
+}
+
+
+#ifdef _WIN32
+void __stdcall IDCFOPEN(const char* host, unsigned len_host, int* mode, int* options, int fh[], int* errcode)
+#else
+void idcfopen_(const char* host, int* mode, int* options, int fh[], int* errcode, unsigned len_host)
+#endif
+{
+	int stat;
+	idc_handle_t tfh;
+	char t_host[256];
+	strncpy(t_host, host, len_host);
+	t_host[len_host] = '\0';
+	stat = IDCopen(t_host, *mode, *options, &tfh);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+#ifdef _WIN32
+void __stdcall IDCFCLOSE(int fh[], int* errcode)
+#else
+void idcfclose_(int fh[], int* errcode)
+#endif
+{
+	int stat;
+	idc_handle_t tfh;
+	memcpy(&tfh, fh, sizeof(idc_handle_t));
+	stat = IDCclose(&tfh);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+#ifdef _WIN32
+void __stdcall IDCFGETPARI(int fh[], const char* name, unsigned len_name, int value[], int dims_array[], int* ndims,  int* errcode)
+#else
+void idcfgetpari_(int fh[], const char* name, int value[], int dims_array[], int* ndims,  int* errcode, unsigned len_name)
+#endif
+{
+	int stat;
+	char t_name[256];
+	idc_handle_t tfh;
+	strncpy(t_name, name, len_name);
+	t_name[len_name] = '\0';
+	memcpy(&tfh, fh, sizeof(idc_handle_t));
+	stat = IDCgetpari(tfh, t_name, value, dims_array, ndims);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+#ifdef _WIN32
+void __stdcall IDCFGETPARR(int fh[], const char* name, unsigned len_name, float value[], int dims_array[], int* ndims,  int* errcode)
+#else
+void idcfgetparr_(int fh[], const char* name, float value[], int dims_array[], int* ndims,  int* errcode, unsigned len_name)
+#endif
+{
+	int stat;
+	char t_name[256];
+	idc_handle_t tfh;
+	strncpy(t_name, name, len_name);
+	t_name[len_name] = '\0';
+	memcpy(&tfh, fh, sizeof(idc_handle_t));
+	stat = IDCgetparr(tfh, t_name, value, dims_array, ndims);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+#ifdef _WIN32
+void __stdcall IDCFGETPARD(int fh[], const char* name, unsigned len_name, double value[], int dims_array[], int* ndims,  int* errcode)
+#else
+void idcfgetpard_(int fh[], const char* name, double value[], int dims_array[], int* ndims,  int* errcode, unsigned len_name)
+#endif
+{
+	int stat;
+	char t_name[256];
+	idc_handle_t tfh;
+	strncpy(t_name, name, len_name);
+	t_name[len_name] = '\0';
+	memcpy(&tfh, fh, sizeof(idc_handle_t));
+	stat = IDCgetpard(tfh, t_name, value, dims_array, ndims);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+#ifdef _WIN32
+void __stdcall IDCFGETPARC(int fh[], const char* name, unsigned len_name, char value[], unsigned len_value, int dims_array[], int* ndims,  int* errcode)
+#else
+void idcfgetparc_(int fh[], const char* name, char* value, int dims_array[], int* ndims,  int* errcode, unsigned len_name, unsigned len_value)
+#endif
+{
+  (void) len_value; // Avoid compiler warning
+
+	int stat;
+	char t_name[256];
+	idc_handle_t tfh;
+        if (len_name > 255)
+        {
+	    len_name = 255;
+        }
+	strncpy(t_name, name, len_name);
+	t_name[len_name] = '\0';
+	memcpy(&tfh, fh, sizeof(idc_handle_t));
+	stat = IDCgetparc(tfh, t_name, value, dims_array, ndims);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+#ifdef _WIN32
+void __stdcall IDCFGETDAT(int fh[], int* ifsn, int* nos, int value[], int dims_array[], int* ndims, int* errcode)
+#else
+void idcfgetdat_(int fh[], int* ifsn, int* nos, int value[], int dims_array[], int* ndims, int* errcode)
+#endif
+{
+	int stat;
+	idc_handle_t tfh;
+	memcpy(&tfh, fh, sizeof(idc_handle_t));
+	stat = IDCgetdat(tfh, *ifsn, *nos, value, dims_array, ndims);
+	memcpy(fh, &tfh, sizeof(idc_handle_t));
+	*errcode = stat;
+}
+
+
+///@endcond
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.h b/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.h
index 307ed3e156434c979f33158ed145a529e96562fd..b4ddeb93fd289586498e54e9242c148eb5f34d9b 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.h
+++ b/Code/Mantid/Framework/DataHandling/src/LoadDAE/idc.h
@@ -1,88 +1,88 @@
-#ifndef IDC_H
-#define IDC_H
-/** 
-
-    @file idc.h 
-    
-    IDC interface - minimal socket interface to the DAE
-    
-    @author Freddie Akeroyd, STFC ISIS Facility
-    @date 31/07/2008
-
-    Copyright &copy; 2007-8 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of ISIS Instrument control program.
-    you can redistribute it and/or modify it under the terms of the 
-    GNU General Public License
-*/
-
-#include "MantidKernel/DllExport.h"
-///@cond nodoc
-/** 
-* holds information about the DAE connection - defined fully in idc.c
-*/
-struct idc_info;
-typedef struct idc_info* idc_handle_t;
-
-/**
- * prototype for error reporting function passed to IDCsetreportfunc() 
- */
-typedef void (*idc_error_report_t)(int status, int code, const char* messsage);
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-/** Open a DAE connection on host*/
-int DLLExport IDCopen(const char* host, int mode, int options, idc_handle_t* fh);
-
-/** Close a DAE connection */
-int DLLExport IDCclose(idc_handle_t* fh);
-
-/* The A versions of the functions allocate memory, the other need to be passed a pre-allocated array */
-
-/** Read an integer parameter \a name from the DAE and copy data into a pre-allocated array \a value.
-    The size of value is held in the parameters dims_array and ndims  */
-int IDCgetpari(idc_handle_t fh, const char* name, int* value, int dims_array[], int* ndims);
-
-/** Read an integer parameter \a name from the DAE and allocate space of it in array \a value.
-    The size of the returned array is written to the parameters dims_array and ndims  */
-int IDCAgetpari(idc_handle_t fh, const char* name, int** value, int dims_array[], int* ndims);
-
-/** Read a real (float) parameter \a name from the DAE and copy data into a pre-allocated array \a value.
-    The size of value is held in the parameters dims_array and ndims  */
-int IDCgetparr(idc_handle_t fh, const char* name, float* value, int dims_array[], int* ndims);
-
-/** Read a real (float) parameter \a name from the DAE and allocate space of it in array \a value.
-    The size of the returned array is written to the parameters dims_array and ndims  */
-int IDCAgetparr(idc_handle_t fh, const char* name, float** value, int dims_array[], int* ndims);
-
-/** Read a character parameter \a name from the DAE and copy data into a pre-allocated array \a value.
-    The size of value is held in the parameters dims_array and ndims  */
-int IDCgetpard(idc_handle_t fh, const char* name, double* value, int dims_array[], int* ndims);
-
-/** Read a character parameter \a name from the DAE and allocate space of it in array \a value.
-    The size of the returned array is written to the parameters dims_array and ndims  */
-int IDCAgetparc(idc_handle_t fh, const char* name, char** value, int dims_array[], int* ndims);
-
-/** Read \a nos spectra from the DAE starting at \a ifsn into pre-allocated array \a value.
-    The size of value is held in the parameters \a dims_array and \a ndims  */
-int DLLExport IDCgetdat(idc_handle_t fh, int ifsn, int nos, int* value, int dims_array[], int* ndims);
-
-/** Read \a nos spectra from the DAE starting at \a ifsn and allocate array \a value to return the results.
-    The size of the returned array is written to the parameters \a dims_array and \a ndims  */
-int IDCAgetdat(idc_handle_t fh, int ifsn, int nos, int** value, int dims_array[], int* ndims);
-
-/** specify an error report function to be used by IDCreport() */ 
-int IDCsetreportfunc(idc_error_report_t report_func);
-
-/** Used to report an error by the IDC routines - it calls the function specified by IDCsetreportfunc()
-  * to do the actual reporting */
-int IDCreport(int status, int code, const char* format, ... );
-
-///@endcond
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* IDC_H */
+#ifndef IDC_H
+#define IDC_H
+/** 
+
+    @file idc.h 
+    
+    IDC interface - minimal socket interface to the DAE
+    
+    @author Freddie Akeroyd, STFC ISIS Facility
+    @date 31/07/2008
+
+    Copyright &copy; 2007-8 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of ISIS Instrument control program.
+    you can redistribute it and/or modify it under the terms of the 
+    GNU General Public License
+*/
+
+#include "MantidKernel/DllExport.h"
+///@cond nodoc
+/** 
+* holds information about the DAE connection - defined fully in idc.c
+*/
+struct idc_info;
+typedef struct idc_info* idc_handle_t;
+
+/**
+ * prototype for error reporting function passed to IDCsetreportfunc() 
+ */
+typedef void (*idc_error_report_t)(int status, int code, const char* messsage);
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+/** Open a DAE connection on host*/
+int DLLExport IDCopen(const char* host, int mode, int options, idc_handle_t* fh);
+
+/** Close a DAE connection */
+int DLLExport IDCclose(idc_handle_t* fh);
+
+/* The A versions of the functions allocate memory, the other need to be passed a pre-allocated array */
+
+/** Read an integer parameter \a name from the DAE and copy data into a pre-allocated array \a value.
+    The size of value is held in the parameters dims_array and ndims  */
+int IDCgetpari(idc_handle_t fh, const char* name, int* value, int dims_array[], int* ndims);
+
+/** Read an integer parameter \a name from the DAE and allocate space of it in array \a value.
+    The size of the returned array is written to the parameters dims_array and ndims  */
+int IDCAgetpari(idc_handle_t fh, const char* name, int** value, int dims_array[], int* ndims);
+
+/** Read a real (float) parameter \a name from the DAE and copy data into a pre-allocated array \a value.
+    The size of value is held in the parameters dims_array and ndims  */
+int IDCgetparr(idc_handle_t fh, const char* name, float* value, int dims_array[], int* ndims);
+
+/** Read a real (float) parameter \a name from the DAE and allocate space of it in array \a value.
+    The size of the returned array is written to the parameters dims_array and ndims  */
+int IDCAgetparr(idc_handle_t fh, const char* name, float** value, int dims_array[], int* ndims);
+
+/** Read a character parameter \a name from the DAE and copy data into a pre-allocated array \a value.
+    The size of value is held in the parameters dims_array and ndims  */
+int IDCgetpard(idc_handle_t fh, const char* name, double* value, int dims_array[], int* ndims);
+
+/** Read a character parameter \a name from the DAE and allocate space of it in array \a value.
+    The size of the returned array is written to the parameters dims_array and ndims  */
+int IDCAgetparc(idc_handle_t fh, const char* name, char** value, int dims_array[], int* ndims);
+
+/** Read \a nos spectra from the DAE starting at \a ifsn into pre-allocated array \a value.
+    The size of value is held in the parameters \a dims_array and \a ndims  */
+int DLLExport IDCgetdat(idc_handle_t fh, int ifsn, int nos, int* value, int dims_array[], int* ndims);
+
+/** Read \a nos spectra from the DAE starting at \a ifsn and allocate array \a value to return the results.
+    The size of the returned array is written to the parameters \a dims_array and \a ndims  */
+int IDCAgetdat(idc_handle_t fh, int ifsn, int nos, int** value, int dims_array[], int* ndims);
+
+/** specify an error report function to be used by IDCreport() */ 
+int IDCsetreportfunc(idc_error_report_t report_func);
+
+/** Used to report an error by the IDC routines - it calls the function specified by IDCsetreportfunc()
+  * to do the actual reporting */
+int IDCreport(int status, int code, const char* format, ... );
+
+///@endcond
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* IDC_H */
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.cpp b/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.cpp
index 4cc09f7ef614a03e4e6189873348a6ec1ec0e1e0..90680c6b02bf23cd176e7129129c93d0a500b5e0 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.cpp
@@ -1,405 +1,405 @@
-/** 
-
-    @file isisds_command.cpp
-    
-    IDC interface - minimal socket interface to the DAE
-    
-    @author Freddie Akeroyd, STFC ISIS Facility
-    @date 31/07/2008
-
-    Copyright &copy; 2007-8 STFC Rutherford Appleton Laboratory
-
-    This file is part of ISIS Instrument control program.
-    you can redistribute it and/or modify it under the terms of the 
-    GNU General Public License
-*/
-
-///@cond nodoc
-
-#include <stdio.h>
-#include "isisds_command.h"
-
-/* 
- * versions of these structures
- * increment major for incompatible changes
- * increment minor for backward compatible changes on server
- */
-#define ISISDS_MAJOR_VER 1
-#define ISISDS_MINOR_VER 1
-
-#ifndef _WIN32
-#define closesocket	close
-#include <stdlib.h>
-#include <stdio.h>
-#include <stdarg.h>
-#include <string.h>
-#include <sys/socket.h>
-#include <netdb.h>
-#include <netinet/in.h>
-#include <arpa/inet.h>
-#include <fcntl.h>
-#include <unistd.h>
-#include <sys/select.h>
-#endif
-
-/** Try to align to 64 bit (8 bytes) boundaries
- */
-typedef struct
-{
-	int len;
-	int ver_major;
-	int ver_minor;
-	int pid;
-	int access_type; /* 0 =dae, 1 = crpt */
-	int pad[1];
-	char user[32];
-	char host[64];
-}  isisds_open_t;
-
-/** used for sends and replies once a connection open
- * try to align to 64 bits (8 bytes) boundaries 
- */
-typedef struct 
-{
-	int len;  /* of this structure plus any additional data (in bytes) */
- 	int type; /* ISISDSDataType */
-	int ndims;
-	int dims_array[11];
-	char command[32];
-	/* additional data (if any) will follow this */
-} isisds_command_header_t;
-
-/* wait until read len bytes, return <=0 on error */
-static int recv_all(SOCKET s, void* buffer, int len, int flags)
-{
-	char* cbuffer = (char*)buffer;
-	int n, ntot;
-	ntot = 0;
-	while(len > 0)
-	{
-		n = recv(s, cbuffer, len, flags);
-		if (n <= 0)
-		{
-			return n; /* error */
-		}
-		len -= n;
-		cbuffer += n;
-		ntot += n;
-	}
-	return ntot;
-}
-
-/* clear out old data from a socket */
-static void clear_replies(SOCKET s)
-{
-	static char buffer[100000];
-	struct timeval timeout = { 0, 0 };
-    fd_set fds;
-	int done = 0;
-	while(!done)
-	{
-		FD_ZERO(&fds);
-		FD_SET(s, &fds);
-		if ( (select(FD_SETSIZE, &fds, NULL, NULL, &timeout) > 0) && FD_ISSET(s, &fds) )
-		{
-			recv(s, buffer, sizeof(buffer), 0);
-		}
-		else
-		{
-			done = 1;
-		}
-	}
-}
-
-/*
- * client: open a socket and perform initial negotiation
- * return connected socket or INVALID_SOCKET on error
- */
-SOCKET isisds_send_open(const char* host, ISISDSAccessMode access_type)
-{
-	SOCKET s;
-	int setkeepalive = 1;
-	struct hostent *hostp;
-	struct sockaddr_in address;
-	int n;
-	char *comm, *comm_data;
-/*	int len_comm_data; */
-	isisds_open_t op;
-	ISISDSDataType data_type;
-	int dims_array[10], ndims;
-
-	if ( (hostp = gethostbyname(host)) == NULL )
-	{
-		return INVALID_SOCKET;
-	}
-	memset(&address, 0, sizeof(address));
-	memcpy(&(address.sin_addr.s_addr), hostp->h_addr_list[0], hostp->h_length);
-	address.sin_family = AF_INET;
-	address.sin_port = htons(ISISDS_PORT);
-	s = socket(PF_INET, SOCK_STREAM, 0);
-	if (s == INVALID_SOCKET)
-	{
-		return INVALID_SOCKET;
-	}
-	setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, (char*)&setkeepalive, sizeof(setkeepalive));
-	if (connect(s, (struct sockaddr*)&address, sizeof(address)) == -1)
-	{
-		closesocket(s);
-		return INVALID_SOCKET;
-	}
-/* socket connected */
-	op.ver_major = ISISDS_MAJOR_VER;
-	op.ver_minor = ISISDS_MINOR_VER;
-	op.pid = 0;
-	op.access_type = access_type;
-	strncpy(op.user, "faa", sizeof(op.user));
-	strncpy(op.host, "localhost", sizeof(op.host));
-	op.len = sizeof(op);
-	if ( (n = send(s, (char*)&op, sizeof(op), 0)) != sizeof(op) )
-	{
-		closesocket(s);
-		return INVALID_SOCKET;
-	}
-	if (isisds_recv_command_alloc(s, &comm, (void**)&comm_data, &data_type, dims_array, &ndims) <= 0)
-	{
-		closesocket(s);
-		return INVALID_SOCKET;
-	}
-	if (comm_data != NULL)
-	{
-		free(comm_data);
-	}
-	if (!strcmp(comm, "OK"))
-	{
-		free(comm);
-		return s;
-	}
-	else
-	{
-		free(comm);
-		closesocket(s);
-		return INVALID_SOCKET;
-	}
-}
-
-/*
- * server
- * client minor ver <= server minor ver
- */
-int isisds_recv_open(SOCKET s, ISISDSAccessMode* access_type)
-{
-	int n;
-	isisds_open_t op;
-	if ( (n = recv_all(s, (char*)&op, sizeof(op), 0)) != sizeof(op) )
-	{
-		return -1;
-	}
-	if ( op.len != sizeof(op) )
-	{
-		return -1;
-	}
-	if ( (op.ver_major != ISISDS_MAJOR_VER) || (op.ver_minor > ISISDS_MINOR_VER) )
-	{
-		return -1;
-	}
-	*access_type = (ISISDSAccessMode)op.access_type;
-	return isisds_send_command(s, "OK", NULL, ISISDSUnknown, NULL, 0);
-}
-/*
- * return > 0 on success
- * if dims_array == NULL, ndims is length
- * on graceful termination should get an FD_CLOSE from client, should then send any data
- * shutdown(s, SD_SEND) and then closesocket()
- */
-int isisds_send_command(SOCKET s, const char* command, const void* data, ISISDSDataType type, const int dims_array[], int ndims)
-{
-	int i, n, len_data;
-	isisds_command_header_t comm;
-	memset(&comm, 0, sizeof(comm));
-	if (dims_array == NULL)
-	{
-		comm.ndims = 1;
-		comm.dims_array[0] = ndims;
-		len_data = ndims * isisds_type_size[type];
-	}
-	else
-	{
-		len_data = 1;
-		comm.ndims = ndims;
-		for(i=0; i<ndims; i++)
-		{
-			len_data *= dims_array[i];
-			comm.dims_array[i] = dims_array[i];
-		}
-		len_data *= isisds_type_size[type];
-	}
-	comm.len = sizeof(comm) + len_data;
-	comm.type = type;
-	strncpy(comm.command, command, sizeof(comm.command));
-	clear_replies(s);
-	n = send(s, (char*)&comm, sizeof(comm), 0);
-	if ( (n == sizeof(comm)) && (data != NULL) && (len_data > 0) )
-	{
-		n = send(s, (const char*)data, len_data, 0);
-	}
-	return n;
-}
-
-/* if not do_alloc, then type and dims_array are checked */
-static int isisds_recv_command_helper(SOCKET s, char** command, void** data, ISISDSDataType* type, int dims_array[], int* ndims, int do_alloc)
-{ 
-	int n, len_data, size_in, i;
-	isisds_command_header_t comm;
-	n = recv_all(s, (char*)&comm, sizeof(comm), 0);
-	if (n != sizeof(comm))
-	{
-		return -1;
-	}
-	*command = (char*)malloc(sizeof(comm.command) + 1);
-	strncpy(*command, comm.command, sizeof(comm.command));
-	(*command)[sizeof(comm.command)] = '\0';
-	len_data = comm.len - sizeof(comm); /* in bytes */
-	if (len_data < 0)
-	{
-		return -1; /* error */
-	}
-	else if (len_data == 0)
-	{
-		dims_array[0] = 0;
-/*		*ndims = 0; */
-		*type = ISISDSUnknown;
-		return n; /* all ok, just no extra data */
-	}
-/*	isisds_report(0, 0, "Received data Type = \"%s\", ndims = %d\n", isisds_type_name[comm.type], comm.ndims); */
-	if (do_alloc)
-	{
-		*data = malloc(len_data + 1);
-		((char*)(*data))[len_data] = '\0';
-	}
-	else
-	{
-		size_in = 1;
-		for(i=0; i < *ndims; i++)
-		{
-			size_in *= dims_array[i];
-		}
-		size_in *= isisds_type_size[*type];
-		if (size_in < len_data)
-		{
-			isisds_report(0,0,"data array too small %d < %d\n", size_in, len_data);
-			return -1;
-		}
-		if (size_in > len_data) /* only NULL terminate if space */
-		{
-			((char*)(*data))[len_data] = '\0';
-		}
-	}
-	n = recv_all(s, *data, len_data, 0);
-	if (n != len_data)
-	{
-		free(*data);
-		*data = NULL;
-		len_data = 0;
-		return -1;
-	}
-	/* only update values if changed ... allows Read only parameters to be passed */
-	if ( do_alloc || (*ndims != comm.ndims) )
-	{
-		*ndims = comm.ndims;
-	}
-	if ( do_alloc || (*type != comm.type) )
-	{
-		*type = (ISISDSDataType)comm.type;
-	}
-	for(i=0; i < comm.ndims; i++)
-	{
-		dims_array[i] = comm.dims_array[i];
-	}
-	return n;
-}
-
-/* return > 0 on success */
-int isisds_recv_command(SOCKET s, char* command, int* len_command, void* data, ISISDSDataType* type, int dims_array[], int* ndims)
-{
-    int t_dims[8] = { 1, 0, 0, 0, 0, 0, 0, 0 };
-	int t_ndims = 1;
-	int istat;
-	char* command_temp = NULL;
-	if (type == NULL)
-	{
-		return -1;
-	}
-	if ( dims_array == NULL || ndims == NULL || (*ndims <= 1 && dims_array[0] <= 1) )
-	{
-		/* assume single simple value */
-		istat = isisds_recv_command_helper(s, &command_temp, &data, type, t_dims, &t_ndims, 0);
-		if ( (t_ndims != 1) || (t_dims[0] != 1) )
-		{
-			istat = -1;
-		}
-	}
-	else
-	{
-		istat = isisds_recv_command_helper(s, &command_temp, &data, type, dims_array, ndims, 0);
-	}
-	strncpy(command, command_temp, *len_command);
-	*len_command = strlen(command_temp);
-	free(command_temp);
-	return istat;
-}
-
-/* return > 0 on success */
-int isisds_recv_command_alloc(SOCKET s, char** command, void** data, ISISDSDataType* type, int dims_array[], int* ndims)
-{
-	if (ndims == NULL || dims_array == NULL || type == NULL)
-	{
-		return -1;
-	}
-	if (data == NULL || command == NULL)
-	{
-		return -1;
-	}
-	*data = NULL;
-	*command = NULL;
-	/* *ndims = 0; */
-	dims_array[0] = 0;
-	*type = ISISDSUnknown;
-	return isisds_recv_command_helper(s, command, data, type, dims_array, ndims, 1);
-}
-
-int isisds_send_close(SOCKET s)
-{
-	/*	shutdown((*pfh)->s, SD_SEND);   indicate no more data to send SHUT_WR
-	 * check for FD_READ and recv any other stuff from server 
-     * check for FD_CLOSE and closesocket()
-     */
-    closesocket(s);
-	return 0;
-}
-
-static void default_status_reporter(int status, int code, const char* message)
-{
-	printf("ISISDS: %d %d %s\n", status, code, message);
-}
-
-static isisds_error_report_t status_reporter = default_status_reporter;
-
-int isisds_report(int status, int code, const char* format, ... )
-{
-	va_list ap;
-	char* message = (char*)malloc(1024);
-	va_start(ap, format);
-	vsprintf(message, format, ap);
-	va_end(ap);
-    (*status_reporter)(status, code, message);
-	free(message);
-	return 0;
-}
-
-int isisds_set_report_func(isisds_error_report_t report_func)
-{
-	status_reporter = report_func;
-	return 0;
-}
-
-///@endcond
+/** 
+
+    @file isisds_command.cpp
+    
+    IDC interface - minimal socket interface to the DAE
+    
+    @author Freddie Akeroyd, STFC ISIS Facility
+    @date 31/07/2008
+
+    Copyright &copy; 2007-8 STFC Rutherford Appleton Laboratory
+
+    This file is part of ISIS Instrument control program.
+    you can redistribute it and/or modify it under the terms of the 
+    GNU General Public License
+*/
+
+///@cond nodoc
+
+#include <stdio.h>
+#include "isisds_command.h"
+
+/* 
+ * versions of these structures
+ * increment major for incompatible changes
+ * increment minor for backward compatible changes on server
+ */
+#define ISISDS_MAJOR_VER 1
+#define ISISDS_MINOR_VER 1
+
+#ifndef _WIN32
+#define closesocket	close
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdarg.h>
+#include <string.h>
+#include <sys/socket.h>
+#include <netdb.h>
+#include <netinet/in.h>
+#include <arpa/inet.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <sys/select.h>
+#endif
+
+/** Try to align to 64 bit (8 bytes) boundaries
+ */
+typedef struct
+{
+	int len;
+	int ver_major;
+	int ver_minor;
+	int pid;
+	int access_type; /* 0 =dae, 1 = crpt */
+	int pad[1];
+	char user[32];
+	char host[64];
+}  isisds_open_t;
+
+/** used for sends and replies once a connection open
+ * try to align to 64 bits (8 bytes) boundaries 
+ */
+typedef struct 
+{
+	int len;  /* of this structure plus any additional data (in bytes) */
+ 	int type; /* ISISDSDataType */
+	int ndims;
+	int dims_array[11];
+	char command[32];
+	/* additional data (if any) will follow this */
+} isisds_command_header_t;
+
+/* wait until read len bytes, return <=0 on error */
+static int recv_all(SOCKET s, void* buffer, int len, int flags)
+{
+	char* cbuffer = (char*)buffer;
+	int n, ntot;
+	ntot = 0;
+	while(len > 0)
+	{
+		n = recv(s, cbuffer, len, flags);
+		if (n <= 0)
+		{
+			return n; /* error */
+		}
+		len -= n;
+		cbuffer += n;
+		ntot += n;
+	}
+	return ntot;
+}
+
+/* clear out old data from a socket */
+static void clear_replies(SOCKET s)
+{
+	static char buffer[100000];
+	struct timeval timeout = { 0, 0 };
+    fd_set fds;
+	int done = 0;
+	while(!done)
+	{
+		FD_ZERO(&fds);
+		FD_SET(s, &fds);
+		if ( (select(FD_SETSIZE, &fds, NULL, NULL, &timeout) > 0) && FD_ISSET(s, &fds) )
+		{
+			recv(s, buffer, sizeof(buffer), 0);
+		}
+		else
+		{
+			done = 1;
+		}
+	}
+}
+
+/*
+ * client: open a socket and perform initial negotiation
+ * return connected socket or INVALID_SOCKET on error
+ */
+SOCKET isisds_send_open(const char* host, ISISDSAccessMode access_type)
+{
+	SOCKET s;
+	int setkeepalive = 1;
+	struct hostent *hostp;
+	struct sockaddr_in address;
+	int n;
+	char *comm, *comm_data;
+/*	int len_comm_data; */
+	isisds_open_t op;
+	ISISDSDataType data_type;
+	int dims_array[10], ndims;
+
+	if ( (hostp = gethostbyname(host)) == NULL )
+	{
+		return INVALID_SOCKET;
+	}
+	memset(&address, 0, sizeof(address));
+	memcpy(&(address.sin_addr.s_addr), hostp->h_addr_list[0], hostp->h_length);
+	address.sin_family = AF_INET;
+	address.sin_port = htons(ISISDS_PORT);
+	s = socket(PF_INET, SOCK_STREAM, 0);
+	if (s == INVALID_SOCKET)
+	{
+		return INVALID_SOCKET;
+	}
+	setsockopt(s, SOL_SOCKET, SO_KEEPALIVE, (char*)&setkeepalive, sizeof(setkeepalive));
+	if (connect(s, (struct sockaddr*)&address, sizeof(address)) == -1)
+	{
+		closesocket(s);
+		return INVALID_SOCKET;
+	}
+/* socket connected */
+	op.ver_major = ISISDS_MAJOR_VER;
+	op.ver_minor = ISISDS_MINOR_VER;
+	op.pid = 0;
+	op.access_type = access_type;
+	strncpy(op.user, "faa", sizeof(op.user));
+	strncpy(op.host, "localhost", sizeof(op.host));
+	op.len = sizeof(op);
+	if ( (n = send(s, (char*)&op, sizeof(op), 0)) != sizeof(op) )
+	{
+		closesocket(s);
+		return INVALID_SOCKET;
+	}
+	if (isisds_recv_command_alloc(s, &comm, (void**)&comm_data, &data_type, dims_array, &ndims) <= 0)
+	{
+		closesocket(s);
+		return INVALID_SOCKET;
+	}
+	if (comm_data != NULL)
+	{
+		free(comm_data);
+	}
+	if (!strcmp(comm, "OK"))
+	{
+		free(comm);
+		return s;
+	}
+	else
+	{
+		free(comm);
+		closesocket(s);
+		return INVALID_SOCKET;
+	}
+}
+
+/*
+ * server
+ * client minor ver <= server minor ver
+ */
+int isisds_recv_open(SOCKET s, ISISDSAccessMode* access_type)
+{
+	int n;
+	isisds_open_t op;
+	if ( (n = recv_all(s, (char*)&op, sizeof(op), 0)) != sizeof(op) )
+	{
+		return -1;
+	}
+	if ( op.len != sizeof(op) )
+	{
+		return -1;
+	}
+	if ( (op.ver_major != ISISDS_MAJOR_VER) || (op.ver_minor > ISISDS_MINOR_VER) )
+	{
+		return -1;
+	}
+	*access_type = (ISISDSAccessMode)op.access_type;
+	return isisds_send_command(s, "OK", NULL, ISISDSUnknown, NULL, 0);
+}
+/*
+ * return > 0 on success
+ * if dims_array == NULL, ndims is length
+ * on graceful termination should get an FD_CLOSE from client, should then send any data
+ * shutdown(s, SD_SEND) and then closesocket()
+ */
+int isisds_send_command(SOCKET s, const char* command, const void* data, ISISDSDataType type, const int dims_array[], int ndims)
+{
+	int i, n, len_data;
+	isisds_command_header_t comm;
+	memset(&comm, 0, sizeof(comm));
+	if (dims_array == NULL)
+	{
+		comm.ndims = 1;
+		comm.dims_array[0] = ndims;
+		len_data = ndims * isisds_type_size[type];
+	}
+	else
+	{
+		len_data = 1;
+		comm.ndims = ndims;
+		for(i=0; i<ndims; i++)
+		{
+			len_data *= dims_array[i];
+			comm.dims_array[i] = dims_array[i];
+		}
+		len_data *= isisds_type_size[type];
+	}
+	comm.len = sizeof(comm) + len_data;
+	comm.type = type;
+	strncpy(comm.command, command, sizeof(comm.command));
+	clear_replies(s);
+	n = send(s, (char*)&comm, sizeof(comm), 0);
+	if ( (n == sizeof(comm)) && (data != NULL) && (len_data > 0) )
+	{
+		n = send(s, (const char*)data, len_data, 0);
+	}
+	return n;
+}
+
+/* if not do_alloc, then type and dims_array are checked */
+static int isisds_recv_command_helper(SOCKET s, char** command, void** data, ISISDSDataType* type, int dims_array[], int* ndims, int do_alloc)
+{ 
+	int n, len_data, size_in, i;
+	isisds_command_header_t comm;
+	n = recv_all(s, (char*)&comm, sizeof(comm), 0);
+	if (n != sizeof(comm))
+	{
+		return -1;
+	}
+	*command = (char*)malloc(sizeof(comm.command) + 1);
+	strncpy(*command, comm.command, sizeof(comm.command));
+	(*command)[sizeof(comm.command)] = '\0';
+	len_data = comm.len - sizeof(comm); /* in bytes */
+	if (len_data < 0)
+	{
+		return -1; /* error */
+	}
+	else if (len_data == 0)
+	{
+		dims_array[0] = 0;
+/*		*ndims = 0; */
+		*type = ISISDSUnknown;
+		return n; /* all ok, just no extra data */
+	}
+/*	isisds_report(0, 0, "Received data Type = \"%s\", ndims = %d\n", isisds_type_name[comm.type], comm.ndims); */
+	if (do_alloc)
+	{
+		*data = malloc(len_data + 1);
+		((char*)(*data))[len_data] = '\0';
+	}
+	else
+	{
+		size_in = 1;
+		for(i=0; i < *ndims; i++)
+		{
+			size_in *= dims_array[i];
+		}
+		size_in *= isisds_type_size[*type];
+		if (size_in < len_data)
+		{
+			isisds_report(0,0,"data array too small %d < %d\n", size_in, len_data);
+			return -1;
+		}
+		if (size_in > len_data) /* only NULL terminate if space */
+		{
+			((char*)(*data))[len_data] = '\0';
+		}
+	}
+	n = recv_all(s, *data, len_data, 0);
+	if (n != len_data)
+	{
+		free(*data);
+		*data = NULL;
+		len_data = 0;
+		return -1;
+	}
+	/* only update values if changed ... allows Read only parameters to be passed */
+	if ( do_alloc || (*ndims != comm.ndims) )
+	{
+		*ndims = comm.ndims;
+	}
+	if ( do_alloc || (*type != comm.type) )
+	{
+		*type = (ISISDSDataType)comm.type;
+	}
+	for(i=0; i < comm.ndims; i++)
+	{
+		dims_array[i] = comm.dims_array[i];
+	}
+	return n;
+}
+
+/* return > 0 on success */
+int isisds_recv_command(SOCKET s, char* command, int* len_command, void* data, ISISDSDataType* type, int dims_array[], int* ndims)
+{
+    int t_dims[8] = { 1, 0, 0, 0, 0, 0, 0, 0 };
+	int t_ndims = 1;
+	int istat;
+	char* command_temp = NULL;
+	if (type == NULL)
+	{
+		return -1;
+	}
+	if ( dims_array == NULL || ndims == NULL || (*ndims <= 1 && dims_array[0] <= 1) )
+	{
+		/* assume single simple value */
+		istat = isisds_recv_command_helper(s, &command_temp, &data, type, t_dims, &t_ndims, 0);
+		if ( (t_ndims != 1) || (t_dims[0] != 1) )
+		{
+			istat = -1;
+		}
+	}
+	else
+	{
+		istat = isisds_recv_command_helper(s, &command_temp, &data, type, dims_array, ndims, 0);
+	}
+	strncpy(command, command_temp, *len_command);
+	*len_command = strlen(command_temp);
+	free(command_temp);
+	return istat;
+}
+
+/* return > 0 on success */
+int isisds_recv_command_alloc(SOCKET s, char** command, void** data, ISISDSDataType* type, int dims_array[], int* ndims)
+{
+	if (ndims == NULL || dims_array == NULL || type == NULL)
+	{
+		return -1;
+	}
+	if (data == NULL || command == NULL)
+	{
+		return -1;
+	}
+	*data = NULL;
+	*command = NULL;
+	/* *ndims = 0; */
+	dims_array[0] = 0;
+	*type = ISISDSUnknown;
+	return isisds_recv_command_helper(s, command, data, type, dims_array, ndims, 1);
+}
+
+int isisds_send_close(SOCKET s)
+{
+	/*	shutdown((*pfh)->s, SD_SEND);   indicate no more data to send SHUT_WR
+	 * check for FD_READ and recv any other stuff from server 
+     * check for FD_CLOSE and closesocket()
+     */
+    closesocket(s);
+	return 0;
+}
+
+static void default_status_reporter(int status, int code, const char* message)
+{
+	printf("ISISDS: %d %d %s\n", status, code, message);
+}
+
+static isisds_error_report_t status_reporter = default_status_reporter;
+
+int isisds_report(int status, int code, const char* format, ... )
+{
+	va_list ap;
+	char* message = (char*)malloc(1024);
+	va_start(ap, format);
+	vsprintf(message, format, ap);
+	va_end(ap);
+    (*status_reporter)(status, code, message);
+	free(message);
+	return 0;
+}
+
+int isisds_set_report_func(isisds_error_report_t report_func)
+{
+	status_reporter = report_func;
+	return 0;
+}
+
+///@endcond
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.h b/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.h
index 48a47519ea5c80b3212e37ef896c5024531c1e57..e2c98a9fe840000dfebd213a917fb449233afb32 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.h
+++ b/Code/Mantid/Framework/DataHandling/src/LoadDAE/isisds_command.h
@@ -1,61 +1,61 @@
-/** 
-
-    @file isisds_command.h 
-    
-    IDC interface - minimal socket interface to the DAE
-    
-    @author Freddie Akeroyd, STFC ISIS Facility
-    @date 31/07/2008
-
-    Copyright &copy; 2007-8 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of ISIS Instrument control program.
-    you can redistribute it and/or modify it under the terms of the 
-    GNU General Public License
-*/
-
-///@cond nodoc
-
-#ifndef ISISDS_COMMAND_H
-#define ISISDS_COMMAND_H
-
-typedef void (*isisds_error_report_t)(int status, int code, const char* messsage);
-
-#define ISISDS_PORT 6789
-
-#ifdef _WIN32
-#include <winsock2.h>
-#else
-#define SOCKET	int
-#define INVALID_SOCKET	-1
-#endif /* _WIN32 */
-
-typedef enum { ISISDSDAEAccess = 0, ISISDSCRPTAccess = 1} ISISDSAccessMode;
-
-typedef enum { ISISDSUnknown = 0, ISISDSInt32 = 1, ISISDSReal32 = 2, ISISDSReal64 = 3, ISISDSChar = 4 } ISISDSDataType;
-
-static int isisds_type_size[] = { 0, 4, 4, 8, 1 };
-static const char* isisds_type_name[] = { "Unknown", "Int32", "Real32", "Real64", "Char" };
-static const char* isisds_type_code[] = { "U00", "I32", "R32", "R64", "C08" }; /* 3 char in length */
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-SOCKET isisds_send_open(const char* host, ISISDSAccessMode access_type);
-int isisds_recv_open(SOCKET s, ISISDSAccessMode* access_type);
-int isisds_send_command(SOCKET s, const char* command, const void* data, ISISDSDataType type, const int dims_array[], int ndims);
-int isisds_recv_command_alloc(SOCKET s, char** command, void** data, ISISDSDataType* type, int dims_array[], int* ndims);
-int isisds_recv_command(SOCKET s, char* command, int* len_command, void* data, ISISDSDataType* type, int dims_array[], int* ndims);
-int isisds_send_close(SOCKET s);
-
-int isisds_set_report_func(isisds_error_report_t report_func);
-int isisds_report(int status, int code, const char* format, ... );
-
-///@endcond
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* ISISDS_COMMAND_H */
-
+/** 
+
+    @file isisds_command.h 
+    
+    IDC interface - minimal socket interface to the DAE
+    
+    @author Freddie Akeroyd, STFC ISIS Facility
+    @date 31/07/2008
+
+    Copyright &copy; 2007-8 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of ISIS Instrument control program.
+    you can redistribute it and/or modify it under the terms of the 
+    GNU General Public License
+*/
+
+///@cond nodoc
+
+#ifndef ISISDS_COMMAND_H
+#define ISISDS_COMMAND_H
+
+typedef void (*isisds_error_report_t)(int status, int code, const char* messsage);
+
+#define ISISDS_PORT 6789
+
+#ifdef _WIN32
+#include <winsock2.h>
+#else
+#define SOCKET	int
+#define INVALID_SOCKET	-1
+#endif /* _WIN32 */
+
+typedef enum { ISISDSDAEAccess = 0, ISISDSCRPTAccess = 1} ISISDSAccessMode;
+
+typedef enum { ISISDSUnknown = 0, ISISDSInt32 = 1, ISISDSReal32 = 2, ISISDSReal64 = 3, ISISDSChar = 4 } ISISDSDataType;
+
+static int isisds_type_size[] = { 0, 4, 4, 8, 1 };
+static const char* isisds_type_name[] = { "Unknown", "Int32", "Real32", "Real64", "Char" };
+static const char* isisds_type_code[] = { "U00", "I32", "R32", "R64", "C08" }; /* 3 char in length */
+
+#ifdef __cplusplus
+extern "C" {
+#endif /* __cplusplus */
+
+SOCKET isisds_send_open(const char* host, ISISDSAccessMode access_type);
+int isisds_recv_open(SOCKET s, ISISDSAccessMode* access_type);
+int isisds_send_command(SOCKET s, const char* command, const void* data, ISISDSDataType type, const int dims_array[], int ndims);
+int isisds_recv_command_alloc(SOCKET s, char** command, void** data, ISISDSDataType* type, int dims_array[], int* ndims);
+int isisds_recv_command(SOCKET s, char* command, int* len_command, void* data, ISISDSDataType* type, int dims_array[], int* ndims);
+int isisds_send_close(SOCKET s);
+
+int isisds_set_report_func(isisds_error_report_t report_func);
+int isisds_report(int status, int code, const char* format, ... );
+
+///@endcond
+#ifdef __cplusplus
+}
+#endif /* __cplusplus */
+
+#endif /* ISISDS_COMMAND_H */
+
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw.cpp b/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw.cpp
index d513c6bdd6056744dc1ea66dc465c5d1355734e9..7be36f3369f1997050137d5f56e13055cfc570b3 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw.cpp
@@ -1009,11 +1009,11 @@ int ISISRAW::vmstime(char* timbuf, int len, time_t time_value)
 	int i, n;
 	struct tm *tmstruct = NULL;
 #ifdef MS_VISUAL_STUDIO
-  errno_t err = localtime_s( tmstruct, &time_value ); 
-  if (err)
-  {
-      return FAILURE;
-  }
+  errno_t err = localtime_s( tmstruct, &time_value ); 
+  if (err)
+  {
+      return FAILURE;
+  }
 #else //_WIN32
 	tmstruct = localtime((time_t*)&time_value);
 #endif //_WIN32
@@ -1031,10 +1031,10 @@ int ISISRAW::readFromFile(const char* filename, bool read_data)
 {
 #ifdef MS_VISUAL_STUDIO
   FILE* input_file=NULL;
-  if(fopen_s( &input_file, filename, "rb" ) !=0 )
-  {
-      return -1;
-  }
+  if(fopen_s( &input_file, filename, "rb" ) !=0 )
+  {
+      return -1;
+  }
 #else //_WIN32
 	FILE* input_file = fopen(filename,"rb");
 #endif //_WIN32
@@ -1061,10 +1061,10 @@ int ISISRAW::writeToFile(const char* filename)
 	remove(filename);
 #ifdef MS_VISUAL_STUDIO
   FILE* output_file=NULL;
-  if(fopen_s( &output_file, filename, "w+bc" ) !=0 )
-  {
-      return -1;
-  }
+  if(fopen_s( &output_file, filename, "w+bc" ) !=0 )
+  {
+      return -1;
+  }
 #else //_WIN32
 	FILE* output_file = fopen(filename,"w+bc");
 #endif //_WIN32
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw2.cpp b/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw2.cpp
index cf83773e5296ce67b77b948997853eaf561fab37..d68307a012239a9db2f5131f6220796f2d8b656f 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw2.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadRaw/isisraw2.cpp
@@ -11,89 +11,89 @@ ISISRAW2::ISISRAW2() : ISISRAW(NULL,false),outbuff(0)
 {
 }
 
-/** Loads the headers of the file, leaves the file pointer at a specific position
-*   @param file :: The file handle to use
-*   @param from_file :: Wether to read from or write to a file
+/** Loads the headers of the file, leaves the file pointer at a specific position
+*   @param file :: The file handle to use
+*   @param from_file :: Wether to read from or write to a file
 *   @param read_data :: Wether to go on to read the data
-*   @return file readin exit code, 0 is OK
-**/
-int ISISRAW2::ioRAW(FILE* file, bool from_file, bool read_data)
-{
+*   @return file readin exit code, 0 is OK
+**/
+int ISISRAW2::ioRAW(FILE* file, bool from_file, bool read_data)
+{
   (void) read_data; // Avoid compiler warning
-
-  int i;
-  fpos_t add_pos, dhdr_pos; 
-  if (!from_file)
-  {
-    add.ad_run = 32;
-    add.ad_inst = add.ad_run + 94;
-    add.ad_se = add.ad_inst + 70 + 2*i_mon + (5+i_use)*i_det;
-    add.ad_dae = add.ad_se + 66 + e_nse*32;
-    add.ad_tcb = add.ad_dae + 65 + 5*i_det;
-    add.ad_user = add.ad_tcb + 288 + (t_ntc1 + 1);
-    add.ad_data = add.ad_user + 2 + u_len; 
-    add.ad_log = 0; // we don't know it yet 
-    add.ad_end = 0;
-  }
-  ISISRAW::ioRAW(file, &hdr, 1, from_file);
-  ISISRAW::ioRAW(file, &frmt_ver_no, 1, from_file);
-  fgetpos(file, &add_pos);
-  ISISRAW::ioRAW(file, &add, 1, from_file);
-  ISISRAW::ioRAW(file, &data_format, 3, from_file);
-  ISISRAW::ioRAW(file, r_title, 80, from_file);
-  ISISRAW::ioRAW(file, &user, 1, from_file);
-  ISISRAW::ioRAW(file, &rpb, 1, from_file);
-  ISISRAW::ioRAW(file, &ver3, 1, from_file);
-  ISISRAW::ioRAW(file, i_inst, 8, from_file);
-  ISISRAW::ioRAW(file, &ivpb, 1, from_file);
-  ISISRAW::ioRAW(file, &i_det, 3, from_file);
-  ISISRAW::ioRAW(file, &mdet, i_mon, from_file);
-  ISISRAW::ioRAW(file, &monp, i_mon, from_file);
-  ISISRAW::ioRAW(file, &spec, i_det, from_file);
-  ISISRAW::ioRAW(file, &delt, i_det, from_file);
-  ISISRAW::ioRAW(file, &len2, i_det, from_file);
-  ISISRAW::ioRAW(file, &code, i_det, from_file);
-  ISISRAW::ioRAW(file, &tthe, i_det, from_file);
-  ISISRAW::ioRAW(file, &ut, i_use * i_det, from_file);
-  ISISRAW::ioRAW(file, &ver4, 1, from_file);
-  ISISRAW::ioRAW(file, &spb, 1, from_file);
-  ISISRAW::ioRAW(file, &e_nse, 1, from_file);
-  ISISRAW::ioRAW(file, &e_seblock, e_nse, from_file);
-  ISISRAW::ioRAW(file, &ver5, 1, from_file);
-  ISISRAW::ioRAW(file, &daep, 1, from_file);
-  ISISRAW::ioRAW(file, &crat, i_det, from_file);
-  ISISRAW::ioRAW(file, &modn, i_det, from_file);
-  ISISRAW::ioRAW(file, &mpos, i_det, from_file);
-  ISISRAW::ioRAW(file, &timr, i_det, from_file);
-  ISISRAW::ioRAW(file, &udet, i_det, from_file);
-  ISISRAW::ioRAW(file, &ver6, 267, from_file);
-  ISISRAW::ioRAW(file, &(t_tcp1[0][0]), 20, from_file);
-  ISISRAW::ioRAW(file, &t_pre1, 1, from_file);
-  ISISRAW::ioRAW(file, &t_tcb1, t_ntc1+1, from_file);
-  ISISRAW::ioRAW(file, &ver7, 1, from_file);
-// it appear that the VMS ICP traditionally sets u_len to 1 regardless
-// of its real size; thus we cannot rely on it for reading and must instead
-// use section offsets
-  i = 0;
-  ISISRAW::ioRAW(file, &i, 1, from_file);
-//		ISISRAW::ioRAW(file, &u_len, 1, from_file);
-  if (from_file)
-  {
-    u_len = add.ad_data - add.ad_user - 2; 
-  }
-  ISISRAW::ioRAW(file, &u_dat, u_len, from_file);
-  ISISRAW::ioRAW(file, &ver8, 1, from_file);
-  fgetpos(file, &dhdr_pos);
-  ISISRAW::ioRAW(file, &dhdr, 1, from_file);
-
-  int outbuff_size = 100000;
-  outbuff = new char[outbuff_size];
-  ndes = t_nper * (t_nsp1+1);
-  ISISRAW::ioRAW(file, &ddes, ndes, true);
-  dat1 = new uint32_t[ t_ntc1+1 ];  //  space for just one spectrum
-  memset(outbuff, 0, outbuff_size); // so when we round up words we get a zero written
-
-  return 0; // stop reading here
+
+  int i;
+  fpos_t add_pos, dhdr_pos; 
+  if (!from_file)
+  {
+    add.ad_run = 32;
+    add.ad_inst = add.ad_run + 94;
+    add.ad_se = add.ad_inst + 70 + 2*i_mon + (5+i_use)*i_det;
+    add.ad_dae = add.ad_se + 66 + e_nse*32;
+    add.ad_tcb = add.ad_dae + 65 + 5*i_det;
+    add.ad_user = add.ad_tcb + 288 + (t_ntc1 + 1);
+    add.ad_data = add.ad_user + 2 + u_len; 
+    add.ad_log = 0; // we don't know it yet 
+    add.ad_end = 0;
+  }
+  ISISRAW::ioRAW(file, &hdr, 1, from_file);
+  ISISRAW::ioRAW(file, &frmt_ver_no, 1, from_file);
+  fgetpos(file, &add_pos);
+  ISISRAW::ioRAW(file, &add, 1, from_file);
+  ISISRAW::ioRAW(file, &data_format, 3, from_file);
+  ISISRAW::ioRAW(file, r_title, 80, from_file);
+  ISISRAW::ioRAW(file, &user, 1, from_file);
+  ISISRAW::ioRAW(file, &rpb, 1, from_file);
+  ISISRAW::ioRAW(file, &ver3, 1, from_file);
+  ISISRAW::ioRAW(file, i_inst, 8, from_file);
+  ISISRAW::ioRAW(file, &ivpb, 1, from_file);
+  ISISRAW::ioRAW(file, &i_det, 3, from_file);
+  ISISRAW::ioRAW(file, &mdet, i_mon, from_file);
+  ISISRAW::ioRAW(file, &monp, i_mon, from_file);
+  ISISRAW::ioRAW(file, &spec, i_det, from_file);
+  ISISRAW::ioRAW(file, &delt, i_det, from_file);
+  ISISRAW::ioRAW(file, &len2, i_det, from_file);
+  ISISRAW::ioRAW(file, &code, i_det, from_file);
+  ISISRAW::ioRAW(file, &tthe, i_det, from_file);
+  ISISRAW::ioRAW(file, &ut, i_use * i_det, from_file);
+  ISISRAW::ioRAW(file, &ver4, 1, from_file);
+  ISISRAW::ioRAW(file, &spb, 1, from_file);
+  ISISRAW::ioRAW(file, &e_nse, 1, from_file);
+  ISISRAW::ioRAW(file, &e_seblock, e_nse, from_file);
+  ISISRAW::ioRAW(file, &ver5, 1, from_file);
+  ISISRAW::ioRAW(file, &daep, 1, from_file);
+  ISISRAW::ioRAW(file, &crat, i_det, from_file);
+  ISISRAW::ioRAW(file, &modn, i_det, from_file);
+  ISISRAW::ioRAW(file, &mpos, i_det, from_file);
+  ISISRAW::ioRAW(file, &timr, i_det, from_file);
+  ISISRAW::ioRAW(file, &udet, i_det, from_file);
+  ISISRAW::ioRAW(file, &ver6, 267, from_file);
+  ISISRAW::ioRAW(file, &(t_tcp1[0][0]), 20, from_file);
+  ISISRAW::ioRAW(file, &t_pre1, 1, from_file);
+  ISISRAW::ioRAW(file, &t_tcb1, t_ntc1+1, from_file);
+  ISISRAW::ioRAW(file, &ver7, 1, from_file);
+// it appear that the VMS ICP traditionally sets u_len to 1 regardless
+// of its real size; thus we cannot rely on it for reading and must instead
+// use section offsets
+  i = 0;
+  ISISRAW::ioRAW(file, &i, 1, from_file);
+//		ISISRAW::ioRAW(file, &u_len, 1, from_file);
+  if (from_file)
+  {
+    u_len = add.ad_data - add.ad_user - 2; 
+  }
+  ISISRAW::ioRAW(file, &u_dat, u_len, from_file);
+  ISISRAW::ioRAW(file, &ver8, 1, from_file);
+  fgetpos(file, &dhdr_pos);
+  ISISRAW::ioRAW(file, &dhdr, 1, from_file);
+
+  int outbuff_size = 100000;
+  outbuff = new char[outbuff_size];
+  ndes = t_nper * (t_nsp1+1);
+  ISISRAW::ioRAW(file, &ddes, ndes, true);
+  dat1 = new uint32_t[ t_ntc1+1 ];  //  space for just one spectrum
+  memset(outbuff, 0, outbuff_size); // so when we round up words we get a zero written
+
+  return 0; // stop reading here
 }
 
 /// Skip data
@@ -119,10 +119,10 @@ bool ISISRAW2::readData(FILE* file, int i)
     return true;
 }
 
-ISISRAW2::~ISISRAW2()
-{
-    //fclose(m_file);
-    if (outbuff) delete[] outbuff;
+ISISRAW2::~ISISRAW2()
+{
+    //fclose(m_file);
+    if (outbuff) delete[] outbuff;
 }
 
 ///Clears the output buffer
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.cpp b/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.cpp
index a62e43300cbea1118513b24606823bedbd991626..6aa21b93e97d0193b85c74e1ff8f3607de359db1 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.cpp
+++ b/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.cpp
@@ -1,196 +1,196 @@
-#include "item_struct.h"
-#include <stdlib.h>
-
-#define FAILURE 1
-#define SUCCESS 0
-
-/** Gets an item
-@param item_name :: the item name
-@param value :: A pointer to the item
-@return 0 on success
-*/
-template <typename T>
-int item_struct<T>::getItem(const std::string& item_name, T& value)
-{
-	int n;
-	long spec_no;
-	// handle case of item_spectrum which means we average the array
-	// item[ndet] for that particular spectrum
-	n = item_name.find('_');
-	if (n != std::string::npos)
-	{
-		spec_no = atol(item_name.c_str()+n+1);
-		return getItem(item_name.substr(0,n), &spec_no, 1, &value);
-	}
-	else
-	{
-		spec_no = 0;
-		return getItem(item_name, &spec_no, 0, &value);
-	}
-}
-
-
-/** Gets an item
-nspec number of 0 means no spec average
-@param item_name :: the item name
-@param spec_array :: The array of spectra numbers
-@param nspec :: the number of spectra in the array
-@param lVal :: A pointer to the item
-@return 0 on success
-*/
-template <typename T>
-int item_struct<T>::getItem(const std::string& item_name, long* spec_array, int nspec, T* lVal)
-{
-	int i, j, n;
-	std::string sitem_name;
-	std::string tmp_item;
-	const T* pVal = NULL;
-	const item_t* item;
-	item = findItem(item_name, false);
-	if (item != NULL)
-	{
-		for(j=0; j < (nspec == 0 ? 1 : nspec); j++)
-		{
-			lVal[j] = *(item->value);
-		}
-		return SUCCESS;
-	}
-	if (nspec == 0)
-	{
-		return FAILURE;
-	}
-	item = findItem(item_name, true);
-	if (item != NULL)
-	{
-			if (item->dim1 == 0)
-			{
-				n = *(item->dim0);
-			}
-			else
-			{
-				n = *(item->dim0) * *(item->dim1);
-			}
-			if (n == m_ndet)
-			{
-				pVal = item->value;
-			}
-	}
-	if (pVal == NULL)
-	{
-		return FAILURE;
-	}
-	for(j=0; j<nspec; j++)
-	{
-		lVal[j] = 0;
-		n = 0;
-		for(i=0; i<m_ndet; i++)
-		{
-			if (m_spec_array[i] == spec_array[j])
-			{
-				lVal[j] += pVal[i];
-				n++;
-			}
-		}
-		if (n > 0)
-		{
-			lVal[j] = lVal[j] / n;
-		}
-	}
-	return SUCCESS;
-}
-
-/** Gets the size of an array of items
-@param item_name :: the item name
-@param dims_array :: The array of dimensions
-@param ndims :: the number of dimensions in the array
-@return 0 on success
-*/
-template <typename T>
-int item_struct<T>::getArrayItemSize(const std::string& item_name, int* dims_array, int& ndims)
-{
-	const item_t* item;
-	item = findItem(item_name, false);
-	if (item == NULL)
-	{
-		item = findItem(item_name, true);
-	}
-	if (item != NULL)
-	{
-		if (item->dim1 == 0)
-		{
-			dims_array[0] = *(item->dim0);
-			ndims = 1;
-		}
-		else
-		{
-			dims_array[0] = *(item->dim0);
-			dims_array[1] = *(item->dim1);
-			ndims = 2;
-		}
-		return SUCCESS;
-	}
-	return FAILURE;
-}
-
-/** Gets an array of items
-@param item_name :: the item name
-@param spec_array :: The array of spectra numbers
-@param nspec :: the number of spectra in the array
-@param larray :: The returned array
-@return 0 on success
-*/
-template <typename T>
-int item_struct<T>::getArrayItem(const std::string& item_name, long* spec_array, int nspec, T* larray)
-{
-	int i, j, k, n;
-	const item_t* item;
-	item = findItem(item_name, false);
-	if (item == NULL)
-	{
-		item = findItem(item_name, true);
-	}
-	if (item != NULL)
-	{
-		if (item->dim1 == 0)
-		{
-			n = *(item->dim0);
-		}
-		else
-		{
-			n = *(item->dim0) * *(item->dim1);
-		}
-		for(k=0; k<nspec; k++)
-		{
-			for(j=0; j<n; j++)
-			{
-				larray[j + k * n] = item->value[j];
-			}
-		}
-		return SUCCESS;
-	}
-	return FAILURE;
-}
-
-/** Gets an array of items
-@param item_name :: the item name
-@param larray :: The returned array
-@return 0 on success
-*/
-template <typename T>
-int item_struct<T>::getArrayItem(const std::string& item_name, T* larray)
-{
-	int n;
-	long spec_no;
-	n = item_name.find('_');
-	if (n != std::string::npos)
-	{
-		spec_no = atol(item_name.c_str()+n+1);
-		return getIntArrayItem(item_name.substr(0,n), &spec_no, 1, larray);
-	}
-	else
-	{
-		spec_no = 0;
-		return getIntArrayItem(item_name, &spec_no, 1, larray);
-	}
-}
-
+#include "item_struct.h"
+#include <stdlib.h>
+
+#define FAILURE 1
+#define SUCCESS 0
+
+/** Gets an item
+@param item_name :: the item name
+@param value :: A pointer to the item
+@return 0 on success
+*/
+template <typename T>
+int item_struct<T>::getItem(const std::string& item_name, T& value)
+{
+	int n;
+	long spec_no;
+	// handle case of item_spectrum which means we average the array
+	// item[ndet] for that particular spectrum
+	n = item_name.find('_');
+	if (n != std::string::npos)
+	{
+		spec_no = atol(item_name.c_str()+n+1);
+		return getItem(item_name.substr(0,n), &spec_no, 1, &value);
+	}
+	else
+	{
+		spec_no = 0;
+		return getItem(item_name, &spec_no, 0, &value);
+	}
+}
+
+
+/** Gets an item
+nspec number of 0 means no spec average
+@param item_name :: the item name
+@param spec_array :: The array of spectra numbers
+@param nspec :: the number of spectra in the array
+@param lVal :: A pointer to the item
+@return 0 on success
+*/
+template <typename T>
+int item_struct<T>::getItem(const std::string& item_name, long* spec_array, int nspec, T* lVal)
+{
+	int i, j, n;
+	std::string sitem_name;
+	std::string tmp_item;
+	const T* pVal = NULL;
+	const item_t* item;
+	item = findItem(item_name, false);
+	if (item != NULL)
+	{
+		for(j=0; j < (nspec == 0 ? 1 : nspec); j++)
+		{
+			lVal[j] = *(item->value);
+		}
+		return SUCCESS;
+	}
+	if (nspec == 0)
+	{
+		return FAILURE;
+	}
+	item = findItem(item_name, true);
+	if (item != NULL)
+	{
+			if (item->dim1 == 0)
+			{
+				n = *(item->dim0);
+			}
+			else
+			{
+				n = *(item->dim0) * *(item->dim1);
+			}
+			if (n == m_ndet)
+			{
+				pVal = item->value;
+			}
+	}
+	if (pVal == NULL)
+	{
+		return FAILURE;
+	}
+	for(j=0; j<nspec; j++)
+	{
+		lVal[j] = 0;
+		n = 0;
+		for(i=0; i<m_ndet; i++)
+		{
+			if (m_spec_array[i] == spec_array[j])
+			{
+				lVal[j] += pVal[i];
+				n++;
+			}
+		}
+		if (n > 0)
+		{
+			lVal[j] = lVal[j] / n;
+		}
+	}
+	return SUCCESS;
+}
+
+/** Gets the size of an array of items
+@param item_name :: the item name
+@param dims_array :: The array of dimensions
+@param ndims :: the number of dimensions in the array
+@return 0 on success
+*/
+template <typename T>
+int item_struct<T>::getArrayItemSize(const std::string& item_name, int* dims_array, int& ndims)
+{
+	const item_t* item;
+	item = findItem(item_name, false);
+	if (item == NULL)
+	{
+		item = findItem(item_name, true);
+	}
+	if (item != NULL)
+	{
+		if (item->dim1 == 0)
+		{
+			dims_array[0] = *(item->dim0);
+			ndims = 1;
+		}
+		else
+		{
+			dims_array[0] = *(item->dim0);
+			dims_array[1] = *(item->dim1);
+			ndims = 2;
+		}
+		return SUCCESS;
+	}
+	return FAILURE;
+}
+
+/** Gets an array of items
+@param item_name :: the item name
+@param spec_array :: The array of spectra numbers
+@param nspec :: the number of spectra in the array
+@param larray :: The returned array
+@return 0 on success
+*/
+template <typename T>
+int item_struct<T>::getArrayItem(const std::string& item_name, long* spec_array, int nspec, T* larray)
+{
+	int i, j, k, n;
+	const item_t* item;
+	item = findItem(item_name, false);
+	if (item == NULL)
+	{
+		item = findItem(item_name, true);
+	}
+	if (item != NULL)
+	{
+		if (item->dim1 == 0)
+		{
+			n = *(item->dim0);
+		}
+		else
+		{
+			n = *(item->dim0) * *(item->dim1);
+		}
+		for(k=0; k<nspec; k++)
+		{
+			for(j=0; j<n; j++)
+			{
+				larray[j + k * n] = item->value[j];
+			}
+		}
+		return SUCCESS;
+	}
+	return FAILURE;
+}
+
+/** Gets an array of items
+@param item_name :: the item name
+@param larray :: The returned array
+@return 0 on success
+*/
+template <typename T>
+int item_struct<T>::getArrayItem(const std::string& item_name, T* larray)
+{
+	int n;
+	long spec_no;
+	n = item_name.find('_');
+	if (n != std::string::npos)
+	{
+		spec_no = atol(item_name.c_str()+n+1);
+		return getIntArrayItem(item_name.substr(0,n), &spec_no, 1, larray);
+	}
+	else
+	{
+		spec_no = 0;
+		return getIntArrayItem(item_name, &spec_no, 1, larray);
+	}
+}
+
diff --git a/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.h b/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.h
index 56810735caf24da7a9bfc983b407482c268bb2bf..c7d7ad76f085904840d34fc01edf77bf2b934b23 100644
--- a/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.h
+++ b/Code/Mantid/Framework/DataHandling/src/LoadRaw/item_struct.h
@@ -1,78 +1,78 @@
-#ifndef ITEM_STRUCT_H
-#define ITEM_STRUCT_H
-
-#include <string>
-#include <map>
-
-/// structure to hold a dae item
-template <typename T>
-class item_struct
-{
-public:
-  /// structure to hold a dae item
-	struct item_t
-	{
-		const T* value; ///<array of type T
-		bool det_average;	///< can be averaged over detectors via m_spec_array
-		const int* dim0; ///< dimension zero array
-		const int* dim1; ///< dimension one array
-    ///Constructor
-		item_t(const T* v, bool da, const int* d0, const int* d1) : value(v), det_average(da), dim0(d0), dim1(d1) {}
-	};
-
-private:
-	typedef std::map<std::string, item_t> items_map_t;   ///<Type def of internal map of named items
-	items_map_t m_items;  ///<internal map of named items
-	unsigned long* m_spec_array; ///< length m_ndet; used for averaging values with det_average
-	long m_ndet; ///<number of detectors
-public:
-
-  /** Adds an item
-  @param name :: the item name
-  @param value :: the item 
-  @param det_average :: Detector average or not
-  @param dim0 :: Diemnsion array zero
-  @param dim1 :: Diemnsion array one
-  @return 0 on success, -1 if it is a duplicate
-  */
-	int addItem(const std::string& name, const T* value, bool det_average = false, const int* dim0 = NULL, const int* dim1 = NULL)
-	{
-		std::pair<typename items_map_t::iterator, bool> insert_ret;
-		insert_ret = m_items.insert(typename items_map_t::value_type(name, item_t(value, det_average, dim0, dim1)));
-		if (!insert_ret.second)
-		{
-			return -1;   // duplicate
-		}
-		else
-		{
-			return 0;
-		}
-	}
-
-  /** finds an item
-  @param item_name :: the item name
-  @param det_average :: Detector average or not
-  @return The item pointer or NULL
-  */
-	const item_t* findItem(const std::string& item_name, bool det_average)
-	{
-		typename items_map_t::const_iterator iter;
-		iter = m_items.find(item_name);
-		if ( (iter != m_items.end()) && (iter->second.det_average == det_average) )
-		{
-			return &(iter->second);
-		}
-		else
-		{
-			return NULL;
-		}
-	}
-
-	int getItem(const std::string& item_name, T& value);
-	int getItem(const std::string& item_name, long* spec_array, int nspec, T* lVal);
-	int getArrayItemSize(const std::string& item_name, int* dims_array, int& ndims);
-	int getArrayItem(const std::string& item_name, long* spec_array, int nspec, T* larray);
-	int getArrayItem(const std::string& item_name, T* larray);
-};
-
-#endif /* ITEM_STRUCT_H */
+#ifndef ITEM_STRUCT_H
+#define ITEM_STRUCT_H
+
+#include <string>
+#include <map>
+
+/// structure to hold a dae item
+template <typename T>
+class item_struct
+{
+public:
+  /// structure to hold a dae item
+	struct item_t
+	{
+		const T* value; ///<array of type T
+		bool det_average;	///< can be averaged over detectors via m_spec_array
+		const int* dim0; ///< dimension zero array
+		const int* dim1; ///< dimension one array
+    ///Constructor
+		item_t(const T* v, bool da, const int* d0, const int* d1) : value(v), det_average(da), dim0(d0), dim1(d1) {}
+	};
+
+private:
+	typedef std::map<std::string, item_t> items_map_t;   ///<Type def of internal map of named items
+	items_map_t m_items;  ///<internal map of named items
+	unsigned long* m_spec_array; ///< length m_ndet; used for averaging values with det_average
+	long m_ndet; ///<number of detectors
+public:
+
+  /** Adds an item
+  @param name :: the item name
+  @param value :: the item 
+  @param det_average :: Detector average or not
+  @param dim0 :: Diemnsion array zero
+  @param dim1 :: Diemnsion array one
+  @return 0 on success, -1 if it is a duplicate
+  */
+	int addItem(const std::string& name, const T* value, bool det_average = false, const int* dim0 = NULL, const int* dim1 = NULL)
+	{
+		std::pair<typename items_map_t::iterator, bool> insert_ret;
+		insert_ret = m_items.insert(typename items_map_t::value_type(name, item_t(value, det_average, dim0, dim1)));
+		if (!insert_ret.second)
+		{
+			return -1;   // duplicate
+		}
+		else
+		{
+			return 0;
+		}
+	}
+
+  /** finds an item
+  @param item_name :: the item name
+  @param det_average :: Detector average or not
+  @return The item pointer or NULL
+  */
+	const item_t* findItem(const std::string& item_name, bool det_average)
+	{
+		typename items_map_t::const_iterator iter;
+		iter = m_items.find(item_name);
+		if ( (iter != m_items.end()) && (iter->second.det_average == det_average) )
+		{
+			return &(iter->second);
+		}
+		else
+		{
+			return NULL;
+		}
+	}
+
+	int getItem(const std::string& item_name, T& value);
+	int getItem(const std::string& item_name, long* spec_array, int nspec, T* lVal);
+	int getArrayItemSize(const std::string& item_name, int* dims_array, int& ndims);
+	int getArrayItem(const std::string& item_name, long* spec_array, int nspec, T* larray);
+	int getArrayItem(const std::string& item_name, T* larray);
+};
+
+#endif /* ITEM_STRUCT_H */
diff --git a/Code/Mantid/Framework/DataHandling/test/GetMaskedDetectorsTest.h b/Code/Mantid/Framework/DataHandling/test/GetMaskedDetectorsTest.h
index f60fd6fd1fdde40e0a332ec0b47a6499654624a4..3e1ec3c342723fa4758fb3fcbb89b5a5c712854d 100644
--- a/Code/Mantid/Framework/DataHandling/test/GetMaskedDetectorsTest.h
+++ b/Code/Mantid/Framework/DataHandling/test/GetMaskedDetectorsTest.h
@@ -22,7 +22,7 @@ class GetMaskedDetectorsTest : public CxxTest::TestSuite
 {
 public:
 
-    static GetMaskedDetectorsTest *createSuite() { return new GetMaskedDetectorsTest(); }
+    static GetMaskedDetectorsTest *createSuite() { return new GetMaskedDetectorsTest(); }
   static void destroySuite(GetMaskedDetectorsTest *suite) { delete suite; }
 
   GetMaskedDetectorsTest()
diff --git a/Code/Mantid/Framework/DataHandling/test/LoadEventPreNeXusTest.h b/Code/Mantid/Framework/DataHandling/test/LoadEventPreNeXusTest.h
index f2ddd6e348e7b4062a648acc4422c627d62df65e..55a6e68e07e7e3267cb730b3ca6f64612691aca9 100644
--- a/Code/Mantid/Framework/DataHandling/test/LoadEventPreNeXusTest.h
+++ b/Code/Mantid/Framework/DataHandling/test/LoadEventPreNeXusTest.h
@@ -43,7 +43,7 @@ class LoadEventPreNeXusTest : public CxxTest::TestSuite
 public:
   LoadEventPreNeXus * eventLoader;
 
-  static LoadEventPreNeXusTest *createSuite() { return new LoadEventPreNeXusTest(); }
+  static LoadEventPreNeXusTest *createSuite() { return new LoadEventPreNeXusTest(); }
   static void destroySuite(LoadEventPreNeXusTest *suite) { delete suite; }
 
   LoadEventPreNeXusTest()
diff --git a/Code/Mantid/Framework/DataHandling/test/LoadPreNeXusMonitorsTest.h b/Code/Mantid/Framework/DataHandling/test/LoadPreNeXusMonitorsTest.h
index 0d9461d7a4cd7c6eca84a9a244009a902f0139a3..d50ebf2672250a404a30099073d19cd2a847d137 100644
--- a/Code/Mantid/Framework/DataHandling/test/LoadPreNeXusMonitorsTest.h
+++ b/Code/Mantid/Framework/DataHandling/test/LoadPreNeXusMonitorsTest.h
@@ -12,7 +12,7 @@
 class LoadPreNeXusMonitorsTest: public CxxTest::TestSuite
 {
 public:
-  static LoadPreNeXusMonitorsTest *createSuite() { return new LoadPreNeXusMonitorsTest(); }
+  static LoadPreNeXusMonitorsTest *createSuite() { return new LoadPreNeXusMonitorsTest(); }
   static void destroySuite(LoadPreNeXusMonitorsTest *suite) { delete suite; }
 
   LoadPreNeXusMonitorsTest()
diff --git a/Code/Mantid/Framework/DataHandling/test/LoadSpice2dTest.h b/Code/Mantid/Framework/DataHandling/test/LoadSpice2dTest.h
index e1f9572b40080fe149625aa4cc66358aee0784cd..f148e53bb7f49083638d81efbe00d6761eb60a8a 100644
--- a/Code/Mantid/Framework/DataHandling/test/LoadSpice2dTest.h
+++ b/Code/Mantid/Framework/DataHandling/test/LoadSpice2dTest.h
@@ -23,7 +23,7 @@
 class LoadSpice2dTest : public CxxTest::TestSuite
 {
 public:
-  static LoadSpice2dTest *createSuite() { return new LoadSpice2dTest(); }
+  static LoadSpice2dTest *createSuite() { return new LoadSpice2dTest(); }
   static void destroySuite(LoadSpice2dTest *suite) { delete suite; }
 
   LoadSpice2dTest()
diff --git a/Code/Mantid/Framework/DataHandling/test/SavePHXTest.h b/Code/Mantid/Framework/DataHandling/test/SavePHXTest.h
index fa14204ec6b52c3d8d7dbc3d7e3e9bc99218e87a..0a9eda0d46fea66f006e84f81ace83f8b6715080 100644
--- a/Code/Mantid/Framework/DataHandling/test/SavePHXTest.h
+++ b/Code/Mantid/Framework/DataHandling/test/SavePHXTest.h
@@ -10,7 +10,7 @@ class SavePHXTest: public CxxTest::TestSuite {
 private:
 	Mantid::API::IAlgorithm* phxSaver;
 public:
-    static SavePHXTest *createSuite() { return new SavePHXTest(); }
+    static SavePHXTest *createSuite() { return new SavePHXTest(); }
   static void destroySuite(SavePHXTest *suite) { delete suite; }
 
 	SavePHXTest() {
diff --git a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeaksWorkspace.h b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeaksWorkspace.h
index 1bc7cc1c3c897c165c46b40dfcf28e37d28f3636..0306ef84a108d07e6558de3a2452ec31089dc75d 100644
--- a/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeaksWorkspace.h
+++ b/Code/Mantid/Framework/DataObjects/inc/MantidDataObjects/PeaksWorkspace.h
@@ -1,392 +1,392 @@
-#ifndef MANTID_DATAOBJECTS_PEAKSPACE_H_
-#define MANTID_DATAOBJECTS_PEAKSPACE_H_ 1
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <string>
-#include "MantidKernel/Logger.h"
-#include "MantidKernel/DateAndTime.h"
-#include "MantidKernel/System.h"
-#include "MantidDataObjects/TableWorkspace.h"
-#include "MantidAPI/TableRow.h"
-#include "MantidAPI/ITableWorkspace.h"
-#include "MantidGeometry/V3D.h"
-#include "MantidGeometry/Math/Matrix.h"
-
-//TODO add basic gets and sets
-//IsamplePosition should be IsampleOrientation
-namespace Mantid
-{
-//----------------------------------------------------------------------
-// Forward declarations
-//----------------------------------------------------------------------
-namespace Kernel
-{
-  class Logger;
-}
-
-namespace DataObjects
-{
-/**
+#ifndef MANTID_DATAOBJECTS_PEAKSPACE_H_
+#define MANTID_DATAOBJECTS_PEAKSPACE_H_ 1
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <string>
+#include "MantidKernel/Logger.h"
+#include "MantidKernel/DateAndTime.h"
+#include "MantidKernel/System.h"
+#include "MantidDataObjects/TableWorkspace.h"
+#include "MantidAPI/TableRow.h"
+#include "MantidAPI/ITableWorkspace.h"
+#include "MantidGeometry/V3D.h"
+#include "MantidGeometry/Math/Matrix.h"
+
+//TODO add basic gets and sets
+//IsamplePosition should be IsampleOrientation
+namespace Mantid
+{
+//----------------------------------------------------------------------
+// Forward declarations
+//----------------------------------------------------------------------
+namespace Kernel
+{
+  class Logger;
+}
+
+namespace DataObjects
+{
+/**
  *  PeaksWorkspace stores information about a set of SCD peaks.
- */
-class DLLExport PeaksWorkspace: public DataObjects::TableWorkspace
-{
-  public:
-
-     virtual const std::string id() const {return "PeaksWorkspace";}
-
-     PeaksWorkspace();
-
-     /**
-          * Initializes calibration values for instrument
-          *
-          * @param L1              Initial path length in m
-          * @parma time_offset     time offset in microseconds
-          * @param  Faciity        Facility name
-          * @param  Instrument     Instrument name
-          * @param  experimentDate Date of experiment
-          * @param version         version number for the peaks file format
-          * @param PanelNames      The names of the panels
-          * @param PanelInfo       panels information as follows:
-          *                        #rows,#cols,width(m),height(m),depth(m),detD(m),
-          *                        center x,y,z; base x,y,z; up x,y,z
-          *                        where x,y(vert),z(beam) is in m McStas coords
-          */
-         void initialize(double      L1,              //cm
-                         double      time_offset,     //seconds
-                         std::string Facility,
-                         std::string Instrument,
-                         Kernel::DateAndTime  experimentDate,
-                         std::string version,
-                         std::vector<std::string> &PanelNames,
-                         std::vector< double*> &PanelInfo);
-
-         /**
-          * Initializes calinration values for instrument from an Isaw-like DetCal file
-          * @param DetCalFileName   The name of the DetCal file.
-          */
-         void initialize(  std::string DetCalFileName);
-    
-     virtual ~PeaksWorkspace();
-
-     /**
-      * Add a peak to the list of peaks
-      *
-      * @param position                  The position of the peak in meters and McStas Coordinates
-      * @param time                      The time in microseconds of the peak
-      * @param hkl                       The h,k, and l values for the peak. (0,0,0) if not indexed
-      * @param sampe_orientation         The sample orientation in radians, using the NeXus convention
-      * @param reflag                    The reflag for the status of various calculations for this peak.
-      * @param runNum                    The run number associated with the peak
-      * @param monCount                  The monitor count for the run
-      * @param bankName                  The bankName as an int
-      * @param PeakCellCount             The count for the intensity at middle pixel(detector)
-      * @param row                       The row for the peak, if there is one, otherwise -1
-      * @param col                       The column for the peak, if there is one, otherwise -1.
-      * @param chan                      The time channel for the peak, if there is one
-      * @param PeakIntegrateCount        The count for the intensity-background of all pixels(detectors) spanned by the peak
-      * @param PeakIntegrateError        The error in the PeakIntegrateCount value.
-      */
-     void addPeak( const Geometry::V3D position,
-                   const double time,
-                   const Geometry::V3D hkl,
-                   const Geometry::V3D sample_orientation,
-                   const int  reflag,
-                   const int  runNum,
-                   const double  monCount,
-                   const int bankName,
-                   const double PeakCellCount,
-                   const double row=0,
-                   const double col=0,
-                   const double chan=0,
-                   const double L2=0,
-                   const double PeakIntegrateCount=0,
-                   const double PeakIntegrateError=0);
-
-     /**
-      * @return the number of peaks
-      */
-     int getNumberPeaks() const;
-
-     /**
-      * Removes the indicated peak
-      * @param peakNum  the peak to remove. peakNum starts at 0
-      */
-     void removePeak( int peakNum);
-     
-
-     //column names are hkl,position,sample_orientation,reflag,time,L1,t_offset,
-     //                  bank,run,ipeak,inti,sigi,moncount,det,row,col,chan.
-
-     /**
-      * @return the d-spacing in Angstroms for the indicated peak
-      */
-     double  get_dspacing( int peakNum);
-
-     /**
-      * @return the wavelength in Angstroms of the indicated peak
-      */
-     double  get_wavelength( int peakNum);
-
-     /**
-      *   @return The magnitude of Q in inv Angstroms for the indicated peak. This magnitude = 1/d spacing
-      */
-     double  get_Qmagnitude( int peakNum);
-
-     /**
-      * @return The vector Q in inv Angstroms(magnitude =1/d spacing) of the indicated peak.
-      *         This vector is at the given sample orientation
-      */
-     Geometry::V3D   get_Qlab( int peakNum);
-
-     /**
-      * @return The vector Q in inv Angstroms(magnitude =1/d spacing) of the indicated peak after
-      *         adjusting for the sample orientation.
-      *
-      */
-     Geometry::V3D   get_QXtal( int peakNum);
-
-
-     /**
-      * @return the h,k, and l value for the given peak
-      */
-     Geometry::V3D   get_hkl( int peakNum);
-
-     /**
-      * @return the row of the given peak
-      */
-     double     get_row(int peakNum);
-
-     /**
-      * @return the column of the given peak
-      */
-     double     get_column( int peakNum);
-
-     /**
-      * @return the time channel of the given peak
-      */
-     double     get_time_channel( int peakNum);
-
-     /**
-      * @return the time offset of the given peak in microseconds
-      */
-     double  get_time_offset( int peakNum);
-
-     /**
+ */
+class DLLExport PeaksWorkspace: public DataObjects::TableWorkspace
+{
+  public:
+
+     virtual const std::string id() const {return "PeaksWorkspace";}
+
+     PeaksWorkspace();
+
+     /**
+          * Initializes calibration values for instrument
+          *
+          * @param L1              Initial path length in m
+          * @parma time_offset     time offset in microseconds
+          * @param  Faciity        Facility name
+          * @param  Instrument     Instrument name
+          * @param  experimentDate Date of experiment
+          * @param version         version number for the peaks file format
+          * @param PanelNames      The names of the panels
+          * @param PanelInfo       panels information as follows:
+          *                        #rows,#cols,width(m),height(m),depth(m),detD(m),
+          *                        center x,y,z; base x,y,z; up x,y,z
+          *                        where x,y(vert),z(beam) is in m McStas coords
+          */
+         void initialize(double      L1,              //cm
+                         double      time_offset,     //seconds
+                         std::string Facility,
+                         std::string Instrument,
+                         Kernel::DateAndTime  experimentDate,
+                         std::string version,
+                         std::vector<std::string> &PanelNames,
+                         std::vector< double*> &PanelInfo);
+
+         /**
+          * Initializes calinration values for instrument from an Isaw-like DetCal file
+          * @param DetCalFileName   The name of the DetCal file.
+          */
+         void initialize(  std::string DetCalFileName);
+    
+     virtual ~PeaksWorkspace();
+
+     /**
+      * Add a peak to the list of peaks
+      *
+      * @param position                  The position of the peak in meters and McStas Coordinates
+      * @param time                      The time in microseconds of the peak
+      * @param hkl                       The h,k, and l values for the peak. (0,0,0) if not indexed
+      * @param sampe_orientation         The sample orientation in radians, using the NeXus convention
+      * @param reflag                    The reflag for the status of various calculations for this peak.
+      * @param runNum                    The run number associated with the peak
+      * @param monCount                  The monitor count for the run
+      * @param bankName                  The bankName as an int
+      * @param PeakCellCount             The count for the intensity at middle pixel(detector)
+      * @param row                       The row for the peak, if there is one, otherwise -1
+      * @param col                       The column for the peak, if there is one, otherwise -1.
+      * @param chan                      The time channel for the peak, if there is one
+      * @param PeakIntegrateCount        The count for the intensity-background of all pixels(detectors) spanned by the peak
+      * @param PeakIntegrateError        The error in the PeakIntegrateCount value.
+      */
+     void addPeak( const Geometry::V3D position,
+                   const double time,
+                   const Geometry::V3D hkl,
+                   const Geometry::V3D sample_orientation,
+                   const int  reflag,
+                   const int  runNum,
+                   const double  monCount,
+                   const int bankName,
+                   const double PeakCellCount,
+                   const double row=0,
+                   const double col=0,
+                   const double chan=0,
+                   const double L2=0,
+                   const double PeakIntegrateCount=0,
+                   const double PeakIntegrateError=0);
+
+     /**
+      * @return the number of peaks
+      */
+     int getNumberPeaks() const;
+
+     /**
+      * Removes the indicated peak
+      * @param peakNum  the peak to remove. peakNum starts at 0
+      */
+     void removePeak( int peakNum);
+     
+
+     //column names are hkl,position,sample_orientation,reflag,time,L1,t_offset,
+     //                  bank,run,ipeak,inti,sigi,moncount,det,row,col,chan.
+
+     /**
+      * @return the d-spacing in Angstroms for the indicated peak
+      */
+     double  get_dspacing( int peakNum);
+
+     /**
+      * @return the wavelength in Angstroms of the indicated peak
+      */
+     double  get_wavelength( int peakNum);
+
+     /**
+      *   @return The magnitude of Q in inv Angstroms for the indicated peak. This magnitude = 1/d spacing
+      */
+     double  get_Qmagnitude( int peakNum);
+
+     /**
+      * @return The vector Q in inv Angstroms(magnitude =1/d spacing) of the indicated peak.
+      *         This vector is at the given sample orientation
+      */
+     Geometry::V3D   get_Qlab( int peakNum);
+
+     /**
+      * @return The vector Q in inv Angstroms(magnitude =1/d spacing) of the indicated peak after
+      *         adjusting for the sample orientation.
+      *
+      */
+     Geometry::V3D   get_QXtal( int peakNum);
+
+
+     /**
+      * @return the h,k, and l value for the given peak
+      */
+     Geometry::V3D   get_hkl( int peakNum);
+
+     /**
+      * @return the row of the given peak
+      */
+     double     get_row(int peakNum);
+
+     /**
+      * @return the column of the given peak
+      */
+     double     get_column( int peakNum);
+
+     /**
+      * @return the time channel of the given peak
+      */
+     double     get_time_channel( int peakNum);
+
+     /**
+      * @return the time offset of the given peak in microseconds
+      */
+     double  get_time_offset( int peakNum);
+
+     /**
       * @return peak intensity at "center"
-      */
-     double  get_ipk(int peakNum);
-
-     /**
-      * @return the initial path length for the peak in m
-      */
-     double  get_L1(int peakNum);
-
-     /**
-      * @return the sample to peak length for the peak in m
-      */
-     double  get_L2(int peakNum);
-
-
-     /**
-      * @return the bank number associated with the given peak
-      */
-     int    get_Bank(int peakNum);
-
-     /**
-      * @return the position of the given peak in m and in McStas coordinates
-      */
-     Geometry::V3D   getPosition( int peakNum);
-
-     /**
+      */
+     double  get_ipk(int peakNum);
+
+     /**
+      * @return the initial path length for the peak in m
+      */
+     double  get_L1(int peakNum);
+
+     /**
+      * @return the sample to peak length for the peak in m
+      */
+     double  get_L2(int peakNum);
+
+
+     /**
+      * @return the bank number associated with the given peak
+      */
+     int    get_Bank(int peakNum);
+
+     /**
+      * @return the position of the given peak in m and in McStas coordinates
+      */
+     Geometry::V3D   getPosition( int peakNum);
+
+     /**
       * @return the sample orientation of the given peak in radians
-      */
-     Geometry::V3D  getSampleOrientation( int peakNum);
-
-     /**
+      */
+     Geometry::V3D  getSampleOrientation( int peakNum);
+
+     /**
       * @return the run number of the associated peak
-      */
-     int  getRunNumber( int peakNum);
-
-     /**
+      */
+     int  getRunNumber( int peakNum);
+
+     /**
       * @return the reflag( status flag) for the given peak
-      */
-     int getReflag( int peakNum );
-
-     /**
+      */
+     int getReflag( int peakNum );
+
+     /**
       * @return the monitor count for the run associated with the given peak
-      */
-     double getMonitorCount( int peakNum);
-     /**
-      * @return the intensity of the "middle" cell of the peak
-      */
-     double  getPeakCellCount( int peakNum);
-
-     /**
-      * @return the total intensity -background for all the cells associated with the peak
-      */
-     double  getPeakIntegrationCount( int peakNum);
-
-     /**
-      *  @return the error in the PeakIntegration count
-      */
-     double  getPeakIntegrationError( int peakNum);
-
-     /**
+      */
+     double getMonitorCount( int peakNum);
+     /**
+      * @return the intensity of the "middle" cell of the peak
+      */
+     double  getPeakCellCount( int peakNum);
+
+     /**
+      * @return the total intensity -background for all the cells associated with the peak
+      */
+     double  getPeakIntegrationCount( int peakNum);
+
+     /**
+      *  @return the error in the PeakIntegration count
+      */
+     double  getPeakIntegrationError( int peakNum);
+
+     /**
       * @return the time of this peak in microseconds
-      */
-     double getTime( int peakNum)
-     {
-       return cell<double>(peakNum, ItimeCol);
-     }
-
-     /**
-      * Sets the time( hence wavelength and d spacing) for this peak
-      * @param newTime  the new time in microseconds
+      */
+     double getTime( int peakNum)
+     {
+       return cell<double>(peakNum, ItimeCol);
+     }
+
+     /**
+      * Sets the time( hence wavelength and d spacing) for this peak
+      * @param newTime  the new time in microseconds
       * @param peakNum  the peak number starting at 0;
-      */
-     void setTime( double newTime, int peakNum)
-     {
-       cell<double>(peakNum, ItimeCol) = newTime;
-     }
-
-     void setRowColChan( double row, double col, double chan, int peakNum)
-     {
-       cell<double>(peakNum, IPeakRowCol)= row;
-       cell<double>( peakNum, IPeakColCol )= col;
-       cell<double>( peakNum, IPeakChanCol )= chan;
-     }
-
-     /**
-      * Sets the h,k, and l values for all peaks using the orientation matrix
-      *
-      * @param UB the orientation matrix that maps the column hkl vector to the column
-      *            q vector where |q|=1/d-spacing and  x,y(up),z(beam) are in McStas coordinates
-      *
-      *@param tolerance  Only index peaks if the h,k, and l values are within tolerance of an integer
-      *                   otherwise set to 0,0,0
-      *@param SetOnlyUnset  if true, only peaks with h,k,l values of 0,0,0 will be set.
-      *                     Used for twinned peaks.
-      *
-      *@param reflag  If SetOnlyUnset is true, gives the new reflag value for 2nd digit
-      */
-     void    sethkls( Geometry::Matrix<double>UB,  double tolerance, bool SetOnlyUnset, int reflag);
-
-     /**
-      * Sets all the h,k,l values to 0,0,0
-      */
-     void    clearhkls( );
-
-     /**
-      *  sets the h,k,l value for the given peak
-      */
-     void    sethkl( const Geometry::V3D hkl,int peakNum);
-
-
-     /**
-      * Sets the Peak Intensity count for the indicated peak
-      */
-     void    setPeakCount( double count, int peakNum);
-
-     /**
-      *  Sets the total peak intensity-background for the indicated peak
-      */
-     void    setPeakIntegrateCount( double count, int peakNum);
-
-     /**
+      */
+     void setTime( double newTime, int peakNum)
+     {
+       cell<double>(peakNum, ItimeCol) = newTime;
+     }
+
+     void setRowColChan( double row, double col, double chan, int peakNum)
+     {
+       cell<double>(peakNum, IPeakRowCol)= row;
+       cell<double>( peakNum, IPeakColCol )= col;
+       cell<double>( peakNum, IPeakChanCol )= chan;
+     }
+
+     /**
+      * Sets the h,k, and l values for all peaks using the orientation matrix
+      *
+      * @param UB the orientation matrix that maps the column hkl vector to the column
+      *            q vector where |q|=1/d-spacing and  x,y(up),z(beam) are in McStas coordinates
+      *
+      *@param tolerance  Only index peaks if the h,k, and l values are within tolerance of an integer
+      *                   otherwise set to 0,0,0
+      *@param SetOnlyUnset  if true, only peaks with h,k,l values of 0,0,0 will be set.
+      *                     Used for twinned peaks.
+      *
+      *@param reflag  If SetOnlyUnset is true, gives the new reflag value for 2nd digit
+      */
+     void    sethkls( Geometry::Matrix<double>UB,  double tolerance, bool SetOnlyUnset, int reflag);
+
+     /**
+      * Sets all the h,k,l values to 0,0,0
+      */
+     void    clearhkls( );
+
+     /**
+      *  sets the h,k,l value for the given peak
+      */
+     void    sethkl( const Geometry::V3D hkl,int peakNum);
+
+
+     /**
+      * Sets the Peak Intensity count for the indicated peak
+      */
+     void    setPeakCount( double count, int peakNum);
+
+     /**
+      *  Sets the total peak intensity-background for the indicated peak
+      */
+     void    setPeakIntegrateCount( double count, int peakNum);
+
+     /**
       * Sets the error in the PeakIntegrate Count
-      */
-     void    setPeakIntegrateError( double count, int peakNum);
-
-     /**
-      * Sets the peak position( in m and McStas) for the indicated peak
-      */
-     void    setPeakPos( Geometry::V3D position, int peakNum);
-
-     /**
-      * Sets the status flag for the indicated peak
-      */
-     void    setReflag( int newValue, int peakNum);
-
-     /**
-      *  Writes the peak information to a peaks file
-      */
-     void    write( std::string filename );
-
-     /**
-      * Reads in new peaks from a Peaks file and appends it to the current peaks.
-      * Use clearhkls to restart
-      */
-     void    append( std::string filename);
-
-
-
-     /**
-      * Removes all peaks
-      */
-     void    removeAllPeaks();
-
-
-     bool   addColumn   (   const std::string &      type,
-                     const std::string &    name
-      ) {return false;}
-
-     static const int IhklCol =0;  /** Column number where V3D hkl value is stored*/
-     static const int IpositionCol =1;/** Column number where V3D xyz position is stored*/
-     static const int IsamplePositionCol =2;/**Column where V3d sample orientation is stored*/
-     static const int IreflagCol =3; /** Column where the reflag is stored */
-     static const int IDetBankCol =4; /** Column where the Bank number is store */
-     static const int IrunNumCol =5; /** Column where the run number is stored */
-     static const int IPeakIntensityCol =6; /** Column where intensity of middle cell is stored */
-     static const int IPeakIntegrateCol =7;/** Column where intensity-backgound of all cells in peak is stored */
-     static const int IPeakIntegrateErrorCol =8; /** Column where the error in the integrated intensity is stored */
-     static const int IMonitorCountCol =9;    /** Column where the monitor count is stored */
-     static const int IPeakRowCol =10;      /** Column where the row of the peak is stored */
-     static const int IPeakColCol =11;     /** Column where the column of the peak is stored */
-     static const int IPeakChanCol =12;      /** Column where the time channel of the peak is stored */
-     static const int IL1Col =13;              /** Column where the initial path of the peak is stored */
-     static const int IL2Col =14;               /** Column where the L2 of the peak is stored */
-     static const int ItimeCol =15;                 /** Column where the time of the peak is stored */
-     static const int ItimeOffsetChanCol =16;  /** Column where the time offset of the peak is stored */
-
-
-
-
-
-
-
-  private:
-
-
-       double C_L1;          /** Last L1 value in m used */
-       double C_time_offset;   /** Last time offset used( in usec) */
-       std::string C_Facility; /** Last Facility set or read */
-       std::string C_Instrument; /** Last Instrument set or read */
-       std::string C_version;   /** Last version set or read */
-
-       std::string readHeader( std::ifstream& in );
-
-       void ClearDeleteCalibrationData();
-       static Kernel::Logger& g_log;
-
-       std::vector< std::string > DetNames;/** Names of panels for calibration info*/
-
-        std::vector< double* > DetInfo; /** Calibration info for panels */
-
-        Kernel::DateAndTime  C_experimentDate;/** Date associated with peaks file */
-};
-
-
-/// Typedef for a shared pointer to a peaks workspace.
-typedef boost::shared_ptr<PeaksWorkspace> PeaksWorkspace_sptr;
-
-}
-}
-#endif
-
-
-    
-
-
+      */
+     void    setPeakIntegrateError( double count, int peakNum);
+
+     /**
+      * Sets the peak position( in m and McStas) for the indicated peak
+      */
+     void    setPeakPos( Geometry::V3D position, int peakNum);
+
+     /**
+      * Sets the status flag for the indicated peak
+      */
+     void    setReflag( int newValue, int peakNum);
+
+     /**
+      *  Writes the peak information to a peaks file
+      */
+     void    write( std::string filename );
+
+     /**
+      * Reads in new peaks from a Peaks file and appends it to the current peaks.
+      * Use clearhkls to restart
+      */
+     void    append( std::string filename);
+
+
+
+     /**
+      * Removes all peaks
+      */
+     void    removeAllPeaks();
+
+
+     bool   addColumn   (   const std::string &      type,
+                     const std::string &    name
+      ) {return false;}
+
+     static const int IhklCol =0;  /** Column number where V3D hkl value is stored*/
+     static const int IpositionCol =1;/** Column number where V3D xyz position is stored*/
+     static const int IsamplePositionCol =2;/**Column where V3d sample orientation is stored*/
+     static const int IreflagCol =3; /** Column where the reflag is stored */
+     static const int IDetBankCol =4; /** Column where the Bank number is store */
+     static const int IrunNumCol =5; /** Column where the run number is stored */
+     static const int IPeakIntensityCol =6; /** Column where intensity of middle cell is stored */
+     static const int IPeakIntegrateCol =7;/** Column where intensity-backgound of all cells in peak is stored */
+     static const int IPeakIntegrateErrorCol =8; /** Column where the error in the integrated intensity is stored */
+     static const int IMonitorCountCol =9;    /** Column where the monitor count is stored */
+     static const int IPeakRowCol =10;      /** Column where the row of the peak is stored */
+     static const int IPeakColCol =11;     /** Column where the column of the peak is stored */
+     static const int IPeakChanCol =12;      /** Column where the time channel of the peak is stored */
+     static const int IL1Col =13;              /** Column where the initial path of the peak is stored */
+     static const int IL2Col =14;               /** Column where the L2 of the peak is stored */
+     static const int ItimeCol =15;                 /** Column where the time of the peak is stored */
+     static const int ItimeOffsetChanCol =16;  /** Column where the time offset of the peak is stored */
+
+
+
+
+
+
+
+  private:
+
+
+       double C_L1;          /** Last L1 value in m used */
+       double C_time_offset;   /** Last time offset used( in usec) */
+       std::string C_Facility; /** Last Facility set or read */
+       std::string C_Instrument; /** Last Instrument set or read */
+       std::string C_version;   /** Last version set or read */
+
+       std::string readHeader( std::ifstream& in );
+
+       void ClearDeleteCalibrationData();
+       static Kernel::Logger& g_log;
+
+       std::vector< std::string > DetNames;/** Names of panels for calibration info*/
+
+        std::vector< double* > DetInfo; /** Calibration info for panels */
+
+        Kernel::DateAndTime  C_experimentDate;/** Date associated with peaks file */
+};
+
+
+/// Typedef for a shared pointer to a peaks workspace.
+typedef boost::shared_ptr<PeaksWorkspace> PeaksWorkspace_sptr;
+
+}
+}
+#endif
+
+
+    
+
+
diff --git a/Code/Mantid/Framework/DataObjects/src/PeaksWorkspace.cpp b/Code/Mantid/Framework/DataObjects/src/PeaksWorkspace.cpp
index 769d16977a912bf6f99677f2a8df9e0720d7baaf..6fd4198aaa3e8979feb5b01ca809910da65b88bf 100644
--- a/Code/Mantid/Framework/DataObjects/src/PeaksWorkspace.cpp
+++ b/Code/Mantid/Framework/DataObjects/src/PeaksWorkspace.cpp
@@ -1,1110 +1,1110 @@
-#include "MantidKernel/Logger.h"
-#include "MantidKernel/Unit.h"
-#include "MantidKernel/DateAndTime.h"
-#include "MantidAPI/ColumnFactory.h"
-#include "MantidGeometry/Quat.h"
-#include "MantidDataObjects/TableWorkspace.h"
-#include "MantidAPI/WorkspaceProperty.h"
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MantidDataObjects/PeaksWorkspace.h"
-#include "MantidGeometry/V3D.h"
-#include "MantidAPI/AlgorithmFactory.h"
-#include "MantidAPI/MatrixWorkspace.h"
-#include "boost/shared_ptr.hpp"
-#include <algorithm>
-#include <string>
-#include <ostream>
-#include <exception>
-#include <iostream>
-#include <fstream>
-#include <stdio.h>
-#include <stdlib.h>
-#include <math.h>
-
-namespace Mantid
-{
-namespace DataObjects
-{
-  /// Register the workspace as a type
-  DECLARE_WORKSPACE(PeaksWorkspace );
-
-  double pi = 3.1415926535;
-/*//moved to header file
-  std::vector< std::string > DetNames;
-
-  std::vector< double* > DetInfo;
-
-  Kernel::DateAndTime  C_experimentDate;
-  */
-  Kernel::Logger& PeaksWorkspace::g_log = Kernel::Logger::get("PeaksWorkspace");
-
-
-  /** Constructor. Create a table with all the required columns.
-   *
-   * @return PeaksWorkspace object
-   */
-  PeaksWorkspace::PeaksWorkspace():TableWorkspace( 0 )
-  {
-
-    TableWorkspace::addColumn( std::string( "V3D" )  ,  std::string( "hkl" ) );
-    TableWorkspace::addColumn( std::string( "V3D" ) ,  std::string( "position" ) );
-    TableWorkspace::addColumn( std::string( "V3D" ) ,  std::string( "sample_orientation" ) );
-    TableWorkspace::addColumn( std::string( "int" ) ,  std::string( "reflag" ) );
-    TableWorkspace::addColumn( std::string( "int" ) ,  std::string( "bank" ) );
-    TableWorkspace::addColumn( std::string( "int" ) ,  std::string( "run" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "ipeak" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "inti" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "sigi" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "moncount" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "row" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "col" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "chan" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "L1" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "L2" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "time" ) );
-    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "t_offset" ) );
-
-  }
-
-
-  /** Destructor */
-  PeaksWorkspace::~PeaksWorkspace()
-  {
-    ClearDeleteCalibrationData();
-  }
-
-  void PeaksWorkspace:: ClearDeleteCalibrationData()
-  {
-    DetNames.clear();// elements std::string so will delete self??
-
-    for( size_t n=DetInfo.size(); n >0;)
-    {
-      double* val = DetInfo[n-1];
-      DetInfo.pop_back();
-      delete val;
-
-      n=DetInfo.size();
-    }
-  }
-
-  void PeaksWorkspace::initialize( double      L1 ,               //m
-                                      double      time_offset ,      //microseconds
-                                      std::string Facility ,
-                                      std::string Instrument ,
-                                      Kernel::DateAndTime  experimentDate ,
-                                      std::string version ,
-
-                                      std::vector<std::string> &PanelNames,
-                                      std::vector< double*> &PanelInfo
-                                      )
-     {
-       C_L1 = L1;
-       C_time_offset = time_offset;
-       C_Facility = Facility;
-       C_Instrument = Instrument;
-       C_version = version;
-       C_experimentDate = experimentDate;
-       ClearDeleteCalibrationData();
-       for( int i=0; i<PanelNames.size() ; i++)
-         DetNames.push_back( std::string(PanelNames[i]));
-
-       for( int i=0; i<PanelInfo.size(); i++)
-       {
-         double* data = PanelInfo[i];
-         double* data1 = new double[15];
-         for( int j=0; j<15;j++)
-         {
-           data1[j] = data[j];
-           if( (j>=2) &&( j <=8))
-             data1[j] *=100;
-         }
-         DetInfo.push_back(data1);
-       }
-     }
-
-     void PeaksWorkspace::initialize(  std::string DetCalFileName)
-     {
-       ClearDeleteCalibrationData();
-
-       try
-       {
-         std::ifstream in( DetCalFileName.c_str() );
-
-         std::string s = readHeader( in );
-         in.close();
-       }catch( char * str)
-       {
-         std::cout <<"Exception reading detector info "<<str <<std::endl;
-       }
-
-     }
-
-  void PeaksWorkspace::addPeak( const Geometry::V3D position ,
-      const double time ,
-      const Geometry::V3D hkl ,
-      const Geometry::V3D sample_orientation ,  //radians ,  phi,chi,omega
-      const int  reflag ,
-      const int  runNum ,
-      const double monCount ,
-      const int bankName ,
-      const double PeakCellCount ,
-      const double row ,
-      const double col ,
-      const double chan ,
-      const double L2 ,
-      const double PeakIntegrateCount ,
-      const double PeakIntegrateError
-  )
-  {
-    int i = rowCount();
-    insertRow( i );
-    double T = time;
-
-    try
-    {
-
-      getRef< double >( std::string( "ipeak" ) ,  i ) = PeakCellCount;
-      getRef< double >( std::string( "inti" ) ,  i ) = PeakIntegrateCount;
-      getRef< double >( std::string( "sigi" ) ,  i ) = PeakIntegrateError;
-      getRef< double >( std::string( "moncount" ) ,  i ) = monCount;
-
-      getRef< Geometry::V3D >( std::string( "position" ) ,  i ) =
-          Geometry::V3D( position );
-
-      getRef< Geometry::V3D >( std::string( "sample_orientation" ) ,  i ) =
-          Geometry::V3D( sample_orientation );
-
-      getRef< Geometry::V3D >( std::string( "hkl" ) ,  i ) =
-          Geometry::V3D( hkl );
-
-      getRef< double >( std::string( "L1" ) ,  i ) = C_L1;
-      getRef< double >( std::string( "time" ) ,  i ) = time;
-      getRef< double >( std::string( "t_offset" ) ,  i ) = C_time_offset;
-      getRef< int >( std::string( "run" ) ,  i ) = runNum;
-
-      getRef< double >( std::string( "chan" ) ,  i ) = chan;
-      getRef< double >( std::string( "L2" ) ,  i ) = L2;
-      getRef< int >( std::string( "bank" ) ,  i ) =
-          ( bankName );
-
-      getRef< double >( std::string( "row" ) ,  i ) = row;
-      getRef< double >( std::string( "col" ) ,  i ) = col;
-      getRef< int >( std::string( "reflag" ) ,  i ) = reflag;
-
-    }catch( char * str )
-    {
-      std::cout <<  "exception occurred " <<  str <<  "\n";
-    }
-
-  }
-
-
-  /**
-   * @return the number of peaks
-   */
-  int PeaksWorkspace::getNumberPeaks() const
-  {
-    return rowCount();
-  }
-
-  /** Remove a peak
-   *
-   * @param peakNum :: peak index to remove
-   */
-  void PeaksWorkspace::removePeak( int peakNum )
-  {
-    removeRow( peakNum );
-  }
-
-
-  //returns true if strictly less than
-  bool compareAsVecs( std::vector< int > arg1, std::vector< int > arg2 )
-  {
-    if( arg1.size() < 3 )
-    {
-      if( arg2.size() < 3 )
-        return true;
-      else
-        return false;
-    }
-
-    if( arg2.size() < 3 )
-      return false;   //hopefully bad values go to back
-
-    int r1 = arg1[0];
-    int r2 = arg2[0];
-
-    if( r1 < r2 )
-      return true;
-
-    if( r1 > r2 )
-      return false;
-
-    r1 = arg1[1];
-    r2 = arg2[1];
-
-    if( r1 < r2 )
-      return true;
-
-    return false;
-  }
-
-
-
-  /** Write an ISAW-style .peaks file
-   *
-   * @param filename :: filename to write to
-   */
-  void PeaksWorkspace::write( std::string filename )
-  {
-    try
-    {
-      std::ofstream out( filename.c_str() );
-      std::string date =C_experimentDate.to_ISO8601_string();
-
-      out <<  "Version: " <<  C_version <<  " Facility: " <<  C_Facility  ;
-      out <<  " Instrument: " <<  C_Instrument <<  " Date: " ;
-      out<< std::setw(date.length())<<date<< std::endl;
-
-      out <<  "6        L1    T0_SHIFT" <<  std::endl;
-      out << "7 "<< std::setw( 11 )  ;
-      out <<   std::setprecision( 4 ) <<  std::fixed <<  ( C_L1*100 ) ;
-      out << std::setw( 12 ) <<  std::setprecision( 3 ) <<  std::fixed  ;
-      out << ( C_time_offset ) <<  std::endl;
-
-      out <<  "4 DETNUM  NROWS  NCOLS   WIDTH   HEIGHT     DEPTH   DETD  "
-          <<  " CenterX   CenterY   CenterZ   BaseX    BaseY    BaseZ    "
-          <<  "  UpX      UpY      UpZ" <<  std::endl;
-
-      for(size_t i = 0 ; i < DetNames.size() ; i++ )
-      {
-        double* info = DetInfo[ i ];
-        out <<  "5" <<  std::setw( 7 ) <<  DetNames[ i ];
-
-        out <<  std::setw( 7 ) <<  (int)info[ 0 ] <<  std::setw( 7 );
-        out  <<  (int)info[ 1 ]<<  std::setw( 9 ) <<  std::setprecision( 4 );
-        out  <<  std::fixed <<  info[ 2 ];
-
-        for( int j = 3 ; j < 15 ; j++ )
-        {
-          out <<  std::setw( 9 ) <<  std::setprecision( 4 ) <<  std::fixed;
-          out <<  info[ j ];
-
-        }
-        out  <<  std::endl;
-
-      }
-
-
-      std::vector< std::vector< int > > SortKeys;
-
-      for( int i = 0 ; i < rowCount() ; i++ )
-      {
-        std::vector<int > dat ;
-
-        dat.push_back(getRef< int >( "run" ,  i ) );
-        dat.push_back( getRef< int >( "bank" ,  i ) );
-
-        dat.push_back( i );
-        SortKeys.push_back( dat );
-      }
-
-      stable_sort( SortKeys.begin() ,  SortKeys.end() ,  compareAsVecs );
-
-      int LastRun = -1;;
-      int LastDet;
-
-      int thisRun ,  thisReflag;
-      double this_h ,  this_k ,  this_l ,   this_row ,  this_col ,
-      this_chan ,  this_L2 ,  this_az ,  this_polar ,  this_time ,
-      this_inti ,  this_ipk ,   this_sigi ,  this_chi ,  this_phi ,
-      this_omega ,   this_monCt ,  this_tOffset ,  this_L1;
-
-      int thisDet;
-      Geometry::V3D thisSampleOrientation;
-      int seqNum = 0;
-      std::vector< std::vector< int > >::iterator it;
-
-      for ( it = SortKeys.begin(); it != SortKeys.end(); ++it )
-      {
-        seqNum++;
-        std::vector<int > elt = *it;
-        int peakNum =elt[2];
-
-        this_row =
-            getRef< double  >( std::string( "row" ) ,  peakNum );
-        Geometry::V3D hkl = getRef< Geometry::V3D  > ( std::string( "hkl" ) ,
-            peakNum );
-        this_h = hkl.X();
-        this_k = hkl.Y();
-        this_l = hkl.Z();
-        this_col = getRef < double >( std::string( "col" ) ,  peakNum );
-        this_chan = getRef< double >( std::string( "chan" ) ,  peakNum );
-        this_ipk = getRef< double >( "ipeak" ,  peakNum );
-        this_inti = getRef< double >( "inti" ,  peakNum );
-        this_sigi = getRef< double >( "sigi" ,  peakNum );
-
-        this_monCt = getRef< double >( std::string( "moncount" ) ,  peakNum );
-        this_L1 = getRef< double >( "L1" ,  peakNum );
-        this_tOffset = getRef< double >( "t_offset" ,  peakNum );
-        this_time = getRef< double >( "time" ,  peakNum );
-        thisRun = getRef< int >( "run" ,  peakNum );
-        thisReflag = Int( peakNum ,  3 );
-        thisDet = getRef< int >( "bank" ,  peakNum );
-
-        Geometry::V3D position = getRef< Geometry::V3D >( "position" ,
-            peakNum );
-
-        double x = position.X();
-        double y = position.Y();
-        double z = position.Z();
-        this_L2 = sqrt( x*x + y*y + z*z );
-        this_polar = acos(  z/this_L2 );
-        this_az = atan2( y ,  x );
-
-
-        thisSampleOrientation = getRef<Geometry::V3D >( "sample_orientation" ,
-            peakNum );
-        double mult = 180/3.1415926535897932384626433832795;
-        this_chi = thisSampleOrientation.Y()*mult;
-        this_phi = thisSampleOrientation.X()*mult;
-        this_omega = thisSampleOrientation.Z()*mult;
-
-        if( thisRun != LastRun  || LastDet != thisDet )
-        {
-          out <<  "0 NRUN DETNUM    CHI    PHI  OMEGA MONCNT" <<  std::endl;
-          out <<  "1" <<  std::setw( 5 ) <<  thisRun <<  std::setw( 7 ) <<
-              std::right <<  thisDet;
-
-          out  <<  std::setw( 7 ) <<  std::fixed <<  std::setprecision( 2 )
-          <<  this_chi;
-
-          out  <<  std::setw( 7 ) <<  std::fixed <<  std::setprecision( 2 )
-          <<  this_phi;
-
-          out  <<  std::setw( 7 ) <<  std::fixed <<  std::setprecision( 2 )
-          <<  this_omega;
-          out  <<  std::setw( 7 ) <<  (int)( .5 + this_monCt ) <<  std::endl;
-          LastRun = thisRun;
-          LastDet = thisDet;
-          out <<  "2   SEQN    H    K    L     COL     ROW    CHAN       L2  "
-              <<  "2_THETA       AZ        WL        D   IPK      INTI   "
-              << "SIGI RFLG" <<  std::endl;
-        }
-
-        int h = (int)floor( this_h+.5) , //assume when set via UB those
-            k = (int)floor( this_k +.5 ) , //not close enuf get 0's
-            l = (int)floor( this_l +.5 );
-
-
-        out <<  "3" <<  std::setw( 7 ) <<  seqNum <<  std::setw( 5 ) <<  h
-            <<  std::setw( 5 ) <<  k <<  std::setw( 5 ) <<  l;
-        out <<  std::setw( 8 ) <<  std::fixed << std::setprecision( 2 )
-        << this_col;
-
-        out << std::setw( 8 ) << std::fixed << std::setprecision( 2 )
-        << this_row;
-
-        out << std::setw( 8 ) << std::fixed << std::setprecision( 2 )
-        << this_chan;
-
-
-        out << std::setw( 9 ) << std::fixed << std::setprecision( 3 )
-        << ( this_L2*100 );
-
-        out << std::setw( 9 ) << std::fixed << std::setprecision( 5 )
-        << this_polar;
-
-        out << std::setw( 9 ) << std::fixed << std::setprecision( 5 )
-        << this_az;
-
-
-        std::vector< double >xx ,  yy;
-        xx.push_back( this_time );
-        Kernel::Units::Wavelength wl;
-        wl.fromTOF( xx ,  yy ,  this_L1 ,  this_L2 ,  this_polar ,
-            0 ,  1.2 ,  1.2 );
-
-        out << std::setw( 10 ) << std::fixed << std::setprecision( 6 )
-        << xx[ 0 ];
-
-        xx[ 0 ] = this_time;
-        Kernel::Units::dSpacing dsp;
-
-        dsp.fromTOF( xx ,  yy ,  this_L1 ,  this_L2 ,  this_polar ,
-            0 ,  1.2 ,  1.2 );
-
-        out << std::setw( 9 ) << std::fixed << std::setprecision( 4 )
-        <<  xx[ 0 ];
-
-        out << std::setw( 6 ) << (int)this_ipk << std::setw( 10 )
-        << std::fixed << std::setprecision( 2 ) << this_inti;
-
-        out << std::setw( 7 ) << std::fixed << std::setprecision( 2 )
-        << this_sigi << std::setw( 5 ) << thisReflag << std::endl;
-
-      }
-
-      out.flush();
-      out.close();
-
-    }catch( char *s )
-    {
-      g_log.error(std::string(s));
-      throw( std::string(s));
-    }
-   catch( std::exception &e)
-   {
-     g_log.error(e.what());
-          throw( e.what());
-   }catch(...)
-   {
-     g_log.error("Unknown Error");
-     throw( "Unknown Error");
-   }
-  }
-
-
-  /** Remove all the peaks from the workspace */
-  void PeaksWorkspace::removeAllPeaks()
-  {
-    for( int i = rowCount() - 1 ; i >= 0 ; i-- )
-      removeRow( i );
-  }
-
-
-  //stops at spaces and \n. strips
-  std::string getWord( std::ifstream &in ,  bool consumeEOL )
-  {
-    std::string s;
-    char c = 0;
-    if( in.good() )
-      for(  c = in.get() ; c == ' ' && in.good() ; c = in.get() )
-      {}
-    else
-      return std::string();
-
-    if( c == '\n' )
-    {
-      if( !consumeEOL )
-        in.putback( c );
-
-      return std::string();
-    }
-
-    s.push_back( c );
-
-    if( in.good() )
-      for(  c = in.get() ; in.good()&&c != ' ' && c != '\n' && c != '\r' ; c = in.get() )
-        s.push_back( c );
-
-    if( ((c == '\n') || (c == '\r')) && !consumeEOL )
-      in.putback( c );
-
-    return s;
-  }
-
-
-  void readToEndOfLine( std::ifstream& in ,  bool ConsumeEOL )
-  {
-    while( in.good() && getWord( in ,  false ).length() > 0  )
-      getWord( in ,  false );
-
-    if( !ConsumeEOL )
-      return ;
-
-    getWord( in ,  true );
-  }
-
-
-  /** Reads the header of a .peaks file
-   *
-   * @param in :: stream of the input file
-   * @return TODO: I don't know what here
-   */
-  std::string PeaksWorkspace::readHeader( std::ifstream& in )
-  {
-
-    std::string r = getWord( in ,  false );
-
-    if( r.length() < 1 )
-      throw std::logic_error( std::string( "No first line of Peaks file" ) );
-
-    if( r.compare( std::string( "Version:" ) ) != 0 )
-      throw std::logic_error(
-          std::string( "No Version: on first line of Peaks file" ) );
-
-    C_version = getWord( in ,  false );
-
-    if( C_version.length() < 1 )
-      throw  std::logic_error( std::string( "No Version for Peaks file" ) );
-
-    C_Facility = getWord( in ,  false );
-
-    if( C_Facility.length() < 1  )
-      throw  std::logic_error(
-          std::string( "No Facility tag for Peaks file" ) );
-
-    if( C_Facility.compare( std::string( "Facility:" ) ) != 0 )
-      throw  std::logic_error(
-          std::string( "No Facility tag for Peaks file" ) );
-
-    C_Facility = getWord( in ,  false );
-
-    if( C_Facility.length() < 1 )
-      throw  std::logic_error( std::string( "No Facility in Peaks file" ) );
-
-    C_Instrument = getWord( in ,  false );
-
-    if( C_Instrument.length() < 1 )
-      throw  std::logic_error(
-          std::string( "No Instrument tag for Peaks file" ) );
-
-    if( C_Instrument.compare( std::string( "Instrument:" ) ) != 0 )
-      throw  std::logic_error(
-          std::string( "No Instrument tag for Peaks file" ) );
-
-    C_Instrument = getWord( in ,  false );
-
-    if( C_Instrument.length() < 1 )
-      throw std::logic_error(
-          std::string( "No Instrument for Peaks file" ) );
-
-    std::string date = getWord( in ,  false );
-
-    if(date .length()< 1)
-    {
-      Kernel::DateAndTime x = Kernel::DateAndTime::get_current_time();
-      C_experimentDate.set_from_time_t(x.to_time_t());
-    }
-
-    else
-      if( date.compare( std::string( "Date:" ) ) == 0 )
-      {
-        date = getWord( in ,  false );
-        C_experimentDate = Kernel::DateAndTime( date );
-      }
-
-
-    while( getWord( in ,  false ).length() > 0 )
-      getWord( in ,  false );
-
-    // Now get info on detector banks
-
-    getWord( in ,  true );
-    std::string s = getWord( in ,  false );
-    if( s.compare( "6" ) != 0 )
-      throw std::logic_error(
-          std::string( "Peaks File has no L0 and T0 header info" ) );
-
-    readToEndOfLine( in ,  true );
-    s = getWord( in ,  false );
-
-    if( s.compare( "7" ) != 0 )
-      throw std::logic_error(
-          std::string( "Peaks File has no L0 and T0 info" ) );
-
-    C_L1 = strtod( getWord( in ,  false ).c_str() ,  0 )/100;
-    C_time_offset = strtod( getWord( in ,  false ).c_str() ,  0 );
-
-
-    readToEndOfLine( in ,  true );
-    for( s = getWord( in ,  false ) ; s.length() < 1 ; getWord( in ,  true ) )
-    {
-      s = getWord( in ,  false );
-    }
-
-    if( s.compare( "4" ) != 0 )
-      throw std::logic_error( std::string( "Peaks File has no bank descriptor line" ) );
-
-    readToEndOfLine( in ,  true );
-    s = getWord( in ,  false );
-    while( s.length() < 1 && in.good() )
-    {
-      s = getWord( in ,  true );
-      s = getWord( in ,  false );
-    }
-
-    if(  !in.good() )
-      throw std::runtime_error( std::string( "Peaks File Quit too fast" ) );
-
-    if( s.compare( std::string( "5" ) ) != 0 )
-      throw std::logic_error( "No information on banks given" );//log this only
-
-
-    bool err = false;
-    while( s.compare( std::string( "5" ) ) == 0  )
-    {
-      double* data = new double[ 15 ];//Use boost pointers here??? does gc
-      s = getWord( in ,  false );
-
-      if( s.length() < 1 )
-        err = true;
-      else
-        DetNames.push_back( s );
-
-      for( int i = 0 ; i < 15 && !err ; i++ )
-      {
-        s = getWord( in ,  false );
-        if( s.length() < 1 )
-          err = true;
-        else
-          data[ i ] = strtod( s.c_str() ,  0 );
-
-      }
-
-      if( err )
-        s = std::string( "2" );
-      else
-      {
-        DetInfo.push_back( data );
-
-        for( s = getWord( in ,  false ) ; s.length() > 0 ; s = getWord( in ,  false ) )
-        {}
-
-        s = getWord( in ,  true );
-        s = getWord( in ,  false );//no blank lines will be allowed so far
-      }
-    }
-
-
-    if( err )
-      return std::string();
-
-    return s;
-  }
-
-
-
-  std::string readPeak( std::string lastStr ,  std::ifstream& in ,
-      double& h , double& k ,  double& l ,  double& col ,
-      double& row , double& chan ,  double& L2 ,
-      double&  ScatAng , double& Az ,  double& wl ,
-      double& D ,  double& IPK , double& Inti ,
-      double& SigI ,  int &iReflag )
-  {
-
-    std::string s = lastStr;
-
-    if( s.length() < 1 && in.good() )//blank line
-    {
-      readToEndOfLine( in ,  true );
-
-      s = getWord( in ,  false );;
-    }
-
-    if( s.length() < 1 )
-      return 0;
-
-
-    if( s.compare( "2" ) == 0 )
-    {
-      readToEndOfLine( in ,  true );
-
-      for( s = getWord( in ,  false ) ; s.length() < 1 && in.good() ;
-          s = getWord( in ,  true ) )
-      {
-        s = getWord( in ,  false );
-      }
-    }
-
-    if( s.length() < 1 )
-      return 0;
-
-    if( s.compare( "3" ) != 0 )
-      return s;
-
-    int seqNum = atoi( getWord( in ,  false ).c_str() );
-
-    h = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-    k = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-    l = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-
-    col = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-    row = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-    chan = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-    L2 = strtod( getWord( in ,  false ).c_str() ,  0 )/100 ;
-    ScatAng = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
-
-    Az = strtod( getWord( in , false ).c_str() , 0 ) ;
-    wl = strtod( getWord( in , false ).c_str() , 0 ) ;
-    D = strtod( getWord( in , false ).c_str() , 0 ) ;
-    IPK = strtod( getWord( in , false ).c_str() , 0 ) ;
-
-    Inti = strtod( getWord( in , false ).c_str() , 0 ) ;
-    SigI = strtod( getWord( in , false ).c_str() , 0 ) ;
-    iReflag = atoi( getWord( in , false ).c_str() ) ;
-
-
-    readToEndOfLine( in ,  true );
-    return getWord( in , false );
-  }
-
-
-  std::string readPeakBlockHeader( std::string lastStr ,  std::ifstream &in ,
-      int&run ,int& detName ,
-      double&chi , double&phi ,
-      double&omega , double&monCount )
-  {
-    std::string s = lastStr;
-
-    if( s.length() < 1 && in.good() )//blank line
-    {
-      readToEndOfLine( in ,  true );
-      s = getWord( in , false );
-    }
-
-    if( s.length() < 1 )
-      return std::string();
-
-    if( s.compare( "0" ) == 0 )
-    {
-      readToEndOfLine( in ,  true );
-      s = getWord( in , false );
-      while( s.length() < 1 )
-      {
-        readToEndOfLine( in ,  true );
-        s = getWord( in , false );
-      }
-    }
-
-    if( s.compare( std::string( "1" ) ) != 0 )
-      return s;
-
-    run = atoi( getWord( in , false ).c_str() );
-    detName =atoi( getWord( in , false ).c_str());
-    chi = strtod( getWord( in , false ).c_str() , 0 );
-    phi = strtod( getWord( in , false ).c_str() , 0 );
-
-    omega = strtod( getWord( in , false ).c_str() , 0 );
-    monCount = strtod( getWord( in , false ).c_str() , 0 );
-    readToEndOfLine( in ,  true );
-
-    return getWord( in , false );
-
-  }
-  //special formatted file Use clear peaks to no append
-
-  /** Append the peaks from a .peaks file into the workspace
-   *
-   * @param filename :: path to the .peaks file
-   */
-  void PeaksWorkspace::append( std::string filename )
-  {
-    try
-    {
-
-      std::ifstream in( filename.c_str() );
-
-      std::string s = readHeader( in );
-
-      if( !in.good() || s.length() < 1 )
-        throw std::runtime_error(
-            std::string( "End of Peaks file before peaks" ) );
-
-      if( s.compare( std::string( "0" ) ) != 0 )
-        throw std::logic_error(
-            std::string( "No header for Peak segments" ) );
-
-      readToEndOfLine( in ,  true );
-      s = getWord( in , false );
-
-      int run , Reflag, detName;
-      double chi , phi , omega , monCount;
-
-      double h , k , l , col , row , chan , L2 , ScatAng , Az , wl , D ,
-      IPK , Inti , SigI;
-      double x , y , z , r , time;
-
-      while( in.good() )
-      {
-        s = readPeakBlockHeader( s ,  in  , run , detName , chi , phi ,
-            omega , monCount );
-
-        s = readPeak( s , in , h , k , l , col , row , chan , L2 ,
-            ScatAng , Az , wl , D , IPK , Inti , SigI , Reflag );
-
-        chi *= pi/180;
-        phi *= pi/180;
-        omega *= pi/180;
-
-        z = L2*cos( ScatAng );
-        r = sqrt( L2*L2 - z*z );
-        x = r*cos( Az );
-        y = r*sin( Az );
-        //Would use the V3D spherical stuff, but it seemed weird
-        std::vector< double >xx , yy;
-        xx.push_back( wl );
-
-        Kernel::Units::Wavelength WL;
-        WL.toTOF( xx , yy , C_L1 , L2 , ScatAng , 12 , 12.1 , 12.1 );
-        time = xx[ 0 ];
-
-
-        this->addPeak( Geometry::V3D( x , y , z ) , time ,
-            Geometry::V3D( h , k , l ) ,
-            Geometry::V3D( phi , chi , omega ) ,
-            Reflag , run , monCount , detName , IPK ,
-            row , col , chan , L2, Inti , SigI );
-      }
-  }catch( std::exception & xe)
-  {
-    g_log.error( xe.what());
-    throw (std::logic_error(xe.what()));
-  }catch( char* str)
-  {
-
-
-    g_log.error( std::string(str));
-    throw (std::logic_error(std::string(str)));
-  }catch(...)
-  {
-
-    g_log.error( "Unknown Error");
-        throw ("Unknown Error");
-  }
-
-  }
-
-
-  /** Get the d spacing of the given peak
-   *
-   * @param peakNum :: index of the peak
-   * @return double, d_spacing
-   */
-  double  PeaksWorkspace::get_dspacing( int peakNum )
-  {
-    double time = cell< double >(peakNum, ItimeCol);
-    double L1   =cell< double >(peakNum, IL1Col );
-    Geometry::V3D position =
-        cell< Geometry::V3D >( peakNum , IpositionCol);
-
-    double rho, polar,az;
-    position.getSpherical( rho, polar, az);
-    polar *= pi/180;
-    double L2=rho;
-    std::vector< double >xx , yy;
-    xx.push_back( time );
-
-    Kernel::Units::dSpacing dsp;
-    dsp.fromTOF( xx , yy , L1 , L2 , polar , 12 , 12.1 , 12.1 );
-    return xx[ 0 ];
-
-  }
-
-  double  PeaksWorkspace::get_wavelength( int peakNum )
-  {
-    double time = cell< double >(peakNum, ItimeCol);
-    double L1   =cell< double >(peakNum, IL1Col );
-    Geometry::V3D position = cell< Geometry::V3D >( peakNum , IpositionCol);
-    double rho, polar,az;
-    position.getSpherical( rho, polar, az);
-    polar *= pi/180;
-    double L2=rho;
-    std::vector< double >xx , yy;
-    xx.push_back( time );
-
-    Kernel::Units::Wavelength wl;
-    wl.fromTOF( xx , yy , L1 , L2 , polar , 12 , 12.1 , 12.1 );
-    return xx[ 0 ];
-  }
-
-
-  //I believe their |Q| = 2pi/d.  This is what is returned.
-  double  PeaksWorkspace::get_Qmagnitude( int peakNum )
-  {
-
-
-    double time = cell< double >(peakNum, ItimeCol);
-    double L1   =cell< double >(peakNum, IL1Col );
-    Geometry::V3D position = cell< Geometry::V3D >( peakNum , IpositionCol);
-    double rho, polar,az;
-    position.getSpherical( rho, polar, az);
-    polar *= pi/180;
-    double L2=rho;
-    std::vector< double >xx , yy;
-    xx.push_back( time );
-
-    Kernel::Units::MomentumTransfer Q;
-    Q.fromTOF( xx , yy , L1 , L2 , polar , 12 , 12.1 , 12.1 );
-    return xx[ 0 ]/2/pi;
-  }
-
-  Geometry::V3D    PeaksWorkspace::get_Qlab( int peakNum )
-  {
-    double MagQ = get_Qmagnitude( peakNum);
-
-
-    Geometry::V3D position =
-        cell< Geometry::V3D >( peakNum , IpositionCol);
-    position =Geometry::V3D(position);
-    position /=position.norm();
-    position.setZ( position.Z()-1);
-    double nrm= position.norm();
-    position *=MagQ/nrm;
-    return position;
-
-
-  }
-
-  Geometry::V3D     PeaksWorkspace::get_QXtal( int peakNum )
-  {
-
-    Geometry::V3D Qvec= Geometry::V3D( get_Qlab( peakNum) );
-
-    Geometry::V3D sampOrient = getSampleOrientation( peakNum );
-
-    //phi, chi, omega
-    Geometry::Quat rot;
-    sampOrient *=180/pi;
-    rot.setAngleAxis( -sampOrient[2],Geometry::V3D( 0,1,0));
-
-    rot.rotate( Qvec );
-
-    rot.setAngleAxis( -sampOrient[1] ,Geometry::V3D( 0,0,1));
-    rot.rotate( Qvec );
-
-    rot.setAngleAxis( -sampOrient[0],Geometry::V3D( 0,1,0));
-
-    rot.rotate( Qvec );
-
-
-    return Qvec;
-  }
-
-  Geometry::V3D   PeaksWorkspace::get_hkl( int peakNum )
-  {
-
-    return Geometry::V3D( cell< Geometry::V3D >(peakNum , IhklCol ));
-  }
-
-  double     PeaksWorkspace::get_row(int peakNum )
-  {
-    return cell< double >( peakNum , IPeakRowCol );
-  }
-
-  double     PeaksWorkspace::get_ipk( int peakNum )
-  {
-
+#include "MantidKernel/Logger.h"
+#include "MantidKernel/Unit.h"
+#include "MantidKernel/DateAndTime.h"
+#include "MantidAPI/ColumnFactory.h"
+#include "MantidGeometry/Quat.h"
+#include "MantidDataObjects/TableWorkspace.h"
+#include "MantidAPI/WorkspaceProperty.h"
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MantidDataObjects/PeaksWorkspace.h"
+#include "MantidGeometry/V3D.h"
+#include "MantidAPI/AlgorithmFactory.h"
+#include "MantidAPI/MatrixWorkspace.h"
+#include "boost/shared_ptr.hpp"
+#include <algorithm>
+#include <string>
+#include <ostream>
+#include <exception>
+#include <iostream>
+#include <fstream>
+#include <stdio.h>
+#include <stdlib.h>
+#include <math.h>
+
+namespace Mantid
+{
+namespace DataObjects
+{
+  /// Register the workspace as a type
+  DECLARE_WORKSPACE(PeaksWorkspace );
+
+  double pi = 3.1415926535;
+/*//moved to header file
+  std::vector< std::string > DetNames;
+
+  std::vector< double* > DetInfo;
+
+  Kernel::DateAndTime  C_experimentDate;
+  */
+  Kernel::Logger& PeaksWorkspace::g_log = Kernel::Logger::get("PeaksWorkspace");
+
+
+  /** Constructor. Create a table with all the required columns.
+   *
+   * @return PeaksWorkspace object
+   */
+  PeaksWorkspace::PeaksWorkspace():TableWorkspace( 0 )
+  {
+
+    TableWorkspace::addColumn( std::string( "V3D" )  ,  std::string( "hkl" ) );
+    TableWorkspace::addColumn( std::string( "V3D" ) ,  std::string( "position" ) );
+    TableWorkspace::addColumn( std::string( "V3D" ) ,  std::string( "sample_orientation" ) );
+    TableWorkspace::addColumn( std::string( "int" ) ,  std::string( "reflag" ) );
+    TableWorkspace::addColumn( std::string( "int" ) ,  std::string( "bank" ) );
+    TableWorkspace::addColumn( std::string( "int" ) ,  std::string( "run" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "ipeak" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "inti" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "sigi" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "moncount" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "row" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "col" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "chan" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "L1" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "L2" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "time" ) );
+    TableWorkspace::addColumn( std::string( "double" ) ,  std::string( "t_offset" ) );
+
+  }
+
+
+  /** Destructor */
+  PeaksWorkspace::~PeaksWorkspace()
+  {
+    ClearDeleteCalibrationData();
+  }
+
+  void PeaksWorkspace:: ClearDeleteCalibrationData()
+  {
+    DetNames.clear();// elements std::string so will delete self??
+
+    for( size_t n=DetInfo.size(); n >0;)
+    {
+      double* val = DetInfo[n-1];
+      DetInfo.pop_back();
+      delete val;
+
+      n=DetInfo.size();
+    }
+  }
+
+  void PeaksWorkspace::initialize( double      L1 ,               //m
+                                      double      time_offset ,      //microseconds
+                                      std::string Facility ,
+                                      std::string Instrument ,
+                                      Kernel::DateAndTime  experimentDate ,
+                                      std::string version ,
+
+                                      std::vector<std::string> &PanelNames,
+                                      std::vector< double*> &PanelInfo
+                                      )
+     {
+       C_L1 = L1;
+       C_time_offset = time_offset;
+       C_Facility = Facility;
+       C_Instrument = Instrument;
+       C_version = version;
+       C_experimentDate = experimentDate;
+       ClearDeleteCalibrationData();
+       for( int i=0; i<PanelNames.size() ; i++)
+         DetNames.push_back( std::string(PanelNames[i]));
+
+       for( int i=0; i<PanelInfo.size(); i++)
+       {
+         double* data = PanelInfo[i];
+         double* data1 = new double[15];
+         for( int j=0; j<15;j++)
+         {
+           data1[j] = data[j];
+           if( (j>=2) &&( j <=8))
+             data1[j] *=100;
+         }
+         DetInfo.push_back(data1);
+       }
+     }
+
+     void PeaksWorkspace::initialize(  std::string DetCalFileName)
+     {
+       ClearDeleteCalibrationData();
+
+       try
+       {
+         std::ifstream in( DetCalFileName.c_str() );
+
+         std::string s = readHeader( in );
+         in.close();
+       }catch( char * str)
+       {
+         std::cout <<"Exception reading detector info "<<str <<std::endl;
+       }
+
+     }
+
+  void PeaksWorkspace::addPeak( const Geometry::V3D position ,
+      const double time ,
+      const Geometry::V3D hkl ,
+      const Geometry::V3D sample_orientation ,  //radians ,  phi,chi,omega
+      const int  reflag ,
+      const int  runNum ,
+      const double monCount ,
+      const int bankName ,
+      const double PeakCellCount ,
+      const double row ,
+      const double col ,
+      const double chan ,
+      const double L2 ,
+      const double PeakIntegrateCount ,
+      const double PeakIntegrateError
+  )
+  {
+    int i = rowCount();
+    insertRow( i );
+    double T = time;
+
+    try
+    {
+
+      getRef< double >( std::string( "ipeak" ) ,  i ) = PeakCellCount;
+      getRef< double >( std::string( "inti" ) ,  i ) = PeakIntegrateCount;
+      getRef< double >( std::string( "sigi" ) ,  i ) = PeakIntegrateError;
+      getRef< double >( std::string( "moncount" ) ,  i ) = monCount;
+
+      getRef< Geometry::V3D >( std::string( "position" ) ,  i ) =
+          Geometry::V3D( position );
+
+      getRef< Geometry::V3D >( std::string( "sample_orientation" ) ,  i ) =
+          Geometry::V3D( sample_orientation );
+
+      getRef< Geometry::V3D >( std::string( "hkl" ) ,  i ) =
+          Geometry::V3D( hkl );
+
+      getRef< double >( std::string( "L1" ) ,  i ) = C_L1;
+      getRef< double >( std::string( "time" ) ,  i ) = time;
+      getRef< double >( std::string( "t_offset" ) ,  i ) = C_time_offset;
+      getRef< int >( std::string( "run" ) ,  i ) = runNum;
+
+      getRef< double >( std::string( "chan" ) ,  i ) = chan;
+      getRef< double >( std::string( "L2" ) ,  i ) = L2;
+      getRef< int >( std::string( "bank" ) ,  i ) =
+          ( bankName );
+
+      getRef< double >( std::string( "row" ) ,  i ) = row;
+      getRef< double >( std::string( "col" ) ,  i ) = col;
+      getRef< int >( std::string( "reflag" ) ,  i ) = reflag;
+
+    }catch( char * str )
+    {
+      std::cout <<  "exception occurred " <<  str <<  "\n";
+    }
+
+  }
+
+
+  /**
+   * @return the number of peaks
+   */
+  int PeaksWorkspace::getNumberPeaks() const
+  {
+    return rowCount();
+  }
+
+  /** Remove a peak
+   *
+   * @param peakNum :: peak index to remove
+   */
+  void PeaksWorkspace::removePeak( int peakNum )
+  {
+    removeRow( peakNum );
+  }
+
+
+  //returns true if strictly less than
+  bool compareAsVecs( std::vector< int > arg1, std::vector< int > arg2 )
+  {
+    if( arg1.size() < 3 )
+    {
+      if( arg2.size() < 3 )
+        return true;
+      else
+        return false;
+    }
+
+    if( arg2.size() < 3 )
+      return false;   //hopefully bad values go to back
+
+    int r1 = arg1[0];
+    int r2 = arg2[0];
+
+    if( r1 < r2 )
+      return true;
+
+    if( r1 > r2 )
+      return false;
+
+    r1 = arg1[1];
+    r2 = arg2[1];
+
+    if( r1 < r2 )
+      return true;
+
+    return false;
+  }
+
+
+
+  /** Write an ISAW-style .peaks file
+   *
+   * @param filename :: filename to write to
+   */
+  void PeaksWorkspace::write( std::string filename )
+  {
+    try
+    {
+      std::ofstream out( filename.c_str() );
+      std::string date =C_experimentDate.to_ISO8601_string();
+
+      out <<  "Version: " <<  C_version <<  " Facility: " <<  C_Facility  ;
+      out <<  " Instrument: " <<  C_Instrument <<  " Date: " ;
+      out<< std::setw(date.length())<<date<< std::endl;
+
+      out <<  "6        L1    T0_SHIFT" <<  std::endl;
+      out << "7 "<< std::setw( 11 )  ;
+      out <<   std::setprecision( 4 ) <<  std::fixed <<  ( C_L1*100 ) ;
+      out << std::setw( 12 ) <<  std::setprecision( 3 ) <<  std::fixed  ;
+      out << ( C_time_offset ) <<  std::endl;
+
+      out <<  "4 DETNUM  NROWS  NCOLS   WIDTH   HEIGHT     DEPTH   DETD  "
+          <<  " CenterX   CenterY   CenterZ   BaseX    BaseY    BaseZ    "
+          <<  "  UpX      UpY      UpZ" <<  std::endl;
+
+      for(size_t i = 0 ; i < DetNames.size() ; i++ )
+      {
+        double* info = DetInfo[ i ];
+        out <<  "5" <<  std::setw( 7 ) <<  DetNames[ i ];
+
+        out <<  std::setw( 7 ) <<  (int)info[ 0 ] <<  std::setw( 7 );
+        out  <<  (int)info[ 1 ]<<  std::setw( 9 ) <<  std::setprecision( 4 );
+        out  <<  std::fixed <<  info[ 2 ];
+
+        for( int j = 3 ; j < 15 ; j++ )
+        {
+          out <<  std::setw( 9 ) <<  std::setprecision( 4 ) <<  std::fixed;
+          out <<  info[ j ];
+
+        }
+        out  <<  std::endl;
+
+      }
+
+
+      std::vector< std::vector< int > > SortKeys;
+
+      for( int i = 0 ; i < rowCount() ; i++ )
+      {
+        std::vector<int > dat ;
+
+        dat.push_back(getRef< int >( "run" ,  i ) );
+        dat.push_back( getRef< int >( "bank" ,  i ) );
+
+        dat.push_back( i );
+        SortKeys.push_back( dat );
+      }
+
+      stable_sort( SortKeys.begin() ,  SortKeys.end() ,  compareAsVecs );
+
+      int LastRun = -1;;
+      int LastDet;
+
+      int thisRun ,  thisReflag;
+      double this_h ,  this_k ,  this_l ,   this_row ,  this_col ,
+      this_chan ,  this_L2 ,  this_az ,  this_polar ,  this_time ,
+      this_inti ,  this_ipk ,   this_sigi ,  this_chi ,  this_phi ,
+      this_omega ,   this_monCt ,  this_tOffset ,  this_L1;
+
+      int thisDet;
+      Geometry::V3D thisSampleOrientation;
+      int seqNum = 0;
+      std::vector< std::vector< int > >::iterator it;
+
+      for ( it = SortKeys.begin(); it != SortKeys.end(); ++it )
+      {
+        seqNum++;
+        std::vector<int > elt = *it;
+        int peakNum =elt[2];
+
+        this_row =
+            getRef< double  >( std::string( "row" ) ,  peakNum );
+        Geometry::V3D hkl = getRef< Geometry::V3D  > ( std::string( "hkl" ) ,
+            peakNum );
+        this_h = hkl.X();
+        this_k = hkl.Y();
+        this_l = hkl.Z();
+        this_col = getRef < double >( std::string( "col" ) ,  peakNum );
+        this_chan = getRef< double >( std::string( "chan" ) ,  peakNum );
+        this_ipk = getRef< double >( "ipeak" ,  peakNum );
+        this_inti = getRef< double >( "inti" ,  peakNum );
+        this_sigi = getRef< double >( "sigi" ,  peakNum );
+
+        this_monCt = getRef< double >( std::string( "moncount" ) ,  peakNum );
+        this_L1 = getRef< double >( "L1" ,  peakNum );
+        this_tOffset = getRef< double >( "t_offset" ,  peakNum );
+        this_time = getRef< double >( "time" ,  peakNum );
+        thisRun = getRef< int >( "run" ,  peakNum );
+        thisReflag = Int( peakNum ,  3 );
+        thisDet = getRef< int >( "bank" ,  peakNum );
+
+        Geometry::V3D position = getRef< Geometry::V3D >( "position" ,
+            peakNum );
+
+        double x = position.X();
+        double y = position.Y();
+        double z = position.Z();
+        this_L2 = sqrt( x*x + y*y + z*z );
+        this_polar = acos(  z/this_L2 );
+        this_az = atan2( y ,  x );
+
+
+        thisSampleOrientation = getRef<Geometry::V3D >( "sample_orientation" ,
+            peakNum );
+        double mult = 180/3.1415926535897932384626433832795;
+        this_chi = thisSampleOrientation.Y()*mult;
+        this_phi = thisSampleOrientation.X()*mult;
+        this_omega = thisSampleOrientation.Z()*mult;
+
+        if( thisRun != LastRun  || LastDet != thisDet )
+        {
+          out <<  "0 NRUN DETNUM    CHI    PHI  OMEGA MONCNT" <<  std::endl;
+          out <<  "1" <<  std::setw( 5 ) <<  thisRun <<  std::setw( 7 ) <<
+              std::right <<  thisDet;
+
+          out  <<  std::setw( 7 ) <<  std::fixed <<  std::setprecision( 2 )
+          <<  this_chi;
+
+          out  <<  std::setw( 7 ) <<  std::fixed <<  std::setprecision( 2 )
+          <<  this_phi;
+
+          out  <<  std::setw( 7 ) <<  std::fixed <<  std::setprecision( 2 )
+          <<  this_omega;
+          out  <<  std::setw( 7 ) <<  (int)( .5 + this_monCt ) <<  std::endl;
+          LastRun = thisRun;
+          LastDet = thisDet;
+          out <<  "2   SEQN    H    K    L     COL     ROW    CHAN       L2  "
+              <<  "2_THETA       AZ        WL        D   IPK      INTI   "
+              << "SIGI RFLG" <<  std::endl;
+        }
+
+        int h = (int)floor( this_h+.5) , //assume when set via UB those
+            k = (int)floor( this_k +.5 ) , //not close enuf get 0's
+            l = (int)floor( this_l +.5 );
+
+
+        out <<  "3" <<  std::setw( 7 ) <<  seqNum <<  std::setw( 5 ) <<  h
+            <<  std::setw( 5 ) <<  k <<  std::setw( 5 ) <<  l;
+        out <<  std::setw( 8 ) <<  std::fixed << std::setprecision( 2 )
+        << this_col;
+
+        out << std::setw( 8 ) << std::fixed << std::setprecision( 2 )
+        << this_row;
+
+        out << std::setw( 8 ) << std::fixed << std::setprecision( 2 )
+        << this_chan;
+
+
+        out << std::setw( 9 ) << std::fixed << std::setprecision( 3 )
+        << ( this_L2*100 );
+
+        out << std::setw( 9 ) << std::fixed << std::setprecision( 5 )
+        << this_polar;
+
+        out << std::setw( 9 ) << std::fixed << std::setprecision( 5 )
+        << this_az;
+
+
+        std::vector< double >xx ,  yy;
+        xx.push_back( this_time );
+        Kernel::Units::Wavelength wl;
+        wl.fromTOF( xx ,  yy ,  this_L1 ,  this_L2 ,  this_polar ,
+            0 ,  1.2 ,  1.2 );
+
+        out << std::setw( 10 ) << std::fixed << std::setprecision( 6 )
+        << xx[ 0 ];
+
+        xx[ 0 ] = this_time;
+        Kernel::Units::dSpacing dsp;
+
+        dsp.fromTOF( xx ,  yy ,  this_L1 ,  this_L2 ,  this_polar ,
+            0 ,  1.2 ,  1.2 );
+
+        out << std::setw( 9 ) << std::fixed << std::setprecision( 4 )
+        <<  xx[ 0 ];
+
+        out << std::setw( 6 ) << (int)this_ipk << std::setw( 10 )
+        << std::fixed << std::setprecision( 2 ) << this_inti;
+
+        out << std::setw( 7 ) << std::fixed << std::setprecision( 2 )
+        << this_sigi << std::setw( 5 ) << thisReflag << std::endl;
+
+      }
+
+      out.flush();
+      out.close();
+
+    }catch( char *s )
+    {
+      g_log.error(std::string(s));
+      throw( std::string(s));
+    }
+   catch( std::exception &e)
+   {
+     g_log.error(e.what());
+          throw( e.what());
+   }catch(...)
+   {
+     g_log.error("Unknown Error");
+     throw( "Unknown Error");
+   }
+  }
+
+
+  /** Remove all the peaks from the workspace */
+  void PeaksWorkspace::removeAllPeaks()
+  {
+    for( int i = rowCount() - 1 ; i >= 0 ; i-- )
+      removeRow( i );
+  }
+
+
+  //stops at spaces and \n. strips
+  std::string getWord( std::ifstream &in ,  bool consumeEOL )
+  {
+    std::string s;
+    char c = 0;
+    if( in.good() )
+      for(  c = in.get() ; c == ' ' && in.good() ; c = in.get() )
+      {}
+    else
+      return std::string();
+
+    if( c == '\n' )
+    {
+      if( !consumeEOL )
+        in.putback( c );
+
+      return std::string();
+    }
+
+    s.push_back( c );
+
+    if( in.good() )
+      for(  c = in.get() ; in.good()&&c != ' ' && c != '\n' && c != '\r' ; c = in.get() )
+        s.push_back( c );
+
+    if( ((c == '\n') || (c == '\r')) && !consumeEOL )
+      in.putback( c );
+
+    return s;
+  }
+
+
+  void readToEndOfLine( std::ifstream& in ,  bool ConsumeEOL )
+  {
+    while( in.good() && getWord( in ,  false ).length() > 0  )
+      getWord( in ,  false );
+
+    if( !ConsumeEOL )
+      return ;
+
+    getWord( in ,  true );
+  }
+
+
+  /** Reads the header of a .peaks file
+   *
+   * @param in :: stream of the input file
+   * @return TODO: I don't know what here
+   */
+  std::string PeaksWorkspace::readHeader( std::ifstream& in )
+  {
+
+    std::string r = getWord( in ,  false );
+
+    if( r.length() < 1 )
+      throw std::logic_error( std::string( "No first line of Peaks file" ) );
+
+    if( r.compare( std::string( "Version:" ) ) != 0 )
+      throw std::logic_error(
+          std::string( "No Version: on first line of Peaks file" ) );
+
+    C_version = getWord( in ,  false );
+
+    if( C_version.length() < 1 )
+      throw  std::logic_error( std::string( "No Version for Peaks file" ) );
+
+    C_Facility = getWord( in ,  false );
+
+    if( C_Facility.length() < 1  )
+      throw  std::logic_error(
+          std::string( "No Facility tag for Peaks file" ) );
+
+    if( C_Facility.compare( std::string( "Facility:" ) ) != 0 )
+      throw  std::logic_error(
+          std::string( "No Facility tag for Peaks file" ) );
+
+    C_Facility = getWord( in ,  false );
+
+    if( C_Facility.length() < 1 )
+      throw  std::logic_error( std::string( "No Facility in Peaks file" ) );
+
+    C_Instrument = getWord( in ,  false );
+
+    if( C_Instrument.length() < 1 )
+      throw  std::logic_error(
+          std::string( "No Instrument tag for Peaks file" ) );
+
+    if( C_Instrument.compare( std::string( "Instrument:" ) ) != 0 )
+      throw  std::logic_error(
+          std::string( "No Instrument tag for Peaks file" ) );
+
+    C_Instrument = getWord( in ,  false );
+
+    if( C_Instrument.length() < 1 )
+      throw std::logic_error(
+          std::string( "No Instrument for Peaks file" ) );
+
+    std::string date = getWord( in ,  false );
+
+    if(date .length()< 1)
+    {
+      Kernel::DateAndTime x = Kernel::DateAndTime::get_current_time();
+      C_experimentDate.set_from_time_t(x.to_time_t());
+    }
+
+    else
+      if( date.compare( std::string( "Date:" ) ) == 0 )
+      {
+        date = getWord( in ,  false );
+        C_experimentDate = Kernel::DateAndTime( date );
+      }
+
+
+    while( getWord( in ,  false ).length() > 0 )
+      getWord( in ,  false );
+
+    // Now get info on detector banks
+
+    getWord( in ,  true );
+    std::string s = getWord( in ,  false );
+    if( s.compare( "6" ) != 0 )
+      throw std::logic_error(
+          std::string( "Peaks File has no L0 and T0 header info" ) );
+
+    readToEndOfLine( in ,  true );
+    s = getWord( in ,  false );
+
+    if( s.compare( "7" ) != 0 )
+      throw std::logic_error(
+          std::string( "Peaks File has no L0 and T0 info" ) );
+
+    C_L1 = strtod( getWord( in ,  false ).c_str() ,  0 )/100;
+    C_time_offset = strtod( getWord( in ,  false ).c_str() ,  0 );
+
+
+    readToEndOfLine( in ,  true );
+    for( s = getWord( in ,  false ) ; s.length() < 1 ; getWord( in ,  true ) )
+    {
+      s = getWord( in ,  false );
+    }
+
+    if( s.compare( "4" ) != 0 )
+      throw std::logic_error( std::string( "Peaks File has no bank descriptor line" ) );
+
+    readToEndOfLine( in ,  true );
+    s = getWord( in ,  false );
+    while( s.length() < 1 && in.good() )
+    {
+      s = getWord( in ,  true );
+      s = getWord( in ,  false );
+    }
+
+    if(  !in.good() )
+      throw std::runtime_error( std::string( "Peaks File Quit too fast" ) );
+
+    if( s.compare( std::string( "5" ) ) != 0 )
+      throw std::logic_error( "No information on banks given" );//log this only
+
+
+    bool err = false;
+    while( s.compare( std::string( "5" ) ) == 0  )
+    {
+      double* data = new double[ 15 ];//Use boost pointers here??? does gc
+      s = getWord( in ,  false );
+
+      if( s.length() < 1 )
+        err = true;
+      else
+        DetNames.push_back( s );
+
+      for( int i = 0 ; i < 15 && !err ; i++ )
+      {
+        s = getWord( in ,  false );
+        if( s.length() < 1 )
+          err = true;
+        else
+          data[ i ] = strtod( s.c_str() ,  0 );
+
+      }
+
+      if( err )
+        s = std::string( "2" );
+      else
+      {
+        DetInfo.push_back( data );
+
+        for( s = getWord( in ,  false ) ; s.length() > 0 ; s = getWord( in ,  false ) )
+        {}
+
+        s = getWord( in ,  true );
+        s = getWord( in ,  false );//no blank lines will be allowed so far
+      }
+    }
+
+
+    if( err )
+      return std::string();
+
+    return s;
+  }
+
+
+
+  std::string readPeak( std::string lastStr ,  std::ifstream& in ,
+      double& h , double& k ,  double& l ,  double& col ,
+      double& row , double& chan ,  double& L2 ,
+      double&  ScatAng , double& Az ,  double& wl ,
+      double& D ,  double& IPK , double& Inti ,
+      double& SigI ,  int &iReflag )
+  {
+
+    std::string s = lastStr;
+
+    if( s.length() < 1 && in.good() )//blank line
+    {
+      readToEndOfLine( in ,  true );
+
+      s = getWord( in ,  false );;
+    }
+
+    if( s.length() < 1 )
+      return 0;
+
+
+    if( s.compare( "2" ) == 0 )
+    {
+      readToEndOfLine( in ,  true );
+
+      for( s = getWord( in ,  false ) ; s.length() < 1 && in.good() ;
+          s = getWord( in ,  true ) )
+      {
+        s = getWord( in ,  false );
+      }
+    }
+
+    if( s.length() < 1 )
+      return 0;
+
+    if( s.compare( "3" ) != 0 )
+      return s;
+
+    int seqNum = atoi( getWord( in ,  false ).c_str() );
+
+    h = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+    k = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+    l = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+
+    col = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+    row = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+    chan = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+    L2 = strtod( getWord( in ,  false ).c_str() ,  0 )/100 ;
+    ScatAng = strtod( getWord( in ,  false ).c_str() ,  0 ) ;
+
+    Az = strtod( getWord( in , false ).c_str() , 0 ) ;
+    wl = strtod( getWord( in , false ).c_str() , 0 ) ;
+    D = strtod( getWord( in , false ).c_str() , 0 ) ;
+    IPK = strtod( getWord( in , false ).c_str() , 0 ) ;
+
+    Inti = strtod( getWord( in , false ).c_str() , 0 ) ;
+    SigI = strtod( getWord( in , false ).c_str() , 0 ) ;
+    iReflag = atoi( getWord( in , false ).c_str() ) ;
+
+
+    readToEndOfLine( in ,  true );
+    return getWord( in , false );
+  }
+
+
+  std::string readPeakBlockHeader( std::string lastStr ,  std::ifstream &in ,
+      int&run ,int& detName ,
+      double&chi , double&phi ,
+      double&omega , double&monCount )
+  {
+    std::string s = lastStr;
+
+    if( s.length() < 1 && in.good() )//blank line
+    {
+      readToEndOfLine( in ,  true );
+      s = getWord( in , false );
+    }
+
+    if( s.length() < 1 )
+      return std::string();
+
+    if( s.compare( "0" ) == 0 )
+    {
+      readToEndOfLine( in ,  true );
+      s = getWord( in , false );
+      while( s.length() < 1 )
+      {
+        readToEndOfLine( in ,  true );
+        s = getWord( in , false );
+      }
+    }
+
+    if( s.compare( std::string( "1" ) ) != 0 )
+      return s;
+
+    run = atoi( getWord( in , false ).c_str() );
+    detName =atoi( getWord( in , false ).c_str());
+    chi = strtod( getWord( in , false ).c_str() , 0 );
+    phi = strtod( getWord( in , false ).c_str() , 0 );
+
+    omega = strtod( getWord( in , false ).c_str() , 0 );
+    monCount = strtod( getWord( in , false ).c_str() , 0 );
+    readToEndOfLine( in ,  true );
+
+    return getWord( in , false );
+
+  }
+  //special formatted file Use clear peaks to no append
+
+  /** Append the peaks from a .peaks file into the workspace
+   *
+   * @param filename :: path to the .peaks file
+   */
+  void PeaksWorkspace::append( std::string filename )
+  {
+    try
+    {
+
+      std::ifstream in( filename.c_str() );
+
+      std::string s = readHeader( in );
+
+      if( !in.good() || s.length() < 1 )
+        throw std::runtime_error(
+            std::string( "End of Peaks file before peaks" ) );
+
+      if( s.compare( std::string( "0" ) ) != 0 )
+        throw std::logic_error(
+            std::string( "No header for Peak segments" ) );
+
+      readToEndOfLine( in ,  true );
+      s = getWord( in , false );
+
+      int run , Reflag, detName;
+      double chi , phi , omega , monCount;
+
+      double h , k , l , col , row , chan , L2 , ScatAng , Az , wl , D ,
+      IPK , Inti , SigI;
+      double x , y , z , r , time;
+
+      while( in.good() )
+      {
+        s = readPeakBlockHeader( s ,  in  , run , detName , chi , phi ,
+            omega , monCount );
+
+        s = readPeak( s , in , h , k , l , col , row , chan , L2 ,
+            ScatAng , Az , wl , D , IPK , Inti , SigI , Reflag );
+
+        chi *= pi/180;
+        phi *= pi/180;
+        omega *= pi/180;
+
+        z = L2*cos( ScatAng );
+        r = sqrt( L2*L2 - z*z );
+        x = r*cos( Az );
+        y = r*sin( Az );
+        //Would use the V3D spherical stuff, but it seemed weird
+        std::vector< double >xx , yy;
+        xx.push_back( wl );
+
+        Kernel::Units::Wavelength WL;
+        WL.toTOF( xx , yy , C_L1 , L2 , ScatAng , 12 , 12.1 , 12.1 );
+        time = xx[ 0 ];
+
+
+        this->addPeak( Geometry::V3D( x , y , z ) , time ,
+            Geometry::V3D( h , k , l ) ,
+            Geometry::V3D( phi , chi , omega ) ,
+            Reflag , run , monCount , detName , IPK ,
+            row , col , chan , L2, Inti , SigI );
+      }
+  }catch( std::exception & xe)
+  {
+    g_log.error( xe.what());
+    throw (std::logic_error(xe.what()));
+  }catch( char* str)
+  {
+
+
+    g_log.error( std::string(str));
+    throw (std::logic_error(std::string(str)));
+  }catch(...)
+  {
+
+    g_log.error( "Unknown Error");
+        throw ("Unknown Error");
+  }
+
+  }
+
+
+  /** Get the d spacing of the given peak
+   *
+   * @param peakNum :: index of the peak
+   * @return double, d_spacing
+   */
+  double  PeaksWorkspace::get_dspacing( int peakNum )
+  {
+    double time = cell< double >(peakNum, ItimeCol);
+    double L1   =cell< double >(peakNum, IL1Col );
+    Geometry::V3D position =
+        cell< Geometry::V3D >( peakNum , IpositionCol);
+
+    double rho, polar,az;
+    position.getSpherical( rho, polar, az);
+    polar *= pi/180;
+    double L2=rho;
+    std::vector< double >xx , yy;
+    xx.push_back( time );
+
+    Kernel::Units::dSpacing dsp;
+    dsp.fromTOF( xx , yy , L1 , L2 , polar , 12 , 12.1 , 12.1 );
+    return xx[ 0 ];
+
+  }
+
+  double  PeaksWorkspace::get_wavelength( int peakNum )
+  {
+    double time = cell< double >(peakNum, ItimeCol);
+    double L1   =cell< double >(peakNum, IL1Col );
+    Geometry::V3D position = cell< Geometry::V3D >( peakNum , IpositionCol);
+    double rho, polar,az;
+    position.getSpherical( rho, polar, az);
+    polar *= pi/180;
+    double L2=rho;
+    std::vector< double >xx , yy;
+    xx.push_back( time );
+
+    Kernel::Units::Wavelength wl;
+    wl.fromTOF( xx , yy , L1 , L2 , polar , 12 , 12.1 , 12.1 );
+    return xx[ 0 ];
+  }
+
+
+  //I believe their |Q| = 2pi/d.  This is what is returned.
+  double  PeaksWorkspace::get_Qmagnitude( int peakNum )
+  {
+
+
+    double time = cell< double >(peakNum, ItimeCol);
+    double L1   =cell< double >(peakNum, IL1Col );
+    Geometry::V3D position = cell< Geometry::V3D >( peakNum , IpositionCol);
+    double rho, polar,az;
+    position.getSpherical( rho, polar, az);
+    polar *= pi/180;
+    double L2=rho;
+    std::vector< double >xx , yy;
+    xx.push_back( time );
+
+    Kernel::Units::MomentumTransfer Q;
+    Q.fromTOF( xx , yy , L1 , L2 , polar , 12 , 12.1 , 12.1 );
+    return xx[ 0 ]/2/pi;
+  }
+
+  Geometry::V3D    PeaksWorkspace::get_Qlab( int peakNum )
+  {
+    double MagQ = get_Qmagnitude( peakNum);
+
+
+    Geometry::V3D position =
+        cell< Geometry::V3D >( peakNum , IpositionCol);
+    position =Geometry::V3D(position);
+    position /=position.norm();
+    position.setZ( position.Z()-1);
+    double nrm= position.norm();
+    position *=MagQ/nrm;
+    return position;
+
+
+  }
+
+  Geometry::V3D     PeaksWorkspace::get_QXtal( int peakNum )
+  {
+
+    Geometry::V3D Qvec= Geometry::V3D( get_Qlab( peakNum) );
+
+    Geometry::V3D sampOrient = getSampleOrientation( peakNum );
+
+    //phi, chi, omega
+    Geometry::Quat rot;
+    sampOrient *=180/pi;
+    rot.setAngleAxis( -sampOrient[2],Geometry::V3D( 0,1,0));
+
+    rot.rotate( Qvec );
+
+    rot.setAngleAxis( -sampOrient[1] ,Geometry::V3D( 0,0,1));
+    rot.rotate( Qvec );
+
+    rot.setAngleAxis( -sampOrient[0],Geometry::V3D( 0,1,0));
+
+    rot.rotate( Qvec );
+
+
+    return Qvec;
+  }
+
+  Geometry::V3D   PeaksWorkspace::get_hkl( int peakNum )
+  {
+
+    return Geometry::V3D( cell< Geometry::V3D >(peakNum , IhklCol ));
+  }
+
+  double     PeaksWorkspace::get_row(int peakNum )
+  {
+    return cell< double >( peakNum , IPeakRowCol );
+  }
+
+  double     PeaksWorkspace::get_ipk( int peakNum )
+  {
+
     return cell< double >( peakNum , IPeakIntensityCol );
-  }
-
-  double     PeaksWorkspace::get_column( int peakNum )
-  {
-
-    return cell< double >( peakNum , IPeakColCol );
-  }
-
-  double     PeaksWorkspace::get_time_channel( int peakNum )
-  {
-
-    return cell< double >( peakNum , IPeakChanCol );
-  }
-
-  double  PeaksWorkspace::get_time_offset( int peakNum )
-  {
-
-    return cell< double >( peakNum ,ItimeOffsetChanCol) ;;
-  }
-
-  double  PeaksWorkspace::get_L1(int peakNum )
-  {
-
-    return cell< double >( peakNum , IL1Col );
-  }
-
-  double  PeaksWorkspace::get_L2(int peakNum )
-  {
-
-    return cell< Geometry::V3D>( peakNum ,IpositionCol).norm();
-  }
-
-  int    PeaksWorkspace::get_Bank( int peakNum )
-  {
-
-    return cell< int >( peakNum , IDetBankCol );
-  }
-
-  Geometry::V3D     PeaksWorkspace::getPosition( int peakNum )
-  {
-    return Geometry::V3D(cell< Geometry::V3D >( peakNum , IpositionCol ));
-  }
-
-  Geometry::V3D   PeaksWorkspace::getSampleOrientation( int peakNum)
-  {
-    return Geometry::V3D( cell<Geometry::V3D>( peakNum , IsamplePositionCol));
-  }
-
-  int   PeaksWorkspace::getRunNumber( int peakNum)
-  {
-    return cell<int>( peakNum , IrunNumCol);
-  }
-
-  int  PeaksWorkspace::getReflag( int peakNum )
-  {
-      return cell<int>( peakNum , IreflagCol);
-  }
-
-  double  PeaksWorkspace::getMonitorCount( int peakNum)
-  {
-     return cell<double>( peakNum , IMonitorCountCol );
-  }
-  double  PeaksWorkspace::getPeakCellCount( int peakNum )
-  {
-    return cell< double >( peakNum , IPeakIntensityCol );
-  }
-
-  double  PeaksWorkspace::getPeakIntegrationCount( int peakNum )
-  {
-    return cell< double >( peakNum , IPeakIntegrateCol );
-  }
-
-  double  PeaksWorkspace::getPeakIntegrationError( int peakNum )
-  {
-    return cell< double >( peakNum , IPeakIntegrateErrorCol );
-  }
-
-  void    sethkls( Geometry::Matrix<double>UB,  double tolerance,
-                 bool SetOnlyUnset, int reflag)
-  {
-    //TODO
-  }
-
-  void    PeaksWorkspace::clearhkls( )
-  {
-    for( int i=0; i< rowCount(); i++)
-      cell< Geometry::V3D >( i , IhklCol ) = Geometry::V3D(0,0,0);
-  }
-
-  void    PeaksWorkspace::sethkl( const Geometry::V3D hkl , int peakNum )
-  {
-    cell< Geometry::V3D >( peakNum , IhklCol ) = Geometry::V3D( hkl );
-  }
-
-  void    PeaksWorkspace::setPeakCount( double count ,  int peakNum )
-  {
-    cell< double >( peakNum , IPeakIntensityCol ) = count;
-  }
-
-  void    PeaksWorkspace::setPeakIntegrateCount( double count ,  int peakNum )
-  {
-    cell< double >( peakNum ,IPeakIntegrateCol) = count;
-  }
-
-  void    PeaksWorkspace::setPeakIntegrateError( double count ,  int peakNum )
-  {
-    cell< double >( peakNum ,IPeakIntegrateErrorCol) = count;
-  }
-
-  void    PeaksWorkspace::setPeakPos( Geometry::V3D position, int peakNum )
-  {
-    cell< Geometry::V3D >( peakNum , IpositionCol ) = Geometry::V3D( position );
-  }
-
-  void    PeaksWorkspace::setReflag( int newValue , int peakNum )
-  {
-    cell< int >( peakNum ,IreflagCol ) = newValue;
-  }
-
-}
-}
+  }
+
+  double     PeaksWorkspace::get_column( int peakNum )
+  {
+
+    return cell< double >( peakNum , IPeakColCol );
+  }
+
+  double     PeaksWorkspace::get_time_channel( int peakNum )
+  {
+
+    return cell< double >( peakNum , IPeakChanCol );
+  }
+
+  double  PeaksWorkspace::get_time_offset( int peakNum )
+  {
+
+    return cell< double >( peakNum ,ItimeOffsetChanCol) ;;
+  }
+
+  double  PeaksWorkspace::get_L1(int peakNum )
+  {
+
+    return cell< double >( peakNum , IL1Col );
+  }
+
+  double  PeaksWorkspace::get_L2(int peakNum )
+  {
+
+    return cell< Geometry::V3D>( peakNum ,IpositionCol).norm();
+  }
+
+  int    PeaksWorkspace::get_Bank( int peakNum )
+  {
+
+    return cell< int >( peakNum , IDetBankCol );
+  }
+
+  Geometry::V3D     PeaksWorkspace::getPosition( int peakNum )
+  {
+    return Geometry::V3D(cell< Geometry::V3D >( peakNum , IpositionCol ));
+  }
+
+  Geometry::V3D   PeaksWorkspace::getSampleOrientation( int peakNum)
+  {
+    return Geometry::V3D( cell<Geometry::V3D>( peakNum , IsamplePositionCol));
+  }
+
+  int   PeaksWorkspace::getRunNumber( int peakNum)
+  {
+    return cell<int>( peakNum , IrunNumCol);
+  }
+
+  int  PeaksWorkspace::getReflag( int peakNum )
+  {
+      return cell<int>( peakNum , IreflagCol);
+  }
+
+  double  PeaksWorkspace::getMonitorCount( int peakNum)
+  {
+     return cell<double>( peakNum , IMonitorCountCol );
+  }
+  double  PeaksWorkspace::getPeakCellCount( int peakNum )
+  {
+    return cell< double >( peakNum , IPeakIntensityCol );
+  }
+
+  double  PeaksWorkspace::getPeakIntegrationCount( int peakNum )
+  {
+    return cell< double >( peakNum , IPeakIntegrateCol );
+  }
+
+  double  PeaksWorkspace::getPeakIntegrationError( int peakNum )
+  {
+    return cell< double >( peakNum , IPeakIntegrateErrorCol );
+  }
+
+  void    sethkls( Geometry::Matrix<double>UB,  double tolerance,
+                 bool SetOnlyUnset, int reflag)
+  {
+    //TODO
+  }
+
+  void    PeaksWorkspace::clearhkls( )
+  {
+    for( int i=0; i< rowCount(); i++)
+      cell< Geometry::V3D >( i , IhklCol ) = Geometry::V3D(0,0,0);
+  }
+
+  void    PeaksWorkspace::sethkl( const Geometry::V3D hkl , int peakNum )
+  {
+    cell< Geometry::V3D >( peakNum , IhklCol ) = Geometry::V3D( hkl );
+  }
+
+  void    PeaksWorkspace::setPeakCount( double count ,  int peakNum )
+  {
+    cell< double >( peakNum , IPeakIntensityCol ) = count;
+  }
+
+  void    PeaksWorkspace::setPeakIntegrateCount( double count ,  int peakNum )
+  {
+    cell< double >( peakNum ,IPeakIntegrateCol) = count;
+  }
+
+  void    PeaksWorkspace::setPeakIntegrateError( double count ,  int peakNum )
+  {
+    cell< double >( peakNum ,IPeakIntegrateErrorCol) = count;
+  }
+
+  void    PeaksWorkspace::setPeakPos( Geometry::V3D position, int peakNum )
+  {
+    cell< Geometry::V3D >( peakNum , IpositionCol ) = Geometry::V3D( position );
+  }
+
+  void    PeaksWorkspace::setReflag( int newValue , int peakNum )
+  {
+    cell< int >( peakNum ,IreflagCol ) = newValue;
+  }
+
+}
+}
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/CompAssembly.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/CompAssembly.h
index 9e38962ed4c1890afa835a93fb9e3dcc0285b206..35aa6f0da119cc688c61ae4fe2ea8e3c4a9b3217 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/CompAssembly.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/CompAssembly.h
@@ -85,7 +85,7 @@ public:
   const Quat getRotation() const;
 
 
-  /// Get the bounding box for this component and store it in the given argument
+  /// Get the bounding box for this component and store it in the given argument
   virtual void getBoundingBox(BoundingBox& boundingBox) const;
   //! Print information about all children
   void printChildren(std::ostream&) const;
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/DetectorGroup.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/DetectorGroup.h
index 96588703e0d1a65c94096fe4b59758801b7abb08..805c0217320bd7316df92c6ffd69ba436bbc58eb 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/DetectorGroup.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/DetectorGroup.h
@@ -70,8 +70,8 @@ namespace Mantid
       virtual bool isOnSide(const V3D& point) const;
       ///Try to find a point that lies within (or on) the object
       int getPointInObject(V3D& point) const;
-      /// Get the bounding box for this component and store it in the given argument
-      virtual void getBoundingBox(BoundingBox& boundingBox) const;
+      /// Get the bounding box for this component and store it in the given argument
+      virtual void getBoundingBox(BoundingBox& boundingBox) const;
 
       /// What detectors are contained in the group?
       std::vector<int> getDetectorIDs();
@@ -82,7 +82,7 @@ namespace Mantid
       //@{
       // 06/05/2010 MG: Templated virtual functions cannot be defined so we have to resort to
       // one for each type, luckily there won't be too many
-      /// Return the parameter names
+      /// Return the parameter names
       virtual std::set<std::string> getParameterNames(bool recursive = true) const;
       /// Returns a boolean indicating whether the parameter exists or not
       bool hasParameter(const std::string & name, bool recursive = true) const;
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/FitParameter.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/FitParameter.h
index 69f2fbf8114e1a57b1b46793315f837f4755b8c4..36ec2ae520f3187aecad46dc12dd75a7481ef7bb 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/FitParameter.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/FitParameter.h
@@ -1,127 +1,127 @@
-#ifndef MANTID_GEOMETRY_FITPARAMETER_H_
-#define MANTID_GEOMETRY_FITPARAMETER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
-#include "MantidKernel/Interpolation.h"
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-    /**
-    Store information about a fitting parameter such as its value
-    if it is constrained or tied. Main purpose is to use this 
-    class as a type for storing information about a fitting parameter
-    in the parameter map of the workspace.
-
-    @author Anders Markvardsen, ISIS, RAL
-    @date 26/2/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-    */
-    class DLLExport FitParameter 
-    {
-    public:
-      /// Constructor
-      FitParameter() : m_value(0.0), m_tie(""), m_function("") {};
-
-      /// get paramter value
-      double getValue(const double& at) const;
-      /// get paramter value
-      double getValue() const;
-      /// set parameter value
-      double& setValue() {return m_value;}
-      /// get tie
-      std::string getTie() const { return m_tie; }
-      /// set tie
-      std::string& setTie() { return m_tie; }
-      /// get constraint 
-      std::string getConstraint() const;
-      /// get penalty factor
-      std::string getConstraintPenaltyFactor() const { return m_constraintPenaltyFactor; }
-      /// set constraint min
-      std::string& setConstraintMin() { return m_constraintMin; }
-      /// set constraint max
-      std::string& setConstraintMax() { return m_constraintMax; }
-      /// set the constraint penalty 
-      std::string& setConstraintPenaltyFactor() { return m_constraintPenaltyFactor; }
-      /// get formula
-      std::string getFormula() const { return m_formula; }
-      /// set formula
-      std::string& setFormula() { return m_formula; }
-      /// get formula unit
-      std::string getFormulaUnit() const { return m_formulaUnit; }
-      /// set formula unit
-      std::string& setFormulaUnit() { return m_formulaUnit; }
-      /// get result formula unit
-      std::string getResultUnit() const { return m_resultUnit; }
-      /// set result formula unit
-      std::string& setResultUnit() { return m_resultUnit; }
-      /// get function
-      std::string getFunction() const { return m_function; }
-      /// set function
-      std::string& setFunction() { return m_function; }
-      /// get name
-      std::string getName() const { return m_name; }
-      /// set name
-      std::string& setName() { return m_name; }
-      /// get look up table
-      const Kernel::Interpolation& getLookUpTable() const { return m_lookUpTable; }
-      /// set look up table
-      Kernel::Interpolation& setLookUpTable() { return m_lookUpTable; }
-
+#ifndef MANTID_GEOMETRY_FITPARAMETER_H_
+#define MANTID_GEOMETRY_FITPARAMETER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
+#include "MantidKernel/Interpolation.h"
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+    /**
+    Store information about a fitting parameter such as its value
+    if it is constrained or tied. Main purpose is to use this 
+    class as a type for storing information about a fitting parameter
+    in the parameter map of the workspace.
+
+    @author Anders Markvardsen, ISIS, RAL
+    @date 26/2/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+    */
+    class DLLExport FitParameter 
+    {
+    public:
+      /// Constructor
+      FitParameter() : m_value(0.0), m_tie(""), m_function("") {};
+
+      /// get paramter value
+      double getValue(const double& at) const;
+      /// get paramter value
+      double getValue() const;
+      /// set parameter value
+      double& setValue() {return m_value;}
+      /// get tie
+      std::string getTie() const { return m_tie; }
+      /// set tie
+      std::string& setTie() { return m_tie; }
+      /// get constraint 
+      std::string getConstraint() const;
+      /// get penalty factor
+      std::string getConstraintPenaltyFactor() const { return m_constraintPenaltyFactor; }
+      /// set constraint min
+      std::string& setConstraintMin() { return m_constraintMin; }
+      /// set constraint max
+      std::string& setConstraintMax() { return m_constraintMax; }
+      /// set the constraint penalty 
+      std::string& setConstraintPenaltyFactor() { return m_constraintPenaltyFactor; }
+      /// get formula
+      std::string getFormula() const { return m_formula; }
+      /// set formula
+      std::string& setFormula() { return m_formula; }
+      /// get formula unit
+      std::string getFormulaUnit() const { return m_formulaUnit; }
+      /// set formula unit
+      std::string& setFormulaUnit() { return m_formulaUnit; }
+      /// get result formula unit
+      std::string getResultUnit() const { return m_resultUnit; }
+      /// set result formula unit
+      std::string& setResultUnit() { return m_resultUnit; }
+      /// get function
+      std::string getFunction() const { return m_function; }
+      /// set function
+      std::string& setFunction() { return m_function; }
+      /// get name
+      std::string getName() const { return m_name; }
+      /// set name
+      std::string& setName() { return m_name; }
+      /// get look up table
+      const Kernel::Interpolation& getLookUpTable() const { return m_lookUpTable; }
+      /// set look up table
+      Kernel::Interpolation& setLookUpTable() { return m_lookUpTable; }
+
       /// Prints object to stream
-      void printSelf(std::ostream& os) const;
-
-    private:
-      /// value of parameter
-      mutable double m_value;
-      /// tie of parameter
-      std::string m_tie;
-      std::string m_constraintMin; ///< constraint min boundary
-      std::string m_constraintMax; ///< constraint max boundary
-      std::string m_constraintPenaltyFactor;  ///< the penalty factor
-      /// name of fitting function
-      std::string m_function;
-      /// name of parameter
-      std::string m_name;
-      /// look up table
-      Kernel::Interpolation m_lookUpTable;
-
-      std::string m_formula; ///< the formula
-      std::string m_formulaUnit; ///< the unit that the formula expects
-      std::string m_resultUnit;  ///<the rsult unit
-
+      void printSelf(std::ostream& os) const;
+
+    private:
+      /// value of parameter
+      mutable double m_value;
+      /// tie of parameter
+      std::string m_tie;
+      std::string m_constraintMin; ///< constraint min boundary
+      std::string m_constraintMax; ///< constraint max boundary
+      std::string m_constraintPenaltyFactor;  ///< the penalty factor
+      /// name of fitting function
+      std::string m_function;
+      /// name of parameter
+      std::string m_name;
+      /// look up table
+      Kernel::Interpolation m_lookUpTable;
+
+      std::string m_formula; ///< the formula
+      std::string m_formulaUnit; ///< the unit that the formula expects
+      std::string m_resultUnit;  ///<the rsult unit
+
 	    /// Static reference to the logger class
-	    static Kernel::Logger& g_log;
-    };
-
+	    static Kernel::Logger& g_log;
+    };
+
     // defining operator << and >>
     DLLExport std::ostream& operator<<(std::ostream&, const FitParameter& );
-    DLLExport std::istream& operator>>(std::istream&,FitParameter&);
-
-  } // namespace Geometry
-} // namespace Mantid
-
-#endif /*MANTID_GEOMETRY_FITPARAMETER_H_*/
+    DLLExport std::istream& operator>>(std::istream&,FitParameter&);
+
+  } // namespace Geometry
+} // namespace Mantid
+
+#endif /*MANTID_GEOMETRY_FITPARAMETER_H_*/
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/NearestNeighbours.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/NearestNeighbours.h
index b9d581bcdcc1ae31f7b0f2b8a5538cbd457d302d..193a0f11cd49c8dc8eb808d35df868a18f694929 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/NearestNeighbours.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/NearestNeighbours.h
@@ -1,39 +1,39 @@
-#ifndef MANTID_GEOMETRY_INSTRUMENT_NEARESTNEIGHBOURS
-#define MANTID_GEOMETRY_INSTRUMENT_NEARESTNEIGHBOURS
-
-#include "MantidKernel/System.h"
+#ifndef MANTID_GEOMETRY_INSTRUMENT_NEARESTNEIGHBOURS
+#define MANTID_GEOMETRY_INSTRUMENT_NEARESTNEIGHBOURS
 
-#include <boost/graph/adjacency_list.hpp>
-#include <boost/unordered_map.hpp>
+#include "MantidKernel/System.h"
+
+#include <boost/graph/adjacency_list.hpp>
+#include <boost/unordered_map.hpp>
 #include <boost/shared_ptr.hpp>
 
-namespace Mantid
-{
-namespace Geometry
-{
-
-// Forward Declarations
-class IInstrument;
-class IComponent;
-class V3D;
-
-/**
-*  This class is used to find the nearest neighbours of a detector in the instrument
-*  geometry. This class can be queried through calls to the getNeighbours() function
-*  on a Detector object.
-*
-*  This class uses the ANN Library, from David M Mount and Sunil Arya which is incorporated
-*  into Mantid's Kernel module. Mantid uses version 1.1.2 of this library.
-*  ANN is available from <http://www.cs.umd.edu/~mount/ANN/> and is released under the GNU LGPL.
-*  
-*  Known potential issue: boost's graph has an issue that may cause compilation errors in some
-*  circumstances in the current version of boost used by Mantid (1.43) based on tr1::tie. This
-*  issue is fixed in later versions of boost, but should in theory be guarded against by this
-*  file only being included in ParameterMap.
-*
-*  @author Michael Whitty, STFC
-*  @date 06/12/2010
-*
+namespace Mantid
+{
+namespace Geometry
+{
+
+// Forward Declarations
+class IInstrument;
+class IComponent;
+class V3D;
+
+/**
+*  This class is used to find the nearest neighbours of a detector in the instrument
+*  geometry. This class can be queried through calls to the getNeighbours() function
+*  on a Detector object.
+*
+*  This class uses the ANN Library, from David M Mount and Sunil Arya which is incorporated
+*  into Mantid's Kernel module. Mantid uses version 1.1.2 of this library.
+*  ANN is available from <http://www.cs.umd.edu/~mount/ANN/> and is released under the GNU LGPL.
+*  
+*  Known potential issue: boost's graph has an issue that may cause compilation errors in some
+*  circumstances in the current version of boost used by Mantid (1.43) based on tr1::tie. This
+*  issue is fixed in later versions of boost, but should in theory be guarded against by this
+*  file only being included in ParameterMap.
+*
+*  @author Michael Whitty, STFC
+*  @date 06/12/2010
+*
 *  Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 *
 *  This file is part of Mantid.
@@ -52,70 +52,70 @@ class V3D;
 *  along with this program.  If not, see <http://www.gnu.org/licenses/>.
 *
 *  File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-*  Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-class DLLExport NearestNeighbours
-{
-public:
-  /// Default (empty) constructor
-  NearestNeighbours(boost::shared_ptr<const Mantid::Geometry::IInstrument> instrument);
-  /// Default (empty) destructor
-  virtual ~NearestNeighbours() {};
-
-  /// Clear the graph and assosciated elements
-  void clear();
-  /// Build and populate the graph object
-  void build();
-  /// whether or not the graph has been created
-  bool isPopulated() const;
-  /// query the graph for the eight nearest neighbours to specified detector
-  std::map<int, double> neighbours(const int detID) const;
-  /// as above, but filter based on the distance given
-  std::map<int, double> neighbours(const int detID, const double radius) const;
-  /// as above, but taking input as an IComponent pointer
-  std::map<int, double> neighbours(const IComponent *component, const double radius=0.0) const;
-
-private:
-  /// typedef for Graph object used to hold the calculated information
-  typedef boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS,
-    boost::property<boost::vertex_name_t, int>,
-    boost::property<boost::edge_name_t, double>
-  > Graph;
-  /// Vertex descriptor object for Graph
-  typedef boost::graph_traits<Graph>::vertex_descriptor Vertex;
-  /// map object of int to int
-  typedef boost::unordered_map<int,int> MapII;
-  /// map object of int to Graph Vertex descriptor
-  typedef boost::unordered_map<int,Vertex> MapIV;
-
-  /// populates the graph with the nodes (detectors with id) and edges (neighbour links with distances)
-  void populate();
-
-  /// pointer to the instrument object from which to build the graph
-  boost::shared_ptr<const Mantid::Geometry::IInstrument> m_instrument;
-  /// number of neighbours to find. always set to 8.
-  int m_noNeighbours;
-  /// flag for whether the graph has been populated
-  bool m_isPopulated;
-  /// map between the DetectorID and the Graph node descriptor
-  MapIV m_detIDtoVertex;
-  /// boost::graph object
-  Graph m_graph;
-  /// property map holding the node's related DetectorID's
-  boost::property_map<Graph, boost::vertex_name_t>::type m_vertexID;
-  /// property map holding the edge's related Distance value.
-  boost::property_map<Graph, boost::edge_name_t>::type m_edgeLength;
-  /// V3D for scaling
-  V3D* m_scale;
-
-};
-
-/// Typedef for shared pointer to the NearestNeighbours class
-typedef boost::shared_ptr<Mantid::Geometry::NearestNeighbours> NearestNeighbours_sptr;
-/// Typedef for constant shared pointer to the NearestNeighbours class
-typedef boost::shared_ptr<const Mantid::Geometry::NearestNeighbours> NearestNeighbours_const_sptr;
-
-} // namespace Geometry
-} // namespace Mantid
-
+*  Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+class DLLExport NearestNeighbours
+{
+public:
+  /// Default (empty) constructor
+  NearestNeighbours(boost::shared_ptr<const Mantid::Geometry::IInstrument> instrument);
+  /// Default (empty) destructor
+  virtual ~NearestNeighbours() {};
+
+  /// Clear the graph and assosciated elements
+  void clear();
+  /// Build and populate the graph object
+  void build();
+  /// whether or not the graph has been created
+  bool isPopulated() const;
+  /// query the graph for the eight nearest neighbours to specified detector
+  std::map<int, double> neighbours(const int detID) const;
+  /// as above, but filter based on the distance given
+  std::map<int, double> neighbours(const int detID, const double radius) const;
+  /// as above, but taking input as an IComponent pointer
+  std::map<int, double> neighbours(const IComponent *component, const double radius=0.0) const;
+
+private:
+  /// typedef for Graph object used to hold the calculated information
+  typedef boost::adjacency_list<boost::vecS, boost::vecS, boost::directedS,
+    boost::property<boost::vertex_name_t, int>,
+    boost::property<boost::edge_name_t, double>
+  > Graph;
+  /// Vertex descriptor object for Graph
+  typedef boost::graph_traits<Graph>::vertex_descriptor Vertex;
+  /// map object of int to int
+  typedef boost::unordered_map<int,int> MapII;
+  /// map object of int to Graph Vertex descriptor
+  typedef boost::unordered_map<int,Vertex> MapIV;
+
+  /// populates the graph with the nodes (detectors with id) and edges (neighbour links with distances)
+  void populate();
+
+  /// pointer to the instrument object from which to build the graph
+  boost::shared_ptr<const Mantid::Geometry::IInstrument> m_instrument;
+  /// number of neighbours to find. always set to 8.
+  int m_noNeighbours;
+  /// flag for whether the graph has been populated
+  bool m_isPopulated;
+  /// map between the DetectorID and the Graph node descriptor
+  MapIV m_detIDtoVertex;
+  /// boost::graph object
+  Graph m_graph;
+  /// property map holding the node's related DetectorID's
+  boost::property_map<Graph, boost::vertex_name_t>::type m_vertexID;
+  /// property map holding the edge's related Distance value.
+  boost::property_map<Graph, boost::edge_name_t>::type m_edgeLength;
+  /// V3D for scaling
+  V3D* m_scale;
+
+};
+
+/// Typedef for shared pointer to the NearestNeighbours class
+typedef boost::shared_ptr<Mantid::Geometry::NearestNeighbours> NearestNeighbours_sptr;
+/// Typedef for constant shared pointer to the NearestNeighbours class
+typedef boost::shared_ptr<const Mantid::Geometry::NearestNeighbours> NearestNeighbours_const_sptr;
+
+} // namespace Geometry
+} // namespace Mantid
+
 #endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/Parameter.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/Parameter.h
index 98493fa123c6f7703221d8e90f28a31af6eba66b..1bfc248847707f54741e49e4cf3a40b889d47064 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/Parameter.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/Parameter.h
@@ -229,11 +229,11 @@ namespace Mantid
   } // namespace Geometry
 } // namespace Mantid
 
-#define DECLARE_PARAMETER(classname,classtype) \
-namespace { \
-  Mantid::Kernel::RegistrationHelper register_par_##classname( \
-    ((Mantid::Geometry::ParameterFactory::subscribe< Mantid::Geometry::ParameterType<classtype> >(#classname)) \
-     , 0)); \
-}
-
+#define DECLARE_PARAMETER(classname,classtype) \
+namespace { \
+  Mantid::Kernel::RegistrationHelper register_par_##classname( \
+    ((Mantid::Geometry::ParameterFactory::subscribe< Mantid::Geometry::ParameterType<classtype> >(#classname)) \
+     , 0)); \
+}
+
 #endif /*MANTID_GEOMETRY_PARAMETER_H_*/
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/ParameterFactory.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/ParameterFactory.h
index 40032fdbb47937d78ce8f3146fede4bf8e22a095..5792ec6ac3eeebccda483dbb09a11b4c1d1b6be2 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/ParameterFactory.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Instrument/ParameterFactory.h
@@ -1,17 +1,17 @@
-#ifndef MANTID_GEOMETRY_PARAMETERFACTORY_H_
-#define MANTID_GEOMETRY_PARAMETERFACTORY_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
+#ifndef MANTID_GEOMETRY_PARAMETERFACTORY_H_
+#define MANTID_GEOMETRY_PARAMETERFACTORY_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
 #include "MantidKernel/Instantiator.h"
-#include "MantidKernel/SingletonHolder.h"
-#include "MantidKernel/Logger.h"
-#include <vector>
-#include <map>
-
-#ifdef _WIN32
+#include "MantidKernel/SingletonHolder.h"
+#include "MantidKernel/Logger.h"
+#include <vector>
+#include <map>
+
+#ifdef _WIN32
 #if (IN_MANTID_GEOMETRY)
 #define GEOMETRY_DLL_EXPORT DLLExport
 #else
@@ -21,97 +21,97 @@
 #define GEOMETRY_DLL_EXPORT
 #endif
 
-namespace Mantid
-{
-	
-namespace Kernel
-{
-  class Logger;
-}
-	
-namespace Geometry
-{
-
-//----------------------------------------------------------------------
-// Forward declaration
-//----------------------------------------------------------------------
-class Parameter;
-
-/** The ParameterFactory class creates parameters for the instrument ParameterMap. 
-    
-    @author Roman Tolchenov, Tessella plc
-    @date 19/05/2009
-    
-    Copyright &copy; 2009 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>    
+namespace Mantid
+{
+	
+namespace Kernel
+{
+  class Logger;
+}
+	
+namespace Geometry
+{
+
+//----------------------------------------------------------------------
+// Forward declaration
+//----------------------------------------------------------------------
+class Parameter;
+
+/** The ParameterFactory class creates parameters for the instrument ParameterMap. 
+    
+    @author Roman Tolchenov, Tessella plc
+    @date 19/05/2009
+    
+    Copyright &copy; 2009 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>    
 */
-class GEOMETRY_DLL_EXPORT ParameterFactory
-{
-public:
-  template<class C>
-  static void subscribe(const std::string& className);
-  
-  static boost::shared_ptr<Parameter> create(const std::string& className, const std::string& name);
-  
-private:
-  /// Private default constructor
-  ParameterFactory();
-  /// Private copy constructor
-  ParameterFactory(const ParameterFactory&);
-  /// Private assignment operator
-  ParameterFactory& operator=(const ParameterFactory&);
-  
-  /// A typedef for the instantiator
-  typedef Kernel::AbstractInstantiator<Parameter> AbstractFactory;
-  /// An inner class to specialise map such that it does a deep delete when s_map is destroyed
-  class DLLExport FactoryMap : public std::map<std::string, AbstractFactory*>
-  {
-  public:
-    /// Destructor. Deletes the AbstractInstantiator objects stored in the map.
-    virtual ~FactoryMap()
-    {
-      for (iterator it = this->begin(); it!=this->end(); ++it) delete it->second;
-    }
-  };
-  /// The map holding the registered class names and their instantiators
-  static FactoryMap s_map;
+class GEOMETRY_DLL_EXPORT ParameterFactory
+{
+public:
+  template<class C>
+  static void subscribe(const std::string& className);
+  
+  static boost::shared_ptr<Parameter> create(const std::string& className, const std::string& name);
+  
+private:
+  /// Private default constructor
+  ParameterFactory();
+  /// Private copy constructor
+  ParameterFactory(const ParameterFactory&);
+  /// Private assignment operator
+  ParameterFactory& operator=(const ParameterFactory&);
+  
+  /// A typedef for the instantiator
+  typedef Kernel::AbstractInstantiator<Parameter> AbstractFactory;
+  /// An inner class to specialise map such that it does a deep delete when s_map is destroyed
+  class DLLExport FactoryMap : public std::map<std::string, AbstractFactory*>
+  {
+  public:
+    /// Destructor. Deletes the AbstractInstantiator objects stored in the map.
+    virtual ~FactoryMap()
+    {
+      for (iterator it = this->begin(); it!=this->end(); ++it) delete it->second;
+    }
+  };
+  /// The map holding the registered class names and their instantiators
+  static FactoryMap s_map;
 };
 
-/**  Templated method for parameter subscription
- *   @param className :: The parameter type name
- *   @tparam C The parameter type
- */
-template<class C>
-void ParameterFactory::subscribe(const std::string& className)
-{
-  typename FactoryMap::iterator it = s_map.find(className);
-  if (!className.empty() && it == s_map.end())
-  {
-    s_map[className] = new Kernel::Instantiator<C, Parameter>;
-  }
-  else
-  {
-    throw std::runtime_error("Parameter type" + className + " is already registered.\n");
-  }
+/**  Templated method for parameter subscription
+ *   @param className :: The parameter type name
+ *   @tparam C The parameter type
+ */
+template<class C>
+void ParameterFactory::subscribe(const std::string& className)
+{
+  typename FactoryMap::iterator it = s_map.find(className);
+  if (!className.empty() && it == s_map.end())
+  {
+    s_map[className] = new Kernel::Instantiator<C, Parameter>;
+  }
+  else
+  {
+    throw std::runtime_error("Parameter type" + className + " is already registered.\n");
+  }
 }
 
-} // namespace Geometry
-} // namespace Mantid
-
-#endif /*MANTID_GEOMETRY_PARAMETERFACTORY_H_*/
+} // namespace Geometry
+} // namespace Mantid
+
+#endif /*MANTID_GEOMETRY_PARAMETERFACTORY_H_*/
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/IMDDimension.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/IMDDimension.h
index 61e80082a53cab3621ea5376573e0e863e1e15e9..3f4faf7f0e8ecd2f8f84b7a16738313d97e35e57 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/IMDDimension.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/IMDDimension.h
@@ -1,96 +1,96 @@
-#ifndef I_MD_DIMENSION_H
-#define I_MD_DIMENSION_H
-#include <vector>
-
-/** The class discribes one dimension of multidimensional dataset representing an ortogonal dimension and linear axis. 
-*
-*   Abstract type for a multi dimensional dimension. Gives a read-only layer to the concrete implementation.
-
-    @author Owen Arnold, RAL ISIS
-    @date 12/11/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-    */
-#include "MantidKernel/System.h"
-#include "MantidGeometry/V3D.h"
-#include <boost/shared_ptr.hpp>
-
-namespace Mantid
-{
-  namespace Geometry
+#ifndef I_MD_DIMENSION_H
+#define I_MD_DIMENSION_H
+#include <vector>
+
+/** The class discribes one dimension of multidimensional dataset representing an ortogonal dimension and linear axis. 
+*
+*   Abstract type for a multi dimensional dimension. Gives a read-only layer to the concrete implementation.
+
+    @author Owen Arnold, RAL ISIS
+    @date 12/11/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+    */
+#include "MantidKernel/System.h"
+#include "MantidGeometry/V3D.h"
+#include <boost/shared_ptr.hpp>
+
+namespace Mantid
+{
+  namespace Geometry
   {
-
-  class DLLExport IMDDimension
-  {
-  public:
-    /// the name of the dimennlsion as can be displayed along the axis
-    virtual std::string getName() const = 0;
-    /// short name which identify the dimension among other dimensin. A dimension can be usually find by its ID and various  
-    /// various method exist to manipulate set of dimensions by their names. 
-    virtual std::string getDimensionId() const = 0;
-
-    /// if the dimension is integrated (e.g. have single bin)
-    virtual bool getIsIntegrated() const = 0;
-    // it is sometimes convinient to shift image data by some number along specific dimension
-    virtual double getDataShift()const = 0;
-
-    virtual double getMaximum() const = 0;
-
-    virtual double getMinimum() const = 0;
-    /// number of bins dimension have (an integrated has one). A axis directed along dimension would have getNBins+1 axis points.
-    virtual unsigned int getNBins() const = 0;
-    /// the change of the location in the multidimensional image array, which occurs if the index of this dimension changes by one.
-    virtual size_t      getStride()const = 0;
-    /// defines if the dimension is reciprocal or not. The reciprocal dimensions are treated differently from an orthogonal one
-    virtual bool isReciprocal() const = 0;
-    /// defines the dimension scale in physical units. ->TODO: it is unclear if we need this here
-    // virtual double getScale()const = 0;
-    ///  Get coordinate for index;
-    virtual double getX(unsigned int ind)const = 0;
-    /** function returns a direction of the dimension in the system of coordinates described by the MDBasis;
-     *  Orthogonal dimensions always have direction 1, but we set direction of this to 0  (e.g. direction={0,0,0})? questionable, 1 may be better;
-     *  while reciprocal dimension can be directed anywhere withing the reciprocal space;
-	     Norm of the vector, returned by this function has to be 1    */
-    virtual V3D getDirection(void)const = 0;
-    /** Return direction in the crystallogrpahical sence, e.g. output V3D is normalized in such a way that the size of
-	   smallest (by module) non-0 component of the vector is 1; In this case, all vectors representing valid crystallographical axis would 
-	   have integer values; */
-    virtual V3D getDirectionCryst(void)const = 0;
-
-    /** the function returns the center points of the axis bins; There are nBins of such points 
-     (when axis has nBins+1 points with point 0 equal rMin and nBins+1 equal rMax) */
-    virtual void getAxisPoints(std::vector<double>  &)const=0;
-
-
-    //Dimensions must be xml serializable.
-    virtual std::string toXMLString() const = 0;
-
-    virtual ~IMDDimension(){};
-  };
-
-  /// Shared Pointer for IMDDimension. Frequently used type in framework.
-  typedef boost::shared_ptr<IMDDimension> IMDDimension_sptr;
-  /// Shared Pointer to const IMDDimension. Not stictly necessary since IMDDimension is pure abstract.
-  typedef boost::shared_ptr<const IMDDimension> IMDDimension_const_sptr;
-
-  }
-}
+
+  class DLLExport IMDDimension
+  {
+  public:
+    /// the name of the dimennlsion as can be displayed along the axis
+    virtual std::string getName() const = 0;
+    /// short name which identify the dimension among other dimensin. A dimension can be usually find by its ID and various  
+    /// various method exist to manipulate set of dimensions by their names. 
+    virtual std::string getDimensionId() const = 0;
+
+    /// if the dimension is integrated (e.g. have single bin)
+    virtual bool getIsIntegrated() const = 0;
+    // it is sometimes convinient to shift image data by some number along specific dimension
+    virtual double getDataShift()const = 0;
+
+    virtual double getMaximum() const = 0;
+
+    virtual double getMinimum() const = 0;
+    /// number of bins dimension have (an integrated has one). A axis directed along dimension would have getNBins+1 axis points.
+    virtual unsigned int getNBins() const = 0;
+    /// the change of the location in the multidimensional image array, which occurs if the index of this dimension changes by one.
+    virtual size_t      getStride()const = 0;
+    /// defines if the dimension is reciprocal or not. The reciprocal dimensions are treated differently from an orthogonal one
+    virtual bool isReciprocal() const = 0;
+    /// defines the dimension scale in physical units. ->TODO: it is unclear if we need this here
+    // virtual double getScale()const = 0;
+    ///  Get coordinate for index;
+    virtual double getX(unsigned int ind)const = 0;
+    /** function returns a direction of the dimension in the system of coordinates described by the MDBasis;
+     *  Orthogonal dimensions always have direction 1, but we set direction of this to 0  (e.g. direction={0,0,0})? questionable, 1 may be better;
+     *  while reciprocal dimension can be directed anywhere withing the reciprocal space;
+	     Norm of the vector, returned by this function has to be 1    */
+    virtual V3D getDirection(void)const = 0;
+    /** Return direction in the crystallogrpahical sence, e.g. output V3D is normalized in such a way that the size of
+	   smallest (by module) non-0 component of the vector is 1; In this case, all vectors representing valid crystallographical axis would 
+	   have integer values; */
+    virtual V3D getDirectionCryst(void)const = 0;
+
+    /** the function returns the center points of the axis bins; There are nBins of such points 
+     (when axis has nBins+1 points with point 0 equal rMin and nBins+1 equal rMax) */
+    virtual void getAxisPoints(std::vector<double>  &)const=0;
+
+
+    //Dimensions must be xml serializable.
+    virtual std::string toXMLString() const = 0;
+
+    virtual ~IMDDimension(){};
+  };
+
+  /// Shared Pointer for IMDDimension. Frequently used type in framework.
+  typedef boost::shared_ptr<IMDDimension> IMDDimension_sptr;
+  /// Shared Pointer to const IMDDimension. Not stictly necessary since IMDDimension is pure abstract.
+  typedef boost::shared_ptr<const IMDDimension> IMDDimension_const_sptr;
+
+  }
+}
 #endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDBasisDimension.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDBasisDimension.h
index d7e8979901de118bd8b9a772d9b277d10480c6f7..bbf0b2d62a1eef2e14ec74917547b3d16f7b153d 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDBasisDimension.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDBasisDimension.h
@@ -1,61 +1,61 @@
-#ifndef _MD_GEOMETRY_BAISIS_DIMENSION_H
-#define _MD_GEOMETRY_BAISIS_DIMENSION_H
-
-/** Represents a 'basis' dimension. Basis dimensions are those known from disk, that are in their raw unbinned form.
-*   
-
-    @author Owen Arnold, RAL ISIS
-    @date 25/11/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+#ifndef _MD_GEOMETRY_BAISIS_DIMENSION_H
+#define _MD_GEOMETRY_BAISIS_DIMENSION_H
+
+/** Represents a 'basis' dimension. Basis dimensions are those known from disk, that are in their raw unbinned form.
+*   
+
+    @author Owen Arnold, RAL ISIS
+    @date 25/11/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
     Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-#include "MantidKernel/System.h"
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-
-    class DLLExport MDBasisDimension
-    {
-    public:
-      explicit MDBasisDimension(std::string id, bool isReciprocal, int columnNumber);
-      
-      bool operator==(const MDBasisDimension &other) const;
-      bool operator!=(const MDBasisDimension &other) const;
-      bool operator < (const MDBasisDimension &other) const;
-
-      std::string getId() const;
-      bool getIsReciprocal() const;
-      int getColumnNumber() const;
-
-    private:
-      std::string m_id; //Equivalent to tag in older definitions.
-      bool m_isReciprocal;
-      int m_columnNumber; //Column number correponding to the particular tag.
-      //TODO: Add some convertable Unit ie. energy
-    };
-
-  }
-}
-
-#endif
+*/
+
+#include "MantidKernel/System.h"
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+
+    class DLLExport MDBasisDimension
+    {
+    public:
+      explicit MDBasisDimension(std::string id, bool isReciprocal, int columnNumber);
+      
+      bool operator==(const MDBasisDimension &other) const;
+      bool operator!=(const MDBasisDimension &other) const;
+      bool operator < (const MDBasisDimension &other) const;
+
+      std::string getId() const;
+      bool getIsReciprocal() const;
+      int getColumnNumber() const;
+
+    private:
+      std::string m_id; //Equivalent to tag in older definitions.
+      bool m_isReciprocal;
+      int m_columnNumber; //Column number correponding to the particular tag.
+      //TODO: Add some convertable Unit ie. energy
+    };
+
+  }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDCell.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDCell.h
index d1360f4f70d1e056656e16d2f873eaccb5ecf2bb..aa42bc634a5be260376d98b41ed89fead5ebb7d8 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDCell.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDCell.h
@@ -1,30 +1,30 @@
 #ifndef MDCell_H_
 #define MDCell_H_
 
-/** Abstract type to represent a group of multidimensional pixel/points. 
-*   This type may not be a suitable pure virtual type in future iterations. Future implementations should be non-abstract.
-
-    @author Owen Arnold, RAL ISIS
-    @date 15/11/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+/** Abstract type to represent a group of multidimensional pixel/points. 
+*   This type may not be a suitable pure virtual type in future iterations. Future implementations should be non-abstract.
+
+    @author Owen Arnold, RAL ISIS
+    @date 15/11/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
     Code Documentation is available at: <http://doxygen.mantidproject.org>
 */
 
@@ -54,7 +54,7 @@ namespace Mantid
       /// Construct image-only mode. No contributing points maintained.
       MDCell(const double& signal,const double& error, const std::vector<coordinate>& vertexes);
       std::vector<coordinate> getVertexes() const;
-      double getSignal() const;
+      double getSignal() const;
       double getError() const;
       std::vector<boost::shared_ptr<MDPoint> > getContributingPoints() const;
       ~MDCell();
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimension.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimension.h
index a9cda69e4cb00d691fc143f16d75462ad94f7224..550a365f8596dbde64b5806c4cac1c4fbb084434 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimension.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimension.h
@@ -1,199 +1,199 @@
-#ifndef MDDIMENSION_H
-#define MDDIMENSION_H
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <stdio.h>
-#include <iostream>
-#include <vector>
-#include <string>
-//#include <algorithm>
-#include <limits>
-#include "MantidKernel/Exception.h"
-#include "MantidKernel/Logger.h"
-#include "MantidGeometry/MDGeometry/MDWorkspaceConstants.h"
-#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
-#include "MantidGeometry/MDGeometry/IMDDimension.h"
-
-
-/** The class discribes one dimension of multidimensional dataset representing an ortogonal dimension and linear axis. 
- *
- *   A multidimensional dataset has N such dimensions and usual problem would have maximal number of
- *   dimensions N_max with N<=N_max
-
-    @author Alex Buts, RAL ISIS
-    @date 28/09/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
- */
-
-/// Forward Declare XML DOM Library components
-namespace Poco
-{
-  namespace XML
-  {
-    class Document;
-    class Element;
-  }
-}
-
-namespace Mantid
-{
-namespace Geometry
-{
- // forward declaration;
-  class DimensionDescription;
-
-  class DLLExport MDDimension : public IMDDimension
-  {
-  public:
-   /// function return the unique dimension ID, identifying the current dimension among others
-    virtual std::string getDimensionId() const;
-
-    virtual bool getIsIntegrated() const;
-
-    virtual ~MDDimension();
-    /// function returns the name of the axis in this direction
-    virtual std::string getName()const{return AxisName;}
-    /// function return the unique dimension ID, identifying the current dimension among others
-    virtual std::string getDimensionTag(void)const{return dimTag;}
-    /// get maximal value along the dimension
-    virtual double       getMaximum(void)const{return rMax;}
-    /// get minimal value along the dimension
-    virtual double       getMinimum(void)const{return rMin;}
-    /// range of data along this axis
-    virtual double       getRange(void)const{return (rMax-rMin);}
-    /// scale of the data along this axis
-    /// TO DO: what is this scale and what constraint we want to apply on it? 
-    //virtual double getScale(void)const{return latticeParam;}
-    /** return the state of this dimension i.e if it is integrated. If it is, it has one bin only, the axis consis of two points,
-     *   coinsiding with min and max values rMin and rMax; */
-    virtual bool        getIntegrated(void)const{return isIntegrated;}
-    /** function returns a direction of the dimension in the system of coordinates described by the MDBasis; 
-       *  Orthogonal dimensions always have direction 1 (e.g. V3D={1,0,0})according to their direction in the coordinate 
-	   * system. Norm of the vector, returned by this function has to be 1    */
-	virtual V3D getDirection(void)const{return direction;}
-	  /** Return direction in the crystallogrpahical sence, e.g. output V3D is normalized in such a way that the size of
-	   smallest (by module) non-0 component of the vector is 1; In this case, all vectors representing valid crystallographical axis would 
-	   have integer values; */
-	virtual V3D getDirectionCryst(void)const{return direction;}
-
-	/// get Axis data; 
-    std::vector<double> const &  getAxis(void)const{return Axis;}
-    /// the function returns the center points of the axis bins; There are nBins of such points 
-    /// (when axis has nBins+1 points with point 0 equal rMin and nBins+1 equal rMax)
-    virtual void getAxisPoints(std::vector<double>  &)const;
-    /// function returns number of the bins this dimension has
-    virtual unsigned int getNBins(void)const{return nBins;}
-    /// function returns the dimension stride, e.g. the step of change for 1D index of a dimension in multidimensional array, if an index of this dimension changes by one
-    virtual size_t       getStride(void)const{return nStride;}
-  
-    //Get coordinate for index; Throws through vector if ind out of range 
-    virtual double getX(unsigned int ind)const{return Axis.at(ind);}
-    /// it is not reciprocal dimension -> convenience function
-    virtual bool isReciprocal(void)const{return false;}
-    /// get data shif in this direction (original data were shifted when rebinnded)
-    virtual double getDataShift()const{return data_shift;}
-
-    MDDimension(const std::string &ID);
-
-    bool operator==(const MDDimension& other) const;
-    bool operator!=(const MDDimension& other) const;
-
-//HACK -- these methods should be protected or everything goes through IMD 
-virtual void  setRange(double rMin=-1,double rMax=1,unsigned int nBins=1);
-void  setName(const std::string & name){this->AxisName.assign(name); }
-  protected:
-    /// this is to initiate and set the Dimensions from the Geometry; The geometry is in fact a collection of Dimensions + a bit more
-    friend class MDGeometry;
-    // set all non-inter-dimension-dependent values on the dimesion from the dimension description
-    virtual void initialize(const DimensionDescription &descr);
-
-    //********  SET. -> geometry should set it properly as any set operation here is also rebinning operation on MDImage;
-    // function sets the coordinates of the dimension; An orthogonal dimension does nothing with it
-	virtual void setDirection(const V3D &){};
-    // function sets the dimension as a linear dimension with specific ranges and number of bins
-    
-    void  setName(const char *name) {this->AxisName.assign(name);}
-    
-    /** Set the scale of a particular dimension
-     * @param Value :: -- the value to set;    */
-    //void   setScale(double Value){latticeParam=Value;}
-    /// functions clears axis, makes nBins=1 and sets "integrated" sign to the dimension. Meaningless and dangerous without real integration procedure
-    void   setIntegrated(void);
-    /// as setIntegrated(void) but integration within the range specified
-    void   setIntegrated(double rxMin);
-    void   setIntegrated(double rxMin, double rxMax);
-    /// set the dimension expanded (e.g. real with proper number of bins, non-integrated)
-    /// also changes the number of bins if the dimension was not expanded before. 
-    /// if nBins == 1 works like setIntegrated;
-    void   setExpanded(unsigned int nBins);
-    /// differs from setRange by the fact that the limits has to be within the existing ranges
-    void   setExpanded(double rxMin, double rxMax,unsigned int nBins);
-    /// set shift in the direction of this dimension
-    void  setShift(double newShift){data_shift= newShift;}
-    /// should not be public to everybody as chanded by  MDGeometry while reshaping or rebinning;
-    void  setStride(size_t newStride){nStride=newStride; }
- 
-
-    /// logger -> to provide logging, for MD workspaces in this dimension
-    static Kernel::Logger& g_log;
-
-    /// Helper method actually implementing the bulk of toXMLString. Allows subtypes to use the same serialisation code, with the ability to append to the same root element.
-    void ApplySerialization(Poco::XML::Document* pDoc, Poco::XML::Element* pDimensionElement) const;
-	// direction of a vector in the basis system of coordinates;
-   /// the coordinate of a dimension in an WorkspaceGeometry system of coordinates (always 0 here and |1| triplet for reciprocals) 
-	V3D   direction;
-  private:
-    /// name of the axis;
-    std::string AxisName;
-    /// the name of the dimension in the dimensions basis;
-    std::string dimTag;
-
-    /// The parameter, which specify if the axis is integraged. If it is, nBins =1;
-    bool isIntegrated;
-    /// number of bins the axis have
-    unsigned int nBins;
-    /// dimension stride in a multidimensional array
-    size_t   nStride;
-    /// vector of leftmost bin ranges for bins plus rightmost value;  
-    std::vector<double> Axis;
-    /// min and maximum values along this dimension;
-    double rMin,rMax;
- 
-    /// data shift in correspondent direction
-    double data_shift; 
-    // *************  should be prohibited?:
-    //MDDimension(const MDDimension &);
-  public:
-    //MDDimension & operator=(const MDDimension &rhs);
-    /// internal function which verify if the ranges of the argumens are permitted; Used by many setRanges functions
-    void check_ranges(double rxMin,double rxMax);
-
-    //Serialization as an xml string.
-    virtual std::string toXMLString() const;
-
-  };
-
-} // Geometry
-} // Mantid
-
-#endif
+#ifndef MDDIMENSION_H
+#define MDDIMENSION_H
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <stdio.h>
+#include <iostream>
+#include <vector>
+#include <string>
+//#include <algorithm>
+#include <limits>
+#include "MantidKernel/Exception.h"
+#include "MantidKernel/Logger.h"
+#include "MantidGeometry/MDGeometry/MDWorkspaceConstants.h"
+#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
+#include "MantidGeometry/MDGeometry/IMDDimension.h"
+
+
+/** The class discribes one dimension of multidimensional dataset representing an ortogonal dimension and linear axis. 
+ *
+ *   A multidimensional dataset has N such dimensions and usual problem would have maximal number of
+ *   dimensions N_max with N<=N_max
+
+    @author Alex Buts, RAL ISIS
+    @date 28/09/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+ */
+
+/// Forward Declare XML DOM Library components
+namespace Poco
+{
+  namespace XML
+  {
+    class Document;
+    class Element;
+  }
+}
+
+namespace Mantid
+{
+namespace Geometry
+{
+ // forward declaration;
+  class DimensionDescription;
+
+  class DLLExport MDDimension : public IMDDimension
+  {
+  public:
+   /// function return the unique dimension ID, identifying the current dimension among others
+    virtual std::string getDimensionId() const;
+
+    virtual bool getIsIntegrated() const;
+
+    virtual ~MDDimension();
+    /// function returns the name of the axis in this direction
+    virtual std::string getName()const{return AxisName;}
+    /// function return the unique dimension ID, identifying the current dimension among others
+    virtual std::string getDimensionTag(void)const{return dimTag;}
+    /// get maximal value along the dimension
+    virtual double       getMaximum(void)const{return rMax;}
+    /// get minimal value along the dimension
+    virtual double       getMinimum(void)const{return rMin;}
+    /// range of data along this axis
+    virtual double       getRange(void)const{return (rMax-rMin);}
+    /// scale of the data along this axis
+    /// TO DO: what is this scale and what constraint we want to apply on it? 
+    //virtual double getScale(void)const{return latticeParam;}
+    /** return the state of this dimension i.e if it is integrated. If it is, it has one bin only, the axis consis of two points,
+     *   coinsiding with min and max values rMin and rMax; */
+    virtual bool        getIntegrated(void)const{return isIntegrated;}
+    /** function returns a direction of the dimension in the system of coordinates described by the MDBasis; 
+       *  Orthogonal dimensions always have direction 1 (e.g. V3D={1,0,0})according to their direction in the coordinate 
+	   * system. Norm of the vector, returned by this function has to be 1    */
+	virtual V3D getDirection(void)const{return direction;}
+	  /** Return direction in the crystallogrpahical sence, e.g. output V3D is normalized in such a way that the size of
+	   smallest (by module) non-0 component of the vector is 1; In this case, all vectors representing valid crystallographical axis would 
+	   have integer values; */
+	virtual V3D getDirectionCryst(void)const{return direction;}
+
+	/// get Axis data; 
+    std::vector<double> const &  getAxis(void)const{return Axis;}
+    /// the function returns the center points of the axis bins; There are nBins of such points 
+    /// (when axis has nBins+1 points with point 0 equal rMin and nBins+1 equal rMax)
+    virtual void getAxisPoints(std::vector<double>  &)const;
+    /// function returns number of the bins this dimension has
+    virtual unsigned int getNBins(void)const{return nBins;}
+    /// function returns the dimension stride, e.g. the step of change for 1D index of a dimension in multidimensional array, if an index of this dimension changes by one
+    virtual size_t       getStride(void)const{return nStride;}
+  
+    //Get coordinate for index; Throws through vector if ind out of range 
+    virtual double getX(unsigned int ind)const{return Axis.at(ind);}
+    /// it is not reciprocal dimension -> convenience function
+    virtual bool isReciprocal(void)const{return false;}
+    /// get data shif in this direction (original data were shifted when rebinnded)
+    virtual double getDataShift()const{return data_shift;}
+
+    MDDimension(const std::string &ID);
+
+    bool operator==(const MDDimension& other) const;
+    bool operator!=(const MDDimension& other) const;
+
+//HACK -- these methods should be protected or everything goes through IMD 
+virtual void  setRange(double rMin=-1,double rMax=1,unsigned int nBins=1);
+void  setName(const std::string & name){this->AxisName.assign(name); }
+  protected:
+    /// this is to initiate and set the Dimensions from the Geometry; The geometry is in fact a collection of Dimensions + a bit more
+    friend class MDGeometry;
+    // set all non-inter-dimension-dependent values on the dimesion from the dimension description
+    virtual void initialize(const DimensionDescription &descr);
+
+    //********  SET. -> geometry should set it properly as any set operation here is also rebinning operation on MDImage;
+    // function sets the coordinates of the dimension; An orthogonal dimension does nothing with it
+	virtual void setDirection(const V3D &){};
+    // function sets the dimension as a linear dimension with specific ranges and number of bins
+    
+    void  setName(const char *name) {this->AxisName.assign(name);}
+    
+    /** Set the scale of a particular dimension
+     * @param Value :: -- the value to set;    */
+    //void   setScale(double Value){latticeParam=Value;}
+    /// functions clears axis, makes nBins=1 and sets "integrated" sign to the dimension. Meaningless and dangerous without real integration procedure
+    void   setIntegrated(void);
+    /// as setIntegrated(void) but integration within the range specified
+    void   setIntegrated(double rxMin);
+    void   setIntegrated(double rxMin, double rxMax);
+    /// set the dimension expanded (e.g. real with proper number of bins, non-integrated)
+    /// also changes the number of bins if the dimension was not expanded before. 
+    /// if nBins == 1 works like setIntegrated;
+    void   setExpanded(unsigned int nBins);
+    /// differs from setRange by the fact that the limits has to be within the existing ranges
+    void   setExpanded(double rxMin, double rxMax,unsigned int nBins);
+    /// set shift in the direction of this dimension
+    void  setShift(double newShift){data_shift= newShift;}
+    /// should not be public to everybody as chanded by  MDGeometry while reshaping or rebinning;
+    void  setStride(size_t newStride){nStride=newStride; }
+ 
+
+    /// logger -> to provide logging, for MD workspaces in this dimension
+    static Kernel::Logger& g_log;
+
+    /// Helper method actually implementing the bulk of toXMLString. Allows subtypes to use the same serialisation code, with the ability to append to the same root element.
+    void ApplySerialization(Poco::XML::Document* pDoc, Poco::XML::Element* pDimensionElement) const;
+	// direction of a vector in the basis system of coordinates;
+   /// the coordinate of a dimension in an WorkspaceGeometry system of coordinates (always 0 here and |1| triplet for reciprocals) 
+	V3D   direction;
+  private:
+    /// name of the axis;
+    std::string AxisName;
+    /// the name of the dimension in the dimensions basis;
+    std::string dimTag;
+
+    /// The parameter, which specify if the axis is integraged. If it is, nBins =1;
+    bool isIntegrated;
+    /// number of bins the axis have
+    unsigned int nBins;
+    /// dimension stride in a multidimensional array
+    size_t   nStride;
+    /// vector of leftmost bin ranges for bins plus rightmost value;  
+    std::vector<double> Axis;
+    /// min and maximum values along this dimension;
+    double rMin,rMax;
+ 
+    /// data shift in correspondent direction
+    double data_shift; 
+    // *************  should be prohibited?:
+    //MDDimension(const MDDimension &);
+  public:
+    //MDDimension & operator=(const MDDimension &rhs);
+    /// internal function which verify if the ranges of the argumens are permitted; Used by many setRanges functions
+    void check_ranges(double rxMin,double rxMax);
+
+    //Serialization as an xml string.
+    virtual std::string toXMLString() const;
+
+  };
+
+} // Geometry
+} // Mantid
+
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimensionRes.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimensionRes.h
index 201d00ff38c24bbc6347f82b465e36236a7426a1..b6e91562060f90ca716d1549126680430d003dbe 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimensionRes.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDDimensionRes.h
@@ -1,120 +1,120 @@
-#ifndef H_DIMENSIONRES
-#define H_DIMENSIONRES
-#include "MantidGeometry/MDGeometry/MDDimension.h"
-namespace Mantid{
-    namespace Geometry{
-/** This is the dimension which corresponds to reciprocal dimension
-*
-* It differs from usual dimension because can have some  nonortogonal direction in the WorkspaceGeometry system of coordinates
-*
-    @author Alex Buts, RAL ISIS
-    @date 28/09/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
- /** enum describes reciprocal dimension numbers and reflects the request to up to three reciprocal dimensions */
- enum rec_dim{
-        q1,
-        q2,
-        q3
- }; 
-
-class DLLExport MDDimensionRes :   public MDDimension
-{
-   // this is to initiate and set the Dimensions from the Geometry
-    friend class MDGeometry;
-public:
-    virtual ~MDDimensionRes(void);
-
-  /// it is reciprocal dimension -> convenience function
-    virtual bool isReciprocal(void)const{return true;}
-
-
-    /// indicates which reciprocal primitive vector this reciprocal dimension is associated with, either q1, q2 or q3
-    rec_dim getReciprocalVectorType() const 
-    {
-      return this->nRecDim;
-    }
-
-    /// Implementation of toXMLString providing additional fields over parent MDDimension relating to reciprocal nature.
-    virtual std::string toXMLString() const;
-    
-	virtual V3D getDirectionCryst(void)const;
-
-    MDDimensionRes(const std::string &ID,const rec_dim nDim);
-protected:
-    // function sets the coordinates of the dimension;
-    virtual void setDirection(const V3D &theDirection);
-private:
-    /// helper method for converting between qtypes as enums to strings.
-    std::string getQTypeAsString() const;
-
-    /// number of this reciprocal dimension (one of 3)
-    rec_dim nRecDim; 
-};
-
-/**  The class is used in algorithms when number of reciprocal dimensions is less then 3 to provide meaningfull representation of missing reciprocal dimensions
-*/
-class DLLExport MDDimDummy : public MDDimensionRes
-{
-public:
-  MDDimDummy(unsigned int nRecDim);
- ~MDDimDummy(){};
-// these functions are implemented through the parent
-// function returns the name of the axis in this direction
-//    virtual std::string const &getName()const{return "DUMMY AXIS";}
-/// function return the unique dimension ID, identifying the current dimension among others 
-//    virtual std::string getDimensionTag(void)const{return "DUMMY REC_DIM";}
-// get Axis data; 
-//    std::vector<double> const &  getAxis(void)const{std::vector<double> tmp(2,0); tmp[1]=1; return tmp;}
-
-/// get maximal value along the dimension
-    virtual double       getMaximum(void)const{return 1;}
-/// get minimal value along the dimension
-    virtual double       getMinimum(void)const{return 0;}
-/// range of data along this axis
-    virtual double       getRange(void)const{return (1);}
-/// scale of the data along this axis 
-    /// TO DO: what is this scale and what constraint we want to apply on it? 
-    virtual double getScale(void)const{return 1;}
-/** return the state of this dimension i.e if it is integrated. If it is, it has one bin only, the axis consis of two points, 
- *   coinsiding with min and max values rMin and rMax; */
-    bool        getIntegrated(void)const{return true;}
-
-    /// the function returns the center points of the axis bins; There are nBins of such points 
-    /// (when axis has nBins+1 points with point 0 equal rMin and nBins+1 equal rMax)
-    virtual void getAxisPoints(std::vector<double>  &p)const{std::vector<double> tmp(1,0.5);p=tmp;}
-    /// function returns number of the bins this dimension has
-    virtual unsigned int getNBins(void)const{return 1;}
-    /// function returns the dimension stride, e.g. the step of change for 1D index of a dimension in multidimensional array, if an index of this dimension changes by one
-    virtual size_t       getStride(void)const{return 0;}
-  
-    //Get coordinate for index; Throws  if ind is out of range 
-    virtual double getX(unsigned int ind)const;
-    /// it is not reciprocal dimension -> convenience function
-    virtual bool isReciprocal(void)const{return true;}
-    // no mutator allowed
-private:
-
-};
-} // MDDataObjects
-} // Mantid
-#endif
+#ifndef H_DIMENSIONRES
+#define H_DIMENSIONRES
+#include "MantidGeometry/MDGeometry/MDDimension.h"
+namespace Mantid{
+    namespace Geometry{
+/** This is the dimension which corresponds to reciprocal dimension
+*
+* It differs from usual dimension because can have some  nonortogonal direction in the WorkspaceGeometry system of coordinates
+*
+    @author Alex Buts, RAL ISIS
+    @date 28/09/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+ /** enum describes reciprocal dimension numbers and reflects the request to up to three reciprocal dimensions */
+ enum rec_dim{
+        q1,
+        q2,
+        q3
+ }; 
+
+class DLLExport MDDimensionRes :   public MDDimension
+{
+   // this is to initiate and set the Dimensions from the Geometry
+    friend class MDGeometry;
+public:
+    virtual ~MDDimensionRes(void);
+
+  /// it is reciprocal dimension -> convenience function
+    virtual bool isReciprocal(void)const{return true;}
+
+
+    /// indicates which reciprocal primitive vector this reciprocal dimension is associated with, either q1, q2 or q3
+    rec_dim getReciprocalVectorType() const 
+    {
+      return this->nRecDim;
+    }
+
+    /// Implementation of toXMLString providing additional fields over parent MDDimension relating to reciprocal nature.
+    virtual std::string toXMLString() const;
+    
+	virtual V3D getDirectionCryst(void)const;
+
+    MDDimensionRes(const std::string &ID,const rec_dim nDim);
+protected:
+    // function sets the coordinates of the dimension;
+    virtual void setDirection(const V3D &theDirection);
+private:
+    /// helper method for converting between qtypes as enums to strings.
+    std::string getQTypeAsString() const;
+
+    /// number of this reciprocal dimension (one of 3)
+    rec_dim nRecDim; 
+};
+
+/**  The class is used in algorithms when number of reciprocal dimensions is less then 3 to provide meaningfull representation of missing reciprocal dimensions
+*/
+class DLLExport MDDimDummy : public MDDimensionRes
+{
+public:
+  MDDimDummy(unsigned int nRecDim);
+ ~MDDimDummy(){};
+// these functions are implemented through the parent
+// function returns the name of the axis in this direction
+//    virtual std::string const &getName()const{return "DUMMY AXIS";}
+/// function return the unique dimension ID, identifying the current dimension among others 
+//    virtual std::string getDimensionTag(void)const{return "DUMMY REC_DIM";}
+// get Axis data; 
+//    std::vector<double> const &  getAxis(void)const{std::vector<double> tmp(2,0); tmp[1]=1; return tmp;}
+
+/// get maximal value along the dimension
+    virtual double       getMaximum(void)const{return 1;}
+/// get minimal value along the dimension
+    virtual double       getMinimum(void)const{return 0;}
+/// range of data along this axis
+    virtual double       getRange(void)const{return (1);}
+/// scale of the data along this axis 
+    /// TO DO: what is this scale and what constraint we want to apply on it? 
+    virtual double getScale(void)const{return 1;}
+/** return the state of this dimension i.e if it is integrated. If it is, it has one bin only, the axis consis of two points, 
+ *   coinsiding with min and max values rMin and rMax; */
+    bool        getIntegrated(void)const{return true;}
+
+    /// the function returns the center points of the axis bins; There are nBins of such points 
+    /// (when axis has nBins+1 points with point 0 equal rMin and nBins+1 equal rMax)
+    virtual void getAxisPoints(std::vector<double>  &p)const{std::vector<double> tmp(1,0.5);p=tmp;}
+    /// function returns number of the bins this dimension has
+    virtual unsigned int getNBins(void)const{return 1;}
+    /// function returns the dimension stride, e.g. the step of change for 1D index of a dimension in multidimensional array, if an index of this dimension changes by one
+    virtual size_t       getStride(void)const{return 0;}
+  
+    //Get coordinate for index; Throws  if ind is out of range 
+    virtual double getX(unsigned int ind)const;
+    /// it is not reciprocal dimension -> convenience function
+    virtual bool isReciprocal(void)const{return true;}
+    // no mutator allowed
+private:
+
+};
+} // MDDataObjects
+} // Mantid
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometry.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometry.h
index 9152edc8e8e0d7419f9b3bc9e063cf370511062b..1bae1213b71d3896f5e75904619ce3f3017ecf14 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometry.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometry.h
@@ -1,149 +1,149 @@
-#ifndef H_MD_GEOMETRY
-#define H_MD_GEOMETRY
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <boost/shared_ptr.hpp>
-#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
-//#include "MantidGeometry/MDGeometry/MDDimension.h"
-#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
-//#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-
-
-/** The class describes the geometry of the N-D visualisation workspace
- * and provides interface and convenient container to sizes and shapes of DND object
-*
-*   It is specific workspace geometry, which is used for visualisation and analysis. 
-*   It describes current size and shape of the data and its dimensions, including the dimensions which are integrated. 
-*   It changes as the result of operations as user tries to look at the reciprocal space from different points of view and selects for 
-*   analysis different dimensions and different parts of the space.
-
-@author Alex Buts, RAL ISIS
-@date 28/09/2010
-
-Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-This file is part of Mantid.
-
-Mantid is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3 of the License, or
-(at your option) any later version.
-
-Mantid is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-Code Documentation is available at: <http://doxygen.mantidproject.org>
-
-**/
-namespace Mantid{
-  namespace Geometry{
-
-    class  MDGeometryDescription;
-
-    class DLLExport MDGeometry
-    {
-    public:
-      MDGeometry(const MDGeometryBasis &basis);
-      MDGeometry(const MDGeometryBasis &basis, const MDGeometryDescription &description);
-
-      ~MDGeometry(void);
-
-      // the functions return the particular dimensions; Throws if correspondent dimension does not exist (e.g. less th 
-      boost::shared_ptr<IMDDimension> getXDimension(void)const{return (theDimension[0]);}
-      boost::shared_ptr<IMDDimension> getYDimension(void)const;
-      boost::shared_ptr<IMDDimension> getZDimension(void)const;
-      boost::shared_ptr<IMDDimension> getTDimension(void)const;
-      std::vector<boost::shared_ptr<IMDDimension> > getIntegratedDimensions(void)const;
-      /** obtains pointers to all dimensions defined in the geometry
-       * Initially, the dimensions are arranged in the order defined for a particular kind of experiments and this order is 
-       * defined in MDBasis.
-       * The dimensions in MDGeometry are arranged in the order a user wants to see the MD image
-       *
-       * if sort_by_basis is false, the dimensions returned in the order, as specified by MDImage
-       * if sort_by_basis is true, the dimensions are returned in the order, defined by the order of dimensions in the MD basis
-       * or MDDataPoints (these two have to coinside)  
-      */
-      std::vector<boost::shared_ptr<IMDDimension> > getDimensions(bool sort_by_basis=false)const;
-
- 	  /// function returns the number of cells, which an Image with this geometry would have;
-	  size_t getGeometryExtend()const{return nGeometrySize;}
-
- 
-      /// return the numbers of dimensions in current geometry; 
-      unsigned int getNumDims(void)const{return m_basis.getNumDims();}
-      /// returns the number of reciprocal dimensions
-      unsigned int getNumReciprocalDims(void)const{return m_basis.getNumReciprocalDims();};
-      /// returns the identifiers of main geometry dimensions
-      std::vector<std::string> getBasisTags(void)const;
-
-      /// returns the number of expanded (non-integrated) dimensions;
-      unsigned int getNumExpandedDims(void)const{return n_expanded_dim;}
-      /// function returns the pointer to the dimension requested as the dimension num. Throws if dimension is out of range. Convenient for looping though dimensions instead of
-      /// asking for DimX, Y and Z;
-      boost::shared_ptr<const IMDDimension>  get_constDimension(unsigned int i)const;
-      /** functions return the pointer to the dimension requested by the dimension tag(ID). throws if such dimension is not present in the Geometry 
-          (or NULL if not throwing parameter is specified); */
-      boost::shared_ptr<const IMDDimension>  get_constDimension(const std::string &tag,bool do_throw=true)const;
-
-
-      /** function resets MDGeometryBasis and MDGeometry to new state;
-      *   
-	  *  modified substantially from initial idea
-	  *  throws if any dimension ID in geometry descrition (trf) lies outside of the id-s currently present in the geometry;
-      */
-      void initialize(const MDGeometryDescription &trf);
-
-      /// Get the geometry in an xml/serialised form.
-      std::string toXMLString() const;
-
-    protected: 
-     /// functions return the pointer to the dimension requested as the dimension num. Throws if dimension is out of range. Convenient for looping though dimensions instead of
-      /// asking for DimX, Y and Z;
-      boost::shared_ptr<MDDimension>  getDimension(unsigned int i);
-      /// functions return the pointer to the dimension requested by the dimension tag. throws if such dimension is not present in the Geometry (or NULL if not throwing);
-      boost::shared_ptr<MDDimension>  getDimension(const std::string &tag,bool do_throw=true);
-   
-
-      /// the parameter describes the dimensions, which are not integrated. These dimensions are always at the beginning of the dimensions vector. 
-      unsigned int n_expanded_dim;
-      /// the array of Dimensions. Some are collapsed (integrated over)
-      std::vector<boost::shared_ptr<MDDimension> >  theDimension;
-
-
-      /* function returns tne location of the dimension specified by the tag, in the array theDimension (in the MDGeomerty)
-      negative value specifies that the requested dimension is not present in the array. */
-      //  int getDimNum(const std::string &tag,bool do_trow=false)const;
-
-    private:
-      /** function sets ranges of the data as in transformation request; Useless without real change of the ranges */
-      void setRanges(const MDGeometryDescription &trf);
-	  /// the number of data cells, which such geometry would occupy
-	  size_t nGeometrySize;
-
-      MDGeometryBasis m_basis;
-      //void init_empty_dimensions();
-      /// the map used for fast search of a dumension from its tag. 
-      std::map<std::string,boost::shared_ptr<MDDimension> > dimensions_map;
-      //Defaults should do: ->NO?
-      MDGeometry& operator=(const MDGeometry&);   
-      /// logger -> to provide logging, for MD workspaces
-      static Kernel::Logger& g_log;
-
-      /// currently similar to arrangeDimensionsProperly as reinit is currently disabled but checks if tags are valid;
-      void initialize(const std::vector<std::string> &DimensionTags);
-      /** function used to arrange dimensions properly, e.g. according to the order of the dimension tags supplied as input argument
-      and moving all non-collapsped dimensions first. Throws if an input tag is not among the tags, defined in the geometry */
-      void arrangeDimensionsProperly(const std::vector<std::string> &tags);
-
-	  void init_empty_dimensions();
-    };
-  }  // Geometry
-}  // Mantid
-#endif
+#ifndef H_MD_GEOMETRY
+#define H_MD_GEOMETRY
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <boost/shared_ptr.hpp>
+#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
+//#include "MantidGeometry/MDGeometry/MDDimension.h"
+#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
+//#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+
+
+/** The class describes the geometry of the N-D visualisation workspace
+ * and provides interface and convenient container to sizes and shapes of DND object
+*
+*   It is specific workspace geometry, which is used for visualisation and analysis. 
+*   It describes current size and shape of the data and its dimensions, including the dimensions which are integrated. 
+*   It changes as the result of operations as user tries to look at the reciprocal space from different points of view and selects for 
+*   analysis different dimensions and different parts of the space.
+
+@author Alex Buts, RAL ISIS
+@date 28/09/2010
+
+Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+This file is part of Mantid.
+
+Mantid is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3 of the License, or
+(at your option) any later version.
+
+Mantid is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+Code Documentation is available at: <http://doxygen.mantidproject.org>
+
+**/
+namespace Mantid{
+  namespace Geometry{
+
+    class  MDGeometryDescription;
+
+    class DLLExport MDGeometry
+    {
+    public:
+      MDGeometry(const MDGeometryBasis &basis);
+      MDGeometry(const MDGeometryBasis &basis, const MDGeometryDescription &description);
+
+      ~MDGeometry(void);
+
+      // the functions return the particular dimensions; Throws if correspondent dimension does not exist (e.g. less th 
+      boost::shared_ptr<IMDDimension> getXDimension(void)const{return (theDimension[0]);}
+      boost::shared_ptr<IMDDimension> getYDimension(void)const;
+      boost::shared_ptr<IMDDimension> getZDimension(void)const;
+      boost::shared_ptr<IMDDimension> getTDimension(void)const;
+      std::vector<boost::shared_ptr<IMDDimension> > getIntegratedDimensions(void)const;
+      /** obtains pointers to all dimensions defined in the geometry
+       * Initially, the dimensions are arranged in the order defined for a particular kind of experiments and this order is 
+       * defined in MDBasis.
+       * The dimensions in MDGeometry are arranged in the order a user wants to see the MD image
+       *
+       * if sort_by_basis is false, the dimensions returned in the order, as specified by MDImage
+       * if sort_by_basis is true, the dimensions are returned in the order, defined by the order of dimensions in the MD basis
+       * or MDDataPoints (these two have to coinside)  
+      */
+      std::vector<boost::shared_ptr<IMDDimension> > getDimensions(bool sort_by_basis=false)const;
+
+ 	  /// function returns the number of cells, which an Image with this geometry would have;
+	  size_t getGeometryExtend()const{return nGeometrySize;}
+
+ 
+      /// return the numbers of dimensions in current geometry; 
+      unsigned int getNumDims(void)const{return m_basis.getNumDims();}
+      /// returns the number of reciprocal dimensions
+      unsigned int getNumReciprocalDims(void)const{return m_basis.getNumReciprocalDims();};
+      /// returns the identifiers of main geometry dimensions
+      std::vector<std::string> getBasisTags(void)const;
+
+      /// returns the number of expanded (non-integrated) dimensions;
+      unsigned int getNumExpandedDims(void)const{return n_expanded_dim;}
+      /// function returns the pointer to the dimension requested as the dimension num. Throws if dimension is out of range. Convenient for looping though dimensions instead of
+      /// asking for DimX, Y and Z;
+      boost::shared_ptr<const IMDDimension>  get_constDimension(unsigned int i)const;
+      /** functions return the pointer to the dimension requested by the dimension tag(ID). throws if such dimension is not present in the Geometry 
+          (or NULL if not throwing parameter is specified); */
+      boost::shared_ptr<const IMDDimension>  get_constDimension(const std::string &tag,bool do_throw=true)const;
+
+
+      /** function resets MDGeometryBasis and MDGeometry to new state;
+      *   
+	  *  modified substantially from initial idea
+	  *  throws if any dimension ID in geometry descrition (trf) lies outside of the id-s currently present in the geometry;
+      */
+      void initialize(const MDGeometryDescription &trf);
+
+      /// Get the geometry in an xml/serialised form.
+      std::string toXMLString() const;
+
+    protected: 
+     /// functions return the pointer to the dimension requested as the dimension num. Throws if dimension is out of range. Convenient for looping though dimensions instead of
+      /// asking for DimX, Y and Z;
+      boost::shared_ptr<MDDimension>  getDimension(unsigned int i);
+      /// functions return the pointer to the dimension requested by the dimension tag. throws if such dimension is not present in the Geometry (or NULL if not throwing);
+      boost::shared_ptr<MDDimension>  getDimension(const std::string &tag,bool do_throw=true);
+   
+
+      /// the parameter describes the dimensions, which are not integrated. These dimensions are always at the beginning of the dimensions vector. 
+      unsigned int n_expanded_dim;
+      /// the array of Dimensions. Some are collapsed (integrated over)
+      std::vector<boost::shared_ptr<MDDimension> >  theDimension;
+
+
+      /* function returns tne location of the dimension specified by the tag, in the array theDimension (in the MDGeomerty)
+      negative value specifies that the requested dimension is not present in the array. */
+      //  int getDimNum(const std::string &tag,bool do_trow=false)const;
+
+    private:
+      /** function sets ranges of the data as in transformation request; Useless without real change of the ranges */
+      void setRanges(const MDGeometryDescription &trf);
+	  /// the number of data cells, which such geometry would occupy
+	  size_t nGeometrySize;
+
+      MDGeometryBasis m_basis;
+      //void init_empty_dimensions();
+      /// the map used for fast search of a dumension from its tag. 
+      std::map<std::string,boost::shared_ptr<MDDimension> > dimensions_map;
+      //Defaults should do: ->NO?
+      MDGeometry& operator=(const MDGeometry&);   
+      /// logger -> to provide logging, for MD workspaces
+      static Kernel::Logger& g_log;
+
+      /// currently similar to arrangeDimensionsProperly as reinit is currently disabled but checks if tags are valid;
+      void initialize(const std::vector<std::string> &DimensionTags);
+      /** function used to arrange dimensions properly, e.g. according to the order of the dimension tags supplied as input argument
+      and moving all non-collapsped dimensions first. Throws if an input tag is not among the tags, defined in the geometry */
+      void arrangeDimensionsProperly(const std::vector<std::string> &tags);
+
+	  void init_empty_dimensions();
+    };
+  }  // Geometry
+}  // Mantid
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryBasis.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryBasis.h
index 3725d2e746e672cb7b6987ddc535debdcf869c6a..a27236da3eafb887e5d91d6550b591ca438f988d 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryBasis.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryBasis.h
@@ -1,108 +1,108 @@
-#ifndef MD_GEOMETRY_BASIS_H
-#define MD_GEOMETRY_BASIS_H
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/Exception.h"
-#include "MantidKernel/Logger.h"
-#include "MantidGeometry/DllExport.h"
-#include "MantidGeometry/MDGeometry/MDWorkspaceConstants.h"
-#include "MantidGeometry/MDGeometry/MDBasisDimension.h"
-#include <vector>
-#include <string>
-#include <map>
-#include <boost/unordered_set.hpp>
-
-/** The class is the part of the VisualisationWorkspace and describes the basic multidimentional geometry of the object, 
-*   e.g. the dimensions of the reciprocal space and other possible dimenions  
-*   the reference reciprocal lattice, the size and shape of a primary crystall cell
-*   and number of additional ortogonal dimensions, e.g. temperature, pressure etc. 
-*
-*   Class provides the reference framework for visualisation and analysis operations alowing to compare different workspaces and to modify 
-*   the visualisation geometry as requested by user
-*   It also keeps the crystall information necessary to transform a Mantid workspace into MD workspace
-
-@author Alex Buts, RAL ISIS
-@date 27/09/2010
-
-Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-This file is part of Mantid.
-
-Mantid is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3 of the License, or
-(at your option) any later version.
-
-Mantid is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-
-  class EXPORT_OPT_MANTID_GEOMETRY UnitCell //HACK: UnitCell type will be introduced by L. Chapon in near future. This Type is a temporary measure.
- // class DLLExport UnitCell //HACK: UnitCell type will be introduced by L. Chapon in near future. This Type is a temporary measure. 
-  {
-	public: 
-		UnitCell(void){};
-    };
-
-    //****************************************************************************************************************************************
-    class EXPORT_OPT_MANTID_GEOMETRY MDGeometryBasis
-    {
-    public:
-
-      MDGeometryBasis(unsigned int nDimensions=1,unsigned int nReciprocalDimensions=1);  
-
-      MDGeometryBasis(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell);
-
-      std::set<MDBasisDimension> getNonReciprocalDimensions() const;
-      std::set<MDBasisDimension> getReciprocalDimensions() const;
-      std::set<MDBasisDimension> getBasisDimensions() const;
-     
-      ~MDGeometryBasis(void);
-      /// return the numbers of dimensions in current geometry; 
-      unsigned int getNumDims(void)const{return (unsigned int)this->m_mdBasisDimensions.size();}
-      /// returns the number of reciprocal dimensions
-      unsigned int getNumReciprocalDims(void)const{return this->n_reciprocal_dimensions;};
-	  
-
-      /// function checks if the ids supplied  coinside with the tags for current basis e.g all existing tags have to be here (the order of tags may be different)
-      bool checkIdCompartibility(const std::vector<std::string> &newTags)const;
-
-	  void init(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell);
-	  // copy constructor is used and can be default
-    private:
-      /// logger -> to provide logging, for MD workspaces
-      static Kernel::Logger& g_log;
-      /// number of total dimensions in dataset;
-      unsigned int n_total_dim;
-      /// number of reciprocal dimensions (which are non-orthogonal to each other n_rsprcl_dim<=n_total_dim)
-      unsigned int n_reciprocal_dimensions;
-
-      std::set<MDBasisDimension> m_mdBasisDimensions;
-      UnitCell m_cell;
-
-      /// checks if nDimensions consistent with n_reciprocal_dimensions; throws if not
-      void check_nDims(unsigned int nDimensions,unsigned int nReciprocalDimensions);
-
-      void checkInputBasisDimensions(const MDBasisDimension& dimension);
-
-      /// it is unclear what is the meaning of =
-      MDGeometryBasis& operator=(const MDGeometryBasis&);
-    };
-  } // namespace Geometry
-}  // namespace MANTID
-#endif
+#ifndef MD_GEOMETRY_BASIS_H
+#define MD_GEOMETRY_BASIS_H
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/Exception.h"
+#include "MantidKernel/Logger.h"
+#include "MantidGeometry/DllExport.h"
+#include "MantidGeometry/MDGeometry/MDWorkspaceConstants.h"
+#include "MantidGeometry/MDGeometry/MDBasisDimension.h"
+#include <vector>
+#include <string>
+#include <map>
+#include <boost/unordered_set.hpp>
+
+/** The class is the part of the VisualisationWorkspace and describes the basic multidimentional geometry of the object, 
+*   e.g. the dimensions of the reciprocal space and other possible dimenions  
+*   the reference reciprocal lattice, the size and shape of a primary crystall cell
+*   and number of additional ortogonal dimensions, e.g. temperature, pressure etc. 
+*
+*   Class provides the reference framework for visualisation and analysis operations alowing to compare different workspaces and to modify 
+*   the visualisation geometry as requested by user
+*   It also keeps the crystall information necessary to transform a Mantid workspace into MD workspace
+
+@author Alex Buts, RAL ISIS
+@date 27/09/2010
+
+Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+This file is part of Mantid.
+
+Mantid is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3 of the License, or
+(at your option) any later version.
+
+Mantid is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+
+  class EXPORT_OPT_MANTID_GEOMETRY UnitCell //HACK: UnitCell type will be introduced by L. Chapon in near future. This Type is a temporary measure.
+ // class DLLExport UnitCell //HACK: UnitCell type will be introduced by L. Chapon in near future. This Type is a temporary measure. 
+  {
+	public: 
+		UnitCell(void){};
+    };
+
+    //****************************************************************************************************************************************
+    class EXPORT_OPT_MANTID_GEOMETRY MDGeometryBasis
+    {
+    public:
+
+      MDGeometryBasis(unsigned int nDimensions=1,unsigned int nReciprocalDimensions=1);  
+
+      MDGeometryBasis(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell);
+
+      std::set<MDBasisDimension> getNonReciprocalDimensions() const;
+      std::set<MDBasisDimension> getReciprocalDimensions() const;
+      std::set<MDBasisDimension> getBasisDimensions() const;
+     
+      ~MDGeometryBasis(void);
+      /// return the numbers of dimensions in current geometry; 
+      unsigned int getNumDims(void)const{return (unsigned int)this->m_mdBasisDimensions.size();}
+      /// returns the number of reciprocal dimensions
+      unsigned int getNumReciprocalDims(void)const{return this->n_reciprocal_dimensions;};
+	  
+
+      /// function checks if the ids supplied  coinside with the tags for current basis e.g all existing tags have to be here (the order of tags may be different)
+      bool checkIdCompartibility(const std::vector<std::string> &newTags)const;
+
+	  void init(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell);
+	  // copy constructor is used and can be default
+    private:
+      /// logger -> to provide logging, for MD workspaces
+      static Kernel::Logger& g_log;
+      /// number of total dimensions in dataset;
+      unsigned int n_total_dim;
+      /// number of reciprocal dimensions (which are non-orthogonal to each other n_rsprcl_dim<=n_total_dim)
+      unsigned int n_reciprocal_dimensions;
+
+      std::set<MDBasisDimension> m_mdBasisDimensions;
+      UnitCell m_cell;
+
+      /// checks if nDimensions consistent with n_reciprocal_dimensions; throws if not
+      void check_nDims(unsigned int nDimensions,unsigned int nReciprocalDimensions);
+
+      void checkInputBasisDimensions(const MDBasisDimension& dimension);
+
+      /// it is unclear what is the meaning of =
+      MDGeometryBasis& operator=(const MDGeometryBasis&);
+    };
+  } // namespace Geometry
+}  // namespace MANTID
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryDescription.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryDescription.h
index 419c7f1814174f3fbe248d2eb45da571a8bacc3d..045270094e71557f0c9addde1781560149ddb387 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryDescription.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDGeometryDescription.h
@@ -1,180 +1,180 @@
-#ifndef MDGEOMETRY_DESCRIPTION_H
-#define MDGEOMETRY_DESCRIPTION_H
-
-#include <deque>
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MantidGeometry/V3D.h"
-#include <boost/shared_ptr.hpp>
-
-/** class describes slicing and rebinning matrix and the geometry of the MD workspace. 
-
-*  Unlike the geometry itself, it allows to describe  various changes to the geometry. 
-*  Afer applying these changes to the MD image and MD geometry, an algorithm calculates various mutually 
-*  dependent changes to MDImage e.g. new coherent MD image data and MD geometry 
-* 
-
-    @author Alex Buts (ISIS, RAL)
-    @date 05/10/2010
-
-    Copyright &copy; 2007-2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid
-{
-namespace Geometry
-{
-//
-/// class describes data in one dimension;
-//
-class DimensionDescription
-{
-public:
-  std::string Tag; //< unuque dimension identifier (tag)
-  double data_shift; /**< shift in this direction (tans_elo is 4th element of transf_bott_left. Shift expressed in the physical units
-                         the data, which are binned into MD image and plotted along this dimension shifted by this value */
-  double cut_min; //< min limits to extract data;
-  double cut_max; //< max limits to extract data;
-  double data_scale; //< Length of projection axes vectors in Ang^-1 or meV 
-  unsigned int nBins; //< number of bins in each direction, bins of size 1 are integrated (collased);
-  bool isReciprocal; //< specifies if this dimension is reciprocal or not.
-  std::string AxisName; //< new names for axis;
-   
-  V3D  direction;   //< direction in reciprocal space for reciprocal dimension, 0 for orthogonal
-
-  DimensionDescription() :
-    Tag(""), data_shift(0), cut_min(-1), cut_max(1), data_scale(1), nBins(1), isReciprocal(false), AxisName("")
-  {}
-};
-
-typedef boost::shared_ptr<IMDDimension> Dimension_sptr;
-typedef std::vector<boost::shared_ptr<IMDDimension> > DimensionVec;
-typedef std::vector<boost::shared_ptr<IMDDimension> >::iterator DimensionVecIterator;
-typedef std::vector<double> RotationMatrix;
-
-class DLLExport MDGeometryDescription
-{
-public:
-  //  MDGeometryDescription(std::vector<MDDataObjects::DimensionsID> &IDs);
-
-    MDGeometryDescription(
-      DimensionVec dimensions, 
-      Dimension_sptr dimensionX, 
-      Dimension_sptr dimensionY,  
-      Dimension_sptr dimensionZ, 
-      Dimension_sptr dimensiont,
-      RotationMatrix rotationMatrix
-    );
-
-	MDGeometryDescription(const MDGeometryBasis &basis);
-    MDGeometryDescription(unsigned int numDims=4,unsigned int nReciprocalDims=3);
-    MDGeometryDescription(const MDGeometry &origin);
-    virtual ~MDGeometryDescription(void);
-	/// obtain number of dimensions in the geometry
-    unsigned int getNumDims(void)const{return nDimensions;}
-	/// obtain number of reciprocal dimensions in the geometry
-	unsigned int getNumRecDims(void)const{return nReciprocalDimensions;}
-
-	/// returns the size of the image, described by this class
-	size_t getImageSize()const;
-
-   /// the function sets the rotation matrix which allows to transform vector inumber i into the basis;
-   // TODO : it is currently a stub returning argument independant unit matrix; has to be written propely
-   std::vector<double> setRotations(unsigned int i,const std::vector<double> basis[3]);
-
-   void build_from_geometry(const MDGeometry &origin);
-
-   std::string toXMLstring(void)const{return std::string("TEST PROPERTY");}
-   bool fromXMLstring(const std::string &){
-       return true;
-   }
-   std::vector<double> getRotations(void)const{return rotations;}
-
-   Geometry::V3D getDirection(unsigned int i)const;
-   bool isAxisNamePresent(unsigned int i)const;
- 
-   /** finds the location of the dimension, defined by the tag in the list of all dimensions;
-    * informatiom about the axis to display is encoded by the tag numbers */
-   int getTagNum(const std::string &Tag, bool do_throw=false)const;
-   ///returns the list of the axis tags sorted in the order requested for view 
-   std::vector<std::string> getDimensionsTags(void)const;
-
-//   void renameTag(unsigned int num,const std::string &newID);
-   // access to all 
-   DimensionDescription * pDimDescription(unsigned int i){
-	   check_index(i,"pDimDescription");
-	   return &data[i];
-   }
-   DimensionDescription * pDimDescription(unsigned int i)const{
-	   check_index(i,"pDimDescription");
-	   return const_cast<DimensionDescription *>(&data[i]);
-   }
-   // access to all 
-   DimensionDescription * pDimDescription(const std::string &Tag){
-	int index = getTagNum(Tag,true);
-	   return &data[index];
-   }
-  DimensionDescription * pDimDescription(const std::string &Tag)const{
-	int index = getTagNum(Tag,true);
-	   return const_cast<DimensionDescription *>(&data[index]);
-   }
-
-
-////*** SET -> t
-   void setDirection(const std::string &Tag,const V3D &coord){
-       int index = getTagNum(Tag,true);       this->setDirection(index,coord);
-   }
-   void setDirection(unsigned int i,const V3D &coord);
-
-/**  function sets the Tag requested into the position, defined by the index i;
- *
- * The requested tag is deleted from old location and inserted into the new location, leaving all other data as before. 
- * the tag has to be present in the array initially -> throws otherwise */
-   void setPAxis(unsigned int i, const std::string &tag);
-private:
-
-    unsigned int nDimensions;               /**< real number of dimensions in the target dataset. 
-                                                If source dataset has more dimensions than specified here, all other dimensions will be collapsed */
-    unsigned int nReciprocalDimensions;    // number of reciprocal dimensions from the nDimensions
-
-  
-    std::vector<double>     rotations;
- 
-    /** auxiliary function which check if the index requested is allowed. ErrinFuncName allows to add to the error message the name of the calling function*/
-    void check_index(unsigned int i,const char *ErrinFuncName)const;
-    /** the function which provides default constructor functionality */
-    void intit_default_slicing(unsigned int nDims,unsigned int nRecDims);
-
- /// logger -> to provide logging, for MD workspaces
-    static Kernel::Logger& g_log;
-
-    std::deque<DimensionDescription> data;  //< data describes one dimension;
-
-    //Helper method to generate slicing data.
-    void createDimensionDescription(Dimension_sptr dimension, const int i);
-
-typedef std::deque<DimensionDescription>::iterator       it_data;
-typedef std::deque<DimensionDescription>::const_iterator it_const_data;
-
-};
-
-} // Geometry
-} // Mantid
-#endif
+#ifndef MDGEOMETRY_DESCRIPTION_H
+#define MDGEOMETRY_DESCRIPTION_H
+
+#include <deque>
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MantidGeometry/V3D.h"
+#include <boost/shared_ptr.hpp>
+
+/** class describes slicing and rebinning matrix and the geometry of the MD workspace. 
+
+*  Unlike the geometry itself, it allows to describe  various changes to the geometry. 
+*  Afer applying these changes to the MD image and MD geometry, an algorithm calculates various mutually 
+*  dependent changes to MDImage e.g. new coherent MD image data and MD geometry 
+* 
+
+    @author Alex Buts (ISIS, RAL)
+    @date 05/10/2010
+
+    Copyright &copy; 2007-2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid
+{
+namespace Geometry
+{
+//
+/// class describes data in one dimension;
+//
+class DimensionDescription
+{
+public:
+  std::string Tag; //< unuque dimension identifier (tag)
+  double data_shift; /**< shift in this direction (tans_elo is 4th element of transf_bott_left. Shift expressed in the physical units
+                         the data, which are binned into MD image and plotted along this dimension shifted by this value */
+  double cut_min; //< min limits to extract data;
+  double cut_max; //< max limits to extract data;
+  double data_scale; //< Length of projection axes vectors in Ang^-1 or meV 
+  unsigned int nBins; //< number of bins in each direction, bins of size 1 are integrated (collased);
+  bool isReciprocal; //< specifies if this dimension is reciprocal or not.
+  std::string AxisName; //< new names for axis;
+   
+  V3D  direction;   //< direction in reciprocal space for reciprocal dimension, 0 for orthogonal
+
+  DimensionDescription() :
+    Tag(""), data_shift(0), cut_min(-1), cut_max(1), data_scale(1), nBins(1), isReciprocal(false), AxisName("")
+  {}
+};
+
+typedef boost::shared_ptr<IMDDimension> Dimension_sptr;
+typedef std::vector<boost::shared_ptr<IMDDimension> > DimensionVec;
+typedef std::vector<boost::shared_ptr<IMDDimension> >::iterator DimensionVecIterator;
+typedef std::vector<double> RotationMatrix;
+
+class DLLExport MDGeometryDescription
+{
+public:
+  //  MDGeometryDescription(std::vector<MDDataObjects::DimensionsID> &IDs);
+
+    MDGeometryDescription(
+      DimensionVec dimensions, 
+      Dimension_sptr dimensionX, 
+      Dimension_sptr dimensionY,  
+      Dimension_sptr dimensionZ, 
+      Dimension_sptr dimensiont,
+      RotationMatrix rotationMatrix
+    );
+
+	MDGeometryDescription(const MDGeometryBasis &basis);
+    MDGeometryDescription(unsigned int numDims=4,unsigned int nReciprocalDims=3);
+    MDGeometryDescription(const MDGeometry &origin);
+    virtual ~MDGeometryDescription(void);
+	/// obtain number of dimensions in the geometry
+    unsigned int getNumDims(void)const{return nDimensions;}
+	/// obtain number of reciprocal dimensions in the geometry
+	unsigned int getNumRecDims(void)const{return nReciprocalDimensions;}
+
+	/// returns the size of the image, described by this class
+	size_t getImageSize()const;
+
+   /// the function sets the rotation matrix which allows to transform vector inumber i into the basis;
+   // TODO : it is currently a stub returning argument independant unit matrix; has to be written propely
+   std::vector<double> setRotations(unsigned int i,const std::vector<double> basis[3]);
+
+   void build_from_geometry(const MDGeometry &origin);
+
+   std::string toXMLstring(void)const{return std::string("TEST PROPERTY");}
+   bool fromXMLstring(const std::string &){
+       return true;
+   }
+   std::vector<double> getRotations(void)const{return rotations;}
+
+   Geometry::V3D getDirection(unsigned int i)const;
+   bool isAxisNamePresent(unsigned int i)const;
+ 
+   /** finds the location of the dimension, defined by the tag in the list of all dimensions;
+    * informatiom about the axis to display is encoded by the tag numbers */
+   int getTagNum(const std::string &Tag, bool do_throw=false)const;
+   ///returns the list of the axis tags sorted in the order requested for view 
+   std::vector<std::string> getDimensionsTags(void)const;
+
+//   void renameTag(unsigned int num,const std::string &newID);
+   // access to all 
+   DimensionDescription * pDimDescription(unsigned int i){
+	   check_index(i,"pDimDescription");
+	   return &data[i];
+   }
+   DimensionDescription * pDimDescription(unsigned int i)const{
+	   check_index(i,"pDimDescription");
+	   return const_cast<DimensionDescription *>(&data[i]);
+   }
+   // access to all 
+   DimensionDescription * pDimDescription(const std::string &Tag){
+	int index = getTagNum(Tag,true);
+	   return &data[index];
+   }
+  DimensionDescription * pDimDescription(const std::string &Tag)const{
+	int index = getTagNum(Tag,true);
+	   return const_cast<DimensionDescription *>(&data[index]);
+   }
+
+
+////*** SET -> t
+   void setDirection(const std::string &Tag,const V3D &coord){
+       int index = getTagNum(Tag,true);       this->setDirection(index,coord);
+   }
+   void setDirection(unsigned int i,const V3D &coord);
+
+/**  function sets the Tag requested into the position, defined by the index i;
+ *
+ * The requested tag is deleted from old location and inserted into the new location, leaving all other data as before. 
+ * the tag has to be present in the array initially -> throws otherwise */
+   void setPAxis(unsigned int i, const std::string &tag);
+private:
+
+    unsigned int nDimensions;               /**< real number of dimensions in the target dataset. 
+                                                If source dataset has more dimensions than specified here, all other dimensions will be collapsed */
+    unsigned int nReciprocalDimensions;    // number of reciprocal dimensions from the nDimensions
+
+  
+    std::vector<double>     rotations;
+ 
+    /** auxiliary function which check if the index requested is allowed. ErrinFuncName allows to add to the error message the name of the calling function*/
+    void check_index(unsigned int i,const char *ErrinFuncName)const;
+    /** the function which provides default constructor functionality */
+    void intit_default_slicing(unsigned int nDims,unsigned int nRecDims);
+
+ /// logger -> to provide logging, for MD workspaces
+    static Kernel::Logger& g_log;
+
+    std::deque<DimensionDescription> data;  //< data describes one dimension;
+
+    //Helper method to generate slicing data.
+    void createDimensionDescription(Dimension_sptr dimension, const int i);
+
+typedef std::deque<DimensionDescription>::iterator       it_data;
+typedef std::deque<DimensionDescription>::const_iterator it_const_data;
+
+};
+
+} // Geometry
+} // Mantid
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDPoint.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDPoint.h
index efce5d02e32c96ad8054273753b7b20f45b091ea..fcaf7d85bddec2b7e60a3fd4176d320e2e7ea86f 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDPoint.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDPoint.h
@@ -1,30 +1,30 @@
 #ifndef MDPoint_H_
 #define MDPoint_H_
 
-/** Abstract type to represent a multidimensional pixel/point. 
-*   This type may not be a suitable pure virtual type in future iterations. Future implementations should be non-abstract.
-
-    @author Owen Arnold, RAL ISIS
-    @date 15/11/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+/** Abstract type to represent a multidimensional pixel/point. 
+*   This type may not be a suitable pure virtual type in future iterations. Future implementations should be non-abstract.
+
+    @author Owen Arnold, RAL ISIS
+    @date 15/11/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
     Code Documentation is available at: <http://doxygen.mantidproject.org>
 */
 
@@ -47,7 +47,7 @@ namespace Mantid
     {
     public:
       virtual std::vector<coordinate> getVertexes() const = 0;
-      virtual double getSignal() const = 0;
+      virtual double getSignal() const = 0;
       virtual double getError() const = 0;
       virtual std::vector<boost::shared_ptr<MDPoint> > getContributingPoints() const = 0;
       virtual ~SignalAggregate(){};
@@ -65,12 +65,12 @@ namespace Mantid
       MDPoint(){};
       MDPoint(double signal, double error, const std::vector<coordinate>& vertexes, IDetector_sptr detector, IInstrument_sptr instrument);
       std::vector<coordinate> getVertexes() const;
-      double getSignal() const;
-      double getError() const;
-      IDetector_sptr getDetector() const;
-      IInstrument_sptr getInstrument() const;
-      virtual ~MDPoint();
-      std::vector<boost::shared_ptr<MDPoint> > getContributingPoints() const;
+      double getSignal() const;
+      double getError() const;
+      IDetector_sptr getDetector() const;
+      IInstrument_sptr getInstrument() const;
+      virtual ~MDPoint();
+      std::vector<boost::shared_ptr<MDPoint> > getContributingPoints() const;
       //virtual Mantid::API::Run getRun();
     protected:
     };
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDWorkspaceConstants.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDWorkspaceConstants.h
index 7ca809859e82849d981017995f156dcb0ed184c5..54138bb1fb6ee25f79baa0b1933ea683bbbafe24 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDWorkspaceConstants.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/MDGeometry/MDWorkspaceConstants.h
@@ -1,48 +1,48 @@
-#ifndef H_MD_WORKSPACE_CONSTANTS
-#define H_MD_WORKSPACE_CONSTANTS
-//
-#include <string>
-
-/** The is the collection of the constants and enums, which are used in Multidimensional Workspace, usually in more then one file
-*    
-*  Collected here to simplify references and modifications, the dimensionsID will be replaced by proper class
-
-    @author Alex Buts, RAL ISIS
-    @date 01/10/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-
-/** We define maximal number of dimensionsMAX_MD_DIMS_POSSIBLE  which a MD dataset can have because 
-   \li a) every additional dimension will be expensive to process 
-   \li b) minimal size of the visualisation dataset is 2^MAX_NDIMS_POSSIBLE, so this number has to be reasonable and any bigger number is probably because of an  error; 
-   \li c) if we need to increase the number of dimensions, it can be easy done here
-*/
-#define MAX_MD_DIMS_POSSIBLE 11
-
-/// we are not going to rebin data on more than some number of bins. Lets set this constant as the limit for checks 
-/// (in case of wrong word padding or -int casted to unsigned int) 
-#define MAX_REASONABLE_BIN_NUMBER 1000000
-//***********************************************************************************************************************************
-
-
-#endif
+#ifndef H_MD_WORKSPACE_CONSTANTS
+#define H_MD_WORKSPACE_CONSTANTS
+//
+#include <string>
+
+/** The is the collection of the constants and enums, which are used in Multidimensional Workspace, usually in more then one file
+*    
+*  Collected here to simplify references and modifications, the dimensionsID will be replaced by proper class
+
+    @author Alex Buts, RAL ISIS
+    @date 01/10/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+
+/** We define maximal number of dimensionsMAX_MD_DIMS_POSSIBLE  which a MD dataset can have because 
+   \li a) every additional dimension will be expensive to process 
+   \li b) minimal size of the visualisation dataset is 2^MAX_NDIMS_POSSIBLE, so this number has to be reasonable and any bigger number is probably because of an  error; 
+   \li c) if we need to increase the number of dimensions, it can be easy done here
+*/
+#define MAX_MD_DIMS_POSSIBLE 11
+
+/// we are not going to rebin data on more than some number of bins. Lets set this constant as the limit for checks 
+/// (in case of wrong word padding or -int casted to unsigned int) 
+#define MAX_REASONABLE_BIN_NUMBER 1000000
+//***********************************************************************************************************************************
+
+
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Algebra.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Algebra.h
index d18c8e3baa2e03cfde4224aa026774661f07c81e..2f0f656eee37f94d62e25712d1f3108a0c6a454d 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Algebra.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Algebra.h
@@ -23,7 +23,7 @@ namespace Geometry
   A leveled algebra class for each
   level of factorisation. 
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/BnId.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/BnId.h
index 034cc0abbcf334fb581ae505d2b832792e64d4b8..ebfb567873370cb42f656c3a6b590867ba57ae67 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/BnId.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/BnId.h
@@ -27,7 +27,7 @@ namespace Geometry
   \todo Could be improved by using a set of 
   unsigned integers. 
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/MapSupport.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/MapSupport.h
index 212f8bd1b8fe2701b60bd5410f077735a927550d..f4ac80925dd042593a1a08c1381c42eafa75ecfe 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/MapSupport.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/MapSupport.h
@@ -10,7 +10,7 @@
 
   Allows maps to be created with cloned objects
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Triple.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Triple.h
index 32d09e95cc67d96f44519cc008826251af6fef2e..85bec3fd5097b8d61b3dac3045e3b7e98b32cef7 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Triple.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Math/Triple.h
@@ -14,7 +14,7 @@ namespace Mantid
   Class maintians a type first/second/third triple
   similar to std::pair except all are identical
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/Rules.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/Rules.h
index 3f2d0f86fca9aea1d5693591089ee9741ce84c70..da19d62a65dde55657b360e3dad4f97f53ad09a0 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/Rules.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/Rules.h
@@ -1,415 +1,415 @@
-#ifndef Rules_h
-#define Rules_h
-
-#include <map>
-
-namespace Mantid
-{
-
-	namespace Geometry
-	{
-
-		class Object;
-		class Surface;
-
-		/**
-		\class Rule
-		\brief Object generation rule tree
-		\author S.Ansell
-		\version 1.0
-		\date April 2005
-
-		Base class for a rule item in the tree. 
-
-		Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-		This file is part of Mantid.
-
-		Mantid is free software; you can redistribute it and/or modify
-		it under the terms of the GNU General Public License as published by
-		the Free Software Foundation; either version 3 of the License, or
-		(at your option) any later version.
-
-		Mantid is distributed in the hope that it will be useful,
-		but WITHOUT ANY WARRANTY; without even the implied warranty of
-		MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-		GNU General Public License for more details.
-
-		You should have received a copy of the GNU General Public License
-		along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-		File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-		*/
-
-		class DLLExport Rule
-		{
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger
-
-			Rule* Parent;                    ///< Parent object (for tree)
-
-			static int addToKey(std::vector<int>& AV,const int passN=-1);     
-
-			int getBaseKeys(std::vector<int>&) const;  ///< Fills the vector with the surfaces 
-
-		public:
-
-			static int makeCNFcopy(Rule*&);  ///< Make Rule into a CNF format (slow)
-			static int makeFullDNF(Rule*&);  ///< Make Rule into a full DNF format
-			static int makeCNF(Rule*&);      ///< Make Rule into a CNF format
-			static int removeComplementary(Rule*&);       ///< NOT WORKING
-			static int removeItem(Rule*& TRule,const int SurfN);
-
-			Rule();
-			Rule(Rule*);
-			Rule(const Rule&);  
-			Rule& operator=(const Rule&);
-			virtual ~Rule();
-			virtual Rule* clone() const=0;  ///< abstract clone object
-			virtual std::string className() const { return "Rule"; } ///< Returns class name as string
-
-			/// No leaf for a base rule
-			virtual Rule* leaf(const int =0) const { return 0; }  
-			void setParent(Rule*);
-			Rule* getParent() const;
-			void makeParents();
-			int checkParents() const;  ///< Debug test for parents
-			int getKeyList(std::vector<int>&) const;
-			int commonType() const;      ///< Gets a common type
-
-			virtual void setLeaves(Rule*,Rule*)=0;          ///< abstract set leaves
-			virtual void setLeaf(Rule*,const int =0) =0;    ///< Abstract set 
-			virtual int findLeaf(const Rule*) const =0;     ///< Abstract find
-			virtual Rule* findKey(const int)  =0;           ///< Abstract key find    
-			virtual int type() const { return 0; }          ///< Null rule    
-
-
-			/// Abstract: The point is within the object
-			virtual bool isValid(const Geometry::V3D&) const = 0;           
-			/// Abstract Validity based on surface true/false map
-			virtual bool isValid(const std::map<int,int>&) const = 0; 
-			/// Abstract: Can the rule be simplified 
-			virtual int simplify() =0;
-
-			virtual int isComplementary() const { return 0; }   ///< Always returns false (0)
-
-			int Eliminate();            ///< elimination not written
-			int substituteSurf(const int SurfN,const int newSurfN,Surface* SPtr);  
-
-			/// Abstract Display
-			virtual std::string display() const=0;
-			/// Abstract Display Address
-			virtual std::string displayAddress() const=0;
-			/// Abstract getBoundingBox
-			virtual void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin) =0; 
-		};
-
-		/**
-		\class Intersection
-		\brief Combines two Rule objects in an intersection
-		\author S. Ansell
-		\version 1.0
-		\date August 2005
-
-		Intersection is defined as a valid Rule A and
-		valid rule B 
-		*/
-
-		class DLLExport Intersection : public Rule
-		{
-
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger
-
-			Rule* A;    ///< Rule 1 
-			Rule* B;    ///< Rule 2 
-
-		public:
-
-			Intersection();
-			explicit Intersection(Rule*,Rule*);
-			explicit Intersection(Rule*,Rule*,Rule*);
-			Intersection* clone() const;    ///< Makes a copy of the whole downward tree
-			virtual std::string className() const { return "Intersection"; } ///< Returns class name as string
-
-			Intersection(const Intersection&);
-			Intersection& operator=(const Intersection&);
-			~Intersection();
-			Rule* leaf(const int ipt=0) const { return ipt ? B : A; }   ///< selects leaf component
-			void setLeaves(Rule*,Rule*);           ///< set leaves
-			void setLeaf(Rule* nR,const int side=0);    ///< set one leaf.
-			int findLeaf(const Rule*) const;
-			Rule* findKey(const int KeyN);
-			int isComplementary() const;
-
-			int type() const { return 1; }   //effective name
-			std::string display() const;
-			std::string displayAddress() const;
-
-			bool isValid(const Geometry::V3D&) const;
-			bool isValid(const std::map<int,int>&) const;    
-			int simplify();      ///< apply general intersection simplification
-			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
-		};
-
-
-		/**
-		\class Union
-		\brief Combines two Rule objects in an union
-		\author S. Ansell
-		\version 1.0
-		\date August 2005
-
-		Union is defined as a valid Rule A or
-		valid rule B 
-		*/
-
-		class DLLExport Union : public Rule
-		{
-
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger  
-
-			Rule* A;    ///< Leaf rule A
-			Rule* B;    ///< Leaf rule B
-
-		public:
-
-			Union();
-			explicit Union(Rule*,Rule*);
-			explicit Union(Rule*,Rule*,Rule*);
-			Union(const Union&);
-
-			Union* clone() const;          
-			Union& operator=(const Union&);
-			~Union();
-			virtual std::string className() const { return "Union"; } ///< Returns class name as string
-
-			Rule* leaf(const int ipt=0) const { return ipt ? B : A; }      ///< Select a leaf component
-			void setLeaves(Rule*,Rule*);           ///< set leaves
-			void setLeaf(Rule* nR,const int side=0);     
-			int findLeaf(const Rule*) const;
-			Rule* findKey(const int KeyN);
-
-			int isComplementary() const;
-			int type() const { return -1; }   ///< effective name
-
-
-			bool isValid(const Geometry::V3D&) const;
-			bool isValid(const std::map<int,int>&) const;    
-			std::string display() const;
-			std::string displayAddress() const;
-			int simplify();      ///< apply general intersection simplification
-			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
-		};
-
-		/**
-		\class SurfPoint
-		\brief Surface leaf node
-		\author S.Ansell
-		\version 1.0 
-		\date August 2005
-
-		This class acts as an interface between a general
-		surface and a rule. Allowing an Rule chain to
-		be calculated
-		*/
-
-		class DLLExport SurfPoint : public Rule
-		{
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger
-
-			Surface* key;               ///< Actual Surface Base Object
-			int keyN;                   ///< Key Number (identifer)
-			int sign;                   ///< +/- in Object unit
-
-		public:
-
-			SurfPoint();
-			SurfPoint(const SurfPoint&);
-			SurfPoint* clone() const;                        
-			SurfPoint& operator=(const SurfPoint&);
-			~SurfPoint();
-			virtual std::string className() const { return "SurfPoint"; } ///< Returns class name as string
-
-			Rule* leaf(const int =0) const { return 0; }   ///< No Leaves
-			void setLeaves(Rule*,Rule*);
-			void setLeaf(Rule*,const int =0);
-			int findLeaf(const Rule*) const;
-			Rule* findKey(const int KeyNum);
-
-			int type() const { return 0; }   ///< Effective name
-
-			void setKeyN(const int Ky);             ///< set keyNumber
-			void setKey(Surface*);
-			bool isValid(const Geometry::V3D&) const;
-			bool isValid(const std::map<int,int>&) const;    
-			int getSign() const { return sign; }         ///< Get Sign
-			int getKeyN() const { return keyN; }         ///< Get Key
-			int simplify();
-
-			Surface* getKey() const { return key; }     ///< Get Surface Ptr
-			std::string display() const;
-			std::string displayAddress() const;  
-			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
-		};
-
-		/**
-		\class CompObj
-		\brief Compemented Object
-		\author S.Ansell
-		\version 1.0 
-		\date January 2006
-
-		This class holds a complement object 
-		of a single object group.
-		Care must be taken to avoid a cyclic loop
-		*/
-
-		class DLLExport CompObj : public Rule
-		{
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger
-
-			int objN;                   ///< Object number
-			Object* key;                ///< Object Pointer
-
-		public:
-
-			CompObj();
-			CompObj(const CompObj&);
-			CompObj* clone() const;                        
-			CompObj& operator=(const CompObj&);
-			~CompObj();
-			virtual std::string className() const { return "CompObj"; } ///< Returns class name as string
-
-			void setLeaves(Rule*,Rule*);
-			void setLeaf(Rule*,const int =0);
-			int findLeaf(const Rule*) const;
-			Rule* findKey(const int i);
-
-			int type() const { return 0; }   ///< Is it a branched object
-			int isComplementary() const { return 1; }  ///< Always returns true (1)
-
-			void setObjN(const int Ky);             ///< set object Number
-			void setObj(Object*);               ///< Set a Object state
-			bool isValid(const Geometry::V3D&) const;
-			bool isValid(const std::map<int,int>&) const;    
-			/// Get object number of component
-			int getObjN() const { return objN; } 
-			int simplify();
-
-			Object* getObj() const { return key; }   ///< Get Object Ptr
-			std::string display() const;      
-			std::string displayAddress() const;  
-			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
-
-		};
-
-		/**
-		\class CompGrp
-		\brief Compemented Grup 
-		\author S.Ansell
-		\version 1.0 
-		\date January 2006
-
-		This class holds a complement object 
-		of a single object group.
-		Care must be taken to avoid a cyclic loop
-		*/
-
-		class DLLExport CompGrp : public Rule
-		{
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger
-
-			Rule* A;    ///< The rule
-
-		public:
-
-			CompGrp();
-			explicit CompGrp(Rule*,Rule*);  
-			CompGrp(const CompGrp&);
-			CompGrp* clone() const;                        
-			CompGrp& operator=(const CompGrp&);
-			~CompGrp();
-			virtual std::string className() const { return "CompGrp"; } ///< Returns class name as string
-
-			Rule* leaf(const int) const { return A; }   ///< selects leaf component
-			void setLeaves(Rule*,Rule*);
-			void setLeaf(Rule* nR,const int side=0);
-			int findLeaf(const Rule*) const;
-			Rule* findKey(const int i);
-
-			int type() const { return 0; }   ///< Is it a branched object
-			int isComplementary() const { return 1; }   ///< Always returns true (1)
-
-			bool isValid(const Geometry::V3D&) const;
-			bool isValid(const std::map<int,int>&) const;    
-			int simplify();
-
-			std::string display() const;      
-			std::string displayAddress() const;  
-			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
-		};
-
-		/**
-		\class BoolValue 
-		\brief Rule Status class
-		\author S.Ansell
-		\version 1.0
-		\date April 2005
-
-		Class to handle a rule with a truth value
-		but can be true/false/unknown.
-		*/
-
-		class DLLExport BoolValue : public Rule
-		{
-		private:
-
-			static Kernel::Logger& PLog;           ///< The official logger
-
-			int status;          ///< Three values 0 False : 1 True : -1 doesn't matter
-
-		public:
-
-			BoolValue();
-			BoolValue(const BoolValue&);
-			BoolValue* clone() const;                        
-			BoolValue& operator=(const BoolValue&);
-			~BoolValue();
-			virtual std::string className() const { return "BoolValue"; } ///< Returns class name as string
-
-			Rule* leaf(const int =0) const { return 0; } ///< No leaves
-			void setLeaves(Rule*,Rule*);
-			void setLeaf(Rule*,const int =0);
-			int findLeaf(const Rule*) const;
-			Rule* findKey(const int) { return 0; }
-
-			int type() const { return 0; }   //effective name
-
-			///< write val into status, if in valid range
-			void setStatus(int val){ if(val==0||val==1||val==-1)status=val;}
-			bool isValid(const Geometry::V3D&) const;
-			bool isValid(const std::map<int,int>&) const;  ///< isValue :: Based on a surface status map
-			int simplify();                             
-
-
-			std::string display() const;
-			std::string displayAddress() const;  
-			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
-		};
-
-	}  // NAMESPACE  Geometry
-
-}  // NAMESPACE  Mantid
-
-#endif
+#ifndef Rules_h
+#define Rules_h
+
+#include <map>
+
+namespace Mantid
+{
+
+	namespace Geometry
+	{
+
+		class Object;
+		class Surface;
+
+		/**
+		\class Rule
+		\brief Object generation rule tree
+		\author S.Ansell
+		\version 1.0
+		\date April 2005
+
+		Base class for a rule item in the tree. 
+
+		Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+		This file is part of Mantid.
+
+		Mantid is free software; you can redistribute it and/or modify
+		it under the terms of the GNU General Public License as published by
+		the Free Software Foundation; either version 3 of the License, or
+		(at your option) any later version.
+
+		Mantid is distributed in the hope that it will be useful,
+		but WITHOUT ANY WARRANTY; without even the implied warranty of
+		MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+		GNU General Public License for more details.
+
+		You should have received a copy of the GNU General Public License
+		along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+		File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+		*/
+
+		class DLLExport Rule
+		{
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger
+
+			Rule* Parent;                    ///< Parent object (for tree)
+
+			static int addToKey(std::vector<int>& AV,const int passN=-1);     
+
+			int getBaseKeys(std::vector<int>&) const;  ///< Fills the vector with the surfaces 
+
+		public:
+
+			static int makeCNFcopy(Rule*&);  ///< Make Rule into a CNF format (slow)
+			static int makeFullDNF(Rule*&);  ///< Make Rule into a full DNF format
+			static int makeCNF(Rule*&);      ///< Make Rule into a CNF format
+			static int removeComplementary(Rule*&);       ///< NOT WORKING
+			static int removeItem(Rule*& TRule,const int SurfN);
+
+			Rule();
+			Rule(Rule*);
+			Rule(const Rule&);  
+			Rule& operator=(const Rule&);
+			virtual ~Rule();
+			virtual Rule* clone() const=0;  ///< abstract clone object
+			virtual std::string className() const { return "Rule"; } ///< Returns class name as string
+
+			/// No leaf for a base rule
+			virtual Rule* leaf(const int =0) const { return 0; }  
+			void setParent(Rule*);
+			Rule* getParent() const;
+			void makeParents();
+			int checkParents() const;  ///< Debug test for parents
+			int getKeyList(std::vector<int>&) const;
+			int commonType() const;      ///< Gets a common type
+
+			virtual void setLeaves(Rule*,Rule*)=0;          ///< abstract set leaves
+			virtual void setLeaf(Rule*,const int =0) =0;    ///< Abstract set 
+			virtual int findLeaf(const Rule*) const =0;     ///< Abstract find
+			virtual Rule* findKey(const int)  =0;           ///< Abstract key find    
+			virtual int type() const { return 0; }          ///< Null rule    
+
+
+			/// Abstract: The point is within the object
+			virtual bool isValid(const Geometry::V3D&) const = 0;           
+			/// Abstract Validity based on surface true/false map
+			virtual bool isValid(const std::map<int,int>&) const = 0; 
+			/// Abstract: Can the rule be simplified 
+			virtual int simplify() =0;
+
+			virtual int isComplementary() const { return 0; }   ///< Always returns false (0)
+
+			int Eliminate();            ///< elimination not written
+			int substituteSurf(const int SurfN,const int newSurfN,Surface* SPtr);  
+
+			/// Abstract Display
+			virtual std::string display() const=0;
+			/// Abstract Display Address
+			virtual std::string displayAddress() const=0;
+			/// Abstract getBoundingBox
+			virtual void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin) =0; 
+		};
+
+		/**
+		\class Intersection
+		\brief Combines two Rule objects in an intersection
+		\author S. Ansell
+		\version 1.0
+		\date August 2005
+
+		Intersection is defined as a valid Rule A and
+		valid rule B 
+		*/
+
+		class DLLExport Intersection : public Rule
+		{
+
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger
+
+			Rule* A;    ///< Rule 1 
+			Rule* B;    ///< Rule 2 
+
+		public:
+
+			Intersection();
+			explicit Intersection(Rule*,Rule*);
+			explicit Intersection(Rule*,Rule*,Rule*);
+			Intersection* clone() const;    ///< Makes a copy of the whole downward tree
+			virtual std::string className() const { return "Intersection"; } ///< Returns class name as string
+
+			Intersection(const Intersection&);
+			Intersection& operator=(const Intersection&);
+			~Intersection();
+			Rule* leaf(const int ipt=0) const { return ipt ? B : A; }   ///< selects leaf component
+			void setLeaves(Rule*,Rule*);           ///< set leaves
+			void setLeaf(Rule* nR,const int side=0);    ///< set one leaf.
+			int findLeaf(const Rule*) const;
+			Rule* findKey(const int KeyN);
+			int isComplementary() const;
+
+			int type() const { return 1; }   //effective name
+			std::string display() const;
+			std::string displayAddress() const;
+
+			bool isValid(const Geometry::V3D&) const;
+			bool isValid(const std::map<int,int>&) const;    
+			int simplify();      ///< apply general intersection simplification
+			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
+		};
+
+
+		/**
+		\class Union
+		\brief Combines two Rule objects in an union
+		\author S. Ansell
+		\version 1.0
+		\date August 2005
+
+		Union is defined as a valid Rule A or
+		valid rule B 
+		*/
+
+		class DLLExport Union : public Rule
+		{
+
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger  
+
+			Rule* A;    ///< Leaf rule A
+			Rule* B;    ///< Leaf rule B
+
+		public:
+
+			Union();
+			explicit Union(Rule*,Rule*);
+			explicit Union(Rule*,Rule*,Rule*);
+			Union(const Union&);
+
+			Union* clone() const;          
+			Union& operator=(const Union&);
+			~Union();
+			virtual std::string className() const { return "Union"; } ///< Returns class name as string
+
+			Rule* leaf(const int ipt=0) const { return ipt ? B : A; }      ///< Select a leaf component
+			void setLeaves(Rule*,Rule*);           ///< set leaves
+			void setLeaf(Rule* nR,const int side=0);     
+			int findLeaf(const Rule*) const;
+			Rule* findKey(const int KeyN);
+
+			int isComplementary() const;
+			int type() const { return -1; }   ///< effective name
+
+
+			bool isValid(const Geometry::V3D&) const;
+			bool isValid(const std::map<int,int>&) const;    
+			std::string display() const;
+			std::string displayAddress() const;
+			int simplify();      ///< apply general intersection simplification
+			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
+		};
+
+		/**
+		\class SurfPoint
+		\brief Surface leaf node
+		\author S.Ansell
+		\version 1.0 
+		\date August 2005
+
+		This class acts as an interface between a general
+		surface and a rule. Allowing an Rule chain to
+		be calculated
+		*/
+
+		class DLLExport SurfPoint : public Rule
+		{
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger
+
+			Surface* key;               ///< Actual Surface Base Object
+			int keyN;                   ///< Key Number (identifer)
+			int sign;                   ///< +/- in Object unit
+
+		public:
+
+			SurfPoint();
+			SurfPoint(const SurfPoint&);
+			SurfPoint* clone() const;                        
+			SurfPoint& operator=(const SurfPoint&);
+			~SurfPoint();
+			virtual std::string className() const { return "SurfPoint"; } ///< Returns class name as string
+
+			Rule* leaf(const int =0) const { return 0; }   ///< No Leaves
+			void setLeaves(Rule*,Rule*);
+			void setLeaf(Rule*,const int =0);
+			int findLeaf(const Rule*) const;
+			Rule* findKey(const int KeyNum);
+
+			int type() const { return 0; }   ///< Effective name
+
+			void setKeyN(const int Ky);             ///< set keyNumber
+			void setKey(Surface*);
+			bool isValid(const Geometry::V3D&) const;
+			bool isValid(const std::map<int,int>&) const;    
+			int getSign() const { return sign; }         ///< Get Sign
+			int getKeyN() const { return keyN; }         ///< Get Key
+			int simplify();
+
+			Surface* getKey() const { return key; }     ///< Get Surface Ptr
+			std::string display() const;
+			std::string displayAddress() const;  
+			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
+		};
+
+		/**
+		\class CompObj
+		\brief Compemented Object
+		\author S.Ansell
+		\version 1.0 
+		\date January 2006
+
+		This class holds a complement object 
+		of a single object group.
+		Care must be taken to avoid a cyclic loop
+		*/
+
+		class DLLExport CompObj : public Rule
+		{
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger
+
+			int objN;                   ///< Object number
+			Object* key;                ///< Object Pointer
+
+		public:
+
+			CompObj();
+			CompObj(const CompObj&);
+			CompObj* clone() const;                        
+			CompObj& operator=(const CompObj&);
+			~CompObj();
+			virtual std::string className() const { return "CompObj"; } ///< Returns class name as string
+
+			void setLeaves(Rule*,Rule*);
+			void setLeaf(Rule*,const int =0);
+			int findLeaf(const Rule*) const;
+			Rule* findKey(const int i);
+
+			int type() const { return 0; }   ///< Is it a branched object
+			int isComplementary() const { return 1; }  ///< Always returns true (1)
+
+			void setObjN(const int Ky);             ///< set object Number
+			void setObj(Object*);               ///< Set a Object state
+			bool isValid(const Geometry::V3D&) const;
+			bool isValid(const std::map<int,int>&) const;    
+			/// Get object number of component
+			int getObjN() const { return objN; } 
+			int simplify();
+
+			Object* getObj() const { return key; }   ///< Get Object Ptr
+			std::string display() const;      
+			std::string displayAddress() const;  
+			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
+
+		};
+
+		/**
+		\class CompGrp
+		\brief Compemented Grup 
+		\author S.Ansell
+		\version 1.0 
+		\date January 2006
+
+		This class holds a complement object 
+		of a single object group.
+		Care must be taken to avoid a cyclic loop
+		*/
+
+		class DLLExport CompGrp : public Rule
+		{
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger
+
+			Rule* A;    ///< The rule
+
+		public:
+
+			CompGrp();
+			explicit CompGrp(Rule*,Rule*);  
+			CompGrp(const CompGrp&);
+			CompGrp* clone() const;                        
+			CompGrp& operator=(const CompGrp&);
+			~CompGrp();
+			virtual std::string className() const { return "CompGrp"; } ///< Returns class name as string
+
+			Rule* leaf(const int) const { return A; }   ///< selects leaf component
+			void setLeaves(Rule*,Rule*);
+			void setLeaf(Rule* nR,const int side=0);
+			int findLeaf(const Rule*) const;
+			Rule* findKey(const int i);
+
+			int type() const { return 0; }   ///< Is it a branched object
+			int isComplementary() const { return 1; }   ///< Always returns true (1)
+
+			bool isValid(const Geometry::V3D&) const;
+			bool isValid(const std::map<int,int>&) const;    
+			int simplify();
+
+			std::string display() const;      
+			std::string displayAddress() const;  
+			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
+		};
+
+		/**
+		\class BoolValue 
+		\brief Rule Status class
+		\author S.Ansell
+		\version 1.0
+		\date April 2005
+
+		Class to handle a rule with a truth value
+		but can be true/false/unknown.
+		*/
+
+		class DLLExport BoolValue : public Rule
+		{
+		private:
+
+			static Kernel::Logger& PLog;           ///< The official logger
+
+			int status;          ///< Three values 0 False : 1 True : -1 doesn't matter
+
+		public:
+
+			BoolValue();
+			BoolValue(const BoolValue&);
+			BoolValue* clone() const;                        
+			BoolValue& operator=(const BoolValue&);
+			~BoolValue();
+			virtual std::string className() const { return "BoolValue"; } ///< Returns class name as string
+
+			Rule* leaf(const int =0) const { return 0; } ///< No leaves
+			void setLeaves(Rule*,Rule*);
+			void setLeaf(Rule*,const int =0);
+			int findLeaf(const Rule*) const;
+			Rule* findKey(const int) { return 0; }
+
+			int type() const { return 0; }   //effective name
+
+			///< write val into status, if in valid range
+			void setStatus(int val){ if(val==0||val==1||val==-1)status=val;}
+			bool isValid(const Geometry::V3D&) const;
+			bool isValid(const std::map<int,int>&) const;  ///< isValue :: Based on a surface status map
+			int simplify();                             
+
+
+			std::string display() const;
+			std::string displayAddress() const;  
+			void getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin); ///bounding box 
+		};
+
+	}  // NAMESPACE  Geometry
+
+}  // NAMESPACE  Mantid
+
+#endif
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/ShapeFactory.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/ShapeFactory.h
index eabf66b8fc5b688b091916b243c1a1e309d71f1b..96be18ddef07900bf5b5dadcd666891be2c0d591 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/ShapeFactory.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Objects/ShapeFactory.h
@@ -1,102 +1,102 @@
-#ifndef MANTID_GEOMETRY_SHAPEFACTORY_H_
-#define MANTID_GEOMETRY_SHAPEFACTORY_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
-#include "MantidGeometry/V3D.h"
-#include <boost/shared_ptr.hpp>
-#include <map>
-
-//----------------------------------------------------------------------
-// Forward declarations
-//----------------------------------------------------------------------
-/// @cond Exclude from doxygen documentation
-namespace Poco {
-namespace XML {
-	class Element;
-}}
-/// @endcond
-
-namespace Mantid
-{	
-  namespace Kernel
-  {
-    class Logger;
-  }
-
-  namespace Geometry
-  {
-    class Surface;
-    class Object;
-    
-    /**
-
-    Class originally intended to be used with the DataHandling 'LoadInstrument' algorithm.
-    In that algorithm it is used for creating shared pointers to the geometric shapes 
-    described in the XML instrument definition file.
-
-    This class is now also use elsewhere, and in addition to create geometric shapes
-    from an DOM-element-node pointing to a \<type> element with shape information, shapes
-    can also be created directly from a XML shape string. 
-
-    @author Anders Markvardsen, ISIS, RAL
-    @date 6/8/2008
-
-    Copyright &copy; 2007-2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>    
-    */
-    class DLLExport ShapeFactory
-    {
-    public:
-      ShapeFactory();
-      /// Destructor
-      ~ShapeFactory() {}
-
-      boost::shared_ptr<Object> createShape(Poco::XML::Element* pElem);
-      boost::shared_ptr<Object> createShape(std::string shapeXML);
-      
-    private:
-      std::string parseSphere(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseInfinitePlane(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseInfiniteCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseSegmentedCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseCuboid(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseInfiniteCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseHexahedron(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseTorus(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-      std::string parseSliceOfCylinderRing(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
-
-      Poco::XML::Element* getShapeElement(Poco::XML::Element* pElem, const std::string& name);
-      double getDoubleAttribute(Poco::XML::Element* pElem, const std::string& name);
-      V3D parsePosition(Poco::XML::Element* pElem);	
-      void createGeometryHandler(Poco::XML::Element*,boost::shared_ptr<Object>);
-
-      /// static reference to the logger class
-      static Kernel::Logger& g_log;
-    };
-
-  } // namespace Geometry
-} // namespace Mantid
-
-#endif /*MANTID_GEOMETRY_SHAPEFACTORY_H_*/
-
+#ifndef MANTID_GEOMETRY_SHAPEFACTORY_H_
+#define MANTID_GEOMETRY_SHAPEFACTORY_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
+#include "MantidGeometry/V3D.h"
+#include <boost/shared_ptr.hpp>
+#include <map>
+
+//----------------------------------------------------------------------
+// Forward declarations
+//----------------------------------------------------------------------
+/// @cond Exclude from doxygen documentation
+namespace Poco {
+namespace XML {
+	class Element;
+}}
+/// @endcond
+
+namespace Mantid
+{	
+  namespace Kernel
+  {
+    class Logger;
+  }
+
+  namespace Geometry
+  {
+    class Surface;
+    class Object;
+    
+    /**
+
+    Class originally intended to be used with the DataHandling 'LoadInstrument' algorithm.
+    In that algorithm it is used for creating shared pointers to the geometric shapes 
+    described in the XML instrument definition file.
+
+    This class is now also use elsewhere, and in addition to create geometric shapes
+    from an DOM-element-node pointing to a \<type> element with shape information, shapes
+    can also be created directly from a XML shape string. 
+
+    @author Anders Markvardsen, ISIS, RAL
+    @date 6/8/2008
+
+    Copyright &copy; 2007-2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>    
+    */
+    class DLLExport ShapeFactory
+    {
+    public:
+      ShapeFactory();
+      /// Destructor
+      ~ShapeFactory() {}
+
+      boost::shared_ptr<Object> createShape(Poco::XML::Element* pElem);
+      boost::shared_ptr<Object> createShape(std::string shapeXML);
+      
+    private:
+      std::string parseSphere(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseInfinitePlane(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseInfiniteCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseSegmentedCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseCuboid(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseInfiniteCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseHexahedron(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseTorus(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+      std::string parseSliceOfCylinderRing(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id);
+
+      Poco::XML::Element* getShapeElement(Poco::XML::Element* pElem, const std::string& name);
+      double getDoubleAttribute(Poco::XML::Element* pElem, const std::string& name);
+      V3D parsePosition(Poco::XML::Element* pElem);	
+      void createGeometryHandler(Poco::XML::Element*,boost::shared_ptr<Object>);
+
+      /// static reference to the logger class
+      static Kernel::Logger& g_log;
+    };
+
+  } // namespace Geometry
+} // namespace Mantid
+
+#endif /*MANTID_GEOMETRY_SHAPEFACTORY_H_*/
+
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/BitmapGeometryHandler.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/BitmapGeometryHandler.h
index 1fc3c1957564659e16dde151c976ba036d6a09d1..a421fed0fab749919a131c65a2decbd9f8cc3ab6 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/BitmapGeometryHandler.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/BitmapGeometryHandler.h
@@ -26,7 +26,7 @@ namespace Mantid
 		A texture will have been created by the RectangularDetectorActor (in MantidPlot)
 		and this is what will be mapped.
 
-		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryGenerator.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryGenerator.h
index 64f2cfad2ca820e681a358f05330101dc3801945..049e36463709de544a8cece39e9f21ab7c499a3c 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryGenerator.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryGenerator.h
@@ -21,7 +21,7 @@ namespace Mantid
 		This class is an cache for the geometry triangles and if needed generates the triangles using
 		other GeometryHandlers.
 
-		Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryHandler.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryHandler.h
index 7055790d6061013f3c24a000ad72c57f30c8530d..59b8cc5c3ca01409708cbf580ff7958373459d58 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryHandler.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryHandler.h
@@ -20,7 +20,7 @@ namespace Mantid
 		This is an implementation class for handling geometry from cache, if the cache doesn't exist then the 
 		triangulation is done using another triangulation handler and store in cache.
 
-		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryRenderer.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryRenderer.h
index e7bcafbf1579a4f7dc13f6feb3c34f27331e247b..b0600839ed4fc7245a76852654523029a5b72fad 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryRenderer.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/CacheGeometryRenderer.h
@@ -17,7 +17,7 @@ namespace Mantid
 
     This is an concrete class for rendering cached geometry using opengl.
 
-    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GeometryHandler.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GeometryHandler.h
index 742f77f4b058f5396411c57062685ab2402d7635..56601aca82edab7f18d0fcdf3e4475cd050b48db 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GeometryHandler.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GeometryHandler.h
@@ -21,7 +21,7 @@ namespace Mantid
 
 		This is an abstract class for handling geometry primitives.
 
-		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryHandler.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryHandler.h
index 9eaea003b761541649f0e810da2541897a5f292e..98f6051f69432a8e1c8a089d5dd596cccec0c3f3 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryHandler.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryHandler.h
@@ -20,7 +20,7 @@ namespace Mantid
 		This is an implementation class for handling geometry without triangulating and using opengl glu methods.
     This class can render cube, sphere, cone and cylinder.
 
-		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryRenderer.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryRenderer.h
index 3414df92edcf5597581a41152c32e44a924366b9..883b7f66e37d333e678ad7a74a23f8dcdbb60ed1 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryRenderer.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/GluGeometryRenderer.h
@@ -17,7 +17,7 @@ namespace Mantid
 
 		This is an concrete class for rendering geometry using opengl.
 
-		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryGenerator.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryGenerator.h
index dd60d710215efdf1315d93244d811c09d5456d4f..9bf133cfcb37cc91f77f3cc5c2ad5ed6550fe38e 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryGenerator.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryGenerator.h
@@ -26,7 +26,7 @@ namespace Mantid
 
 		This class is an OpenCascade geometry generation that takes in input as ObjComponent.
 
-		Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryHandler.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryHandler.h
index 0f1b5f2c0b20a46f4bbf7875fe52b1641699bad9..103bc9ff71afe37e5537d7bdde7bc95721f4ef30 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryHandler.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryHandler.h
@@ -21,7 +21,7 @@ namespace Mantid
 		It uses OpenCascade to generate a mesh defining the surface of an Object (shape).
 		This shape is saved along with the instrument definition as a .vtp file (for speed-ups).
 
-		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+		Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
 		This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryRenderer.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryRenderer.h
index 9dcdb8a09bdef06b91a41b84c44f398df405d551..e038aa333b6c81ca3eda3377b2aca03759384191 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryRenderer.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/OCGeometryRenderer.h
@@ -18,7 +18,7 @@ namespace Mantid
 
     This is an concrete class for rendering GtsSurface using opengl.
 
-    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheReader.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheReader.h
index 2ddba14c0e3e722df9657e84f03d46185c014fee..cbc8c22fcd7f1f726c54e3470d11bea2e55f728a 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheReader.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheReader.h
@@ -27,7 +27,7 @@ namespace Mantid
 
     This class reads the geometry (triangles) cached in the vtk format file and copies them to the object.
 
-    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheWriter.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheWriter.h
index a9533a423a3725f8a94527de51b4c3476cc15709..149b02ac326968117e99cbb2abc77695b07d51b4 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheWriter.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Rendering/vtkGeometryCacheWriter.h
@@ -24,7 +24,7 @@ namespace Mantid
 
     This class writes the geometry (triangles) cached from Object to the vtk format file.
 
-    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2008 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/BaseVisit.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/BaseVisit.h
index cef407c5978206ce96c9ebc21a5e935a9569311f..62280105db39af0050a5e558a6249090ac5d993f 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/BaseVisit.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/BaseVisit.h
@@ -23,7 +23,7 @@ namespace Mantid
     \author S. Ansell
     \brief Adds the main
 
-    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Cylinder.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Cylinder.h
index abbb80571ffe105447a8747b33f1d78de70f44dd..97ad1734a5ae198d7c6bd6a890b29cbbc896f6f4 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Cylinder.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Cylinder.h
@@ -25,7 +25,7 @@ namespace Mantid
     Defines a cylinder as a centre point (on main axis)
     a vector from that point (unit) and a radius.
 
-    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/General.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/General.h
index c22fc44fc1a5056d2974ded8aef46453196d6209..01e938954706acb95262876346d43a1c85884732 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/General.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/General.h
@@ -27,7 +27,7 @@ namespace Geometry
   which has been defined as a gq surface in MCNPX.
   It is a realisation of the Surface object.
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Line.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Line.h
index e050300422d0ec1c49d53e363d2ecae3644bf1fd..38e48ca7ce19a51f34c95efba2faf803aaf15c87 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Line.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Line.h
@@ -32,7 +32,7 @@ namespace Mantid
     Impliments the line 
     \f[ r=\vec{O} + \lambda \vec{n} \f]
 
-    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/LineIntersectVisit.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/LineIntersectVisit.h
index c0bde081d52934ead84cb3547dd95a90d730a5b1..8e610b767fc32686c2c38ec17d3c5c122d23d875 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/LineIntersectVisit.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/LineIntersectVisit.h
@@ -32,7 +32,7 @@ namespace Mantid
 
     Creates interaction with a line
 
-    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Plane.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Plane.h
index d56d38df665db52c223a0c69db3865a5eb3e11b5..01912205352b945f18075d8333bca3fe99f2f66b 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Plane.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Plane.h
@@ -31,7 +31,7 @@ namespace Mantid
     Defines a plane and a normal and a distance from
     the origin
 
-    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Sphere.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Sphere.h
index 0124e9fea6f341466a4fa0624ca600ac1bf31842..e866bd82646debed9f538fa952baebd086471005 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Sphere.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Sphere.h
@@ -27,7 +27,7 @@ namespace Mantid
 
     Defines a sphere as a centre point and a radius.
 
-    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+    Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
     This file is part of Mantid.
 
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Surface.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Surface.h
index 6aa58b0ecb9fe73257b77427a9b026043b3135cf..aa37d21463ef0fb61a01a49f622dc0dedad99cb9 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Surface.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Surface.h
@@ -24,7 +24,7 @@ namespace Geometry
   Holds a basic surface with equation form
   \f[ Ax^2+By^2+Cz^2+Dxy+Exz+Fyz+Gx+Hy+Jz+K=0 \f]
   
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/SurfaceFactory.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/SurfaceFactory.h
index 45daf559443ca014e8cb457f5a5ef015026b2a8d..8998002a9f7891ab396dd69d4d8348b0697c1bbe 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/SurfaceFactory.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/SurfaceFactory.h
@@ -19,7 +19,7 @@ namespace Geometry
   and the key given. Predominately for creating
   tallies from an input deck where we only have the number.
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Torus.h b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Torus.h
index 7abc6a339dd224619d992d6a1ef8d4c00d7cc3a9..645b1baed4cdd44c9dbb19436b0748e7240080ef 100644
--- a/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Torus.h
+++ b/Code/Mantid/Framework/Geometry/inc/MantidGeometry/Surfaces/Torus.h
@@ -23,7 +23,7 @@ namespace Geometry
   - Displacement :: elipse displacment from the centre.
   These are c,b,a in that order.
 
-  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+  Copyright &copy; 2007 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
 
   This file is part of Mantid.
  	
diff --git a/Code/Mantid/Framework/Geometry/src/Instrument/CompAssembly.cpp b/Code/Mantid/Framework/Geometry/src/Instrument/CompAssembly.cpp
index 21e9c5085dab7a9f37f6f6468d30c6c04f129949..4c2992d929bebf65adbd8e30c14dd60b93ddd8c8 100644
--- a/Code/Mantid/Framework/Geometry/src/Instrument/CompAssembly.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Instrument/CompAssembly.cpp
@@ -10,18 +10,18 @@ namespace Geometry
 {
 
 /// Void deleter for shared pointers
-class NoDeleting
-{
-public:
-    /// deleting operator. Does nothing
+class NoDeleting
+{
+public:
+    /// deleting operator. Does nothing
     void operator()(void*p)
     {
       (void) p; //Avoid compiler warnings
-    }
-};
+    }
+};
+
 
 
-
 /** Empty constructor
  */
 CompAssembly::CompAssembly() : Component(), m_children(), m_cachedBoundingBox(NULL)
@@ -244,10 +244,10 @@ void CompAssembly::getChildren(std::vector<boost::shared_ptr<IComponent> > & out
 
 
 //------------------------------------------------------------------------------------------------
-/**
- * Get the bounding box for this assembly. It is simply the sum of the bounding boxes of its children
- * @param assemblyBox :: [Out] The resulting bounding box is stored here.
- */
+/**
+ * Get the bounding box for this assembly. It is simply the sum of the bounding boxes of its children
+ * @param assemblyBox :: [Out] The resulting bounding box is stored here.
+ */
 void CompAssembly::getBoundingBox(BoundingBox & assemblyBox) const
 {
   if (m_isParametrized)
diff --git a/Code/Mantid/Framework/Geometry/src/Instrument/DetectorGroup.cpp b/Code/Mantid/Framework/Geometry/src/Instrument/DetectorGroup.cpp
index b118cb5a173ac6a0658d6b43ff2ac2e8f9793f80..242c819509dd8fc8c71a704bf54e5b189c85c21e 100644
--- a/Code/Mantid/Framework/Geometry/src/Instrument/DetectorGroup.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Instrument/DetectorGroup.cpp
@@ -273,10 +273,10 @@ namespace Mantid
       return std::set<std::string>();
     }
 
-    /**
-    * Get the bounding box for this group of detectors. It is simply the sum of the bounding boxes of its constituents.
-    * @param boundingBox :: [Out] The resulting bounding box is stored here.
-    */
+    /**
+    * Get the bounding box for this group of detectors. It is simply the sum of the bounding boxes of its constituents.
+    * @param boundingBox :: [Out] The resulting bounding box is stored here.
+    */
     void DetectorGroup::getBoundingBox(BoundingBox & boundingBox) const
     {
       boundingBox = BoundingBox();
diff --git a/Code/Mantid/Framework/Geometry/src/Instrument/FitParameter.cpp b/Code/Mantid/Framework/Geometry/src/Instrument/FitParameter.cpp
index 95790998f227ed2626fcdeccd84fc2fd519929b8..8566f758e6661b5609a3e5b97e711b8741327454 100644
--- a/Code/Mantid/Framework/Geometry/src/Instrument/FitParameter.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Instrument/FitParameter.cpp
@@ -1,34 +1,34 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidGeometry/Instrument/FitParameter.h"
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidGeometry/Instrument/FitParameter.h"
 #include "MantidGeometry/Instrument/Parameter.h"
-#include "MantidGeometry/Instrument/ParameterFactory.h"
-#include <Poco/StringTokenizer.h>
-#include <muParser.h>
-
-
-namespace Mantid
-{
-namespace Geometry
-{
-
+#include "MantidGeometry/Instrument/ParameterFactory.h"
+#include <Poco/StringTokenizer.h>
+#include <muParser.h>
+
+
+namespace Mantid
+{
+namespace Geometry
+{
+
   // Get a reference to the logger
-  Kernel::Logger& FitParameter::g_log = Kernel::Logger::get("FitParameter");
-
-
+  Kernel::Logger& FitParameter::g_log = Kernel::Logger::get("FitParameter");
+
+
   /**
     Get constraint string. 
     @return Constraint string
-  */
-  std::string FitParameter::getConstraint() const
-  {
-
-    if ( m_constraintMin.compare("")==0 && m_constraintMax.compare("")==0 )
-      return std::string("");
-
+  */
+  std::string FitParameter::getConstraint() const
+  {
+
+    if ( m_constraintMin.compare("")==0 && m_constraintMax.compare("")==0 )
+      return std::string("");
+
     std::stringstream constraint;
-    size_t foundMinPercentage, foundMaxPercentage;
+    size_t foundMinPercentage, foundMaxPercentage;
     foundMinPercentage = m_constraintMin.find('%');
     foundMaxPercentage = m_constraintMax.find('%');
     double min=0;
@@ -59,74 +59,74 @@ namespace Geometry
     else
     {
       constraint << m_name << " < " << max;
-    }
-    
-    return constraint.str();
-  }
-
-
+    }
+    
+    return constraint.str();
+  }
+
+
   /**
     Get parameter value. The default parameter 'at' is ignored expect if
     the value of the parameter is determined from a look up table or a formula.
-    @param at :: number to return the value at
+    @param at :: number to return the value at
     @return the value of the fit parameter
-  */
-  double FitParameter::getValue(const double& at) const
-  { 
-    if ( m_lookUpTable.containData() )
-    {
-      m_value = m_lookUpTable.value(at);
-      return m_value;
-    }
-
-    if ( m_formula.compare("") != 0 )
-    {
-      size_t found;
-      std::string equationStr = m_formula;
-      std::string toReplace = "centre"; // replace this string in formula
-      size_t len = toReplace.size();
-      found = equationStr.find(toReplace);
-      std::stringstream readDouble;
-      readDouble << at;
-      std::string extractedValueStr = readDouble.str();
-      if ( found != std::string::npos )
-        equationStr.replace(found, len, extractedValueStr);
-
-      // check if more than one string to replace in m_eq
-
-      while ( equationStr.find(toReplace) != std::string::npos )
-      {
-        found = equationStr.find(toReplace);
-        equationStr.replace(found, len, extractedValueStr);
-      }
-
-      try
-      {
-        mu::Parser p;
-        p.SetExpr(equationStr);
-        m_value = p.Eval();
-        return m_value;
-      }
-      catch (mu::Parser::exception_type &e)
-      {
-        g_log.error() << "Cannot evaluate fitting parameter formula."
-          << " Formula which cannot be passed is " << m_formula 
-          << ". Muparser error message is: " << e.GetMsg() << std::endl;
-      }
-    }
-
-    return m_value;
-  }
-
+  */
+  double FitParameter::getValue(const double& at) const
+  { 
+    if ( m_lookUpTable.containData() )
+    {
+      m_value = m_lookUpTable.value(at);
+      return m_value;
+    }
+
+    if ( m_formula.compare("") != 0 )
+    {
+      size_t found;
+      std::string equationStr = m_formula;
+      std::string toReplace = "centre"; // replace this string in formula
+      size_t len = toReplace.size();
+      found = equationStr.find(toReplace);
+      std::stringstream readDouble;
+      readDouble << at;
+      std::string extractedValueStr = readDouble.str();
+      if ( found != std::string::npos )
+        equationStr.replace(found, len, extractedValueStr);
+
+      // check if more than one string to replace in m_eq
+
+      while ( equationStr.find(toReplace) != std::string::npos )
+      {
+        found = equationStr.find(toReplace);
+        equationStr.replace(found, len, extractedValueStr);
+      }
+
+      try
+      {
+        mu::Parser p;
+        p.SetExpr(equationStr);
+        m_value = p.Eval();
+        return m_value;
+      }
+      catch (mu::Parser::exception_type &e)
+      {
+        g_log.error() << "Cannot evaluate fitting parameter formula."
+          << " Formula which cannot be passed is " << m_formula 
+          << ". Muparser error message is: " << e.GetMsg() << std::endl;
+      }
+    }
+
+    return m_value;
+  }
+
   /**
-    Get parameter value.
+    Get parameter value.
     @return the value of the fit parameter
-  */
-  double FitParameter::getValue() const
-  { 
-    return m_value;
-  }
-
+  */
+  double FitParameter::getValue() const
+  { 
+    return m_value;
+  }
+
   /**
     Prints object to stream
     @param os :: the Stream to output to
@@ -137,8 +137,8 @@ namespace Geometry
       << m_constraintMax << " , " << m_constraintPenaltyFactor << " , " << m_tie << " , " 
       << m_formula << " , " << m_formulaUnit << " , " << m_resultUnit << " , " << m_lookUpTable;
     return;
-  }
-
+  }
+
   /**
     Prints the value of parameter
     @param os :: the Stream to output to
@@ -160,9 +160,9 @@ namespace Geometry
   std::istream& operator>>(std::istream& in, FitParameter& f)
   {
 
-    typedef Poco::StringTokenizer tokenizer;
-    std::string str;
-    getline(in, str);
+    typedef Poco::StringTokenizer tokenizer;
+    std::string str;
+    getline(in, str);
     tokenizer values(str, ",", tokenizer::TOK_TRIM);
 
     try
@@ -262,7 +262,7 @@ namespace Geometry
     }
 
     return in;
-  }
-
-} // namespace Geometry
-} // namespace Mantid
+  }
+
+} // namespace Geometry
+} // namespace Mantid
diff --git a/Code/Mantid/Framework/Geometry/src/Instrument/NearestNeighbours.cpp b/Code/Mantid/Framework/Geometry/src/Instrument/NearestNeighbours.cpp
index 4e4388ac8c964c1c85e00bf8d8a4aff02f221c7d..fbb74746d36c085e70507318f1b0f2b52ae680ca 100644
--- a/Code/Mantid/Framework/Geometry/src/Instrument/NearestNeighbours.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Instrument/NearestNeighbours.cpp
@@ -1,239 +1,239 @@
-#include "MantidGeometry/Instrument/NearestNeighbours.h"
-
-#include "MantidKernel/ANN/ANN.h"
-
-#include "MantidGeometry/IInstrument.h"
-#include "MantidGeometry/IDetector.h"
-
-using namespace Mantid::Geometry;
-
-/**
-* @param instrument :: shared pointer to IInstrument object
-*/
-NearestNeighbours::NearestNeighbours(boost::shared_ptr<const Mantid::Geometry::IInstrument> instrument) : m_instrument(instrument), m_noNeighbours(8), m_isPopulated(false), m_scale(NULL)
-{
-}
-
-/**
-* @returns true if graph has been built, false otherwise.
-*/
-bool NearestNeighbours::isPopulated() const
-{
-  return m_isPopulated;
-}
-
-/**
-* Clears the data from the graph.
-*/
-void NearestNeighbours::clear()
-{
-  m_graph.clear();
-  m_detIDtoVertex.clear();
-  m_isPopulated = false;
-}
-
-/**
-* Builds the graph of the detectors and calculates nearest neighbours.
-*/
-void NearestNeighbours::build()
-{
-  clear();
-  populate();
-}
-
-/**
-* Returns a map of the DetectorID's to the nearest detectors and their
-* distance from the detector specified in the argument.
-* @param detID :: detector identifier for subject of query
-* @return map of detID to distance
-* @throw NotFoundError if detector ID is not recognised
-*/
-std::map<int, double> NearestNeighbours::neighbours(const int detID) const
-{  
-  MapIV::const_iterator vertex = m_detIDtoVertex.find(detID);
-
-  if ( vertex != m_detIDtoVertex.end() )
-  {
-    std::map<int, double> result;
-    std::pair<Graph::adjacency_iterator, Graph::adjacency_iterator> adjacent = boost::adjacent_vertices(vertex->second, m_graph);
-    Graph::adjacency_iterator adjIt;  
-    for ( adjIt = adjacent.first; adjIt != adjacent.second; adjIt++ )
-    {
-      Vertex nearest = (*adjIt);
-      int nrID = m_vertexID[nearest];
-      std::pair<Graph::edge_descriptor, bool> nrEd = boost::edge(vertex->second, nearest, m_graph);
-      double distance = m_edgeLength[nrEd.first];
-      distance = sqrt(distance);
-      result[nrID] = distance;
-    }
-    return result;
-  }
-  else
-  {
-    throw Mantid::Kernel::Exception::NotFoundError("NearestNeighbours: Detector with specified DetectorID not found in Instrument.", detID);
-  }
-}
-
-/**
-* Returns a map of the DetectorID's to the nearest detectors within a specified
-* distance. Uses neighbours(detID) function. Will pass on up a NotFoundError exception
-* if detID is invalid.
-* @param detID :: detector identifier for subject of query
-* @param radius :: cut-off distance for detector list to returns
-* @return map of detID to distance
-* @throw NotFoundError if detID is not recognised
-*/
-std::map<int, double> NearestNeighbours::neighbours(const int detID, const double radius) const
-{
-  std::map<int, double> nn = neighbours(detID);
-  std::map<int, double> result;
-  std::map<int, double>::iterator nnIt;
-  for ( nnIt = nn.begin(); nnIt != nn.end(); ++nnIt )
-  {
-    if ( nnIt->second <= radius )
-    {
-      result[nnIt->first] = nnIt->second;
-    }
-  }
-  return result;
-}
-
-/**
-* Returns a map of the DetectorID's to the nearest detectors within a specified
-* distance. Uses neighbours(detID) function. Will pass on up a NotFoundError exception
-* if detID is invalid.
-* @param component :: IComponent pointer to Detector object
-* @param radius :: cut-off distance for detector list to returns
-* @return map of Detector ID's to distance
-* @throw NotFoundError if component is not recognised as a detector
-*/
-std::map<int, double> NearestNeighbours::neighbours(const IComponent *component, const double radius) const
-{
-  const IDetector* detector = dynamic_cast<const Mantid::Geometry::IDetector*>(component);
-  int detID = detector->getID();
-  std::map<int, double> nearest = neighbours(detID);
-  if ( radius == 0.0 )
-  {
-    return nearest;
-  }
-  std::map<int, double> result;
-  std::map<int, double>::iterator nnIt;
-  for ( nnIt = nearest.begin(); nnIt != nearest.end(); ++nnIt )
-  {
-    if ( nnIt->second <= radius )
-    {
-      result[nnIt->first] = nnIt->second;
-    }
-  }
-  return result;
-}
-
-/**
-* Creates a graph object for the instrument, with the nodes being the detectors and edges linking the detectors to their
-* eight (8) nearest neighbours. 
-*/
-void NearestNeighbours::populate()
-{
-  // Do not rebuild the graph if it has already been done.
-  if ( isPopulated() )
-  {
-    return;
-  }
-
-  // ANN Variables
-  ANNpointArray dataPoints;
-  ANNkd_tree* annTree;
-  // maps
-  MapIV pointNoToVertex;
-  
-  std::map<int, Mantid::Geometry::IDetector_sptr> detectors;
-  m_instrument->getDetectors(detectors);
-  std::map<int, Mantid::Geometry::IDetector_sptr>::iterator detIt;
-
-  int ndets = detectors.size(); // also number of points in array  
-  int ndet = 0;
-
-  for ( detIt = detectors.begin(); detIt != detectors.end(); detIt++ )
-  {
-    if ( detIt->second->isMonitor() ) { continue; }
-    else { ndet++; }
-
-    if ( m_scale == NULL && ndets / ndet == 1 )
-    {
-      // create scaling vector      
-      boost::shared_ptr<Mantid::Geometry::Detector> det = boost::dynamic_pointer_cast<Mantid::Geometry::Detector>(detIt->second);
-      BoundingBox bbox;
-      det->getBoundingBox(bbox);
-      double xmax = bbox.xMax();
-      double ymax = bbox.yMax();
-      double zmax = bbox.zMax();
-      double xmin = bbox.xMin();
-      double ymin = bbox.yMin();
-      double zmin = bbox.zMin();
-      m_scale = new Mantid::Geometry::V3D((xmax-xmin), (ymax-ymin), (zmax-zmin));
-    }
-  }
-
-  dataPoints = annAllocPts(ndet, 3);
-  int pointNo = 0;
-
-  for ( detIt = detectors.begin(); detIt != detectors.end(); detIt++ )
-  {
-    Mantid::Geometry::IDetector_sptr detector = detIt->second;
-
-    // We do not want to consider monitors
-    if ( detector->isMonitor() ) { continue; }
-
-    const int detID = detector->getID();
-    Mantid::Geometry::V3D pos = detector->getPos() / *m_scale;
-    dataPoints[pointNo][0] = pos.X();
-    dataPoints[pointNo][1] = pos.Y();
-    dataPoints[pointNo][2] = pos.Z();
-    Vertex vertex = boost::add_vertex(detID, m_graph);
-    pointNoToVertex[pointNo] = vertex;
-    m_detIDtoVertex[detID] = vertex;
-    pointNo++;
-  }
-
-  annTree = new ANNkd_tree(dataPoints, ndet, 3);
-  pointNo = 0;
-  for ( detIt = detectors.begin(); detIt != detectors.end(); detIt++ )
-  {
-    // we don't want to consider monitors
-    if ( detIt->second->isMonitor() ) { continue; }
-
-    // run the nearest neighbour search on each detector.
-    ANNidxArray nnIndexList = new ANNidx[m_noNeighbours];
-    ANNdistArray nnDistList = new ANNdist[m_noNeighbours];
-
-    annTree->annkSearch(
-      dataPoints[pointNo], // Point to search nearest neighbours of
-      m_noNeighbours, // Number of neighbours to find (8)
-      nnIndexList, // Index list of results
-      nnDistList, // List of distances to each of these
-      0.0 // Error bound (?) is this the radius to search in?
-      );
-    for ( int i = 0; i < m_noNeighbours; i++ )
-    {
-      boost::add_edge(
-        m_detIDtoVertex[detIt->first], // from
-        pointNoToVertex[nnIndexList[i]], // to
-        nnDistList[i], // Distance Squared
-        m_graph
-        );
-    }
-    pointNo++;
-    delete [] nnIndexList;
-    delete [] nnDistList;
-  }
-  
-  delete annTree;
-  annDeallocPts(dataPoints);
-  annClose();
-  pointNoToVertex.clear();
-
-  m_vertexID = get(boost::vertex_name, m_graph);
-  m_edgeLength = get(boost::edge_name, m_graph);
-
-  m_isPopulated = true;
-}
+#include "MantidGeometry/Instrument/NearestNeighbours.h"
+
+#include "MantidKernel/ANN/ANN.h"
+
+#include "MantidGeometry/IInstrument.h"
+#include "MantidGeometry/IDetector.h"
+
+using namespace Mantid::Geometry;
+
+/**
+* @param instrument :: shared pointer to IInstrument object
+*/
+NearestNeighbours::NearestNeighbours(boost::shared_ptr<const Mantid::Geometry::IInstrument> instrument) : m_instrument(instrument), m_noNeighbours(8), m_isPopulated(false), m_scale(NULL)
+{
+}
+
+/**
+* @returns true if graph has been built, false otherwise.
+*/
+bool NearestNeighbours::isPopulated() const
+{
+  return m_isPopulated;
+}
+
+/**
+* Clears the data from the graph.
+*/
+void NearestNeighbours::clear()
+{
+  m_graph.clear();
+  m_detIDtoVertex.clear();
+  m_isPopulated = false;
+}
+
+/**
+* Builds the graph of the detectors and calculates nearest neighbours.
+*/
+void NearestNeighbours::build()
+{
+  clear();
+  populate();
+}
+
+/**
+* Returns a map of the DetectorID's to the nearest detectors and their
+* distance from the detector specified in the argument.
+* @param detID :: detector identifier for subject of query
+* @return map of detID to distance
+* @throw NotFoundError if detector ID is not recognised
+*/
+std::map<int, double> NearestNeighbours::neighbours(const int detID) const
+{  
+  MapIV::const_iterator vertex = m_detIDtoVertex.find(detID);
+
+  if ( vertex != m_detIDtoVertex.end() )
+  {
+    std::map<int, double> result;
+    std::pair<Graph::adjacency_iterator, Graph::adjacency_iterator> adjacent = boost::adjacent_vertices(vertex->second, m_graph);
+    Graph::adjacency_iterator adjIt;  
+    for ( adjIt = adjacent.first; adjIt != adjacent.second; adjIt++ )
+    {
+      Vertex nearest = (*adjIt);
+      int nrID = m_vertexID[nearest];
+      std::pair<Graph::edge_descriptor, bool> nrEd = boost::edge(vertex->second, nearest, m_graph);
+      double distance = m_edgeLength[nrEd.first];
+      distance = sqrt(distance);
+      result[nrID] = distance;
+    }
+    return result;
+  }
+  else
+  {
+    throw Mantid::Kernel::Exception::NotFoundError("NearestNeighbours: Detector with specified DetectorID not found in Instrument.", detID);
+  }
+}
+
+/**
+* Returns a map of the DetectorID's to the nearest detectors within a specified
+* distance. Uses neighbours(detID) function. Will pass on up a NotFoundError exception
+* if detID is invalid.
+* @param detID :: detector identifier for subject of query
+* @param radius :: cut-off distance for detector list to returns
+* @return map of detID to distance
+* @throw NotFoundError if detID is not recognised
+*/
+std::map<int, double> NearestNeighbours::neighbours(const int detID, const double radius) const
+{
+  std::map<int, double> nn = neighbours(detID);
+  std::map<int, double> result;
+  std::map<int, double>::iterator nnIt;
+  for ( nnIt = nn.begin(); nnIt != nn.end(); ++nnIt )
+  {
+    if ( nnIt->second <= radius )
+    {
+      result[nnIt->first] = nnIt->second;
+    }
+  }
+  return result;
+}
+
+/**
+* Returns a map of the DetectorID's to the nearest detectors within a specified
+* distance. Uses neighbours(detID) function. Will pass on up a NotFoundError exception
+* if detID is invalid.
+* @param component :: IComponent pointer to Detector object
+* @param radius :: cut-off distance for detector list to returns
+* @return map of Detector ID's to distance
+* @throw NotFoundError if component is not recognised as a detector
+*/
+std::map<int, double> NearestNeighbours::neighbours(const IComponent *component, const double radius) const
+{
+  const IDetector* detector = dynamic_cast<const Mantid::Geometry::IDetector*>(component);
+  int detID = detector->getID();
+  std::map<int, double> nearest = neighbours(detID);
+  if ( radius == 0.0 )
+  {
+    return nearest;
+  }
+  std::map<int, double> result;
+  std::map<int, double>::iterator nnIt;
+  for ( nnIt = nearest.begin(); nnIt != nearest.end(); ++nnIt )
+  {
+    if ( nnIt->second <= radius )
+    {
+      result[nnIt->first] = nnIt->second;
+    }
+  }
+  return result;
+}
+
+/**
+* Creates a graph object for the instrument, with the nodes being the detectors and edges linking the detectors to their
+* eight (8) nearest neighbours. 
+*/
+void NearestNeighbours::populate()
+{
+  // Do not rebuild the graph if it has already been done.
+  if ( isPopulated() )
+  {
+    return;
+  }
+
+  // ANN Variables
+  ANNpointArray dataPoints;
+  ANNkd_tree* annTree;
+  // maps
+  MapIV pointNoToVertex;
+  
+  std::map<int, Mantid::Geometry::IDetector_sptr> detectors;
+  m_instrument->getDetectors(detectors);
+  std::map<int, Mantid::Geometry::IDetector_sptr>::iterator detIt;
+
+  int ndets = detectors.size(); // also number of points in array  
+  int ndet = 0;
+
+  for ( detIt = detectors.begin(); detIt != detectors.end(); detIt++ )
+  {
+    if ( detIt->second->isMonitor() ) { continue; }
+    else { ndet++; }
+
+    if ( m_scale == NULL && ndets / ndet == 1 )
+    {
+      // create scaling vector      
+      boost::shared_ptr<Mantid::Geometry::Detector> det = boost::dynamic_pointer_cast<Mantid::Geometry::Detector>(detIt->second);
+      BoundingBox bbox;
+      det->getBoundingBox(bbox);
+      double xmax = bbox.xMax();
+      double ymax = bbox.yMax();
+      double zmax = bbox.zMax();
+      double xmin = bbox.xMin();
+      double ymin = bbox.yMin();
+      double zmin = bbox.zMin();
+      m_scale = new Mantid::Geometry::V3D((xmax-xmin), (ymax-ymin), (zmax-zmin));
+    }
+  }
+
+  dataPoints = annAllocPts(ndet, 3);
+  int pointNo = 0;
+
+  for ( detIt = detectors.begin(); detIt != detectors.end(); detIt++ )
+  {
+    Mantid::Geometry::IDetector_sptr detector = detIt->second;
+
+    // We do not want to consider monitors
+    if ( detector->isMonitor() ) { continue; }
+
+    const int detID = detector->getID();
+    Mantid::Geometry::V3D pos = detector->getPos() / *m_scale;
+    dataPoints[pointNo][0] = pos.X();
+    dataPoints[pointNo][1] = pos.Y();
+    dataPoints[pointNo][2] = pos.Z();
+    Vertex vertex = boost::add_vertex(detID, m_graph);
+    pointNoToVertex[pointNo] = vertex;
+    m_detIDtoVertex[detID] = vertex;
+    pointNo++;
+  }
+
+  annTree = new ANNkd_tree(dataPoints, ndet, 3);
+  pointNo = 0;
+  for ( detIt = detectors.begin(); detIt != detectors.end(); detIt++ )
+  {
+    // we don't want to consider monitors
+    if ( detIt->second->isMonitor() ) { continue; }
+
+    // run the nearest neighbour search on each detector.
+    ANNidxArray nnIndexList = new ANNidx[m_noNeighbours];
+    ANNdistArray nnDistList = new ANNdist[m_noNeighbours];
+
+    annTree->annkSearch(
+      dataPoints[pointNo], // Point to search nearest neighbours of
+      m_noNeighbours, // Number of neighbours to find (8)
+      nnIndexList, // Index list of results
+      nnDistList, // List of distances to each of these
+      0.0 // Error bound (?) is this the radius to search in?
+      );
+    for ( int i = 0; i < m_noNeighbours; i++ )
+    {
+      boost::add_edge(
+        m_detIDtoVertex[detIt->first], // from
+        pointNoToVertex[nnIndexList[i]], // to
+        nnDistList[i], // Distance Squared
+        m_graph
+        );
+    }
+    pointNo++;
+    delete [] nnIndexList;
+    delete [] nnDistList;
+  }
+  
+  delete annTree;
+  annDeallocPts(dataPoints);
+  annClose();
+  pointNoToVertex.clear();
+
+  m_vertexID = get(boost::vertex_name, m_graph);
+  m_edgeLength = get(boost::edge_name, m_graph);
+
+  m_isPopulated = true;
+}
diff --git a/Code/Mantid/Framework/Geometry/src/Instrument/RectangularDetector.cpp b/Code/Mantid/Framework/Geometry/src/Instrument/RectangularDetector.cpp
index 010eed7c4ec71e9b773a3f69682a1b810933bd24..a72caa3024c3fbcfe78091aad64c5ccef54fbcd0 100644
--- a/Code/Mantid/Framework/Geometry/src/Instrument/RectangularDetector.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Instrument/RectangularDetector.cpp
@@ -13,10 +13,10 @@ namespace Mantid
 {
 namespace Geometry
 {
-
 
 
-
+
+
 /** Empty constructor
  */
 RectangularDetector::RectangularDetector() : CompAssembly(), IObjComponent(NULL),
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/IMDDimension.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/IMDDimension.cpp
index dcaa5b7a449a4ec3d7f3c24886f00b8da01a9739..a5f23a5d91d9da1bb24e3b2dd3bff3915f92d89e 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/IMDDimension.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/IMDDimension.cpp
@@ -1,46 +1,46 @@
-#ifndef I_MDDIMENSION_H
-#define I_MDDIMENSION_H
-
-
-/** The class discribes one dimension of multidimensional dataset representing an ortogonal dimension and linear axis. 
-*
-*   Abstract type for a multi dimensional dimension. Gives a read-only layer to the concrete implementation.
-
-    @author Owen Arnold, RAL ISIS
-    @date 12/11/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-#include "MantidGeometry/MDGeometry/IMDDimension.h"
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-  /*  IMDDimension::~IMDDimension()
-    {
-      
-    }*/
-  }
-}
-
-#endif
+#ifndef I_MDDIMENSION_H
+#define I_MDDIMENSION_H
+
+
+/** The class discribes one dimension of multidimensional dataset representing an ortogonal dimension and linear axis. 
+*
+*   Abstract type for a multi dimensional dimension. Gives a read-only layer to the concrete implementation.
+
+    @author Owen Arnold, RAL ISIS
+    @date 12/11/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+#include "MantidGeometry/MDGeometry/IMDDimension.h"
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+  /*  IMDDimension::~IMDDimension()
+    {
+      
+    }*/
+  }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDBasisDimension.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDBasisDimension.cpp
index a89a5cdabc23823b511b35ccc89acd83ded09fd2..df58a545316cfbb8366d8314cda42f8417e890bf 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDBasisDimension.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDBasisDimension.cpp
@@ -1,42 +1,42 @@
-#include "MantidGeometry/MDGeometry/MDBasisDimension.h"
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-
-    MDBasisDimension::MDBasisDimension(std::string id, bool isReciprocal, int columnNumber) : m_id(id), m_isReciprocal(isReciprocal), m_columnNumber(columnNumber)
-    {
-    }
-
-    bool MDBasisDimension::operator==(const MDBasisDimension &other) const
-    {
-      return this->m_id == other.m_id;
-    }
-
-    bool MDBasisDimension::operator!=(const MDBasisDimension &other) const
-    {
-      return !(*this == other);
-    }
-
-    bool MDBasisDimension::operator < (const MDBasisDimension &other) const
-    {
-      return this->m_id < other.m_id;
-    }
-
-    std::string MDBasisDimension::getId() const 
-    {
-      return this->m_id;
-    }
-
-    bool MDBasisDimension::getIsReciprocal() const 
-    {
-      return this->m_isReciprocal;
-    }
-
-    int MDBasisDimension::getColumnNumber() const 
-    {
-      return this->m_columnNumber;
-    }
-  }
-}
+#include "MantidGeometry/MDGeometry/MDBasisDimension.h"
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+
+    MDBasisDimension::MDBasisDimension(std::string id, bool isReciprocal, int columnNumber) : m_id(id), m_isReciprocal(isReciprocal), m_columnNumber(columnNumber)
+    {
+    }
+
+    bool MDBasisDimension::operator==(const MDBasisDimension &other) const
+    {
+      return this->m_id == other.m_id;
+    }
+
+    bool MDBasisDimension::operator!=(const MDBasisDimension &other) const
+    {
+      return !(*this == other);
+    }
+
+    bool MDBasisDimension::operator < (const MDBasisDimension &other) const
+    {
+      return this->m_id < other.m_id;
+    }
+
+    std::string MDBasisDimension::getId() const 
+    {
+      return this->m_id;
+    }
+
+    bool MDBasisDimension::getIsReciprocal() const 
+    {
+      return this->m_isReciprocal;
+    }
+
+    int MDBasisDimension::getColumnNumber() const 
+    {
+      return this->m_columnNumber;
+    }
+  }
+}
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDCell.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDCell.cpp
index 979627f867755e265716d208499e0f4a8c50800f..099fea035dcb93c02948a2421abfa672faa6ba31 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDCell.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDCell.cpp
@@ -1,48 +1,48 @@
-#include "MantidGeometry/MDGeometry/MDCell.h"
-#include "MantidGeometry/MDGeometry/MDPoint.h"
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-
-    MDCell::MDCell(std::vector<boost::shared_ptr<Mantid::Geometry::MDPoint> > pContributingPoints, std::vector<coordinate> vertexes) 
-      : m_cachedSignal(0),
-        m_cachedError(0),
-        m_vertexes(vertexes),
-        m_contributingPoints(pContributingPoints)
-    {
-      //TODO, Accelerate. if no contributing points then can immediately exit and.
-      //TODO, depending on client-code usage, may be more optimal to place method call on the getters.
-      calculateCachedValues();
-    }
-
-    MDCell::MDCell(const double& signal,const double& error, const std::vector<coordinate>& vertexes)
-    : m_cachedSignal(signal),
-      m_cachedError(error),
-      m_vertexes(vertexes)
-    {
-
-    }
-
-
-
+#include "MantidGeometry/MDGeometry/MDCell.h"
+#include "MantidGeometry/MDGeometry/MDPoint.h"
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+
+    MDCell::MDCell(std::vector<boost::shared_ptr<Mantid::Geometry::MDPoint> > pContributingPoints, std::vector<coordinate> vertexes) 
+      : m_cachedSignal(0),
+        m_cachedError(0),
+        m_vertexes(vertexes),
+        m_contributingPoints(pContributingPoints)
+    {
+      //TODO, Accelerate. if no contributing points then can immediately exit and.
+      //TODO, depending on client-code usage, may be more optimal to place method call on the getters.
+      calculateCachedValues();
+    }
+
+    MDCell::MDCell(const double& signal,const double& error, const std::vector<coordinate>& vertexes)
+    : m_cachedSignal(signal),
+      m_cachedError(error),
+      m_vertexes(vertexes)
+    {
+
+    }
+
+
+
     std::vector<coordinate> MDCell::getVertexes() const
     {
       return this->m_vertexes;
     }
 
-    double MDCell::getSignal() const
-    {
-      return this->m_cachedSignal;
-    }
-    double MDCell::getError() const
-    {
-      return this->m_cachedError;
+    double MDCell::getSignal() const
+    {
+      return this->m_cachedSignal;
+    }
+    double MDCell::getError() const
+    {
+      return this->m_cachedError;
     }
-    std::vector<boost::shared_ptr<MDPoint> > MDCell::getContributingPoints() const
-    {
-      return this->m_contributingPoints;
+    std::vector<boost::shared_ptr<MDPoint> > MDCell::getContributingPoints() const
+    {
+      return this->m_contributingPoints;
     }
 
     void MDCell::calculateCachedValues()
@@ -56,8 +56,8 @@ namespace Mantid
       }
     }
 
-    MDCell::~MDCell()
-    {
-    }
-  }
-}
+    MDCell::~MDCell()
+    {
+    }
+  }
+}
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimension.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimension.cpp
index 9b92567e1353a3cd46169bf95d5478b0a14c388f..09a6666227b5fdee2c8b88a4c000c7454cee9566 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimension.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimension.cpp
@@ -1,288 +1,288 @@
-#include "MantidGeometry/MDGeometry/MDDimension.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/Attr.h>
-#include <Poco/DOM/Text.h>
-#include <Poco/DOM/AutoPtr.h> 
-#include <Poco/DOM/DOMWriter.h>
-#include <Poco/XML/XMLWriter.h>
-#include <sstream>
-
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-
-namespace Mantid
-{
-namespace Geometry
-{
-// get reference to logger for
-Kernel::Logger& MDDimension::g_log=Kernel::Logger::get("MDDimension");
-
-//
-std::string MDDimension::getDimensionId() const
-{
-  return this->dimTag; //TODO, dimension id string member required for this type.
-}
-
-
-bool MDDimension::getIsIntegrated() const
-{
-  return this->isIntegrated;
-}
-
-void MDDimension::getAxisPoints(std::vector<double>  &rez)const
-{
-  rez.resize(this->nBins);
-  for(unsigned int i=0;i<nBins;i++){
-    rez[i]=0.5*(this->Axis[i]+this->Axis[i+1]);
-  }
-}
-
-// default dimension is always integrated (it has one point and limits) 
-MDDimension::MDDimension(const std::string &ID):
-    dimTag(ID),
-    isIntegrated(true),
-    nBins(1),
-    nStride(0),
-    data_shift(0)
-{
-  // default name coinside with the tag but can be overwritten later
-  this->setRange();
-  this->setName(dimTag);
-
-}
-void 
-MDDimension::initialize(const DimensionDescription &descr)
-{
-    if(descr.Tag!=this->dimTag){
-        g_log.error()<<"Attempt to initialize the dimension, ID"<<this->dimTag<<" with wrong dimension description: "<<descr.Tag<<std::endl;
-    }
-    //TODO:  the dimensin direction to be introduced and set-up here soon;
-    this->setRange(descr.cut_min,descr.cut_max,descr.nBins);
-    // stride now reset which makes this dimension invalid in group of dimensions
-    this->nStride = 0;
-	// the meaning of the lattice parameter for dimension is unclear
-//    this->latticeParam= descr.data_scale;
-    this->data_shift  = descr.data_shift;
-
-	if(!descr.AxisName.empty()){
-			this->setName(descr.AxisName);
-    }
-
-}
-/// this function sets Linear range. 
-void  MDDimension::setRange(double rxMin,double rxMax,unsigned int nxBins)
-{
-  if(rxMin>rxMax)
-  {
-    g_log.error()<< "Attempting to set minimal integration limit higer then maximal for Dimension tag: "<<this->dimTag<<std::endl;
-    g_log.error()<< "setting MinVal: "<<rxMin<<" MaxVal: "<<rxMax<<std::endl;
-
-    throw(std::invalid_argument("setRange: wrong argument"));
-  }
-  this->rMin = rxMin;
-  this->rMax = rxMax;
-
-  this->setExpanded(nxBins);
-
-}
-/// set dimension expanded;
-void MDDimension::setExpanded(double rxMin, double rxMax,unsigned int nBins)
-{
-  this->check_ranges(rxMin,rxMax);
-  this->rMin=rxMin;
-  this->rMax=rxMax;
-
-  this->setExpanded(nBins);
-}
-
-//
-void MDDimension::check_ranges(double rxMin,double rxMax)
-{
-  if(rxMin>rxMax)
-  {
-    g_log.error()<< "Attempting to set minimal integration limit higer then maximal for Dimension tag: "<<this->dimTag<<std::endl;
-    g_log.error()<< "setting MinVal: "<<rxMin<<" MaxVal: "<<rxMax<<std::endl;
-
-    throw(std::invalid_argument("checkRanges: rMin>rMax"));
-  }
-  //if(rxMin>this->rMax||rxMax<this->rMin){
-  //    g_log.error()<< "Attempting to set integration limits outside the data range in Dimension ID N: "<<this->dimTag<<std::endl;
-  //    g_log.error()<< "existing MinVal: "<<this->rMin<<" MaxVal: "<<this->rMax<<" Setting: minVal: "<<rxMin<<" maxVal: "<<rxMax<<std::endl;
-  //    throw(std::invalid_argument("checkRanges: wrong rMin or rMax"));
-
-  //}
-
-}
-
-void MDDimension::setExpanded(unsigned int nxBins)
-{
-  if(nxBins<1||nxBins>MAX_REASONABLE_BIN_NUMBER)
-  {
-    g_log.error()<< "Setting number of bins="<<nxBins<<" our of range  for Dimension tag: "<<this->dimTag<<std::endl;
-    throw(std::invalid_argument("setExpanded: wrong number of bin"));
-  }
-  if(nxBins> 1)
-  {
-    this->isIntegrated=false;
-  }
-  else
-  {
-    this->isIntegrated=true;
-  }
-  this->nBins= nxBins;
-  double Delta=this->getRange()/(nBins);
-
-  double r;
-  this->Axis.clear();
-  this->Axis.reserve(nBins+1);
-  for(unsigned int i=0;i<nBins+1;i++){
-    r=this->rMin+i*Delta;
-    this->Axis.push_back(r);
-  }
-  // but all this is not enough -- > stride has to be set extrenaly, on the basis of other dimensions which were or were not integrated;
-  // stide is undefined here
-}
-
-
-/// clear dimension and sets integrated sign;
-void MDDimension::setIntegrated(void)
-{
-  this->isIntegrated=true;
-  this->nBins  =1;
-  this->nStride=0;  // the stride of neighboring dimensions has to change accordingly
-  this->Axis.clear();
-  this->Axis.assign(2,0);
-  this->Axis[0] = this->rMin;
-  this->Axis[1] = this->rMax;
-}
-
-void MDDimension::setIntegrated(double rxMin)
-{
-  if(rxMin>this->rMax)
-  {
-    g_log.error()<< "Attempting to set minimal integration limit higer then maximal for Dimension tag: "<<this->dimTag<<std::endl;
-    g_log.error()<< "existing MaxVal: "<<this->rMax<<" setting minVal: "<<rxMin<<std::endl;
-    throw(std::invalid_argument("setIntegrated: new min integration limit is higer than existing max integration limit"));
-  }
-  this->rMin=rxMin;
-  this->setIntegrated();
-}
-
-void MDDimension::setIntegrated(double rxMin, double rxMax)
-{
-  this->check_ranges(rxMin,rxMax);
-
-  this->rMin=rxMin;
-  this->rMax=rxMax;
-  this->setIntegrated();
-}
-
-bool MDDimension::operator==(const MDDimension& other) const
-{
-  return this->dimTag == other.dimTag;
-}
-
-///* Assigment operator */
-//MDDimension & MDDimension::operator=(const MDDimension &rhs)
-//{
-//  this->Axis = rhs.Axis;
-//  AxisName = rhs.AxisName;
-//  dimTag = rhs.dimTag;
-//  isIntegrated = rhs.isIntegrated;
-//  nBins = rhs.nBins;
-//  nStride = rhs.nStride;
-//  rMin = rhs.rMin;
-//  rMax = rhs.rMax;
-//  latticeParam = rhs.latticeParam;
-//  coord = rhs.coord;
-//  return *this;
-//}
-
-bool MDDimension::operator!=(const MDDimension& other) const
-{
-  return this->dimTag != other.dimTag;
-}
-
-void MDDimension::ApplySerialization(Poco::XML::Document* pDoc, Poco::XML::Element* pDimensionElement) const
-{
-  using namespace Poco::XML;
-
-  //Set the id.
-  AutoPtr<Attr> idAttribute = pDoc->createAttribute("ID");
-  idAttribute->setNodeValue(this->getDimensionId());
-  pDimensionElement->setAttributeNode(idAttribute);
-
-  //Set the name.
-  AutoPtr<Element> nameElement = pDoc->createElement("Name");
-  AutoPtr<Text> nameText = pDoc->createTextNode(this->getName());
-  nameElement->appendChild(nameText);
-  pDimensionElement->appendChild(nameElement);
-
-  //Set the upper bounds
-  AutoPtr<Element> upperBoundsElement = pDoc->createElement("UpperBounds");
-  AutoPtr<Text> upperBoundsText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMaximum()));
-  upperBoundsElement->appendChild(upperBoundsText);
-  pDimensionElement->appendChild(upperBoundsElement);
-
-  //Set the lower bounds
-  AutoPtr<Element> lowerBoundsElement = pDoc->createElement("LowerBounds");
-  AutoPtr<Text> lowerBoundsText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMinimum()));
-  lowerBoundsElement->appendChild(lowerBoundsText);
-  pDimensionElement->appendChild(lowerBoundsElement);
-
-  //Set the number of bins
-  AutoPtr<Element> numberOfBinsElement = pDoc->createElement("NumberOfBins");
-  AutoPtr<Text> numberOfBinsText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getNBins()));
-  numberOfBinsElement->appendChild(numberOfBinsText);
-  pDimensionElement->appendChild(numberOfBinsElement);
-
-  //Provide upper and lower limits for integrated dimensions.
-  if(this->getIntegrated())
-  {
-    AutoPtr<Element> integratedElement = pDoc->createElement("Integrated");
-    //Set the upper limit
-    AutoPtr<Element> upperLimitElement = pDoc->createElement("UpperLimit");
-    AutoPtr<Text> upperLimitText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMaximum())); // Dimension does not yet provide integration ranges.
-    upperLimitElement->appendChild(upperLimitText);
-    integratedElement->appendChild(upperLimitElement);
-
-    //Set the lower limit
-    AutoPtr<Element> lowerLimitElement = pDoc->createElement("LowerLimit");
-    AutoPtr<Text> lowerLimitText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMinimum())); // Dimension does not yet provide integration ranges.
-    lowerLimitElement->appendChild(lowerLimitText);
-    integratedElement->appendChild(lowerLimitElement);
-
-    pDimensionElement->appendChild(integratedElement);
-  }
-}
-
-std::string MDDimension::toXMLString() const
-{
-   using namespace Poco::XML;
-
-  //Create the root element for this fragment.
-  AutoPtr<Document> pDoc = new Document;
-  AutoPtr<Element> pDimensionElement= pDoc->createElement("Dimension");
-  pDoc->appendChild(pDimensionElement);
-
-  //Apply the serialization based on the current instance.
-  ApplySerialization(pDoc.get(), pDimensionElement.get());
-
-  //Create a string representation of the DOM tree.
-  std::stringstream xmlstream;
-  DOMWriter writer;
-  writer.writeNode(xmlstream, pDoc);
-
-  return xmlstream.str().c_str();
-}
-
-MDDimension::~MDDimension()
-{
-}
-
-} //namespace
-}
+#include "MantidGeometry/MDGeometry/MDDimension.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/Attr.h>
+#include <Poco/DOM/Text.h>
+#include <Poco/DOM/AutoPtr.h> 
+#include <Poco/DOM/DOMWriter.h>
+#include <Poco/XML/XMLWriter.h>
+#include <sstream>
+
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+
+namespace Mantid
+{
+namespace Geometry
+{
+// get reference to logger for
+Kernel::Logger& MDDimension::g_log=Kernel::Logger::get("MDDimension");
+
+//
+std::string MDDimension::getDimensionId() const
+{
+  return this->dimTag; //TODO, dimension id string member required for this type.
+}
+
+
+bool MDDimension::getIsIntegrated() const
+{
+  return this->isIntegrated;
+}
+
+void MDDimension::getAxisPoints(std::vector<double>  &rez)const
+{
+  rez.resize(this->nBins);
+  for(unsigned int i=0;i<nBins;i++){
+    rez[i]=0.5*(this->Axis[i]+this->Axis[i+1]);
+  }
+}
+
+// default dimension is always integrated (it has one point and limits) 
+MDDimension::MDDimension(const std::string &ID):
+    dimTag(ID),
+    isIntegrated(true),
+    nBins(1),
+    nStride(0),
+    data_shift(0)
+{
+  // default name coinside with the tag but can be overwritten later
+  this->setRange();
+  this->setName(dimTag);
+
+}
+void 
+MDDimension::initialize(const DimensionDescription &descr)
+{
+    if(descr.Tag!=this->dimTag){
+        g_log.error()<<"Attempt to initialize the dimension, ID"<<this->dimTag<<" with wrong dimension description: "<<descr.Tag<<std::endl;
+    }
+    //TODO:  the dimensin direction to be introduced and set-up here soon;
+    this->setRange(descr.cut_min,descr.cut_max,descr.nBins);
+    // stride now reset which makes this dimension invalid in group of dimensions
+    this->nStride = 0;
+	// the meaning of the lattice parameter for dimension is unclear
+//    this->latticeParam= descr.data_scale;
+    this->data_shift  = descr.data_shift;
+
+	if(!descr.AxisName.empty()){
+			this->setName(descr.AxisName);
+    }
+
+}
+/// this function sets Linear range. 
+void  MDDimension::setRange(double rxMin,double rxMax,unsigned int nxBins)
+{
+  if(rxMin>rxMax)
+  {
+    g_log.error()<< "Attempting to set minimal integration limit higer then maximal for Dimension tag: "<<this->dimTag<<std::endl;
+    g_log.error()<< "setting MinVal: "<<rxMin<<" MaxVal: "<<rxMax<<std::endl;
+
+    throw(std::invalid_argument("setRange: wrong argument"));
+  }
+  this->rMin = rxMin;
+  this->rMax = rxMax;
+
+  this->setExpanded(nxBins);
+
+}
+/// set dimension expanded;
+void MDDimension::setExpanded(double rxMin, double rxMax,unsigned int nBins)
+{
+  this->check_ranges(rxMin,rxMax);
+  this->rMin=rxMin;
+  this->rMax=rxMax;
+
+  this->setExpanded(nBins);
+}
+
+//
+void MDDimension::check_ranges(double rxMin,double rxMax)
+{
+  if(rxMin>rxMax)
+  {
+    g_log.error()<< "Attempting to set minimal integration limit higer then maximal for Dimension tag: "<<this->dimTag<<std::endl;
+    g_log.error()<< "setting MinVal: "<<rxMin<<" MaxVal: "<<rxMax<<std::endl;
+
+    throw(std::invalid_argument("checkRanges: rMin>rMax"));
+  }
+  //if(rxMin>this->rMax||rxMax<this->rMin){
+  //    g_log.error()<< "Attempting to set integration limits outside the data range in Dimension ID N: "<<this->dimTag<<std::endl;
+  //    g_log.error()<< "existing MinVal: "<<this->rMin<<" MaxVal: "<<this->rMax<<" Setting: minVal: "<<rxMin<<" maxVal: "<<rxMax<<std::endl;
+  //    throw(std::invalid_argument("checkRanges: wrong rMin or rMax"));
+
+  //}
+
+}
+
+void MDDimension::setExpanded(unsigned int nxBins)
+{
+  if(nxBins<1||nxBins>MAX_REASONABLE_BIN_NUMBER)
+  {
+    g_log.error()<< "Setting number of bins="<<nxBins<<" our of range  for Dimension tag: "<<this->dimTag<<std::endl;
+    throw(std::invalid_argument("setExpanded: wrong number of bin"));
+  }
+  if(nxBins> 1)
+  {
+    this->isIntegrated=false;
+  }
+  else
+  {
+    this->isIntegrated=true;
+  }
+  this->nBins= nxBins;
+  double Delta=this->getRange()/(nBins);
+
+  double r;
+  this->Axis.clear();
+  this->Axis.reserve(nBins+1);
+  for(unsigned int i=0;i<nBins+1;i++){
+    r=this->rMin+i*Delta;
+    this->Axis.push_back(r);
+  }
+  // but all this is not enough -- > stride has to be set extrenaly, on the basis of other dimensions which were or were not integrated;
+  // stide is undefined here
+}
+
+
+/// clear dimension and sets integrated sign;
+void MDDimension::setIntegrated(void)
+{
+  this->isIntegrated=true;
+  this->nBins  =1;
+  this->nStride=0;  // the stride of neighboring dimensions has to change accordingly
+  this->Axis.clear();
+  this->Axis.assign(2,0);
+  this->Axis[0] = this->rMin;
+  this->Axis[1] = this->rMax;
+}
+
+void MDDimension::setIntegrated(double rxMin)
+{
+  if(rxMin>this->rMax)
+  {
+    g_log.error()<< "Attempting to set minimal integration limit higer then maximal for Dimension tag: "<<this->dimTag<<std::endl;
+    g_log.error()<< "existing MaxVal: "<<this->rMax<<" setting minVal: "<<rxMin<<std::endl;
+    throw(std::invalid_argument("setIntegrated: new min integration limit is higer than existing max integration limit"));
+  }
+  this->rMin=rxMin;
+  this->setIntegrated();
+}
+
+void MDDimension::setIntegrated(double rxMin, double rxMax)
+{
+  this->check_ranges(rxMin,rxMax);
+
+  this->rMin=rxMin;
+  this->rMax=rxMax;
+  this->setIntegrated();
+}
+
+bool MDDimension::operator==(const MDDimension& other) const
+{
+  return this->dimTag == other.dimTag;
+}
+
+///* Assigment operator */
+//MDDimension & MDDimension::operator=(const MDDimension &rhs)
+//{
+//  this->Axis = rhs.Axis;
+//  AxisName = rhs.AxisName;
+//  dimTag = rhs.dimTag;
+//  isIntegrated = rhs.isIntegrated;
+//  nBins = rhs.nBins;
+//  nStride = rhs.nStride;
+//  rMin = rhs.rMin;
+//  rMax = rhs.rMax;
+//  latticeParam = rhs.latticeParam;
+//  coord = rhs.coord;
+//  return *this;
+//}
+
+bool MDDimension::operator!=(const MDDimension& other) const
+{
+  return this->dimTag != other.dimTag;
+}
+
+void MDDimension::ApplySerialization(Poco::XML::Document* pDoc, Poco::XML::Element* pDimensionElement) const
+{
+  using namespace Poco::XML;
+
+  //Set the id.
+  AutoPtr<Attr> idAttribute = pDoc->createAttribute("ID");
+  idAttribute->setNodeValue(this->getDimensionId());
+  pDimensionElement->setAttributeNode(idAttribute);
+
+  //Set the name.
+  AutoPtr<Element> nameElement = pDoc->createElement("Name");
+  AutoPtr<Text> nameText = pDoc->createTextNode(this->getName());
+  nameElement->appendChild(nameText);
+  pDimensionElement->appendChild(nameElement);
+
+  //Set the upper bounds
+  AutoPtr<Element> upperBoundsElement = pDoc->createElement("UpperBounds");
+  AutoPtr<Text> upperBoundsText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMaximum()));
+  upperBoundsElement->appendChild(upperBoundsText);
+  pDimensionElement->appendChild(upperBoundsElement);
+
+  //Set the lower bounds
+  AutoPtr<Element> lowerBoundsElement = pDoc->createElement("LowerBounds");
+  AutoPtr<Text> lowerBoundsText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMinimum()));
+  lowerBoundsElement->appendChild(lowerBoundsText);
+  pDimensionElement->appendChild(lowerBoundsElement);
+
+  //Set the number of bins
+  AutoPtr<Element> numberOfBinsElement = pDoc->createElement("NumberOfBins");
+  AutoPtr<Text> numberOfBinsText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getNBins()));
+  numberOfBinsElement->appendChild(numberOfBinsText);
+  pDimensionElement->appendChild(numberOfBinsElement);
+
+  //Provide upper and lower limits for integrated dimensions.
+  if(this->getIntegrated())
+  {
+    AutoPtr<Element> integratedElement = pDoc->createElement("Integrated");
+    //Set the upper limit
+    AutoPtr<Element> upperLimitElement = pDoc->createElement("UpperLimit");
+    AutoPtr<Text> upperLimitText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMaximum())); // Dimension does not yet provide integration ranges.
+    upperLimitElement->appendChild(upperLimitText);
+    integratedElement->appendChild(upperLimitElement);
+
+    //Set the lower limit
+    AutoPtr<Element> lowerLimitElement = pDoc->createElement("LowerLimit");
+    AutoPtr<Text> lowerLimitText = pDoc->createTextNode(boost::str(boost::format("%.4d") % this->getMinimum())); // Dimension does not yet provide integration ranges.
+    lowerLimitElement->appendChild(lowerLimitText);
+    integratedElement->appendChild(lowerLimitElement);
+
+    pDimensionElement->appendChild(integratedElement);
+  }
+}
+
+std::string MDDimension::toXMLString() const
+{
+   using namespace Poco::XML;
+
+  //Create the root element for this fragment.
+  AutoPtr<Document> pDoc = new Document;
+  AutoPtr<Element> pDimensionElement= pDoc->createElement("Dimension");
+  pDoc->appendChild(pDimensionElement);
+
+  //Apply the serialization based on the current instance.
+  ApplySerialization(pDoc.get(), pDimensionElement.get());
+
+  //Create a string representation of the DOM tree.
+  std::stringstream xmlstream;
+  DOMWriter writer;
+  writer.writeNode(xmlstream, pDoc);
+
+  return xmlstream.str().c_str();
+}
+
+MDDimension::~MDDimension()
+{
+}
+
+} //namespace
+}
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimensionRes.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimensionRes.cpp
index ee2c19f2649b7c4ed8c3b2bd2881e4b99525613e..eef3e89bb883abee4967f4003d5ad3ed4cf85b7a 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimensionRes.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDDimensionRes.cpp
@@ -1,132 +1,132 @@
-#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/Attr.h>
-#include <Poco/DOM/Text.h>
-#include <Poco/DOM/AutoPtr.h> 
-#include <Poco/DOM/DOMWriter.h>
-#include <Poco/XML/XMLWriter.h>
-#include <sstream>
-#include <float.h>
-
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-
-namespace Mantid{
-    namespace Geometry{
-
-
-
-
-
-
-MDDimensionRes::MDDimensionRes(const std::string &ID,const rec_dim nRecDim0):
-MDDimension(ID),
-nRecDim(nRecDim0)
-{
-    this->direction[nRecDim] = 1;
-}
-void 
-MDDimensionRes::setDirection(const V3D &theDirection)
-{
-	
-    if(theDirection.norm2()<FLT_EPSILON){
-        g_log.error()<<"MDDimensionRes::setDirection: Attempt to set reciprocal dimension in 0 direction";
-        throw(std::invalid_argument("MDDimensionRes::setDirection: Attempt to set reciprocal dimension in 0 direction"));
-    }
-    direction=theDirection;
-	direction.normalize();
-
-}
-//
-V3D 
-MDDimensionRes::getDirectionCryst(void)const
-{
-	unsigned int i;
-	V3D dirCryst(this->direction);
-	double minDir(FLT_MAX);
-	double val;
-	for(i=0;i<3;i++){
-		val =std::abs(dirCryst[i]); 
-		if(val>FLT_EPSILON){
-			if(val<minDir)minDir=val;
-		}
-	}
-	return dirCryst/minDir;
-}
-//
-std::string MDDimensionRes::getQTypeAsString() const
-{
-  std::string qType;
-  if(this->nRecDim == q1)
-  {
-    qType = "q1";
-  }
-  else if(this->nRecDim == q2)
-  {
-    qType = "q2";
-  }
-  else
-  {
-    qType = "q3";
-  }
-  return qType;
-}
-
-
-std::string MDDimensionRes::toXMLString() const
-{
-   using namespace Poco::XML;
-
-  //Create the root element for this fragment.
-  AutoPtr<Document> pDoc = new Document;
-  AutoPtr<Element> pDimensionElement= pDoc->createElement("Dimension");
-  //Create the body
-  pDoc->appendChild(pDimensionElement);
-  
-  //Apply reciprocal dimension xml.
-  ApplySerialization(pDoc.get(), pDimensionElement.get());
-
-  //This is a reciprocal dimension
-  AutoPtr<Element> reciprocalDimensionMappingElement = pDoc->createElement("ReciprocalDimensionMapping");
-  //The type of reciprocal dimension
-  std::string qTypeString = getQTypeAsString();
-  AutoPtr<Text> reciprocalDimensionMappingText = pDoc->createTextNode(qTypeString);
-  reciprocalDimensionMappingElement->appendChild(reciprocalDimensionMappingText);
-  pDimensionElement->appendChild(reciprocalDimensionMappingElement);
-
-  //Convert to string format.
-  std::stringstream xmlstream;
-  DOMWriter writer;
-  writer.writeNode(xmlstream, pDoc);
-
-  return xmlstream.str().c_str();
-}
-
-
-MDDimensionRes::~MDDimensionRes(void)
-{
-}
-//********************************************************************************************************************************************
-MDDimDummy::MDDimDummy(unsigned int nRecDim):
-MDDimensionRes("DUMMY REC_DIM",(rec_dim)nRecDim)
-{ 
-  // set 1 bin and the dimension integrated;
-  this->setRange(0,1,1);
-  this->setName("DUMMY AXIS NAME");
-}
-  //Get coordinate for index; Throws  if ind is out of range 
-double 
-MDDimDummy::getX(unsigned int ind)const
-{
-      switch(ind){
-      case(0): return 0;
-      case(1): return 1;
-      default: throw(std::out_of_range("Dummy dimension index is out of range (0,1) "));
-      }
-}
-
-}
-}
+#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/Attr.h>
+#include <Poco/DOM/Text.h>
+#include <Poco/DOM/AutoPtr.h> 
+#include <Poco/DOM/DOMWriter.h>
+#include <Poco/XML/XMLWriter.h>
+#include <sstream>
+#include <float.h>
+
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+
+namespace Mantid{
+    namespace Geometry{
+
+
+
+
+
+
+MDDimensionRes::MDDimensionRes(const std::string &ID,const rec_dim nRecDim0):
+MDDimension(ID),
+nRecDim(nRecDim0)
+{
+    this->direction[nRecDim] = 1;
+}
+void 
+MDDimensionRes::setDirection(const V3D &theDirection)
+{
+	
+    if(theDirection.norm2()<FLT_EPSILON){
+        g_log.error()<<"MDDimensionRes::setDirection: Attempt to set reciprocal dimension in 0 direction";
+        throw(std::invalid_argument("MDDimensionRes::setDirection: Attempt to set reciprocal dimension in 0 direction"));
+    }
+    direction=theDirection;
+	direction.normalize();
+
+}
+//
+V3D 
+MDDimensionRes::getDirectionCryst(void)const
+{
+	unsigned int i;
+	V3D dirCryst(this->direction);
+	double minDir(FLT_MAX);
+	double val;
+	for(i=0;i<3;i++){
+		val =std::abs(dirCryst[i]); 
+		if(val>FLT_EPSILON){
+			if(val<minDir)minDir=val;
+		}
+	}
+	return dirCryst/minDir;
+}
+//
+std::string MDDimensionRes::getQTypeAsString() const
+{
+  std::string qType;
+  if(this->nRecDim == q1)
+  {
+    qType = "q1";
+  }
+  else if(this->nRecDim == q2)
+  {
+    qType = "q2";
+  }
+  else
+  {
+    qType = "q3";
+  }
+  return qType;
+}
+
+
+std::string MDDimensionRes::toXMLString() const
+{
+   using namespace Poco::XML;
+
+  //Create the root element for this fragment.
+  AutoPtr<Document> pDoc = new Document;
+  AutoPtr<Element> pDimensionElement= pDoc->createElement("Dimension");
+  //Create the body
+  pDoc->appendChild(pDimensionElement);
+  
+  //Apply reciprocal dimension xml.
+  ApplySerialization(pDoc.get(), pDimensionElement.get());
+
+  //This is a reciprocal dimension
+  AutoPtr<Element> reciprocalDimensionMappingElement = pDoc->createElement("ReciprocalDimensionMapping");
+  //The type of reciprocal dimension
+  std::string qTypeString = getQTypeAsString();
+  AutoPtr<Text> reciprocalDimensionMappingText = pDoc->createTextNode(qTypeString);
+  reciprocalDimensionMappingElement->appendChild(reciprocalDimensionMappingText);
+  pDimensionElement->appendChild(reciprocalDimensionMappingElement);
+
+  //Convert to string format.
+  std::stringstream xmlstream;
+  DOMWriter writer;
+  writer.writeNode(xmlstream, pDoc);
+
+  return xmlstream.str().c_str();
+}
+
+
+MDDimensionRes::~MDDimensionRes(void)
+{
+}
+//********************************************************************************************************************************************
+MDDimDummy::MDDimDummy(unsigned int nRecDim):
+MDDimensionRes("DUMMY REC_DIM",(rec_dim)nRecDim)
+{ 
+  // set 1 bin and the dimension integrated;
+  this->setRange(0,1,1);
+  this->setName("DUMMY AXIS NAME");
+}
+  //Get coordinate for index; Throws  if ind is out of range 
+double 
+MDDimDummy::getX(unsigned int ind)const
+{
+      switch(ind){
+      case(0): return 0;
+      case(1): return 1;
+      default: throw(std::out_of_range("Dummy dimension index is out of range (0,1) "));
+      }
+}
+
+}
+}
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometry.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometry.cpp
index 3a707dc264d6d4366ed4edd9c6c84d2551261099..b261ca3033ddd958eca4b2743198cab7d7aaf849 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometry.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometry.cpp
@@ -1,491 +1,491 @@
-//#include "MDDataObjects/stdafx.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include <boost/functional/hash.hpp>
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/Text.h>
-#include <Poco/DOM/AutoPtr.h> 
-#include <Poco/DOM/DOMWriter.h>
-#include <Poco/XML/XMLWriter.h>
-#include <sstream>
-
-using namespace Mantid::Kernel;
-
-namespace Mantid{
-  namespace Geometry{
-
-
-    //----------------------------------------------------------------
-Logger& MDGeometry::g_log=Kernel::Logger::get("MDWorkspaces");
-
-void
-MDGeometry::setRanges(MDGeometryDescription const &trf)
-{
-      unsigned int i;
-      unsigned int n_new_dims=trf.getNumDims();
-      boost::shared_ptr<MDDimension> pDim;
-      if(n_new_dims>m_basis.getNumDims()){
-        g_log.error()<<" MDGeometry::setRanges transformation sets more ranges then already defined\n";
-        throw(std::invalid_argument("Geometry::setRanges: Attempting to set more dimensions then are currently defined "));
-      }
-
-      std::vector<std::string> tag=trf.getDimensionsTags();
-
-      // let's analyse the dimensions, which were mentioned in transformation matrix and set the ranges of these dimensions 
-      // as requested
-      for(i=0;i<n_new_dims;i++){
-
-        pDim=this->getDimension(tag[i]);
-		DimensionDescription* descr = trf.pDimDescription(i);
-        pDim->initialize(*descr);
-
-      }
-      this->n_expanded_dim=0;
-      for(i=0;i<m_basis.getNumDims();i++){
-        pDim=this->getDimension(i);
-        if(!pDim->getIntegrated()){
-          this->n_expanded_dim++;
-        }
-      }
-  
-
-}
-std::vector<boost::shared_ptr<IMDDimension> > 
-MDGeometry::getDimensions(bool sort_by_bais)const
-{
-    unsigned int i;
-	std::vector<boost::shared_ptr<IMDDimension> > dims(this->getNumDims());
-
-    if(sort_by_bais){ // sort by basis;
-       std::vector<std::string> dimID = this->getBasisTags();
-       std::map<std::string,boost::shared_ptr<MDDimension> >::const_iterator it;
-
-	    for(i=0;i<this->getNumDims();i++){
-            it = dimensions_map.find(dimID[i]);
-            if(it == dimensions_map.end()){
-                 g_log.error()<<" MDGeometry::getDimensions: dimension with tag: "<<dimID[i]<<" does not exist in current geometry\n";
-                 throw(std::logic_error("Geometry::getDimension: wrong dimension tag"));
-            }
-      
-            dims[i] = it->second; 
-	    }
-    }else{ // sort by geometry
-	    for(i=0;i<this->getNumDims();i++){
-		    dims[i] = theDimension[i];
-	    }
-    }
-	return dims;
-
-}
-    //
-void 
-MDGeometry::initialize(const MDGeometryDescription &trf)
-{
-    std::vector<std::string> dimID = trf.getDimensionsTags();
-    this->initialize(dimID);
-    this->setRanges(trf);
-    this->arrangeDimensionsProperly(dimID);
-//TODO:
-  /*
-  // all reciprocal dimensions may have new coordinates in the WorkspaceGeometry coordinate system, so these coordinates have to 
-  // be set properly;
-  Dimension *pDim;
-  DimensionsID id;
-  for(i=0;i<3;i++){
-  id=DimensionsID(i);
-  // get nDim and cycle if this dim does not exist
-  if(getDimRefNum(id,true)<0)continue;
-
-  // get a reciprocal dimension with proper ID
-  pDim = this->getDimension(id);
-  // and set its coordinate from the transformation matrix;
-  pDim->setCoord(trf.getCoord(id));
-  }
-  */
-}
-
-    //
-void 
-MDGeometry::initialize(const std::vector<std::string> &DimensionTags)
-{
-
-
-  bool congruent_geometries(true);
-
-
-
-  // are the old geometry congruent to the new geometry? e.g the same nuber of dimensions and the same dimension tags;
-  if(DimensionTags.size()!=m_basis.getNumDims()){
-    congruent_geometries=false;
-  }else{
-    congruent_geometries=m_basis.checkIdCompartibility(DimensionTags);
-  }
-
-  if(!congruent_geometries){
-    g_log.error()<<"builing geometry with the basis different from the current geometry is prohibited\n";
-    throw(std::invalid_argument("builing geometry with the basis different from the current geometry is prohibited"));
-    // m_basis( = .initializeBasis(DimensionTags,nReciprocalDims);
-
-    //// clear old dimensions if any
-    //for(i=0;i<this->theDimension.size();i++){
-    //  if(this->theDimension[i]){
-    //    delete this->theDimension[i];
-    //    theDimension[i]=NULL;
-    //  }
-    //}
-    //this->init_empty_dimensions();
-  }else{
-    this->arrangeDimensionsProperly(DimensionTags);
-  }
-
-}
-//
-void 
-MDGeometry::arrangeDimensionsProperly(const std::vector<std::string> &tags)
-{
-  unsigned int n_new_dims=tags.size();
-  unsigned int i;
-
-  if(n_new_dims>m_basis.getNumDims()){
-    g_log.error()<<"Geometry::arrangeDimensionsProperly: Attempting to arrange more dimensions then are currently defined \n";
-    throw(std::invalid_argument("Geometry::arrangeDimensionsProperly: Attempting to arrange more dimensions then are currently defined "));
-  }
-
-
-  // array to keep final expanded dimensions
-  std::vector<boost::shared_ptr<MDDimension> > pExpandedDims(m_basis.getNumDims());    
-  // array to keep final collapsed dimensions which sould be placed after expanded
-  std::vector<boost::shared_ptr<MDDimension> > pCollapsedDims(m_basis.getNumDims());  
-  // array to keep thd initial dimensions which were not mentioned in transformation
-  std::vector<boost::shared_ptr<MDDimension> > pCurrentDims(this->theDimension);  
-
-
-  unsigned int n_expanded_dimensions(0),n_collapsed_dimensions(0);
-
-  boost::shared_ptr<MDDimension> pDim;
-  std::map<std::string,boost::shared_ptr<MDDimension> >::iterator it;
-
-  // let's sort dimensions as requested by the list of tags
-  for(i=0;i<n_new_dims;i++){
-
-    // when dimension num we want to use next
-    it = dimensions_map.find(tags[i]);
-    if(it==dimensions_map.end()){
-      g_log.error()<<" The dimension with tag "<<tags[i]<<" does not belong to current geometry\n";
-      throw(std::invalid_argument("Geometry::arrangeDimensionsProperly: new dimension requested but this function can not add new dimensions"));
-    }
-    // get the dimension itself
-    pDim     = it->second;
-    // clear map for future usage;
-    dimensions_map.erase(it);
-
-    // set range according to request;
-    if(pDim->getIntegrated()){ // this is collapsed dimension;
-      pCollapsedDims[n_collapsed_dimensions]=pDim;
-      n_collapsed_dimensions++;
-    }else{
-      pExpandedDims[n_expanded_dimensions]  =pDim;
-      n_expanded_dimensions++;
-    }
-
-  }
-  // deal with the dimensions, which were not menshioned in the transformation request
-  for(it=dimensions_map.begin();it!=dimensions_map.end();it++){
-    pDim = it->second;
-
-    if(pDim->getIntegrated()){ // this is collapsed dimension;
-      pCollapsedDims[n_collapsed_dimensions]=pDim;
-      n_collapsed_dimensions++;
-    }else{
-      pExpandedDims[n_expanded_dimensions]  =pDim;
-      n_expanded_dimensions++;
-    }
-  }
-  // invalidate map which is not nedded any more;
-  dimensions_map.clear();
-
-  this->n_expanded_dim=n_expanded_dimensions;
-  // total number of dimensions should not change;
-  if(n_expanded_dimensions+n_collapsed_dimensions!=m_basis.getNumDims()){
-    g_log.error()<<"Geometry::arrangeDimensionsProperly: Dimensions: n_expanded+n_collapsed!= nTotal; serious logical error";
-    throw(Exception::NotImplementedError("Geometry::arrangeDimensionsProperly: Dimensions: n_expanded+n_collapsed!= nTotal; serious logical error"));
-  }
-
-  size_t dimension_stride=1;
-  // deal with expanded dimensions
-  for(i=0;i<this->n_expanded_dim;i++){
-    pDim  = pExpandedDims[i];
-
-    // store the dimension in the vector and the map
-    this->theDimension[i]=pDim;
-    dimensions_map[pDim->getDimensionTag()]=pDim;
-
-    // set integral dimensions characteristics;
-    this->theDimension[i]->setStride(dimension_stride); 
-    dimension_stride     *= this->theDimension[i]->getNBins();
-
-  }
-  nGeometrySize = dimension_stride;
-
-  // now with collapsed dimensions;
-  unsigned int ind(n_expanded_dim);
-  for(i=0;i<n_collapsed_dimensions;i++){
-    pDim  = pCollapsedDims[i];
-
-    this->theDimension[ind+i]=pDim;
-    dimensions_map[pDim->getDimensionTag()]=pDim;
-
-    this->theDimension[ind+i]->setStride(0);
-  }
-
-}
-//
-    boost::shared_ptr<IMDDimension>
-      MDGeometry::getYDimension(void)const
-    {
-      if(m_basis.getNumDims()<2){
-        throw(std::invalid_argument("No Y dimension is defined in this workspace"));
-      }
-      return theDimension[1];
-    }
-    //
-    boost::shared_ptr<IMDDimension> 
-      MDGeometry::getZDimension(void)const
-    {
-      if(m_basis.getNumDims()<3){
-        throw(std::invalid_argument("No Z dimension is defined in this workspace"));
-      }
-      return theDimension[2];
-    }
-    //
-    boost::shared_ptr<IMDDimension>
-      MDGeometry::getTDimension(void)const
-    {
-      if(m_basis.getNumDims()<4){
-        throw(std::invalid_argument("No T dimension is defined in this workspace"));
-      }
-      return theDimension[3];
-    }
-    //
-    std::vector<boost::shared_ptr<IMDDimension> >
-    MDGeometry::getIntegratedDimensions(void)const
-    {
-      std::vector<boost::shared_ptr<IMDDimension> > tmp;
-
-      if(this->n_expanded_dim<m_basis.getNumDims()){
-        unsigned int size = m_basis.getNumDims()-this->n_expanded_dim;
-		tmp.resize(size);
-		unsigned int ic(0);
-		for(unsigned int i = this->n_expanded_dim;i<theDimension.size();i++){
-			tmp[ic] = theDimension[i];
-			ic++;
-		}
-      }
-      return tmp;
-    }
-
-// now protected;
-boost::shared_ptr<MDDimension>
-MDGeometry::getDimension(unsigned int i)
-    {
-	  
-      if(i>=m_basis.getNumDims()){
-        g_log.error()<<"Geometry::getDimension: attemting to get the dimension N"<<i<<" but this is out of the dimensions range";
-        throw(std::out_of_range("Geometry::getDimension: attemting to get the dimension with non-existing number"));
-      }
-      return theDimension[i];
-}
-//
-boost::shared_ptr<const IMDDimension>
-MDGeometry::get_constDimension(unsigned int i)const
-    {
-	  
-      if(i>=m_basis.getNumDims()){
-        g_log.error()<<"Geometry::getDimension: attemting to get the dimension N"<<i<<" but this is out of the dimensions range";
-        throw(std::out_of_range("Geometry::getDimension: attemting to get the dimension with non-existing number"));
-      }
-      return theDimension[i];
-}
-
-// now protected;
-boost::shared_ptr<MDDimension>
-MDGeometry::getDimension(const std::string &tag,bool do_throw)
-{
-  boost::shared_ptr<MDDimension> pDim;
-  std::map<std::string,boost::shared_ptr<MDDimension> >::const_iterator it;
-  it = dimensions_map.find(tag);
-  if(it == dimensions_map.end()){
-    if(do_throw){
-      g_log.error()<<" MDGeometry::getDimension: dimension with tag: "<<tag<<" does not exist in current geometry\n";
-      throw(std::invalid_argument("Geometry::getDimension: wrong dimension tag"));
-    }else{
-		return pDim;
-	}
-  }
-  pDim = it->second;
-
-  return pDim;
-}
-
-boost::shared_ptr<const IMDDimension>
-MDGeometry::get_constDimension(const std::string &tag,bool do_throw)const
-{
-      boost::shared_ptr<IMDDimension> pDim;
-      std::map<std::string,boost::shared_ptr<MDDimension> >::const_iterator it;
-      it = dimensions_map.find(tag);
-      if(it == dimensions_map.end()){
-        if(do_throw){
-          g_log.error()<<" MDGeometry::getDimension: dimension with tag: "<<tag<<" does not exist in current geometry\n";
-          throw(std::invalid_argument("Geometry::getDimension: wrong dimension tag"));
-        }else{
-			return pDim;
-		}
-      }
-      pDim = it->second;
-
-      return pDim;
-}
-
-MDGeometry::MDGeometry(const MDGeometryBasis &basis, const MDGeometryDescription &description):
-n_expanded_dim(0), nGeometrySize(0), m_basis(basis)
-{
-  this->theDimension.resize(basis.getNumDims());
-  this->init_empty_dimensions();
-  // arrange dimensions in accordence with the descriptions and sets dimension ranges
-  this->initialize(description);
-}
-
-MDGeometry::MDGeometry(const MDGeometryBasis &basis) :
-n_expanded_dim(0), nGeometrySize(0), m_basis(basis)
-{
-  this->theDimension.resize(basis.getNumDims());
-  this->init_empty_dimensions();
-}
-
-
-std::string MDGeometry::toXMLString() const
-{
-  using namespace Poco::XML;
-
-  //Create the root element for this fragment.
-  AutoPtr<Document> pDoc = new Document;
-  AutoPtr<Element> dimensionSetElement = pDoc->createElement("DimensionSet");
-  pDoc->appendChild(dimensionSetElement);
-
-  //Loop through dimensions and generate xml for each.
-  std::string dimensionXMLString;
-  for(size_t i = 0; i <this->theDimension.size(); i++)
-  {
-    dimensionXMLString += theDimension[i]->toXMLString();
-  }
-
-  //Pass dimensions to dimension set.
-  dimensionSetElement->appendChild(pDoc->createTextNode("%s"));
-
-  //x-dimension mapping.
-  AutoPtr<Element> xDimensionElement = pDoc->createElement("XDimension");
-  AutoPtr<Element> xDimensionIdElement = pDoc->createElement("RefDimensionId");
-  std::string xDimensionId = this->getXDimension()->getDimensionId();
-  AutoPtr<Text> idXText = pDoc->createTextNode(xDimensionId);
-  xDimensionIdElement->appendChild(idXText);
-  xDimensionElement->appendChild(xDimensionIdElement);
-  dimensionSetElement->appendChild(xDimensionElement);
-
-  //y-dimension mapping.
-  AutoPtr<Element> yDimensionElement = pDoc->createElement("YDimension");
-  AutoPtr<Element> yDimensionIdElement = pDoc->createElement("RefDimensionId");
-  std::string yDimensionId = this->getYDimension()->getDimensionId();
-  AutoPtr<Text> idYText = pDoc->createTextNode(yDimensionId);
-  yDimensionIdElement->appendChild(idYText);
-  yDimensionElement->appendChild(yDimensionIdElement);
-  dimensionSetElement->appendChild(yDimensionElement);
-
-  //z-dimension mapping.
-  AutoPtr<Element> zDimensionElement = pDoc->createElement("ZDimension");
-  AutoPtr<Element> zDimensionIdElement = pDoc->createElement("RefDimensionId");
-  std::string zDimensionId = this->getZDimension()->getDimensionId();
-  AutoPtr<Text> idZText = pDoc->createTextNode(zDimensionId);
-  zDimensionIdElement->appendChild(idZText);
-  zDimensionElement->appendChild(zDimensionIdElement);
-  dimensionSetElement->appendChild(zDimensionElement);
-
-   //t-dimension mapping.
-  AutoPtr<Element> tDimensionElement = pDoc->createElement("TDimension");
-  AutoPtr<Element> tDimensionIdElement = pDoc->createElement("RefDimensionId");
-  std::string tDimensionId = this->getTDimension()->getDimensionId();
-  AutoPtr<Text> idTText = pDoc->createTextNode(tDimensionId);
-  tDimensionIdElement->appendChild(idTText);
-  tDimensionElement->appendChild(tDimensionIdElement);
-  dimensionSetElement->appendChild(tDimensionElement);
-
-  std::stringstream xmlstream;
-  DOMWriter writer;
-  writer.writeNode(xmlstream, pDoc);
-
-  std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str()) % dimensionXMLString.c_str());
-  return formattedXMLString;
-}
-
-
-
-    
-void 
-MDGeometry::init_empty_dimensions()
- {
-   std::set<MDBasisDimension> recID=this->m_basis.getReciprocalDimensions();
-   std::set<MDBasisDimension> nonRecID=this->m_basis.getNonReciprocalDimensions();
-   
-   std::set<MDBasisDimension>::iterator it;
-   
-   unsigned int nRec_count(0),i(0);
-   dimensions_map.clear();
-   std::string tag;
-
-  
-   for(it=recID.begin();it!=recID.end();++it){
-      tag = it->getId();
-      this->theDimension[i] = boost::shared_ptr<MDDimension>(new MDDimensionRes(tag,(rec_dim)nRec_count));
-       nRec_count++;
-      // initiate map to search dimensions by names
-      dimensions_map[tag]=this->theDimension[i];
-      i++;
-   }
-    for(it=nonRecID.begin();it!=nonRecID.end();++it){
-      tag = it->getId();
-      this->theDimension[i] = boost::shared_ptr<MDDimension>(new MDDimension(tag));
-
-      // initiate map to search dimensions by names
-      dimensions_map[tag]=this->theDimension[i];
-      i++;
-   }
-     // all dimensions initiated by default constructor are integrated;
-    this->n_expanded_dim=0;
-	this->nGeometrySize =0;
-
-}
-
-MDGeometry::~MDGeometry(void)
-{
-}
-
-std::vector<std::string> 
-MDGeometry::getBasisTags(void)const 
-{
-  std::vector<std::string> tags(this->m_basis.getNumDims()); 
-  std::set<MDBasisDimension> basisDimensions = this->m_basis.getBasisDimensions(); 
-  std::set<MDBasisDimension>::const_iterator it = basisDimensions.begin();
-  for(;it != basisDimensions.end(); ++it)
-  {  
-    int i=  it->getColumnNumber();
-    tags[i] = it->getId();
-  }
-  return tags;
-}
-
-} // end namespaces;
-}
+//#include "MDDataObjects/stdafx.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include <boost/functional/hash.hpp>
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/Text.h>
+#include <Poco/DOM/AutoPtr.h> 
+#include <Poco/DOM/DOMWriter.h>
+#include <Poco/XML/XMLWriter.h>
+#include <sstream>
+
+using namespace Mantid::Kernel;
+
+namespace Mantid{
+  namespace Geometry{
+
+
+    //----------------------------------------------------------------
+Logger& MDGeometry::g_log=Kernel::Logger::get("MDWorkspaces");
+
+void
+MDGeometry::setRanges(MDGeometryDescription const &trf)
+{
+      unsigned int i;
+      unsigned int n_new_dims=trf.getNumDims();
+      boost::shared_ptr<MDDimension> pDim;
+      if(n_new_dims>m_basis.getNumDims()){
+        g_log.error()<<" MDGeometry::setRanges transformation sets more ranges then already defined\n";
+        throw(std::invalid_argument("Geometry::setRanges: Attempting to set more dimensions then are currently defined "));
+      }
+
+      std::vector<std::string> tag=trf.getDimensionsTags();
+
+      // let's analyse the dimensions, which were mentioned in transformation matrix and set the ranges of these dimensions 
+      // as requested
+      for(i=0;i<n_new_dims;i++){
+
+        pDim=this->getDimension(tag[i]);
+		DimensionDescription* descr = trf.pDimDescription(i);
+        pDim->initialize(*descr);
+
+      }
+      this->n_expanded_dim=0;
+      for(i=0;i<m_basis.getNumDims();i++){
+        pDim=this->getDimension(i);
+        if(!pDim->getIntegrated()){
+          this->n_expanded_dim++;
+        }
+      }
+  
+
+}
+std::vector<boost::shared_ptr<IMDDimension> > 
+MDGeometry::getDimensions(bool sort_by_bais)const
+{
+    unsigned int i;
+	std::vector<boost::shared_ptr<IMDDimension> > dims(this->getNumDims());
+
+    if(sort_by_bais){ // sort by basis;
+       std::vector<std::string> dimID = this->getBasisTags();
+       std::map<std::string,boost::shared_ptr<MDDimension> >::const_iterator it;
+
+	    for(i=0;i<this->getNumDims();i++){
+            it = dimensions_map.find(dimID[i]);
+            if(it == dimensions_map.end()){
+                 g_log.error()<<" MDGeometry::getDimensions: dimension with tag: "<<dimID[i]<<" does not exist in current geometry\n";
+                 throw(std::logic_error("Geometry::getDimension: wrong dimension tag"));
+            }
+      
+            dims[i] = it->second; 
+	    }
+    }else{ // sort by geometry
+	    for(i=0;i<this->getNumDims();i++){
+		    dims[i] = theDimension[i];
+	    }
+    }
+	return dims;
+
+}
+    //
+void 
+MDGeometry::initialize(const MDGeometryDescription &trf)
+{
+    std::vector<std::string> dimID = trf.getDimensionsTags();
+    this->initialize(dimID);
+    this->setRanges(trf);
+    this->arrangeDimensionsProperly(dimID);
+//TODO:
+  /*
+  // all reciprocal dimensions may have new coordinates in the WorkspaceGeometry coordinate system, so these coordinates have to 
+  // be set properly;
+  Dimension *pDim;
+  DimensionsID id;
+  for(i=0;i<3;i++){
+  id=DimensionsID(i);
+  // get nDim and cycle if this dim does not exist
+  if(getDimRefNum(id,true)<0)continue;
+
+  // get a reciprocal dimension with proper ID
+  pDim = this->getDimension(id);
+  // and set its coordinate from the transformation matrix;
+  pDim->setCoord(trf.getCoord(id));
+  }
+  */
+}
+
+    //
+void 
+MDGeometry::initialize(const std::vector<std::string> &DimensionTags)
+{
+
+
+  bool congruent_geometries(true);
+
+
+
+  // are the old geometry congruent to the new geometry? e.g the same nuber of dimensions and the same dimension tags;
+  if(DimensionTags.size()!=m_basis.getNumDims()){
+    congruent_geometries=false;
+  }else{
+    congruent_geometries=m_basis.checkIdCompartibility(DimensionTags);
+  }
+
+  if(!congruent_geometries){
+    g_log.error()<<"builing geometry with the basis different from the current geometry is prohibited\n";
+    throw(std::invalid_argument("builing geometry with the basis different from the current geometry is prohibited"));
+    // m_basis( = .initializeBasis(DimensionTags,nReciprocalDims);
+
+    //// clear old dimensions if any
+    //for(i=0;i<this->theDimension.size();i++){
+    //  if(this->theDimension[i]){
+    //    delete this->theDimension[i];
+    //    theDimension[i]=NULL;
+    //  }
+    //}
+    //this->init_empty_dimensions();
+  }else{
+    this->arrangeDimensionsProperly(DimensionTags);
+  }
+
+}
+//
+void 
+MDGeometry::arrangeDimensionsProperly(const std::vector<std::string> &tags)
+{
+  unsigned int n_new_dims=tags.size();
+  unsigned int i;
+
+  if(n_new_dims>m_basis.getNumDims()){
+    g_log.error()<<"Geometry::arrangeDimensionsProperly: Attempting to arrange more dimensions then are currently defined \n";
+    throw(std::invalid_argument("Geometry::arrangeDimensionsProperly: Attempting to arrange more dimensions then are currently defined "));
+  }
+
+
+  // array to keep final expanded dimensions
+  std::vector<boost::shared_ptr<MDDimension> > pExpandedDims(m_basis.getNumDims());    
+  // array to keep final collapsed dimensions which sould be placed after expanded
+  std::vector<boost::shared_ptr<MDDimension> > pCollapsedDims(m_basis.getNumDims());  
+  // array to keep thd initial dimensions which were not mentioned in transformation
+  std::vector<boost::shared_ptr<MDDimension> > pCurrentDims(this->theDimension);  
+
+
+  unsigned int n_expanded_dimensions(0),n_collapsed_dimensions(0);
+
+  boost::shared_ptr<MDDimension> pDim;
+  std::map<std::string,boost::shared_ptr<MDDimension> >::iterator it;
+
+  // let's sort dimensions as requested by the list of tags
+  for(i=0;i<n_new_dims;i++){
+
+    // when dimension num we want to use next
+    it = dimensions_map.find(tags[i]);
+    if(it==dimensions_map.end()){
+      g_log.error()<<" The dimension with tag "<<tags[i]<<" does not belong to current geometry\n";
+      throw(std::invalid_argument("Geometry::arrangeDimensionsProperly: new dimension requested but this function can not add new dimensions"));
+    }
+    // get the dimension itself
+    pDim     = it->second;
+    // clear map for future usage;
+    dimensions_map.erase(it);
+
+    // set range according to request;
+    if(pDim->getIntegrated()){ // this is collapsed dimension;
+      pCollapsedDims[n_collapsed_dimensions]=pDim;
+      n_collapsed_dimensions++;
+    }else{
+      pExpandedDims[n_expanded_dimensions]  =pDim;
+      n_expanded_dimensions++;
+    }
+
+  }
+  // deal with the dimensions, which were not menshioned in the transformation request
+  for(it=dimensions_map.begin();it!=dimensions_map.end();it++){
+    pDim = it->second;
+
+    if(pDim->getIntegrated()){ // this is collapsed dimension;
+      pCollapsedDims[n_collapsed_dimensions]=pDim;
+      n_collapsed_dimensions++;
+    }else{
+      pExpandedDims[n_expanded_dimensions]  =pDim;
+      n_expanded_dimensions++;
+    }
+  }
+  // invalidate map which is not nedded any more;
+  dimensions_map.clear();
+
+  this->n_expanded_dim=n_expanded_dimensions;
+  // total number of dimensions should not change;
+  if(n_expanded_dimensions+n_collapsed_dimensions!=m_basis.getNumDims()){
+    g_log.error()<<"Geometry::arrangeDimensionsProperly: Dimensions: n_expanded+n_collapsed!= nTotal; serious logical error";
+    throw(Exception::NotImplementedError("Geometry::arrangeDimensionsProperly: Dimensions: n_expanded+n_collapsed!= nTotal; serious logical error"));
+  }
+
+  size_t dimension_stride=1;
+  // deal with expanded dimensions
+  for(i=0;i<this->n_expanded_dim;i++){
+    pDim  = pExpandedDims[i];
+
+    // store the dimension in the vector and the map
+    this->theDimension[i]=pDim;
+    dimensions_map[pDim->getDimensionTag()]=pDim;
+
+    // set integral dimensions characteristics;
+    this->theDimension[i]->setStride(dimension_stride); 
+    dimension_stride     *= this->theDimension[i]->getNBins();
+
+  }
+  nGeometrySize = dimension_stride;
+
+  // now with collapsed dimensions;
+  unsigned int ind(n_expanded_dim);
+  for(i=0;i<n_collapsed_dimensions;i++){
+    pDim  = pCollapsedDims[i];
+
+    this->theDimension[ind+i]=pDim;
+    dimensions_map[pDim->getDimensionTag()]=pDim;
+
+    this->theDimension[ind+i]->setStride(0);
+  }
+
+}
+//
+    boost::shared_ptr<IMDDimension>
+      MDGeometry::getYDimension(void)const
+    {
+      if(m_basis.getNumDims()<2){
+        throw(std::invalid_argument("No Y dimension is defined in this workspace"));
+      }
+      return theDimension[1];
+    }
+    //
+    boost::shared_ptr<IMDDimension> 
+      MDGeometry::getZDimension(void)const
+    {
+      if(m_basis.getNumDims()<3){
+        throw(std::invalid_argument("No Z dimension is defined in this workspace"));
+      }
+      return theDimension[2];
+    }
+    //
+    boost::shared_ptr<IMDDimension>
+      MDGeometry::getTDimension(void)const
+    {
+      if(m_basis.getNumDims()<4){
+        throw(std::invalid_argument("No T dimension is defined in this workspace"));
+      }
+      return theDimension[3];
+    }
+    //
+    std::vector<boost::shared_ptr<IMDDimension> >
+    MDGeometry::getIntegratedDimensions(void)const
+    {
+      std::vector<boost::shared_ptr<IMDDimension> > tmp;
+
+      if(this->n_expanded_dim<m_basis.getNumDims()){
+        unsigned int size = m_basis.getNumDims()-this->n_expanded_dim;
+		tmp.resize(size);
+		unsigned int ic(0);
+		for(unsigned int i = this->n_expanded_dim;i<theDimension.size();i++){
+			tmp[ic] = theDimension[i];
+			ic++;
+		}
+      }
+      return tmp;
+    }
+
+// now protected;
+boost::shared_ptr<MDDimension>
+MDGeometry::getDimension(unsigned int i)
+    {
+	  
+      if(i>=m_basis.getNumDims()){
+        g_log.error()<<"Geometry::getDimension: attemting to get the dimension N"<<i<<" but this is out of the dimensions range";
+        throw(std::out_of_range("Geometry::getDimension: attemting to get the dimension with non-existing number"));
+      }
+      return theDimension[i];
+}
+//
+boost::shared_ptr<const IMDDimension>
+MDGeometry::get_constDimension(unsigned int i)const
+    {
+	  
+      if(i>=m_basis.getNumDims()){
+        g_log.error()<<"Geometry::getDimension: attemting to get the dimension N"<<i<<" but this is out of the dimensions range";
+        throw(std::out_of_range("Geometry::getDimension: attemting to get the dimension with non-existing number"));
+      }
+      return theDimension[i];
+}
+
+// now protected;
+boost::shared_ptr<MDDimension>
+MDGeometry::getDimension(const std::string &tag,bool do_throw)
+{
+  boost::shared_ptr<MDDimension> pDim;
+  std::map<std::string,boost::shared_ptr<MDDimension> >::const_iterator it;
+  it = dimensions_map.find(tag);
+  if(it == dimensions_map.end()){
+    if(do_throw){
+      g_log.error()<<" MDGeometry::getDimension: dimension with tag: "<<tag<<" does not exist in current geometry\n";
+      throw(std::invalid_argument("Geometry::getDimension: wrong dimension tag"));
+    }else{
+		return pDim;
+	}
+  }
+  pDim = it->second;
+
+  return pDim;
+}
+
+boost::shared_ptr<const IMDDimension>
+MDGeometry::get_constDimension(const std::string &tag,bool do_throw)const
+{
+      boost::shared_ptr<IMDDimension> pDim;
+      std::map<std::string,boost::shared_ptr<MDDimension> >::const_iterator it;
+      it = dimensions_map.find(tag);
+      if(it == dimensions_map.end()){
+        if(do_throw){
+          g_log.error()<<" MDGeometry::getDimension: dimension with tag: "<<tag<<" does not exist in current geometry\n";
+          throw(std::invalid_argument("Geometry::getDimension: wrong dimension tag"));
+        }else{
+			return pDim;
+		}
+      }
+      pDim = it->second;
+
+      return pDim;
+}
+
+MDGeometry::MDGeometry(const MDGeometryBasis &basis, const MDGeometryDescription &description):
+n_expanded_dim(0), nGeometrySize(0), m_basis(basis)
+{
+  this->theDimension.resize(basis.getNumDims());
+  this->init_empty_dimensions();
+  // arrange dimensions in accordence with the descriptions and sets dimension ranges
+  this->initialize(description);
+}
+
+MDGeometry::MDGeometry(const MDGeometryBasis &basis) :
+n_expanded_dim(0), nGeometrySize(0), m_basis(basis)
+{
+  this->theDimension.resize(basis.getNumDims());
+  this->init_empty_dimensions();
+}
+
+
+std::string MDGeometry::toXMLString() const
+{
+  using namespace Poco::XML;
+
+  //Create the root element for this fragment.
+  AutoPtr<Document> pDoc = new Document;
+  AutoPtr<Element> dimensionSetElement = pDoc->createElement("DimensionSet");
+  pDoc->appendChild(dimensionSetElement);
+
+  //Loop through dimensions and generate xml for each.
+  std::string dimensionXMLString;
+  for(size_t i = 0; i <this->theDimension.size(); i++)
+  {
+    dimensionXMLString += theDimension[i]->toXMLString();
+  }
+
+  //Pass dimensions to dimension set.
+  dimensionSetElement->appendChild(pDoc->createTextNode("%s"));
+
+  //x-dimension mapping.
+  AutoPtr<Element> xDimensionElement = pDoc->createElement("XDimension");
+  AutoPtr<Element> xDimensionIdElement = pDoc->createElement("RefDimensionId");
+  std::string xDimensionId = this->getXDimension()->getDimensionId();
+  AutoPtr<Text> idXText = pDoc->createTextNode(xDimensionId);
+  xDimensionIdElement->appendChild(idXText);
+  xDimensionElement->appendChild(xDimensionIdElement);
+  dimensionSetElement->appendChild(xDimensionElement);
+
+  //y-dimension mapping.
+  AutoPtr<Element> yDimensionElement = pDoc->createElement("YDimension");
+  AutoPtr<Element> yDimensionIdElement = pDoc->createElement("RefDimensionId");
+  std::string yDimensionId = this->getYDimension()->getDimensionId();
+  AutoPtr<Text> idYText = pDoc->createTextNode(yDimensionId);
+  yDimensionIdElement->appendChild(idYText);
+  yDimensionElement->appendChild(yDimensionIdElement);
+  dimensionSetElement->appendChild(yDimensionElement);
+
+  //z-dimension mapping.
+  AutoPtr<Element> zDimensionElement = pDoc->createElement("ZDimension");
+  AutoPtr<Element> zDimensionIdElement = pDoc->createElement("RefDimensionId");
+  std::string zDimensionId = this->getZDimension()->getDimensionId();
+  AutoPtr<Text> idZText = pDoc->createTextNode(zDimensionId);
+  zDimensionIdElement->appendChild(idZText);
+  zDimensionElement->appendChild(zDimensionIdElement);
+  dimensionSetElement->appendChild(zDimensionElement);
+
+   //t-dimension mapping.
+  AutoPtr<Element> tDimensionElement = pDoc->createElement("TDimension");
+  AutoPtr<Element> tDimensionIdElement = pDoc->createElement("RefDimensionId");
+  std::string tDimensionId = this->getTDimension()->getDimensionId();
+  AutoPtr<Text> idTText = pDoc->createTextNode(tDimensionId);
+  tDimensionIdElement->appendChild(idTText);
+  tDimensionElement->appendChild(tDimensionIdElement);
+  dimensionSetElement->appendChild(tDimensionElement);
+
+  std::stringstream xmlstream;
+  DOMWriter writer;
+  writer.writeNode(xmlstream, pDoc);
+
+  std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str()) % dimensionXMLString.c_str());
+  return formattedXMLString;
+}
+
+
+
+    
+void 
+MDGeometry::init_empty_dimensions()
+ {
+   std::set<MDBasisDimension> recID=this->m_basis.getReciprocalDimensions();
+   std::set<MDBasisDimension> nonRecID=this->m_basis.getNonReciprocalDimensions();
+   
+   std::set<MDBasisDimension>::iterator it;
+   
+   unsigned int nRec_count(0),i(0);
+   dimensions_map.clear();
+   std::string tag;
+
+  
+   for(it=recID.begin();it!=recID.end();++it){
+      tag = it->getId();
+      this->theDimension[i] = boost::shared_ptr<MDDimension>(new MDDimensionRes(tag,(rec_dim)nRec_count));
+       nRec_count++;
+      // initiate map to search dimensions by names
+      dimensions_map[tag]=this->theDimension[i];
+      i++;
+   }
+    for(it=nonRecID.begin();it!=nonRecID.end();++it){
+      tag = it->getId();
+      this->theDimension[i] = boost::shared_ptr<MDDimension>(new MDDimension(tag));
+
+      // initiate map to search dimensions by names
+      dimensions_map[tag]=this->theDimension[i];
+      i++;
+   }
+     // all dimensions initiated by default constructor are integrated;
+    this->n_expanded_dim=0;
+	this->nGeometrySize =0;
+
+}
+
+MDGeometry::~MDGeometry(void)
+{
+}
+
+std::vector<std::string> 
+MDGeometry::getBasisTags(void)const 
+{
+  std::vector<std::string> tags(this->m_basis.getNumDims()); 
+  std::set<MDBasisDimension> basisDimensions = this->m_basis.getBasisDimensions(); 
+  std::set<MDBasisDimension>::const_iterator it = basisDimensions.begin();
+  for(;it != basisDimensions.end(); ++it)
+  {  
+    int i=  it->getColumnNumber();
+    tags[i] = it->getId();
+  }
+  return tags;
+}
+
+} // end namespaces;
+}
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryBasis.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryBasis.cpp
index e980c25e98bb5d858ca1605f50089097a0fe3b34..aeec6d665043fa391e47f8496bce187f89068a7d 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryBasis.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryBasis.cpp
@@ -1,135 +1,135 @@
-#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
-#include <algorithm>
-
-#include <boost/functional/hash.hpp>
-#include <sstream>
-
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-    using namespace Kernel;
-
-    Logger& MDGeometryBasis::g_log=Kernel::Logger::get("MDWorkspaces");
-//
-MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions, unsigned int nReciprocalDimensions) :
-  n_total_dim(nDimensions), n_reciprocal_dimensions(nReciprocalDimensions), m_mdBasisDimensions(), m_cell()
-{
-  this->check_nDims(n_total_dim, n_reciprocal_dimensions);
-  m_mdBasisDimensions.insert(MDBasisDimension("q0", true, 0));
-}
-//
-void
-MDGeometryBasis::init(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell)
-{
-	m_cell = cell;
-	m_mdBasisDimensions.clear();
-	m_mdBasisDimensions = mdBasisDimensions;
-    this->n_total_dim   = mdBasisDimensions.size();
-
-	this->n_reciprocal_dimensions = 0;
-    std::set<MDBasisDimension>::const_iterator it = mdBasisDimensions.begin();
-    for( ;it != mdBasisDimensions.end(); ++it){  
-        checkInputBasisDimensions(*(it)); // Check that duplicate column numbers have not been used.
-        // check if column number is smaller then the number of dimensions
-        if(it->getColumnNumber()>=this->n_total_dim){
-            g_log.error()<<" the number of the dimension with id: "<<it->getId()<<" is "<<it->getColumnNumber() <<" and it is higher then the number of dimensions\n";
-            throw(std::invalid_argument(" the dimension number is higher then total number of dimensions"));
-        }
-      if((*it).getIsReciprocal()){
-          n_reciprocal_dimensions++;
-        }
-	}
-    this->check_nDims(n_total_dim , n_reciprocal_dimensions);
-}
-
-MDGeometryBasis::MDGeometryBasis(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell)
-  : n_reciprocal_dimensions(0), m_mdBasisDimensions(mdBasisDimensions), m_cell(cell)
-{
-   this->init(mdBasisDimensions,cell);
-}
-
-    void MDGeometryBasis::checkInputBasisDimensions(const MDBasisDimension&  dimension)
-    {
-      std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.begin();
-      for( ;it != m_mdBasisDimensions.end(); ++it){
-        if(dimension != *it && it->getColumnNumber()==dimension.getColumnNumber())
-        {
-          //Record the error and throw.
-          g_log.error()<<" two duplicated column numbers found for dimensions id:"<<it->getId()<< " and Id"<<dimension.getId()<<std::endl; 
-          throw(std::logic_error("Cannot have duplicated column numbers"));
-        }
-      }
-    }
-
-    void 
-    MDGeometryBasis::check_nDims(unsigned int nDimensions,unsigned int nReciprocalDimensions)
-    {
-      if(nReciprocalDimensions<1||nReciprocalDimensions>3){
-        g_log.error()<<"MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions,unsigned int nReciprocalDimensions): number of reciprocal dimensions can vary from 1 to 3 but attempted "<<nReciprocalDimensions<<std::endl;
-        throw(std::invalid_argument("This constructor can not be used to buid low dimension datasets geometry"));
-      }
-      if(nDimensions>MAX_MD_DIMS_POSSIBLE||nDimensions<1){
-        g_log.error()<<"MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions,unsigned int nReciprocalDimensions): This constructor attempts to initiate wrong number of dimensions\n";
-        throw(std::invalid_argument("This constructor attempts to initiate more than allowed number of dimensions"));
-      }
-      if(nDimensions<nReciprocalDimensions){
-        g_log.error()<<"MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions,unsigned int nReciprocalDimensions): Attempting to initiate total dimensions less than reciprocal dimensions\n";
-        throw(std::invalid_argument("Number of reciprocal dimensions is bigger than the total number of dimensions"));
-      }
-    }
-    //
-    bool 
-      MDGeometryBasis::checkIdCompartibility(const std::vector<std::string> &newTags)const
-    {
-      for(unsigned int i=0;i<newTags.size();i++){
-
-        MDBasisDimension tDim(newTags[i],true,-1);
-        std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.find(tDim);
-        if(it==m_mdBasisDimensions.end()){
-          return false;
-        }
-      }
-      return true;
-    }
-
-    std::set<MDBasisDimension> MDGeometryBasis::getReciprocalDimensions() const
-    {
-      std::set<MDBasisDimension> reciprocalDims;
-      std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.begin();
-      for( ;it != m_mdBasisDimensions.end(); ++it)
-      {  
-        if((*it).getIsReciprocal())
-        {
-          reciprocalDims.insert((*it));
-        }
-      }
-      return reciprocalDims;
-    }
-
-    std::set<MDBasisDimension> MDGeometryBasis::getNonReciprocalDimensions() const
-    {
-      std::set<MDBasisDimension> nonReciprocalDims;
-      std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.begin();
-      for( ;it != m_mdBasisDimensions.end(); ++it)
-      {  
-        if(!(*it).getIsReciprocal())
-        {
-          nonReciprocalDims.insert((*it));
-        }
-      }
-      return nonReciprocalDims;
-    }
-
-    std::set<MDBasisDimension> MDGeometryBasis::getBasisDimensions() const
-    {
-      return  std::set<MDBasisDimension>(this->m_mdBasisDimensions);
-    }
-
-    MDGeometryBasis::~MDGeometryBasis(void)
-    {
-    }
-
-  }
-}
+#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
+#include <algorithm>
+
+#include <boost/functional/hash.hpp>
+#include <sstream>
+
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+    using namespace Kernel;
+
+    Logger& MDGeometryBasis::g_log=Kernel::Logger::get("MDWorkspaces");
+//
+MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions, unsigned int nReciprocalDimensions) :
+  n_total_dim(nDimensions), n_reciprocal_dimensions(nReciprocalDimensions), m_mdBasisDimensions(), m_cell()
+{
+  this->check_nDims(n_total_dim, n_reciprocal_dimensions);
+  m_mdBasisDimensions.insert(MDBasisDimension("q0", true, 0));
+}
+//
+void
+MDGeometryBasis::init(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell)
+{
+	m_cell = cell;
+	m_mdBasisDimensions.clear();
+	m_mdBasisDimensions = mdBasisDimensions;
+    this->n_total_dim   = mdBasisDimensions.size();
+
+	this->n_reciprocal_dimensions = 0;
+    std::set<MDBasisDimension>::const_iterator it = mdBasisDimensions.begin();
+    for( ;it != mdBasisDimensions.end(); ++it){  
+        checkInputBasisDimensions(*(it)); // Check that duplicate column numbers have not been used.
+        // check if column number is smaller then the number of dimensions
+        if(it->getColumnNumber()>=this->n_total_dim){
+            g_log.error()<<" the number of the dimension with id: "<<it->getId()<<" is "<<it->getColumnNumber() <<" and it is higher then the number of dimensions\n";
+            throw(std::invalid_argument(" the dimension number is higher then total number of dimensions"));
+        }
+      if((*it).getIsReciprocal()){
+          n_reciprocal_dimensions++;
+        }
+	}
+    this->check_nDims(n_total_dim , n_reciprocal_dimensions);
+}
+
+MDGeometryBasis::MDGeometryBasis(const std::set<MDBasisDimension>& mdBasisDimensions, const UnitCell &cell)
+  : n_reciprocal_dimensions(0), m_mdBasisDimensions(mdBasisDimensions), m_cell(cell)
+{
+   this->init(mdBasisDimensions,cell);
+}
+
+    void MDGeometryBasis::checkInputBasisDimensions(const MDBasisDimension&  dimension)
+    {
+      std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.begin();
+      for( ;it != m_mdBasisDimensions.end(); ++it){
+        if(dimension != *it && it->getColumnNumber()==dimension.getColumnNumber())
+        {
+          //Record the error and throw.
+          g_log.error()<<" two duplicated column numbers found for dimensions id:"<<it->getId()<< " and Id"<<dimension.getId()<<std::endl; 
+          throw(std::logic_error("Cannot have duplicated column numbers"));
+        }
+      }
+    }
+
+    void 
+    MDGeometryBasis::check_nDims(unsigned int nDimensions,unsigned int nReciprocalDimensions)
+    {
+      if(nReciprocalDimensions<1||nReciprocalDimensions>3){
+        g_log.error()<<"MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions,unsigned int nReciprocalDimensions): number of reciprocal dimensions can vary from 1 to 3 but attempted "<<nReciprocalDimensions<<std::endl;
+        throw(std::invalid_argument("This constructor can not be used to buid low dimension datasets geometry"));
+      }
+      if(nDimensions>MAX_MD_DIMS_POSSIBLE||nDimensions<1){
+        g_log.error()<<"MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions,unsigned int nReciprocalDimensions): This constructor attempts to initiate wrong number of dimensions\n";
+        throw(std::invalid_argument("This constructor attempts to initiate more than allowed number of dimensions"));
+      }
+      if(nDimensions<nReciprocalDimensions){
+        g_log.error()<<"MDGeometryBasis::MDGeometryBasis(unsigned int nDimensions,unsigned int nReciprocalDimensions): Attempting to initiate total dimensions less than reciprocal dimensions\n";
+        throw(std::invalid_argument("Number of reciprocal dimensions is bigger than the total number of dimensions"));
+      }
+    }
+    //
+    bool 
+      MDGeometryBasis::checkIdCompartibility(const std::vector<std::string> &newTags)const
+    {
+      for(unsigned int i=0;i<newTags.size();i++){
+
+        MDBasisDimension tDim(newTags[i],true,-1);
+        std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.find(tDim);
+        if(it==m_mdBasisDimensions.end()){
+          return false;
+        }
+      }
+      return true;
+    }
+
+    std::set<MDBasisDimension> MDGeometryBasis::getReciprocalDimensions() const
+    {
+      std::set<MDBasisDimension> reciprocalDims;
+      std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.begin();
+      for( ;it != m_mdBasisDimensions.end(); ++it)
+      {  
+        if((*it).getIsReciprocal())
+        {
+          reciprocalDims.insert((*it));
+        }
+      }
+      return reciprocalDims;
+    }
+
+    std::set<MDBasisDimension> MDGeometryBasis::getNonReciprocalDimensions() const
+    {
+      std::set<MDBasisDimension> nonReciprocalDims;
+      std::set<MDBasisDimension>::const_iterator it = m_mdBasisDimensions.begin();
+      for( ;it != m_mdBasisDimensions.end(); ++it)
+      {  
+        if(!(*it).getIsReciprocal())
+        {
+          nonReciprocalDims.insert((*it));
+        }
+      }
+      return nonReciprocalDims;
+    }
+
+    std::set<MDBasisDimension> MDGeometryBasis::getBasisDimensions() const
+    {
+      return  std::set<MDBasisDimension>(this->m_mdBasisDimensions);
+    }
+
+    MDGeometryBasis::~MDGeometryBasis(void)
+    {
+    }
+
+  }
+}
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryDescription.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryDescription.cpp
index 5c51f013720f0dda8c5c1e9d4a2a519a3b789a9f..845b562f9ca5301ab1a4a3d38bf5d5c92971c69e 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryDescription.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDGeometryDescription.cpp
@@ -1,364 +1,364 @@
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include <algorithm>
-#include <float.h>
-#include <sstream>
-
-
-namespace Mantid{
-    namespace Geometry{
-
- // get reference to logger for MD workspaces
-    Kernel::Logger& MDGeometryDescription::g_log=Kernel::Logger::get("MDWorkspaces");
-
-    	
-//Helper Function object to find dimensions.
-struct findDimension
-{
-   const Dimension_sptr m_dimension;
-   findDimension(const Dimension_sptr dimension ): m_dimension( dimension ) 
-   { 
-   }
-   bool operator () (const boost::shared_ptr<IMDDimension> obj ) const{ //overloaded operator to check the condition.
-     return m_dimension->getDimensionId() == obj->getDimensionId();
-   }
-};
-
-        
-/// the function returns the rotation vector which allows to transform vector inumber i into the basis;
-std::vector<double> 
-MDGeometryDescription::setRotations(unsigned int i,const std::vector<double> basis[3])
-{
-// STUB  !!! 
-    this->check_index(i,"rotations");
-    if(i>2){
-        return std::vector<double>(1,1);
-    }
-
-    std::vector<double> tmp;
-    tmp.assign(3,0);
-    tmp[i]=1;
- 
-    rotations.assign(i*3+i,1);
-    return tmp;
-}
-
-/// this extracts the size and shape of the current DND object
-MDGeometryDescription::MDGeometryDescription(const MDGeometry &origin)
-{
-    this->build_from_geometry(origin);
-}
-
-
-MDGeometryDescription::MDGeometryDescription(const MDGeometryBasis &basis)
-{
-	std::set<MDBasisDimension> basisDims = basis.getBasisDimensions();
-	this->nDimensions           = 0 ;
-	this->nReciprocalDimensions = 0;
-	std::set<MDBasisDimension>::const_iterator it= basisDims.begin();
-	for(;it != basisDims.end();it++){
-		this->nDimensions++;
-		if(it->getIsReciprocal())this->nReciprocalDimensions++;
-	
-	}
-	// create default dimension descriptions;
-	this->data.resize(this->nDimensions);
-	unsigned int ic(0);
-	for(it= basisDims.begin();it != basisDims.end();it++){
-		this->data[ic].Tag = it->getId();
-		this->data[ic].isReciprocal = it->getIsReciprocal();
-
-		ic++;
-	}
-	// place dimension descriptions in the list of the descritions to the positions, specified by the basis;
-	int num;
-	for(it= basisDims.begin();it != basisDims.end();it++){
-		num = it->getColumnNumber();
-		this->setPAxis(num,it->getId());
-	}
-
-}
-
-MDGeometryDescription::MDGeometryDescription(
-      DimensionVec dimensions, 
-      Dimension_sptr dimensionX, 
-      Dimension_sptr dimensionY,  
-      Dimension_sptr dimensionZ, 
-      Dimension_sptr dimensiont,
-      RotationMatrix rotationMatrix
-)
-{
-  this->nDimensions = dimensions.size();
-  this->data.resize(dimensions.size());
-  this->rotations = rotationMatrix;
-  if(rotations.size() != 9)
-  {
-    throw std::logic_error("Nine components are required for a rotation matrix.");
-  }
-
-  //To get this to work with the rest of MDGeometeryDescription. have to order certain dimensions in a specific fashion.
-  DimensionVecIterator dimX = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensionX));
-  DimensionVecIterator dimY = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensionY));
-  DimensionVecIterator dimZ = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensionZ));
-  DimensionVecIterator dimT = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensiont));
-
-  //Check dimensions;
-  createDimensionDescription(*dimX, 0);
-  createDimensionDescription(*dimY, 1);
-  createDimensionDescription(*dimZ, 2);
-  createDimensionDescription(*dimT, 3);
-
-  //Now process dimension that are not already mapped.
-  DimensionVecIterator it = dimensions.begin();
-  int count = 4; // mappings take priority see above.
-  while(it != dimensions.end())
-  {
-    if((it != dimX) && (it != dimY) && ( it != dimZ) && (it != dimT))
-    {
-      createDimensionDescription(*it, count);
-      count++;
-    }
-    it++;
-  }
-}
-
-void MDGeometryDescription::createDimensionDescription(Dimension_sptr dimension, const int i)
-{
-  this->data[i].data_shift = 0;
-  this->data[i].cut_min = dimension->getMinimum();
-  this->data[i].cut_max = dimension->getMaximum()*(1+FLT_EPSILON);
-  this->data[i].nBins = dimension->getNBins();
-  this->data[i].AxisName  = dimension->getName();
-  this->data[i].isReciprocal = dimension->isReciprocal();
-//  this->data[i].data_scale = dimension->getScale();
-  this->data[i].Tag = dimension->getDimensionId();
-
-  //Handle reciprocal dimensions.
-  if(dimension->isReciprocal())
-  {
-	  this->data[i].direction = dimension->getDirection();
-        
-  }
-}
-
-//
-void
-MDGeometryDescription::build_from_geometry(const MDGeometry &origin)
-{
-
-
-    this->nDimensions             = origin.getNumDims();
-    this->nReciprocalDimensions   = origin.getNumReciprocalDims();
-    std::vector<boost::shared_ptr<IMDDimension> > Dims = origin.getDimensions(false);
-	
-    unsigned int i,nr(0);
-
-    DimensionDescription any;
-    this->data.assign(nDimensions,any);    
-
-    for(i=0;i<this->nDimensions;i++){
-		this->createDimensionDescription(Dims[i],i);
-    }
-    
- }
-//
-int 
-MDGeometryDescription::getTagNum(const std::string &Tag,bool do_throw)const{
-    int iTagNum=-1;
-    int ic(0);
-    it_const_data it;
-    for(it=data.begin();it!=data.end();it++){
-        if(it->Tag.compare(Tag)==0){
-          iTagNum=ic;
-          break;
-        }
-        ic++;
-    }
-    if(iTagNum<0 && do_throw){
-        g_log.error()<<" Tag "<<Tag<<" does not exist\n";
-        throw(std::invalid_argument(" The requested tag does not exist"));
-    }
-    return iTagNum;
-}
-size_t
-MDGeometryDescription::getImageSize()const
-{
-   size_t data_size = 1;
-   for(unsigned int i=0;i<nDimensions;i++){
-
-	   if( this->data[i].nBins>1 ){
-		   data_size*=this->data[i].nBins;
-	   }
-          
-   }
-	return data_size;
-}
-//****** SET *******************************************************************************
-//void 
-//MDGeometryDescription::renameTag(unsigned int num,const std::string &newID)
-//{
-//   this->check_index(num,"renameTag");
-//   this->data[num].Tag = newID;
-//}
-void 
-MDGeometryDescription::setPAxis(unsigned int i, const std::string &Tag) 
-{
-
-   this->check_index(i,"setPAxis");
-
-// move existing dimension structure, described by the tag into new position, described by the index i;
-   unsigned int ic(0),old_place_index;
-   
-   it_data it,old_place, new_place;
-   old_place = data.end();
-   for(it=data.begin();it!=old_place;it++){
-       if(it->Tag.compare(Tag)==0){
-            old_place      = it;
-            old_place_index= ic;
-            if(ic >i){
-              old_place_index=ic+1; // after insertion it will be one index higher
-              break;
-            }
-       }
-       if(ic == i){
-           new_place=it;
-          if(old_place!=data.end())break;
-       }
-       ic++;
-    }
-    if(old_place==data.end()){
-        g_log.error()<<" Tag "<<Tag<<" does not exist\n";
-        throw(std::invalid_argument(" The requested tag does not exist"));
-    }
-    if(new_place!=old_place){
-        data.insert(new_place,*old_place); //  this invalidates old iterators
-        old_place = data.begin()+old_place_index;
-        data.erase(old_place);
-    }
- 
-}
-
-
-bool
-MDGeometryDescription::isAxisNamePresent(unsigned int i)const
-{
-    this->check_index(i,"isAxisNamePresent");
-
-    if(this->data[i].AxisName.empty()){
-       return false;
-    }else{
-        return true;
-    }
-}
-
-std::vector<std::string> 
-MDGeometryDescription::getDimensionsTags(void)const
-{
-    std::vector<std::string> tags(this->nDimensions,"");
-
-    it_const_data it;
-    unsigned int ic(0);
-    for(it=this->data.begin();it!=data.end();it++){
-         tags[ic] = it->Tag;
-         ic++;
-    }
-    return tags;
-}
-
-
-MDGeometryDescription::MDGeometryDescription(unsigned int numDims,unsigned int numRecDims):
-nDimensions(numDims),
-nReciprocalDimensions(numRecDims)
-{
-    this->intit_default_slicing(nDimensions,nReciprocalDimensions);
-
-}
-
-void
-MDGeometryDescription::intit_default_slicing(unsigned int nDims,unsigned int nRecDims)
-{
-    if(nDims>MAX_MD_DIMS_POSSIBLE){
-        throw(std::invalid_argument("SlicingProperty::intit_default_slicing: attemting to init more dimension that it is actually possible "));
-    }
-    nDimensions          = nDims;
-    nReciprocalDimensions= nRecDims;
-
-
-    rotations.assign(9,0);
-    rotations[0]=rotations[4]=rotations[8]=1;
-
-    nDimensions=nDims;
-    
-    std::vector<std::string> def_tags;
-    
-    for(unsigned int i=0;i<nDims;i++){
-      std::stringstream buf;
-      if(i<nRecDims){
-        buf<<"q"<<i+1;
-      }else{
-        buf<<"u"<<i-nRecDims+1;
-      }
-      def_tags.push_back(buf.str());
-
-    }
-
-    unsigned int i;
-    DimensionDescription defaults;
-    defaults.data_shift=0;
-    defaults.cut_min =-1;
-    defaults.cut_max = 1;
-    defaults.nBins   = 1;
-    defaults.AxisName.assign("");
-
-
-    this->data.assign(nDimensions,defaults);
-    
-    for(i=0;i<nReciprocalDimensions;i++){ //
-		this->data[i].isReciprocal = true;
-		this->data[i].direction[i] = 1;
-    }
-  
-  
-    for(i=0;i<nDimensions;i++){
-      data[i].Tag =def_tags[i]; 
-      this->data[i].AxisName = def_tags[i]; //
-   }
-
-}
-void 
-MDGeometryDescription::setDirection(unsigned int i,const V3D &coord)
-{
-    this->check_index(i,"setDirection");
-    if(i<3){
-		this->data[i].direction =coord;
-    }else{
-         throw(std::invalid_argument("SlicingProperty::setDirection wrong parameter, index>=3 and attempting to set a coordinate of orthogonal dimension"));
- 
-    }
-}
-
-/*
-std::vector<double> 
-SlicingProperty::getCoord(DimensionsID id)const
-{
-    if(id>2){
-        throw(std::invalid_argument("SlicingProperty::getCoord attemt to get coordinate of non-reciprocal dimension"));
-    }
-    return this->coordinates[id];
-}
-
-*/
-MDGeometryDescription::~MDGeometryDescription(void)
-{
-}
-void 
-MDGeometryDescription::check_index(unsigned int i,const char *fName)const
-{
-    if(i>=this->nDimensions){
-        g_log.error()<<" index out of range for function: "<<fName<<std::endl;
-        g_log.error()<<" Allowed nDims: "<<this->nDimensions<<" and requested are: "<<i<<std::endl;
-        throw(std::invalid_argument("MDGeometryDescription: index out of range"));
-    }
-}
-
-} // Geometry
-} // Mantid
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include <algorithm>
+#include <float.h>
+#include <sstream>
+
+
+namespace Mantid{
+    namespace Geometry{
+
+ // get reference to logger for MD workspaces
+    Kernel::Logger& MDGeometryDescription::g_log=Kernel::Logger::get("MDWorkspaces");
+
+    	
+//Helper Function object to find dimensions.
+struct findDimension
+{
+   const Dimension_sptr m_dimension;
+   findDimension(const Dimension_sptr dimension ): m_dimension( dimension ) 
+   { 
+   }
+   bool operator () (const boost::shared_ptr<IMDDimension> obj ) const{ //overloaded operator to check the condition.
+     return m_dimension->getDimensionId() == obj->getDimensionId();
+   }
+};
+
+        
+/// the function returns the rotation vector which allows to transform vector inumber i into the basis;
+std::vector<double> 
+MDGeometryDescription::setRotations(unsigned int i,const std::vector<double> basis[3])
+{
+// STUB  !!! 
+    this->check_index(i,"rotations");
+    if(i>2){
+        return std::vector<double>(1,1);
+    }
+
+    std::vector<double> tmp;
+    tmp.assign(3,0);
+    tmp[i]=1;
+ 
+    rotations.assign(i*3+i,1);
+    return tmp;
+}
+
+/// this extracts the size and shape of the current DND object
+MDGeometryDescription::MDGeometryDescription(const MDGeometry &origin)
+{
+    this->build_from_geometry(origin);
+}
+
+
+MDGeometryDescription::MDGeometryDescription(const MDGeometryBasis &basis)
+{
+	std::set<MDBasisDimension> basisDims = basis.getBasisDimensions();
+	this->nDimensions           = 0 ;
+	this->nReciprocalDimensions = 0;
+	std::set<MDBasisDimension>::const_iterator it= basisDims.begin();
+	for(;it != basisDims.end();it++){
+		this->nDimensions++;
+		if(it->getIsReciprocal())this->nReciprocalDimensions++;
+	
+	}
+	// create default dimension descriptions;
+	this->data.resize(this->nDimensions);
+	unsigned int ic(0);
+	for(it= basisDims.begin();it != basisDims.end();it++){
+		this->data[ic].Tag = it->getId();
+		this->data[ic].isReciprocal = it->getIsReciprocal();
+
+		ic++;
+	}
+	// place dimension descriptions in the list of the descritions to the positions, specified by the basis;
+	int num;
+	for(it= basisDims.begin();it != basisDims.end();it++){
+		num = it->getColumnNumber();
+		this->setPAxis(num,it->getId());
+	}
+
+}
+
+MDGeometryDescription::MDGeometryDescription(
+      DimensionVec dimensions, 
+      Dimension_sptr dimensionX, 
+      Dimension_sptr dimensionY,  
+      Dimension_sptr dimensionZ, 
+      Dimension_sptr dimensiont,
+      RotationMatrix rotationMatrix
+)
+{
+  this->nDimensions = dimensions.size();
+  this->data.resize(dimensions.size());
+  this->rotations = rotationMatrix;
+  if(rotations.size() != 9)
+  {
+    throw std::logic_error("Nine components are required for a rotation matrix.");
+  }
+
+  //To get this to work with the rest of MDGeometeryDescription. have to order certain dimensions in a specific fashion.
+  DimensionVecIterator dimX = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensionX));
+  DimensionVecIterator dimY = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensionY));
+  DimensionVecIterator dimZ = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensionZ));
+  DimensionVecIterator dimT = find_if(dimensions.begin(), dimensions.end(), findDimension(dimensiont));
+
+  //Check dimensions;
+  createDimensionDescription(*dimX, 0);
+  createDimensionDescription(*dimY, 1);
+  createDimensionDescription(*dimZ, 2);
+  createDimensionDescription(*dimT, 3);
+
+  //Now process dimension that are not already mapped.
+  DimensionVecIterator it = dimensions.begin();
+  int count = 4; // mappings take priority see above.
+  while(it != dimensions.end())
+  {
+    if((it != dimX) && (it != dimY) && ( it != dimZ) && (it != dimT))
+    {
+      createDimensionDescription(*it, count);
+      count++;
+    }
+    it++;
+  }
+}
+
+void MDGeometryDescription::createDimensionDescription(Dimension_sptr dimension, const int i)
+{
+  this->data[i].data_shift = 0;
+  this->data[i].cut_min = dimension->getMinimum();
+  this->data[i].cut_max = dimension->getMaximum()*(1+FLT_EPSILON);
+  this->data[i].nBins = dimension->getNBins();
+  this->data[i].AxisName  = dimension->getName();
+  this->data[i].isReciprocal = dimension->isReciprocal();
+//  this->data[i].data_scale = dimension->getScale();
+  this->data[i].Tag = dimension->getDimensionId();
+
+  //Handle reciprocal dimensions.
+  if(dimension->isReciprocal())
+  {
+	  this->data[i].direction = dimension->getDirection();
+        
+  }
+}
+
+//
+void
+MDGeometryDescription::build_from_geometry(const MDGeometry &origin)
+{
+
+
+    this->nDimensions             = origin.getNumDims();
+    this->nReciprocalDimensions   = origin.getNumReciprocalDims();
+    std::vector<boost::shared_ptr<IMDDimension> > Dims = origin.getDimensions(false);
+	
+    unsigned int i,nr(0);
+
+    DimensionDescription any;
+    this->data.assign(nDimensions,any);    
+
+    for(i=0;i<this->nDimensions;i++){
+		this->createDimensionDescription(Dims[i],i);
+    }
+    
+ }
+//
+int 
+MDGeometryDescription::getTagNum(const std::string &Tag,bool do_throw)const{
+    int iTagNum=-1;
+    int ic(0);
+    it_const_data it;
+    for(it=data.begin();it!=data.end();it++){
+        if(it->Tag.compare(Tag)==0){
+          iTagNum=ic;
+          break;
+        }
+        ic++;
+    }
+    if(iTagNum<0 && do_throw){
+        g_log.error()<<" Tag "<<Tag<<" does not exist\n";
+        throw(std::invalid_argument(" The requested tag does not exist"));
+    }
+    return iTagNum;
+}
+size_t
+MDGeometryDescription::getImageSize()const
+{
+   size_t data_size = 1;
+   for(unsigned int i=0;i<nDimensions;i++){
+
+	   if( this->data[i].nBins>1 ){
+		   data_size*=this->data[i].nBins;
+	   }
+          
+   }
+	return data_size;
+}
+//****** SET *******************************************************************************
+//void 
+//MDGeometryDescription::renameTag(unsigned int num,const std::string &newID)
+//{
+//   this->check_index(num,"renameTag");
+//   this->data[num].Tag = newID;
+//}
+void 
+MDGeometryDescription::setPAxis(unsigned int i, const std::string &Tag) 
+{
+
+   this->check_index(i,"setPAxis");
+
+// move existing dimension structure, described by the tag into new position, described by the index i;
+   unsigned int ic(0),old_place_index;
+   
+   it_data it,old_place, new_place;
+   old_place = data.end();
+   for(it=data.begin();it!=old_place;it++){
+       if(it->Tag.compare(Tag)==0){
+            old_place      = it;
+            old_place_index= ic;
+            if(ic >i){
+              old_place_index=ic+1; // after insertion it will be one index higher
+              break;
+            }
+       }
+       if(ic == i){
+           new_place=it;
+          if(old_place!=data.end())break;
+       }
+       ic++;
+    }
+    if(old_place==data.end()){
+        g_log.error()<<" Tag "<<Tag<<" does not exist\n";
+        throw(std::invalid_argument(" The requested tag does not exist"));
+    }
+    if(new_place!=old_place){
+        data.insert(new_place,*old_place); //  this invalidates old iterators
+        old_place = data.begin()+old_place_index;
+        data.erase(old_place);
+    }
+ 
+}
+
+
+bool
+MDGeometryDescription::isAxisNamePresent(unsigned int i)const
+{
+    this->check_index(i,"isAxisNamePresent");
+
+    if(this->data[i].AxisName.empty()){
+       return false;
+    }else{
+        return true;
+    }
+}
+
+std::vector<std::string> 
+MDGeometryDescription::getDimensionsTags(void)const
+{
+    std::vector<std::string> tags(this->nDimensions,"");
+
+    it_const_data it;
+    unsigned int ic(0);
+    for(it=this->data.begin();it!=data.end();it++){
+         tags[ic] = it->Tag;
+         ic++;
+    }
+    return tags;
+}
+
+
+MDGeometryDescription::MDGeometryDescription(unsigned int numDims,unsigned int numRecDims):
+nDimensions(numDims),
+nReciprocalDimensions(numRecDims)
+{
+    this->intit_default_slicing(nDimensions,nReciprocalDimensions);
+
+}
+
+void
+MDGeometryDescription::intit_default_slicing(unsigned int nDims,unsigned int nRecDims)
+{
+    if(nDims>MAX_MD_DIMS_POSSIBLE){
+        throw(std::invalid_argument("SlicingProperty::intit_default_slicing: attemting to init more dimension that it is actually possible "));
+    }
+    nDimensions          = nDims;
+    nReciprocalDimensions= nRecDims;
+
+
+    rotations.assign(9,0);
+    rotations[0]=rotations[4]=rotations[8]=1;
+
+    nDimensions=nDims;
+    
+    std::vector<std::string> def_tags;
+    
+    for(unsigned int i=0;i<nDims;i++){
+      std::stringstream buf;
+      if(i<nRecDims){
+        buf<<"q"<<i+1;
+      }else{
+        buf<<"u"<<i-nRecDims+1;
+      }
+      def_tags.push_back(buf.str());
+
+    }
+
+    unsigned int i;
+    DimensionDescription defaults;
+    defaults.data_shift=0;
+    defaults.cut_min =-1;
+    defaults.cut_max = 1;
+    defaults.nBins   = 1;
+    defaults.AxisName.assign("");
+
+
+    this->data.assign(nDimensions,defaults);
+    
+    for(i=0;i<nReciprocalDimensions;i++){ //
+		this->data[i].isReciprocal = true;
+		this->data[i].direction[i] = 1;
+    }
+  
+  
+    for(i=0;i<nDimensions;i++){
+      data[i].Tag =def_tags[i]; 
+      this->data[i].AxisName = def_tags[i]; //
+   }
+
+}
+void 
+MDGeometryDescription::setDirection(unsigned int i,const V3D &coord)
+{
+    this->check_index(i,"setDirection");
+    if(i<3){
+		this->data[i].direction =coord;
+    }else{
+         throw(std::invalid_argument("SlicingProperty::setDirection wrong parameter, index>=3 and attempting to set a coordinate of orthogonal dimension"));
+ 
+    }
+}
+
+/*
+std::vector<double> 
+SlicingProperty::getCoord(DimensionsID id)const
+{
+    if(id>2){
+        throw(std::invalid_argument("SlicingProperty::getCoord attemt to get coordinate of non-reciprocal dimension"));
+    }
+    return this->coordinates[id];
+}
+
+*/
+MDGeometryDescription::~MDGeometryDescription(void)
+{
+}
+void 
+MDGeometryDescription::check_index(unsigned int i,const char *fName)const
+{
+    if(i>=this->nDimensions){
+        g_log.error()<<" index out of range for function: "<<fName<<std::endl;
+        g_log.error()<<" Allowed nDims: "<<this->nDimensions<<" and requested are: "<<i<<std::endl;
+        throw(std::invalid_argument("MDGeometryDescription: index out of range"));
+    }
+}
+
+} // Geometry
+} // Mantid
diff --git a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDPoint.cpp b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDPoint.cpp
index a997194414589efcb95babae234d995de1519071..993d671201c39367ddf44af6ed3aa33214a796a3 100644
--- a/Code/Mantid/Framework/Geometry/src/MDGeometry/MDPoint.cpp
+++ b/Code/Mantid/Framework/Geometry/src/MDGeometry/MDPoint.cpp
@@ -1,9 +1,9 @@
 #include "MantidGeometry/MDGeometry/MDPoint.h"
-
-namespace Mantid
-{
-  namespace Geometry
-  {
+
+namespace Mantid
+{
+  namespace Geometry
+  {
     MDPoint::MDPoint(double signal, double error,const std::vector<coordinate>& vertexes, IDetector_sptr detector, IInstrument_sptr instrument)
       : m_signal(signal),
         m_error(error),
@@ -18,34 +18,34 @@ namespace Mantid
         return this->m_vertexes;
       }
 
-      double MDPoint::getSignal() const
-      {
-        return this->m_signal;
-      }
-
-      double MDPoint::getError() const
-      {
-        return this->m_error;
-      }
-
-      IDetector_sptr MDPoint::getDetector() const
-      {
-        return this->m_detector;
-      }
-
-      IInstrument_sptr MDPoint::getInstrument() const
-      {
-        return this->m_instrument;
-      }
-
-      std::vector<boost::shared_ptr<MDPoint> > MDPoint::getContributingPoints() const
-      {
-        throw std::logic_error("A Point is indivisible, cannot have contributing Points to a Point.");
-      }
-
-      MDPoint::~MDPoint()
-      {
-      }
-
-  }
+      double MDPoint::getSignal() const
+      {
+        return this->m_signal;
+      }
+
+      double MDPoint::getError() const
+      {
+        return this->m_error;
+      }
+
+      IDetector_sptr MDPoint::getDetector() const
+      {
+        return this->m_detector;
+      }
+
+      IInstrument_sptr MDPoint::getInstrument() const
+      {
+        return this->m_instrument;
+      }
+
+      std::vector<boost::shared_ptr<MDPoint> > MDPoint::getContributingPoints() const
+      {
+        throw std::logic_error("A Point is indivisible, cannot have contributing Points to a Point.");
+      }
+
+      MDPoint::~MDPoint()
+      {
+      }
+
+  }
 }
diff --git a/Code/Mantid/Framework/Geometry/src/Objects/Object.cpp b/Code/Mantid/Framework/Geometry/src/Objects/Object.cpp
index ab162f1ad3b739cb6e96b4c13c1e3d3b5d5721bc..3e3ea7c9d3fc5842b1def16c1a8270b1545e3402 100644
--- a/Code/Mantid/Framework/Geometry/src/Objects/Object.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Objects/Object.cpp
@@ -1,1876 +1,1876 @@
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidKernel/Logger.h"
-#include "MantidKernel/Strings.h"
-#include "MantidKernel/Exception.h"
-#include "MantidGeometry/Objects/Rules.h"
-#include "MantidGeometry/Objects/Track.h"
-#include "MantidGeometry/Objects/BoundingBox.h"
-
-#include "MantidGeometry/Surfaces/Surface.h"
-#include "MantidGeometry/Surfaces/LineIntersectVisit.h"
-#include "MantidGeometry/Surfaces/Cylinder.h"
-#include "MantidGeometry/Surfaces/Cone.h"
-
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-#include "MantidGeometry/Rendering/CacheGeometryHandler.h"
-#include "MantidGeometry/Rendering/vtkGeometryCacheReader.h"
-#include "MantidGeometry/Rendering/vtkGeometryCacheWriter.h"
-#include "MantidKernel/RegexStrings.h"
-#include "MantidGeometry/Tolerance.h"
-#include <deque>
-#include <stack>
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-
-    Kernel::Logger& Object::PLog(Kernel::Logger::get("Object"));
-
-    /**
-    *  Default constuctor
-    */
-    Object::Object() :
-      ObjName(0), TopRule(0), m_boundingBox(), AABBxMax(0), AABByMax(0), AABBzMax(0),
-      AABBxMin(0), AABByMin(0), AABBzMin(0), boolBounded(false), bGeometryCaching(false),
-      vtkCacheReader(boost::shared_ptr<vtkGeometryCacheReader>()), vtkCacheWriter(boost::shared_ptr<
-      vtkGeometryCacheWriter>())
-    {
-      handle = boost::shared_ptr<GeometryHandler>(new CacheGeometryHandler(this));
-    }
-
-    /**
-     * Copy constructor
-     * @param A :: The object to initialise this copy from
-     */
-    Object::Object(const Object& A) :
-      ObjName(A.ObjName), TopRule((A.TopRule) ? A.TopRule->clone() : NULL), m_boundingBox(A.m_boundingBox),
-      AABBxMax(A.AABBxMax), AABByMax(A.AABByMax), AABBzMax(A.AABBzMax), AABBxMin(A.AABBxMin), 
-      AABByMin(A.AABByMin), AABBzMin(A.AABBzMin), boolBounded(A.boolBounded), 
-      bGeometryCaching(A.bGeometryCaching), vtkCacheReader(A.vtkCacheReader),
-      vtkCacheWriter(A.vtkCacheWriter)
-    {
-      handle = boost::shared_ptr<GeometryHandler>(new CacheGeometryHandler(this));
-
-      // Need to deep-copy the vector of pointers to surfaces
-      std::vector<const Surface*>::const_iterator vc;
-      for (vc = A.SurList.begin(); vc != A.SurList.end(); vc++)
-      {
-        SurList.push_back((*vc)->clone());
-      }
-    }
-
-    /**
-    * Assignment operator
-    * @param A :: Object to copy
-    * @return *this
-    */
-    Object& Object::operator=(const Object& A)
-    {
-      if (this != &A)
-      {
-        ObjName = A.ObjName;
-        delete TopRule;
-        TopRule = (A.TopRule) ? A.TopRule->clone() : 0;
-        AABBxMax = A.AABBxMax;
-        AABByMax = A.AABByMax;
-        AABBzMax = A.AABBzMax;
-        AABBxMin = A.AABBxMin;
-        AABByMin = A.AABByMin;
-        AABBzMin = A.AABBzMin;
-        boolBounded = A.boolBounded;
-        handle = A.handle;
-        bGeometryCaching = A.bGeometryCaching;
-        vtkCacheReader = A.vtkCacheReader;
-        vtkCacheWriter = A.vtkCacheWriter;
-
-        // Need to deep-copy the vector of pointers to surfaces
-        SurList.clear();
-        std::vector<const Surface*>::const_iterator vc;
-        for (vc = A.SurList.begin(); vc != A.SurList.end(); vc++)
-        {
-          SurList.push_back((*vc)->clone());
-        }
-      }
-      return *this;
-    }
-
-    /**
-     * Destructor
-     * Deletes the rule
-     */
-     Object::~Object()
-    {
-      delete TopRule;
-    }
-
-    /**
-     * Returns whether this object has a valid shape
-     * @returns True if the surface list is populated and there is a 
-     * defined TopRule, false otherwise.
-     */
-    bool Object::hasValidShape() const
-    {
-      // Assume invalid shape if object has no 'TopRule' or surfaces
-      return (TopRule != NULL && !SurList.empty());
-    }
-
-     /**
-     * Object line ==  cell
-     * @param ON :: Object name
-     * @param Ln :: Input string must be :  {rules}
-     * @returns 1 on success and zero on failure
-     */
-    int Object::setObject(const int ON, const std::string& Ln)
-    {
-      // Split line
-      std::string part;
-      const boost::regex letters("[a-zA-Z]"); // Does the string now contain junk...
-      if (Mantid::Kernel::Strings::StrLook(Ln, letters))
-        return 0;
-
-      if (procString(Ln)) // this currently does not fail:
-      {
-        SurList.clear();
-        ObjName = ON;
-        return 1;
-      }
-
-      // failure
-      return 0;
-    }
-
-    /**
-    * Returns just the cell string object
-    * @param MList :: List of indexable Hulls
-    * @return Cell String (from TopRule)
-    * @todo Break infinite recusion
-    */
-    void Object::convertComplement(const std::map<int, Object>& MList)
-
-    {
-      this->procString(this->cellStr(MList));
-      return;
-    }
-
-    /**
-    * Returns just the cell string object
-    * @param MList :: List of indexable Hulls
-    * @return Cell String (from TopRule)
-    * @todo Break infinite recusion
-    */
-    std::string Object::cellStr(const std::map<int, Object>& MList) const
-    {
-      std::string TopStr = this->topRule()->display();
-      std::string::size_type pos = TopStr.find('#');
-      std::ostringstream cx;
-      while (pos != std::string::npos)
-      {
-        pos++;
-        cx << TopStr.substr(0, pos); // Everything including the #
-        int cN(0);
-        const int nLen = Mantid::Kernel::Strings::convPartNum(TopStr.substr(pos), cN);
-        if (nLen > 0)
-        {
-          cx << "(";
-          std::map<int, Object>::const_iterator vc = MList.find(cN);
-          if (vc == MList.end())
-            throw Kernel::Exception::NotFoundError(
-            "Not found in the list of indexable hulls (Object::cellStr)", cN);
-          // Not the recusion :: This will cause no end of problems
-          // if there is an infinite loop.
-          cx << vc->second.cellStr(MList);
-          cx << ") ";
-          pos += nLen;
-        }
-        TopStr.erase(0, pos);
-        pos = TopStr.find('#');
-      }
-      cx << TopStr;
-      return cx.str();
-    }
-
-    /*
-     * Calcluate if there are any complementary components in
-     * the object. That is lines with #(....)
-     * @throw ColErr::ExBase :: Error with processing
-     * @param Ln :: Input string must:  ID Mat {Density}  {rules}
-     * @param Cnum :: Number for cell since we don't have one
-     * @retval 0 on no work to do
-     * @retval 1 :: A (maybe there are many) #(...) object found
-     */
-    int Object::complementaryObject(const int Cnum, std::string& Ln)
-    {
-      std::string::size_type posA = Ln.find("#(");
-      // No work to do ?
-      if (posA == std::string::npos)
-        return 0;
-      posA += 2;
-
-      // First get the area to be removed
-      int brackCnt;
-      std::string::size_type posB;
-      posB = Ln.find_first_of("()", posA);
-      if (posB == std::string::npos)
-        throw std::runtime_error("Object::complemenet :: " + Ln);
-
-      brackCnt = (Ln[posB] == '(') ? 1 : 0;
-      while (posB != std::string::npos && brackCnt)
-      {
-        posB = Ln.find_first_of("()", posB);
-        brackCnt += (Ln[posB] == '(') ? 1 : -1;
-        posB++;
-      }
-
-      std::string Part = Ln.substr(posA, posB - (posA + 1));
-
-      ObjName = Cnum;
-      if (procString(Part))
-      {
-        SurList.clear();
-        Ln.erase(posA - 1, posB + 1); //Delete brackets ( Part ) .
-        std::ostringstream CompCell;
-        CompCell << Cnum << " ";
-        Ln.insert(posA - 1, CompCell.str());
-        return 1;
-      }
-
-      throw std::runtime_error("Object::complemenet :: " + Part);
-      return 0;
-    }
-
-    /**
-     * Determine if the object has a complementary object
-     * @retval 1 :: true
-     * @retval 0 :: false
-     */
-    int Object::hasComplement() const
-    {
-
-      if (TopRule)
-        return TopRule->isComplementary();
-      return 0;
-    }
-
-    /**
-    * Goes through the cell objects and adds the pointers
-    * to the SurfPoint keys (using their keyN)
-    * @param Smap :: Map of surface Keys and Surface Pointers
-    * @retval 1000+ keyNumber :: Error with keyNumber
-    * @retval 0 :: successfully populated all the whole Object.
-    */
-    int Object::populate(const std::map<int, Surface*>& Smap)     
-    {
-      std::deque<Rule*> Rst;
-      Rst.push_back(TopRule);
-      Rule* TA, *TB; //Tmp. for storage
-
-      int Rcount(0);
-      while (Rst.size())
-      {
-        Rule* T1 = Rst.front();
-        Rst.pop_front();
-        if (T1)
-        {
-          // if an actual surface process :
-          SurfPoint* KV = dynamic_cast<SurfPoint*> (T1);
-          if (KV)
-          {
-            // Ensure that we have a it in the surface list:
-            std::map<int, Surface*>::const_iterator mf = Smap.find(KV->getKeyN());
-            if (mf != Smap.end())
-            {
-              KV->setKey(mf->second);
-              Rcount++;
-            }
-            else
-            {
-              PLog.error("Error finding key");
-              throw Kernel::Exception::NotFoundError("Object::populate", KV->getKeyN());
-            }
-          }
-          // Not a surface : Determine leaves etc and add to stack:
-          else
-          {
-            TA = T1->leaf(0);
-            TB = T1->leaf(1);
-            if (TA)
-              Rst.push_back(TA);
-            if (TB)
-              Rst.push_back(TB);
-          }
-        }
-      }
-      createSurfaceList();
-      return 0;
-    }
-
-    /**
-    * This takes a string Ln, finds the first two
-    * Rxxx function, determines their join type
-    * make the rule,  adds to vector then removes two old rules from
-    * the vector, updates string
-    * @param Ln :: String to porcess
-    * @param Rlist :: Map of rules (added to)
-    * @param compUnit :: Last computed unit
-    * @retval 0 :: No rule to find
-    * @retval 1 :: A rule has been combined
-    */
-    int Object::procPair(std::string& Ln, std::map<int, Rule*>& Rlist, int& compUnit) const
-
-    {
-      unsigned int Rstart;
-      unsigned int Rend;
-      int Ra, Rb;
-
-      for (Rstart = 0; Rstart < Ln.size() && Ln[Rstart] != 'R'; Rstart++)
-        ;
-
-      int type = 0; //intersection
-
-      //plus 1 to skip 'R'
-      if (Rstart == Ln.size() || !Mantid::Kernel::Strings::convert(Ln.c_str() + Rstart + 1, Ra) || Rlist.find(Ra)
-        == Rlist.end())
-        return 0;
-
-      for (Rend = Rstart + 1; Rend < Ln.size() && Ln[Rend] != 'R'; Rend++)
-      {
-        if (Ln[Rend] == ':')
-          type = 1; //make union
-      }
-      if (Rend == Ln.size() || !Mantid::Kernel::Strings::convert(Ln.c_str() + Rend + 1, Rb) || Rlist.find(Rb) == Rlist.end())
-        return 0;
-
-      // Get end of number (digital)
-      for (Rend++; Rend < Ln.size() && Ln[Rend] >= '0' && Ln[Rend] <= '9'; Rend++)
-        ;
-
-      // Get rules
-      Rule* RRA = Rlist[Ra];
-      Rule* RRB = Rlist[Rb];
-      Rule* Join = (type) ? static_cast<Rule*> (new Union(RRA, RRB)) : static_cast<Rule*> (new Intersection(
-        RRA, RRB));
-      Rlist[Ra] = Join;
-      Rlist.erase(Rlist.find(Rb));
-
-      // Remove space round pair
-      int fb;
-      for (fb = Rstart - 1; fb >= 0 && Ln[fb] == ' '; fb--)
-        ;
-      Rstart = (fb < 0) ? 0 : fb;
-      for (fb = Rend; fb < static_cast<int> (Ln.size()) && Ln[fb] == ' '; fb++)
-        ;
-      Rend = fb;
-
-      std::stringstream cx;
-      cx << " R" << Ra << " ";
-      Ln.replace(Rstart, Rend, cx.str());
-      compUnit = Ra;
-      return 1;
-    }
-
-
-    /**
-    * Takes a Rule item and makes it a complementary group
-    * @param RItem :: to encapsulate
-    * @returns the complementary group
-    */
-    CompGrp* Object::procComp(Rule* RItem) const
-    {
-      if (!RItem)
-        return new CompGrp();
-
-      Rule* Pptr = RItem->getParent();
-      CompGrp* CG = new CompGrp(Pptr, RItem);
-      if (Pptr)
-      {
-        const int Ln = Pptr->findLeaf(RItem);
-        Pptr->setLeaf(CG, Ln);
-      }
-      return CG;
-    }
-
-    /**
-    * - (a) Uses the Surface list to check those surface
-    * that the point is on.
-    * - (b) Creates a list of normals to the touching surfaces
-    * - (c) Checks if normals and "normal pair bisection vector" are contary.
-    * If any are found to be so the the point is
-    * on a surface.
-    * - (d) Return 1 / 0 depending on test (c)
-
-    * \todo This needs to be completed to deal with apex points
-    * In the case of a apex (e.g. top of a pyramid) you need
-    * to interate over all clusters of points on the Snorm
-    * ie. sum of 2, sum of 3 sum of 4. etc. to be certain
-    * to get a correct normal test.
-
-    * @param Pt :: Point to check
-    * @returns 1 if the point is on the surface
-    */
-    bool Object::isOnSide(const Geometry::V3D& Pt) const
-    {
-      std::list<Geometry::V3D> Snorms; // Normals from the constact surface.
-
-      std::vector<const Surface*>::const_iterator vc;
-      for (vc = SurList.begin(); vc != SurList.end(); vc++)
-      {
-        if ((*vc)->onSurface(Pt))
-        {
-          Snorms.push_back((*vc)->surfaceNormal(Pt));
-          // can check direct normal here since one success
-          // means that we can return 1 and finish
-          if (!checkSurfaceValid(Pt, Snorms.back()))
-            return true;
-        }
-      }
-      std::list<Geometry::V3D>::const_iterator xs, ys;
-      Geometry::V3D NormPair;
-      for (xs = Snorms.begin(); xs != Snorms.end(); xs++)
-        for (ys = xs, ys++; ys != Snorms.end(); ys++)
-        {
-          NormPair = (*ys) + (*xs);
-          NormPair.normalize();
-          if (!checkSurfaceValid(Pt, NormPair))
-            return true;
-        }
-        // Ok everthing failed return 0;
-        return false;
-    }
-
-    /**
-    * Determine if a point is valid by checking both
-    * directions of the normal away from the line
-    * A good point will have one valid and one invalid.
-    * @param C :: Point on a basic surface to check
-    * @param Nm :: Direction +/- to be checked
-    * @retval +1 ::  Point outlayer (ie not in object)
-    * @retval -1 :: Point included (e.g at convex intersection)
-    * @retval 0 :: success
-    */
-    int Object::checkSurfaceValid(const Geometry::V3D& C, const Geometry::V3D& Nm) const
-    {
-      int status(0);
-      Geometry::V3D tmp = C + Nm * (Tolerance * 5.0);
-      status = (!isValid(tmp)) ? 1 : -1;
-      tmp -= Nm * (Tolerance * 10.0);
-      status += (!isValid(tmp)) ? 1 : -1;
-      return status / 2;
-    }
-
-    /**
-    * Determines is Pt is within the object or on the surface
-    * @param Pt :: Point to be tested
-    * @returns 1 if true and 0 if false
-    */
-    bool Object::isValid(const Geometry::V3D& Pt) const
-    {
-      if (!TopRule)
-        return false;
-      return TopRule->isValid(Pt);
-    }
-    
-    /**
-     * Determines is group of surface maps are valid
-     * @param SMap :: map of SurfaceNumber : status
-     * @returns 1 if true and 0 if false
-     */
-    bool Object::isValid(const std::map<int, int>& SMap) const
-    {
-      if (!TopRule)
-        return false;
-      return TopRule->isValid(SMap);
-    }
-
-    /**
-    * Uses the topRule* to create a surface list
-    * by iterating throught the tree
-    * @param outFlag :: Sends output to standard error if true
-    * @return 1 (should be number of surfaces)
-    */
-    int Object::createSurfaceList(const int outFlag)
-    {
-      SurList.clear();
-      std::stack<const Rule*> TreeLine;
-      TreeLine.push(TopRule);
-      while (!TreeLine.empty())
-      {
-        const Rule* tmpA = TreeLine.top();
-        TreeLine.pop();
-        const Rule* tmpB = tmpA->leaf(0);
-        const Rule* tmpC = tmpA->leaf(1);
-        if (tmpB || tmpC)
-        {
-          if (tmpB)
-            TreeLine.push(tmpB);
-          if (tmpC)
-            TreeLine.push(tmpC);
-        }
-        else
-        {
-          const SurfPoint* SurX = dynamic_cast<const SurfPoint*> (tmpA);
-          if (SurX)
-          {
-            SurList.push_back(SurX->getKey());
-          }
-        }
-      }
-      if (outFlag)
-      {
-
-        std::vector<const Surface*>::const_iterator vc;
-        for (vc = SurList.begin(); vc != SurList.end(); vc++)
-        {
-          std::cerr << "Point == " << reinterpret_cast<long int> (*vc) << std::endl;
-          std::cerr << (*vc)->getName() << std::endl;
-        }
-      }
-      return 1;
-    }
-
-    /**
-    * Returns all of the numbers of surfaces
-    * @return Surface numbers
-    */
-    std::vector<int> Object::getSurfaceIndex() const
-    {
-      std::vector<int> out;
-      transform(SurList.begin(), SurList.end(), std::insert_iterator<std::vector<int> >(out, out.begin()),
-        std::mem_fun(&Surface::getName));
-      return out;
-    }
-
-    /**
-    * Removes a surface and then re-builds the
-    * cell. This could be done by just removing
-    * the surface from the object.
-    * @param SurfN :: Number for the surface
-    * @return number of surfaces removes
-    */
-    int Object::removeSurface(const int SurfN)
-    {
-      if (!TopRule)
-        return -1;
-      const int cnt = Rule::removeItem(TopRule, SurfN);
-      if (cnt)
-        createSurfaceList();
-      return cnt;
-    }
-
-    /**
-    * Removes a surface and then re-builds the cell.
-    * @param SurfN :: Number for the surface
-    * @param NsurfN :: New surface number
-    * @param SPtr :: Surface pointer for surface NsurfN
-    * @return number of surfaces substituted
-    */
-    int Object::substituteSurf(const int SurfN, const int NsurfN, Surface* SPtr)
-    {
-      if (!TopRule)
-        return 0;
-      const int out = TopRule->substituteSurf(SurfN, NsurfN, SPtr);
-      if (out)
-        createSurfaceList();
-      return out;
-    }
-
-    /**
-    * Prints almost everything
-    */
-    void Object::print() const
-    {
-      std::deque<Rule*> Rst;
-      std::vector<int> Cells;
-      int Rcount(0);
-      Rst.push_back(TopRule);
-      Rule* TA, *TB; //Temp. for storage
-
-      while (Rst.size())
-      {
-        Rule* T1 = Rst.front();
-        Rst.pop_front();
-        if (T1)
-        {
-          Rcount++;
-          SurfPoint* KV = dynamic_cast<SurfPoint*> (T1);
-          if (KV)
-            Cells.push_back(KV->getKeyN());
-          else
-          {
-            TA = T1->leaf(0);
-            TB = T1->leaf(1);
-            if (TA)
-              Rst.push_back(TA);
-            if (TB)
-              Rst.push_back(TB);
-          }
-        }
-      }
-
-      std::cout << "Name == " << ObjName << std::endl;
-      std::cout << "Rules == " << Rcount << std::endl;
-      std::vector<int>::const_iterator mc;
-      std::cout << "Surface included == ";
-      for (mc = Cells.begin(); mc < Cells.end(); mc++)
-      {
-        std::cout << (*mc) << " ";
-      }
-      std::cout << std::endl;
-      return;
-    }
-
-    /**
-     * Takes the complement of a group
-    */
-    void Object::makeComplement() 
-    {
-      Rule* NCG = procComp(TopRule);
-      TopRule = NCG;
-      return;
-    }
-
-    /**
-     * Displays the rule tree
-     */
-    void Object::printTree() const
-    {
-      std::cout << "Name == " << ObjName << std::endl;
-      std::cout << TopRule->display() << std::endl;
-      return;
-    }
-
-    /**
-    * Write the object to a string.
-    * This includes only rules.
-    * @return Object Line
-    */
-    std::string Object::cellCompStr() const
-    {
-      std::ostringstream cx;
-      if (TopRule)
-        cx << TopRule->display();
-      return cx.str();
-    }
-
-    /**
-     * Write the object to a string.
-     * This includes the Name but not post-fix operators
-     * @return Object Line
-     */
-    std::string Object::str() const
-    {
-      std::ostringstream cx;
-      if (TopRule)
-      {
-        cx << ObjName << " ";
-        cx << TopRule->display();
-      }
-      return cx.str();
-    }
-    
-    /**
-    * Write the object to a standard stream
-    * in standard MCNPX output format.
-    * @param OX :: Output stream (required for multiple std::endl)
-    */
-    void Object::write(std::ostream& OX) const
-    {
-      std::ostringstream cx;
-      cx.precision(10);
-      cx << str();
-      Mantid::Kernel::Strings::writeMCNPX(cx.str(), OX);
-      return;
-    }
-
-    /**
-     * Processes the cell string. This is an internal function
-     * to process a string with - String type has #( and ( )
-     * @param Line :: String value
-     * @returns 1 on success
-     */
-    int Object::procString(const std::string& Line)
-    {
-      delete TopRule;
-      TopRule = 0;
-      std::map<int, Rule*> RuleList; //List for the rules
-      int Ridx = 0; //Current index (not necessary size of RuleList
-      // SURFACE REPLACEMENT
-      // Now replace all free planes/Surfaces with appropiate Rxxx
-      SurfPoint* TmpR(0); //Tempory Rule storage position
-      CompObj* TmpO(0); //Tempory Rule storage position
-
-      std::string Ln = Line;
-      // Remove all surfaces :
-      std::ostringstream cx;
-      const std::string::size_type length = Ln.length();
-      for (size_t i = 0; i < length; i++)
-      {
-        if (isdigit(Ln[i]) || Ln[i] == '-')
-        {
-          int SN;
-          int nLen = Mantid::Kernel::Strings::convPartNum(Ln.substr(i), SN);
-          if (!nLen)
-            throw std::invalid_argument("Invalid surface string in Object::ProcString : " + Line);
-          // Process #Number
-          if (i != 0 && Ln[i - 1] == '#')
-          {
-            TmpO = new CompObj();
-            TmpO->setObjN(SN);
-            RuleList[Ridx] = TmpO;
-          }
-          else // Normal rule
-          {
-            TmpR = new SurfPoint();
-            TmpR->setKeyN(SN);
-            RuleList[Ridx] = TmpR;
-          }
-          cx << " R" << Ridx << " ";
-          Ridx++;
-          i += nLen;
-        }
-        if (i < length)
-          cx << Ln[i];
-      }
-      Ln = cx.str();
-      // PROCESS BRACKETS
-
-      int brack_exists = 1;
-      while (brack_exists)
-      {
-        std::string::size_type rbrack = Ln.find(')');
-        std::string::size_type lbrack = Ln.rfind('(', rbrack);
-        if (rbrack != std::string::npos && lbrack != std::string::npos)
-        {
-          std::string Lx = Ln.substr(lbrack + 1, rbrack - lbrack - 1);
-          // Check to see if a #( unit
-          int compUnit(0);
-          while (procPair(Lx, RuleList, compUnit))
-            ;
-          Ln.replace(lbrack, 1 + rbrack - lbrack, Lx);
-          // Search back and find if # ( exists.
-          int hCnt;
-          for (hCnt = lbrack - 1; hCnt >= 0 && isspace(Ln[hCnt]); hCnt--)
-            ;
-          if (hCnt >= 0 && Ln[hCnt] == '#')
-          {
-            RuleList[compUnit] = procComp(RuleList[compUnit]);
-            std::ostringstream px;
-            Ln.erase(hCnt, lbrack - hCnt);
-          }
-        }
-        else
-          brack_exists = 0;
-      }
-      // Do outside loop...
-      int nullInt;
-      while (procPair(Ln, RuleList, nullInt))
-        ;
-
-      if (RuleList.size() != 1)
-      {
-        std::cerr << "Map size not equal to 1 == " << RuleList.size() << std::endl;
-        std::cerr << "Error Object::ProcString : " << Ln << std::endl;
-        exit(1);
-        return 0;
-      }
-      TopRule = (RuleList.begin())->second;
-      return 1;
-    }
-
-    /**
-     * Given a track, fill the track with valid section
-     * @param UT :: Initial track
-     * @return Number of segments added
-    */
-    int Object::interceptSurface(Geometry::Track& UT) const
-    {
-      int cnt = UT.count(); // Number of intersections original track
-      // Loop over all the surfaces.
-      LineIntersectVisit LI(UT.startPoint(), UT.direction());
-      std::vector<const Surface*>::const_iterator vc;
-      for (vc = SurList.begin(); vc != SurList.end(); vc++)
-      {
-        (*vc)->acceptVisitor(LI);
-      }
-      const std::vector<Geometry::V3D>& IPts(LI.getPoints());
-      const std::vector<double>& dPts(LI.getDistance());
-
-      for (unsigned int i = 0; i < IPts.size(); i++)
-      {
-        if (dPts[i] > 0.0) // only interested in forward going points
-        {
-          // Is the point and enterance/exit Point
-          const int flag = calcValidType(IPts[i], UT.direction());
-          UT.addPoint(flag, IPts[i]);
-        }
-      }
-      UT.buildLink();
-      // Return number of track segments added
-      return (UT.count() - cnt);
-    }
-
-    /**
-    * Calculate if a point PT is a valid point on the track
-    * @param Pt :: Point to calculate from.
-    * @param uVec :: Unit vector of the track
-    * @retval 0 :: Not valid / double valid
-    * @retval 1 :: Entry point
-    * @retval -1 :: Exit Point
-    */
-    int Object::calcValidType(const Geometry::V3D& Pt, const Geometry::V3D& uVec) const
-    {
-      const Geometry::V3D shift(uVec * Tolerance * 25.0);
-      const Geometry::V3D testA(Pt - shift);
-      const Geometry::V3D testB(Pt + shift);
-      const int flagA = isValid(testA);
-      const int flagB = isValid(testB);
-      if (!(flagA ^ flagB))
-        return 0;
-      return (flagA) ? -1 : 1;
-    }
-
-    /**
-    * Find soild angle of object wrt the observer. This interface routine calls either
-    * getTriangleSoldiAngle or getRayTraceSolidAngle. Choice made on number of triangles
-    * in the discete surface representation.
-    * @param observer :: point to measure solid angle from
-    * @return :: estimate of solid angle of object. Accuracy depends on object shape.
-    */
-    double Object::solidAngle(const Geometry::V3D& observer) const
-    {
-      if (this->NumberOfTriangles() > 30000)
-        return rayTraceSolidAngle(observer);
-      return triangleSolidAngle(observer);
-    }
-
-    /**
-     * Find solid angle of object wrt the observer with a scaleFactor for the object.
-     * @param observer :: point to measure solid angle from
-     * @param scaleFactor :: V3D giving scaling of the object
-     * @return :: estimate of solid angle of object. Accuracy depends on triangulation quality.
-     */
-    double Object::solidAngle(const Geometry::V3D& observer, const Geometry::V3D& scaleFactor) const
-      
-    {
-      return triangleSolidAngle(observer, scaleFactor);
-    }
-
-    /**
-    * Given an observer position find the approximate solid angle of the object
-    * @param observer :: position of the observer (V3D)
-    * @return Solid angle in steradians (+/- 1% if accurate bounding box available)
-    */
-    double Object::rayTraceSolidAngle(const Geometry::V3D& observer) const
-    {
-      // Calculation of solid angle as numerical double integral over all
-      // angles. This could be optimised further e.g. by
-      // using a light weight version of the interceptSurface method - this does more work
-      // than is necessary in this application.
-      // Accuracy is of the order of 1% for objects with an accurate boundng box, though
-      // less in the case of high aspect ratios.
-      //
-      // resBB controls accuracy and cost - linear accuracy improvement with increasing res,
-      // but quadratic increase in run time. If no bounding box found, resNoBB used instead.
-      const int resNoBB = 200, resBB = 100, resPhiMin = 10;
-      int res = resNoBB, itheta, jphi, resPhi;
-      double theta, phi, sum, dphi, dtheta;
-      if (this->isValid(observer) && !this->isOnSide(observer))
-        return 4 * M_PI; // internal point
-      if (this->isOnSide(observer))
-        return 2 * M_PI; // this is wrong if on an edge
-      // Use BB if available, and if observer not within it
-      const BoundingBox & boundingBox = getBoundingBox();
-      double thetaMax = M_PI;
-      bool useBB = false, usePt = false;
-      Geometry::V3D ptInObject, axis;
-      Quat zToPt;
-
-      // Is the bounding box a reasonable one?
-      if(boundingBox.isNonNull() && !boundingBox.isPointInside(observer))
-      {
-        useBB = usePt = true;
-        thetaMax = boundingBox.angularWidth(observer);
-        ptInObject = boundingBox.centrePoint();
-        res = resBB;
-      }
-      // Try and find a point in the object if useful bounding box not found
-      if (!useBB)
-      {
-        usePt = getPointInObject(ptInObject) == 1;
-      }
-      if (usePt)
-      {
-        // found point in object, now get rotation that maps z axis to this direction from observer
-        ptInObject -= observer;
-        double theta0 = -180.0 / M_PI * acos(ptInObject.Z() / ptInObject.norm());
-        Geometry::V3D zDir(0.0, 0.0, 1.0);
-        axis = ptInObject.cross_prod(zDir);
-        if (axis.nullVector())
-          axis = Geometry::V3D(1.0, 0.0, 0.0);
-        zToPt(theta0, axis);
-      }
-      dtheta = thetaMax / res;
-      int count = 0, countPhi;
-      sum = 0.;
-      for (itheta = 1; itheta <= res; itheta++)
-      {
-        // itegrate theta from 0 to maximum from bounding box, or PI otherwise
-        theta = thetaMax * (itheta - 0.5) / res;
-        resPhi = static_cast<int> (res * sin(theta));
-        if (resPhi < resPhiMin)
-          resPhi = resPhiMin;
-        dphi = 2 * M_PI / resPhi;
-        countPhi = 0;
-        for (jphi = 1; jphi <= resPhi; jphi++)
-        {
-          // integrate phi from 0 to 2*PI
-          phi = 2.0 * M_PI * (jphi - 0.5) / resPhi;
-          Geometry::V3D dir(sin(theta) * cos(phi), sin(theta) * sin(phi), cos(theta));
-          if (usePt)
-            zToPt.rotate(dir);
-          if (!useBB || boundingBox.doesLineIntersect(observer, dir))
-          {
-            Track tr(observer, dir);
-            if (this->interceptSurface(tr) > 0)
-            {
-              sum += dtheta * dphi * sin(theta);
-              countPhi++;
-            }
-          }
-        }
-        // this break (only used in no BB defined) may be wrong if object has hole in middle
-        if (!useBB && countPhi == 0)
-          break;
-        count += countPhi;
-      }
-      if (!useBB && count < resPhiMin + 1)
-      {
-        // case of no bound box defined and object has few if any points in sum
-        // redo integration on finer scale
-        thetaMax = thetaMax * (itheta - 0.5) / res;
-        dtheta = thetaMax / res;
-        sum = 0;
-        for (itheta = 1; itheta <= res; itheta++)
-        {
-          theta = thetaMax * (itheta - 0.5) / res;
-          resPhi = static_cast<int> (res * sin(theta));
-          if (resPhi < resPhiMin)
-            resPhi = resPhiMin;
-          dphi = 2 * M_PI / resPhi;
-          countPhi = 0;
-          for (jphi = 1; jphi <= resPhi; jphi++)
-          {
-            phi = 2.0 * M_PI * (jphi - 0.5) / resPhi;
-            Geometry::V3D dir(sin(theta) * cos(phi), sin(theta) * sin(phi), cos(theta));
-            if (usePt)
-              zToPt.rotate(dir);
-            Track tr(observer, dir);
-            if (this->interceptSurface(tr) > 0)
-            {
-              sum += dtheta * dphi * sin(theta);
-              countPhi++;
-            }
-          }
-          if (countPhi == 0)
-            break;
-        }
-      }
-
-      return sum;
-    }
-
-    /**
-    * Find the solid angle of a triangle defined by vectors a,b,c from point "observer"
-    *
-    * formula (Oosterom) O=2atan([a,b,c]/(abc+(a.b)c+(a.c)b+(b.c)a))
-    *
-    * @param a :: first point of triangle
-    * @param b :: second point of triangle
-    * @param c :: third point of triangle
-    * @param observer :: point from which solid angle is required
-    * @return :: solid angle of triangle in Steradians.
-    */
-    double Object::getTriangleSolidAngle(const V3D& a, const V3D& b, const V3D& c, const V3D& observer) const
-    {
-      const V3D ao = a - observer;
-      const V3D bo = b - observer;
-      const V3D co = c - observer;
-      const double modao = ao.norm();
-      const double modbo = bo.norm();
-      const double modco = co.norm();
-      const double aobo = ao.scalar_prod(bo);
-      const double aoco = ao.scalar_prod(co);
-      const double boco = bo.scalar_prod(co);
-      const double scalTripProd = ao.scalar_prod(bo.cross_prod(co));
-      const double denom = modao * modbo * modco + modco * aobo + modbo * aoco + modao * boco;
-      if (denom != 0.0)
-        return 2.0 * atan(scalTripProd / denom);
-      else
-        return 0.0; // not certain this is correct
-    }
-
-    /**
-    * Find solid angle of object from point "observer" using the
-    * OC triangluation of the object, if it exists
-    *
-    * @param observer :: Point from which solid angle is required
-    * @return the solid angle
-    */
-    double Object::triangleSolidAngle(const V3D& observer) const
-    {
-      //
-      // Because the triangles from OC are not consistently ordered wrt their outward normal
-      // internal points give incorrect solid angle. Surface points are difficult to get right
-      // with the triangle based method. Hence catch these two (unlikely) cases.
-      const BoundingBox & boundingBox = this->getBoundingBox();
-      if( boundingBox.isNonNull() && boundingBox.isPointInside(observer) )
-      {
-        if (isValid(observer))
-        {
-          if (isOnSide(observer))
-            return (2.0 * M_PI);
-          else
-            return (4.0 * M_PI);
-        }
-      }
-
-      int nTri = this->NumberOfTriangles();
-      //
-      // If triangulation is not available fall back to ray tracing method, unless
-      // object is a standard shape, currently: sphere, cuboid or cylinder.
-      //
-      if (nTri == 0)
-      {
-        double height(0.0), radius(0.0);
-        int type(0);
-        std::vector<Mantid::Geometry::V3D> geometry_vectors(0);
-        this->GetObjectGeom(type, geometry_vectors, radius, height);
-        if (type == 1)
-          return CuboidSolidAngle(observer, geometry_vectors);
-        else if (type == 2)
-          return SphereSolidAngle(observer, geometry_vectors, radius);
-        else if (type == 3)
-          return CylinderSolidAngle(observer, geometry_vectors[0], geometry_vectors[1], radius, height);
-        else if (type == 4)
-          return ConeSolidAngle(observer, geometry_vectors[0], geometry_vectors[1], radius, height);
-        return rayTraceSolidAngle(observer);
-      }
-
-      double* vertices = this->getTriangleVertices();
-      int *faces = this->getTriangleFaces();
-      double sangle(0.0), sneg(0.0);
-      for (int i = 0; i < nTri; i++)
-      {
-        int p1 = faces[i * 3], p2 = faces[i * 3 + 1], p3 = faces[i * 3 + 2];
-        V3D vp1 = V3D(vertices[3 * p1], vertices[3 * p1 + 1], vertices[3 * p1 + 2]);
-        V3D vp2 = V3D(vertices[3 * p2], vertices[3 * p2 + 1], vertices[3 * p2 + 2]);
-        V3D vp3 = V3D(vertices[3 * p3], vertices[3 * p3 + 1], vertices[3 * p3 + 2]);
-        double sa = getTriangleSolidAngle(vp1, vp2, vp3, observer);
-        if (sa > 0.0)
-        {
-          sangle += sa;
-        }
-        else
-        {
-          sneg += sa;
-        }
-      }
-      return 0.5 * (sangle - sneg);
-    }
-    /**
-    * Find solid angle of object from point "observer" using the
-    * OC triangluation of the object, if it exists. This method expects a
-    * scaling vector scaleFactor that scales the three axes.
-    *
-    * @param observer :: Point from which solid angle is required.
-    * @param scaleFactor :: V3D each component giving the scaling of the object only (not observer)
-    * @return the solid angle
-    */
-    double Object::triangleSolidAngle(const V3D& observer, const V3D& scaleFactor) const
-    {
-      //
-      // Because the triangles from OC are not consistently ordered wrt their outward normal
-      // internal points give incorrect solid angle. Surface points are difficult to get right
-      // with the triangle based method. Hence catch these two (unlikely) cases.
-      const BoundingBox & boundingBox = this->getBoundingBox();
-      double sx = scaleFactor[0], sy = scaleFactor[1], sz = scaleFactor[2];
-      V3D sObserver = observer;
-      if( boundingBox.isNonNull() && boundingBox.isPointInside(sObserver) )
-      {
-        if (isValid(sObserver))
-        {
-          if (isOnSide(sObserver))
-            return (2.0 * M_PI);
-          else
-            return (4.0 * M_PI);
-        }
-      }
-
-      int nTri = this->NumberOfTriangles();
-      //
-      // If triangulation is not available fall back to ray tracing method, unless
-      // object is a standard shape, currently Cuboid or Sphere. Should add Cylinder
-      // and Cone cases as well.
-      //
-      if (nTri == 0)
-      {
-        double height = 0.0, radius(0.0);
-        int type;
-        std::vector<Geometry::V3D> vectors;
-        this->GetObjectGeom(type, vectors, radius, height);
-        if (type == 1)
-        {
-          for (size_t i = 0; i < vectors.size(); i++)
-            vectors[i] *= scaleFactor;
-          return CuboidSolidAngle(observer, vectors);
-        }
-        else if (type == 2) // this is wrong for scaled objects
-          return SphereSolidAngle(observer, vectors, radius);
-        //
-        // No special case, do the ray trace.
-        //
-        return rayTraceSolidAngle(observer); // so is this
-      }
-      double* vertices = this->getTriangleVertices();
-      int *faces = this->getTriangleFaces();
-      double sangle(0.0), sneg(0.0);
-      for (int i = 0; i < nTri; i++)
-      {
-        int p1 = faces[i * 3], p2 = faces[i * 3 + 1], p3 = faces[i * 3 + 2];
-        // would be more efficient to pre-multiply the vertices (copy of) by these factors beforehand
-        V3D vp1 = V3D(sx * vertices[3 * p1], sy * vertices[3 * p1 + 1], sz * vertices[3 * p1 + 2]);
-        V3D vp2 = V3D(sx * vertices[3 * p2], sy * vertices[3 * p2 + 1], sz * vertices[3 * p2 + 2]);
-        V3D vp3 = V3D(sx * vertices[3 * p3], sy * vertices[3 * p3 + 1], sz * vertices[3 * p3 + 2]);
-        double sa = getTriangleSolidAngle(vp1, vp2, vp3, observer);
-        if (sa > 0.0)
-          sangle += sa;
-        else
-          sneg += sa;
-        //    std::cout << vp1 << vp2 << vp2;
-      }
-      return (0.5 * (sangle - sneg));
-    }
-    /**
-    * Get the solid angle of a sphere defined by centre and radius using an analytic formula
-    * @param observer :: point from which solid angle required
-    * @param vectors :: vector of V3D - the only value is the sphere centre
-    * @param radius :: sphere radius
-    * @return :: solid angle of sphere
-    */
-    double Object::SphereSolidAngle(const V3D observer, const std::vector<Geometry::V3D> vectors,
-      const double radius) const
-    {
-      const double distance = (observer - vectors[0]).norm();
-      const double tol = Tolerance;
-      if (distance > radius + tol)
-      {
-        const double sa = 2.0 * M_PI * (1.0 - cos(asin(radius / distance)));
-        return sa;
-      }
-      else if (distance < radius - tol)
-        return 4.0 * M_PI; // internal point
-      else
-        return 2.0 * M_PI; // surface point
-    }
-
-    /**
-    * Get the solid angle of a cuboid defined by 4 points. Simple use of triangle based soild angle
-    * calculation. Should work for parallel-piped as well.
-    * @param observer :: point from which solid angle required
-    * @param vectors :: vector of V3D - the values are the 4 points used to defined the cuboid
-    * @return :: solid angle of cuboid - good accuracy
-    */
-    double Object::CuboidSolidAngle(const V3D observer, const std::vector<Geometry::V3D> vectors) const
-    {
-      // Build bounding points, then set up map of 12 bounding
-      // triangles defining the 6 surfaces of the bounding box. Using a consistent
-      // ordering of points the "away facing" triangles give -ve contributions to the
-      // solid angle and hence are ignored.
-      std::vector<V3D> pts;
-      pts.reserve(8);
-      Geometry::V3D dx = vectors[1] - vectors[0];
-      Geometry::V3D dz = vectors[3] - vectors[0];
-      pts.push_back(vectors[2]);
-      pts.push_back(vectors[2] + dx);
-      pts.push_back(vectors[1]);
-      pts.push_back(vectors[0]);
-      pts.push_back(vectors[2] + dz);
-      pts.push_back(vectors[2] + dz + dx);
-      pts.push_back(vectors[1] + dz);
-      pts.push_back(vectors[0] + dz);
-
-      const unsigned int ntriangles(12);
-      std::vector<std::vector<int> > triMap(ntriangles, std::vector<int>(3, 0));
-      triMap[0][0] = 1;
-      triMap[0][1] = 4;
-      triMap[0][2] = 3;
-      triMap[1][0] = 3;
-      triMap[1][1] = 2;
-      triMap[1][2] = 1;
-      triMap[2][0] = 5;
-      triMap[2][1] = 6;
-      triMap[2][2] = 7;
-      triMap[3][0] = 7;
-      triMap[3][1] = 8;
-      triMap[3][2] = 5;
-      triMap[4][0] = 1;
-      triMap[4][1] = 2;
-      triMap[4][2] = 6;
-      triMap[5][0] = 6;
-      triMap[5][1] = 5;
-      triMap[5][2] = 1;
-      triMap[6][0] = 2;
-      triMap[6][1] = 3;
-      triMap[6][2] = 7;
-      triMap[7][0] = 7;
-      triMap[7][1] = 6;
-      triMap[7][2] = 2;
-      triMap[8][0] = 3;
-      triMap[8][1] = 4;
-      triMap[8][2] = 8;
-      triMap[9][0] = 8;
-      triMap[9][1] = 7;
-      triMap[9][2] = 3;
-      triMap[10][0] = 1;
-      triMap[10][1] = 5;
-      triMap[10][2] = 8;
-      triMap[11][0] = 8;
-      triMap[11][1] = 4;
-      triMap[11][2] = 1;
-      double sangle = 0.0;
-      for (unsigned int i = 0; i < ntriangles; i++)
-      {
-        double sa = getTriangleSolidAngle(pts[triMap[i][0] - 1], pts[triMap[i][1] - 1],
-          pts[triMap[i][2] - 1], observer);
-        if (sa > 0)
-          sangle += sa;
-      }
-      return (sangle);
-    }
-
-    /**
-    * Calculate the solid angle for a cylinder using triangulation.
-    * @param observer :: The observer's point
-    * @param centre :: The centre vector
-    * @param axis :: The axis vector
-    * @param radius :: The radius
-    * @param height :: The height
-    * @returns The solid angle value
-    */
-    double Object::CylinderSolidAngle(const V3D & observer, const Mantid::Geometry::V3D & centre,
-      const Mantid::Geometry::V3D & axis, const double radius, const double height) const
-    {
-      // The cylinder is broken down into three pieces and then in turn broken down into triangles. Any triangle
-      // that has a normal facing away from the observer gives a negative solid angle and is excluded
-      // For simplicity the triangulation points are constructed such that the cone axis points up the +Z axis
-      // and then rotated into their final position
-      Geometry::V3D axis_direction = axis;
-      axis_direction.normalize();
-      // Required rotation
-      Geometry::V3D initial_axis = Geometry::V3D(0., 0., 1.0);
-      Geometry::V3D final_axis = axis_direction;
-      Geometry::Quat transform(initial_axis, final_axis);
-
-      // Do the base cap which is a point at the centre and nslices points around it
-      const int nslices(Mantid::Geometry::Cylinder::g_nslices);
-      const double angle_step = 2 * M_PI / (double) nslices;
-      // Store the (x,y) points as they are used quite frequently
-      double *cos_table = new double[nslices];
-      double *sin_table = new double[nslices];
-
-      double solid_angle(0.0);
-      for (int sl = 0; sl < nslices; ++sl)
-      {
-        int vertex = sl;
-        cos_table[vertex] = radius * std::cos(angle_step * vertex);
-        sin_table[vertex] = radius * std::sin(angle_step * vertex);
-        Geometry::V3D pt2 = Geometry::V3D(cos_table[vertex], sin_table[vertex], 0.0);
-
-        if (sl < nslices - 1)
-        {
-          vertex = sl + 1;
-          cos_table[vertex] = radius * std::cos(angle_step * vertex);
-          sin_table[vertex] = radius * std::sin(angle_step * vertex);
-        }
-        else
-          vertex = 0;
-
-        Geometry::V3D pt3 = Geometry::V3D(cos_table[vertex], sin_table[vertex], 0.0);
-        transform.rotate(pt2);
-        transform.rotate(pt3);
-        pt2 += centre;
-        pt3 += centre;
-
-        double sa = getTriangleSolidAngle(centre, pt2, pt3, observer);
-        if (sa > 0.0)
-        {
-          solid_angle += sa;
-        }
-      }
-
-      // Second the top cap
-      Geometry::V3D top_centre = Geometry::V3D(0.0, 0.0, height);
-      transform.rotate(top_centre);
-      top_centre += centre;
-
-      for (int sl = 0; sl < nslices; ++sl)
-      {
-        int vertex = sl;
-        Geometry::V3D pt2 = Geometry::V3D(cos_table[vertex], sin_table[vertex], height);
-
-        if (sl < nslices - 1)
-          vertex = sl + 1;
-        else
-          vertex = 0;
-        Geometry::V3D pt3 = Geometry::V3D(cos_table[vertex], sin_table[vertex], height);
-
-        // Rotate them to the correct axis orientation
-        transform.rotate(pt2);
-        transform.rotate(pt3);
-        pt2 += centre;
-        pt3 += centre;
-        double sa = getTriangleSolidAngle(top_centre, pt3, pt2, observer);
-        if (sa > 0.0)
-        {
-          solid_angle += sa;
-        }
-      }
-
-      // Now the main section
-      const int nstacks(Mantid::Geometry::Cylinder::g_nstacks);
-      const double z_step = height / nstacks;
-      double z0(0.0), z1(z_step);
-
-      for (int st = 1; st <= nstacks; ++st)
-      {
-        if (st == nstacks)
-          z1 = height;
-
-        for (int sl = 0; sl < nslices; ++sl)
-        {
-          int vertex = sl;
-          Geometry::V3D pt1 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z0);
-          if (sl < nslices - 1)
-            vertex = sl + 1;
-          else
-            vertex = 0;
-          Geometry::V3D pt3 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z0);
-
-          vertex = sl;
-          Geometry::V3D pt2 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z1);
-          if (sl < nslices - 1)
-            vertex = sl + 1;
-          else
-            vertex = 0;
-          Geometry::V3D pt4 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z1);
-          // Rotations
-          transform.rotate(pt1);
-          transform.rotate(pt3);
-          transform.rotate(pt2);
-          transform.rotate(pt4);
-
-          pt1 += centre;
-          pt2 += centre;
-          pt3 += centre;
-          pt4 += centre;
-
-          double sa = getTriangleSolidAngle(pt1, pt4, pt3, observer);
-          if (sa > 0.0)
-          {
-            solid_angle += sa;
-          }
-          sa = getTriangleSolidAngle(pt1, pt2, pt4, observer);
-          if (sa > 0.0)
-          {
-            solid_angle += sa;
-          }
-        }
-
-        z0 = z1;
-        z1 += z_step;
-      }
-
-      delete[] cos_table;
-      delete[] sin_table;
-      return solid_angle;
-    }
-
-    /**
-    * Calculate the solid angle for a cone using triangulation.
-    * @param observer :: The observer's point
-    * @param centre :: The centre vector
-    * @param axis :: The axis vector
-    * @param radius :: The radius
-    * @param height :: The height
-    * @returns The solid angle value
-    */
-    double Object::ConeSolidAngle(const V3D & observer, const Mantid::Geometry::V3D & centre,
-      const Mantid::Geometry::V3D & axis, const double radius, const double height) const
-    {
-      // The cone is broken down into three pieces and then in turn broken down into triangles. Any triangle
-      // that has a normal facing away from the observer gives a negative solid angle and is excluded
-      // For simplicity the triangulation points are constructed such that the cone axis points up the +Z axis
-      // and then rotated into their final position
-
-      Geometry::V3D axis_direction = axis;
-      axis_direction.normalize();
-      // Required rotation
-      Geometry::V3D initial_axis = Geometry::V3D(0., 0., 1.0);
-      Geometry::V3D final_axis = axis_direction;
-      Geometry::Quat transform(initial_axis, final_axis);
-
-      // Do the base cap which is a point at the centre and nslices points around it
-      const int nslices(Mantid::Geometry::Cone::g_nslices);
-      const double angle_step = 2 * M_PI / (double) nslices;
-      // Store the (x,y) points as they are used quite frequently
-      double *cos_table = new double[nslices];
-      double *sin_table = new double[nslices];
-
-      double solid_angle(0.0);
-      for (int sl = 0; sl < nslices; ++sl)
-      {
-        int vertex = sl;
-        cos_table[vertex] = std::cos(angle_step * vertex);
-        sin_table[vertex] = std::sin(angle_step * vertex);
-        Geometry::V3D pt2 = Geometry::V3D(radius * cos_table[vertex], radius * sin_table[vertex], 0.0);
-
-        if (sl < nslices - 1)
-        {
-          vertex = sl + 1;
-          cos_table[vertex] = std::cos(angle_step * vertex);
-          sin_table[vertex] = std::sin(angle_step * vertex);
-        }
-        else
-          vertex = 0;
-
-        Geometry::V3D pt3 = Geometry::V3D(radius * cos_table[vertex], radius * sin_table[vertex], 0.0);
-
-        transform.rotate(pt2);
-        transform.rotate(pt3);
-        pt2 += centre;
-        pt3 += centre;
-
-        double sa = getTriangleSolidAngle(centre, pt2, pt3, observer);
-        if (sa > 0.0)
-        {
-          solid_angle += sa;
-        }
-      }
-
-      // Now the main section
-      const int nstacks(Mantid::Geometry::Cone::g_nstacks);
-      const double z_step = height / nstacks;
-      const double r_step = height / nstacks;
-      double z0(0.0), z1(z_step);
-      double r0(radius), r1(r0 - r_step);
-
-      for (int st = 1; st < nstacks; ++st)
-      {
-        if (st == nstacks)
-          z1 = height;
-
-        for (int sl = 0; sl < nslices; ++sl)
-        {
-          int vertex = sl;
-          Geometry::V3D pt1 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], z0);
-          if (sl < nslices - 1)
-            vertex = sl + 1;
-          else
-            vertex = 0;
-          Geometry::V3D pt3 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], z0);
-
-          vertex = sl;
-          Geometry::V3D pt2 = Geometry::V3D(r1 * cos_table[vertex], r1 * sin_table[vertex], z1);
-          if (sl < nslices - 1)
-            vertex = sl + 1;
-          else
-            vertex = 0;
-          Geometry::V3D pt4 = Geometry::V3D(r1 * cos_table[vertex], r1 * sin_table[vertex], z1);
-          // Rotations
-          transform.rotate(pt1);
-          transform.rotate(pt3);
-          transform.rotate(pt2);
-          transform.rotate(pt4);
-
-          pt1 += centre;
-          pt2 += centre;
-          pt3 += centre;
-          pt4 += centre;
-          double sa = getTriangleSolidAngle(pt1, pt4, pt3, observer);
-          if (sa > 0.0)
-          {
-            solid_angle += sa;
-          }
-          sa = getTriangleSolidAngle(pt1, pt2, pt4, observer);
-          if (sa > 0.0)
-          {
-            solid_angle += sa;
-          }
-        }
-
-        z0 = z1;
-        r0 = r1;
-        z1 += z_step;
-        r1 -= r_step;
-      }
-
-      // Top section
-      Geometry::V3D top_centre = Geometry::V3D(0.0, 0.0, height) + centre;
-      transform.rotate(top_centre);
-      top_centre += centre;
-
-      for (int sl = 0; sl < nslices; ++sl)
-      {
-        int vertex = sl;
-        Geometry::V3D pt2 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], height);
-
-        if (sl < nslices - 1)
-          vertex = sl + 1;
-        else
-          vertex = 0;
-        Geometry::V3D pt3 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], height);
-
-        // Rotate them to the correct axis orientation
-        transform.rotate(pt2);
-        transform.rotate(pt3);
-
-        pt2 += centre;
-        pt3 += centre;
-
-        double sa = getTriangleSolidAngle(top_centre, pt3, pt2, observer);
-        if (sa > 0.0)
-        {
-          solid_angle += sa;
-        }
-      }
-
-      delete[] cos_table;
-      delete[] sin_table;
-
-      return solid_angle;
-    }
-
-    /**
-    * Returns an axis-aligned bounding box that will fit the shape
-    * @returns A shared pointer to a bounding box for this shape.
-    */
-    const BoundingBox & Object::getBoundingBox() const
-    {
-      // This member function is const given that from a user's perspective it is perfecly reasonable 
-      // to call it on a const object. We need to call a non-const function in places to update the cache,
-      // which is where the const_cast comes in to play.
-
-      if( !TopRule )
-      {
-        // If we don't know the extent of the object, the bounding box doesn't mean anything
-	const_cast<Object*>(this)->setNullBoundingBox();
-      }
-      else if( m_boundingBox.isNull() )
-      {
-        // First up, construct the trial set of elements from the object's bounding box
-        const double big(1e10); 
-        double minX(-big), maxX(big), minY(-big), maxY(big), minZ(-big), maxZ(big);
-        TopRule->getBoundingBox(maxX, maxY, maxZ, minX, minY, minZ);
-        //If the object is not axis aligned then the bounding box will be poor, in particular the minima are left at the trial start so return 
-        // a null object here
-        if( minX == -big || minY == -big || minZ == -big )
-        {
-	  const_cast<Object*>(this)->setNullBoundingBox();
-        }
-	else
-	{
-	  const_cast<Object*>(this)->defineBoundingBox(maxX, maxY, maxZ, minX, minY, minZ);
-	}
-      }
-      else {}
-      
-      return m_boundingBox;
-    }
-
-    /**
-    * Takes input axis aligned bounding box max and min points and calculates the bounding box for the
-    * object and returns them back in max and min points.
-    *
-    * @param xmax :: Maximum value for the bounding box in x direction
-    * @param ymax :: Maximum value for the bounding box in y direction
-    * @param zmax :: Maximum value for the bounding box in z direction
-    * @param xmin :: Minimum value for the bounding box in x direction
-    * @param ymin :: Minimum value for the bounding box in y direction
-    * @param zmin :: Minimum value for the bounding box in z direction
-    */
-    void Object::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin,
-      double &zmin) const
-    {
-      if (!TopRule)
-      { //If no rule defined then return zero boundbing box
-        xmax = ymax = zmax = xmin = ymin = zmin = 0.0;
-        return;
-      }
-      if (!boolBounded)
-      {
-        AABBxMax = xmax;
-        AABByMax = ymax;
-        AABBzMax = zmax;
-        AABBxMin = xmin;
-        AABByMin = ymin;
-        AABBzMin = zmin;
-        TopRule->getBoundingBox(AABBxMax, AABByMax, AABBzMax, AABBxMin, AABByMin, AABBzMin);
-        if (AABBxMax >= xmax || AABBxMin <= xmin || AABByMax >= ymax || AABByMin <= ymin || AABBzMax >= zmax
-          || AABBzMin <= zmin)
-          boolBounded = false;
-        else
-          boolBounded = true;
-      }
-      xmax = AABBxMax;
-      ymax = AABByMax;
-      zmax = AABBzMax;
-      xmin = AABBxMin;
-      ymin = AABByMin;
-      zmin = AABBzMin;
-    }
-
-    /**
-    * Takes input axis aligned bounding box max and min points and stores these as the
-    * bounding box for the object. Can be used when getBoundingBox fails and bounds are
-    * known.
-    *
-    * @param xMax :: Maximum value for the bounding box in x direction
-    * @param yMax :: Maximum value for the bounding box in y direction
-    * @param zMax :: Maximum value for the bounding box in z direction
-    * @param xMin :: Minimum value for the bounding box in x direction
-    * @param yMin :: Minimum value for the bounding box in y direction
-    * @param zMin :: Minimum value for the bounding box in z direction
-    */
-    void Object::defineBoundingBox(const double &xMax, const double &yMax, const double &zMax,
-      const double &xMin, const double &yMin, const double &zMin)
-    {
-
-      AABBxMax = xMax;
-      AABByMax = yMax;
-      AABBzMax = zMax;
-      AABBxMin = xMin;
-      AABByMin = yMin;
-      AABBzMin = zMin;
-      boolBounded = true;
-
-      m_boundingBox = BoundingBox(xMax, yMax, zMax, xMin, yMin, zMin);
-    }
-    
-    /**
-     * Set the bounding box to a null box
-     */
-    void Object::setNullBoundingBox()
-    {
-      m_boundingBox = BoundingBox();
-    }
-
-    /**
-    Try to find a point that lies within (or on) the object
-    @param[out] point :: on exit set to the point value, if found
-    @return 1 if point found, 0 otherwise
-    */
-    int Object::getPointInObject(Geometry::V3D& point) const
-    {
-      //
-      // Simple method - check if origin in object, if not search directions along
-      // axes. If that fails, try centre of boundingBox, and paths about there
-      //
-      Geometry::V3D testPt(0, 0, 0);
-      if (searchForObject(testPt))
-      {
-        point = testPt;
-        return 1;
-      }
-      // Try centre of bounding box as initial guess, if we have one.
-      const BoundingBox & boundingBox = getBoundingBox();
-      if(boundingBox.isNonNull())
-      {
-        testPt = boundingBox.centrePoint();
-        if (searchForObject(testPt) > 0)
-        {
-          point = testPt;
-          return 1;
-        }
-      }
-
-      return 0;
-    }
-
-    /**
-    * Try to find a point that lies within (or on) the object, given a seed point
-    * @param point :: on entry the seed point, on exit point in object, if found
-    * @return 1 if point found, 0 otherwise
-    */
-    int Object::searchForObject(Geometry::V3D& point) const
-    {
-      //
-      // Method - check if point in object, if not search directions along
-      // principle axes using interceptSurface
-      //
-      Geometry::V3D testPt;
-      if (isValid(point))
-        return 1;
-      std::vector<Geometry::V3D> axes;
-      axes.reserve(6);
-      axes.push_back(Geometry::V3D(1, 0, 0));
-      axes.push_back(Geometry::V3D(-1, 0, 0));
-      axes.push_back(Geometry::V3D(0, 1, 0));
-      axes.push_back(Geometry::V3D(0, -1, 0));
-      axes.push_back(Geometry::V3D(0, 0, 1));
-      axes.push_back(Geometry::V3D(0, 0, -1));
-      std::vector<Geometry::V3D>::const_iterator dir;
-      for (dir = axes.begin(); dir != axes.end(); dir++)
-      {
-        Geometry::Track tr(point, (*dir));
-        if (this->interceptSurface(tr) > 0)
-        {
-          point = tr.begin()->entryPoint;
-          return 1;
-        }
-      }
-      return 0;
-    }
-
-    /**
-    * Set the geometry handler for Object
-    * @param[in] h is pointer to the geometry handler. don't delete this pointer in the calling function.
-    */
-    void Object::setGeometryHandler(boost::shared_ptr<GeometryHandler> h)
-    {
-      if (h == NULL)
-        return;
-      handle = h;
-    }
-
-    /**
-    * Draws the Object using geometry handler, If the handler is not set then this function does nothing.
-    */
-    void Object::draw() const
-    {
-      if (handle == NULL)
-        return;
-      //Render the Object
-      handle->Render();
-    }
-
-    /**
-    * Initializes/prepares the object to be rendered, this will generate geometry for object,
-    * If the handler is not set then this function does nothing.
-    */
-    void Object::initDraw() const
-    {
-      if (handle == NULL)
-        return;
-      //Render the Object
-      handle->Initialize();
-    }
-    /**
-    * set vtkGeometryCache writer
-    */
-    void Object::setVtkGeometryCacheWriter(boost::shared_ptr<vtkGeometryCacheWriter> writer)
-    {
-      vtkCacheWriter = writer;
-      updateGeometryHandler();
-    }
-
-    /**
-    * set vtkGeometryCache reader
-    */
-    void Object::setVtkGeometryCacheReader(boost::shared_ptr<vtkGeometryCacheReader> reader)
-    {
-      vtkCacheReader = reader;
-    }
-
-    /**
-    * Returns the geometry handler
-    */
-    boost::shared_ptr<GeometryHandler> Object::getGeometryHandler()
-    {
-      //Check if the geometry handler is upto dated with the cache, if not then
-      //cache it now.
-      return handle;
-    }
-
-    /**
-    * Updates the geometry handler if needed
-    */
-    void Object::updateGeometryHandler()
-    {
-      if (bGeometryCaching)
-        return;
-      bGeometryCaching = true;
-      //Check if the Geometry handler can be handled for cache
-      if (handle == NULL)
-        return;
-      if (!handle->canTriangulate())
-        return;
-      //Check if the reader exist then read the cache
-      if (vtkCacheReader.get() != NULL)
-      {
-        vtkCacheReader->readCacheForObject(this);
-      }
-      //Check if the writer exist then write the cache
-      if (vtkCacheWriter.get() != NULL)
-      {
-        vtkCacheWriter->addObject(this);
-      }
-    }
-
-
-    //Initialize Draw Object
-
-    /**
-    * get number of triangles
-    * @return the number of triangles
-    */
-    int Object::NumberOfTriangles() const
-    {
-      if (handle == NULL)
-        return 0;
-      return handle->NumberOfTriangles();
-    }
-
-    /**
-    * get number of points
-    */
-    int Object::NumberOfPoints() const
-    {
-      if (handle == NULL)
-        return 0;
-      return handle->NumberOfPoints();
-    }
-
-    /**
-    * get vertices
-    */
-    double* Object::getTriangleVertices() const
-    {
-      if (handle == NULL)
-        return NULL;
-      return handle->getTriangleVertices();
-    }
-
-    /**
-    * get faces
-    */
-    int* Object::getTriangleFaces() const
-    {
-      if (handle == NULL)
-        return NULL;
-      return handle->getTriangleFaces();
-    }
-
-    /**
-    * get info on standard shapes
-    */
-    void Object::GetObjectGeom(int& type, std::vector<Geometry::V3D>& vectors, double& myradius,
-      double & myheight) const
-    {
-      type = 0;
-      if (handle == NULL)
-        return;
-      handle->GetObjectGeom(type, vectors, myradius, myheight);
-    }
-
-  } // NAMESPACE Geometry
-} // NAMESPACE Mantid
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidKernel/Logger.h"
+#include "MantidKernel/Strings.h"
+#include "MantidKernel/Exception.h"
+#include "MantidGeometry/Objects/Rules.h"
+#include "MantidGeometry/Objects/Track.h"
+#include "MantidGeometry/Objects/BoundingBox.h"
+
+#include "MantidGeometry/Surfaces/Surface.h"
+#include "MantidGeometry/Surfaces/LineIntersectVisit.h"
+#include "MantidGeometry/Surfaces/Cylinder.h"
+#include "MantidGeometry/Surfaces/Cone.h"
+
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+#include "MantidGeometry/Rendering/CacheGeometryHandler.h"
+#include "MantidGeometry/Rendering/vtkGeometryCacheReader.h"
+#include "MantidGeometry/Rendering/vtkGeometryCacheWriter.h"
+#include "MantidKernel/RegexStrings.h"
+#include "MantidGeometry/Tolerance.h"
+#include <deque>
+#include <stack>
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+
+    Kernel::Logger& Object::PLog(Kernel::Logger::get("Object"));
+
+    /**
+    *  Default constuctor
+    */
+    Object::Object() :
+      ObjName(0), TopRule(0), m_boundingBox(), AABBxMax(0), AABByMax(0), AABBzMax(0),
+      AABBxMin(0), AABByMin(0), AABBzMin(0), boolBounded(false), bGeometryCaching(false),
+      vtkCacheReader(boost::shared_ptr<vtkGeometryCacheReader>()), vtkCacheWriter(boost::shared_ptr<
+      vtkGeometryCacheWriter>())
+    {
+      handle = boost::shared_ptr<GeometryHandler>(new CacheGeometryHandler(this));
+    }
+
+    /**
+     * Copy constructor
+     * @param A :: The object to initialise this copy from
+     */
+    Object::Object(const Object& A) :
+      ObjName(A.ObjName), TopRule((A.TopRule) ? A.TopRule->clone() : NULL), m_boundingBox(A.m_boundingBox),
+      AABBxMax(A.AABBxMax), AABByMax(A.AABByMax), AABBzMax(A.AABBzMax), AABBxMin(A.AABBxMin), 
+      AABByMin(A.AABByMin), AABBzMin(A.AABBzMin), boolBounded(A.boolBounded), 
+      bGeometryCaching(A.bGeometryCaching), vtkCacheReader(A.vtkCacheReader),
+      vtkCacheWriter(A.vtkCacheWriter)
+    {
+      handle = boost::shared_ptr<GeometryHandler>(new CacheGeometryHandler(this));
+
+      // Need to deep-copy the vector of pointers to surfaces
+      std::vector<const Surface*>::const_iterator vc;
+      for (vc = A.SurList.begin(); vc != A.SurList.end(); vc++)
+      {
+        SurList.push_back((*vc)->clone());
+      }
+    }
+
+    /**
+    * Assignment operator
+    * @param A :: Object to copy
+    * @return *this
+    */
+    Object& Object::operator=(const Object& A)
+    {
+      if (this != &A)
+      {
+        ObjName = A.ObjName;
+        delete TopRule;
+        TopRule = (A.TopRule) ? A.TopRule->clone() : 0;
+        AABBxMax = A.AABBxMax;
+        AABByMax = A.AABByMax;
+        AABBzMax = A.AABBzMax;
+        AABBxMin = A.AABBxMin;
+        AABByMin = A.AABByMin;
+        AABBzMin = A.AABBzMin;
+        boolBounded = A.boolBounded;
+        handle = A.handle;
+        bGeometryCaching = A.bGeometryCaching;
+        vtkCacheReader = A.vtkCacheReader;
+        vtkCacheWriter = A.vtkCacheWriter;
+
+        // Need to deep-copy the vector of pointers to surfaces
+        SurList.clear();
+        std::vector<const Surface*>::const_iterator vc;
+        for (vc = A.SurList.begin(); vc != A.SurList.end(); vc++)
+        {
+          SurList.push_back((*vc)->clone());
+        }
+      }
+      return *this;
+    }
+
+    /**
+     * Destructor
+     * Deletes the rule
+     */
+     Object::~Object()
+    {
+      delete TopRule;
+    }
+
+    /**
+     * Returns whether this object has a valid shape
+     * @returns True if the surface list is populated and there is a 
+     * defined TopRule, false otherwise.
+     */
+    bool Object::hasValidShape() const
+    {
+      // Assume invalid shape if object has no 'TopRule' or surfaces
+      return (TopRule != NULL && !SurList.empty());
+    }
+
+     /**
+     * Object line ==  cell
+     * @param ON :: Object name
+     * @param Ln :: Input string must be :  {rules}
+     * @returns 1 on success and zero on failure
+     */
+    int Object::setObject(const int ON, const std::string& Ln)
+    {
+      // Split line
+      std::string part;
+      const boost::regex letters("[a-zA-Z]"); // Does the string now contain junk...
+      if (Mantid::Kernel::Strings::StrLook(Ln, letters))
+        return 0;
+
+      if (procString(Ln)) // this currently does not fail:
+      {
+        SurList.clear();
+        ObjName = ON;
+        return 1;
+      }
+
+      // failure
+      return 0;
+    }
+
+    /**
+    * Returns just the cell string object
+    * @param MList :: List of indexable Hulls
+    * @return Cell String (from TopRule)
+    * @todo Break infinite recusion
+    */
+    void Object::convertComplement(const std::map<int, Object>& MList)
+
+    {
+      this->procString(this->cellStr(MList));
+      return;
+    }
+
+    /**
+    * Returns just the cell string object
+    * @param MList :: List of indexable Hulls
+    * @return Cell String (from TopRule)
+    * @todo Break infinite recusion
+    */
+    std::string Object::cellStr(const std::map<int, Object>& MList) const
+    {
+      std::string TopStr = this->topRule()->display();
+      std::string::size_type pos = TopStr.find('#');
+      std::ostringstream cx;
+      while (pos != std::string::npos)
+      {
+        pos++;
+        cx << TopStr.substr(0, pos); // Everything including the #
+        int cN(0);
+        const int nLen = Mantid::Kernel::Strings::convPartNum(TopStr.substr(pos), cN);
+        if (nLen > 0)
+        {
+          cx << "(";
+          std::map<int, Object>::const_iterator vc = MList.find(cN);
+          if (vc == MList.end())
+            throw Kernel::Exception::NotFoundError(
+            "Not found in the list of indexable hulls (Object::cellStr)", cN);
+          // Not the recusion :: This will cause no end of problems
+          // if there is an infinite loop.
+          cx << vc->second.cellStr(MList);
+          cx << ") ";
+          pos += nLen;
+        }
+        TopStr.erase(0, pos);
+        pos = TopStr.find('#');
+      }
+      cx << TopStr;
+      return cx.str();
+    }
+
+    /*
+     * Calcluate if there are any complementary components in
+     * the object. That is lines with #(....)
+     * @throw ColErr::ExBase :: Error with processing
+     * @param Ln :: Input string must:  ID Mat {Density}  {rules}
+     * @param Cnum :: Number for cell since we don't have one
+     * @retval 0 on no work to do
+     * @retval 1 :: A (maybe there are many) #(...) object found
+     */
+    int Object::complementaryObject(const int Cnum, std::string& Ln)
+    {
+      std::string::size_type posA = Ln.find("#(");
+      // No work to do ?
+      if (posA == std::string::npos)
+        return 0;
+      posA += 2;
+
+      // First get the area to be removed
+      int brackCnt;
+      std::string::size_type posB;
+      posB = Ln.find_first_of("()", posA);
+      if (posB == std::string::npos)
+        throw std::runtime_error("Object::complemenet :: " + Ln);
+
+      brackCnt = (Ln[posB] == '(') ? 1 : 0;
+      while (posB != std::string::npos && brackCnt)
+      {
+        posB = Ln.find_first_of("()", posB);
+        brackCnt += (Ln[posB] == '(') ? 1 : -1;
+        posB++;
+      }
+
+      std::string Part = Ln.substr(posA, posB - (posA + 1));
+
+      ObjName = Cnum;
+      if (procString(Part))
+      {
+        SurList.clear();
+        Ln.erase(posA - 1, posB + 1); //Delete brackets ( Part ) .
+        std::ostringstream CompCell;
+        CompCell << Cnum << " ";
+        Ln.insert(posA - 1, CompCell.str());
+        return 1;
+      }
+
+      throw std::runtime_error("Object::complemenet :: " + Part);
+      return 0;
+    }
+
+    /**
+     * Determine if the object has a complementary object
+     * @retval 1 :: true
+     * @retval 0 :: false
+     */
+    int Object::hasComplement() const
+    {
+
+      if (TopRule)
+        return TopRule->isComplementary();
+      return 0;
+    }
+
+    /**
+    * Goes through the cell objects and adds the pointers
+    * to the SurfPoint keys (using their keyN)
+    * @param Smap :: Map of surface Keys and Surface Pointers
+    * @retval 1000+ keyNumber :: Error with keyNumber
+    * @retval 0 :: successfully populated all the whole Object.
+    */
+    int Object::populate(const std::map<int, Surface*>& Smap)     
+    {
+      std::deque<Rule*> Rst;
+      Rst.push_back(TopRule);
+      Rule* TA, *TB; //Tmp. for storage
+
+      int Rcount(0);
+      while (Rst.size())
+      {
+        Rule* T1 = Rst.front();
+        Rst.pop_front();
+        if (T1)
+        {
+          // if an actual surface process :
+          SurfPoint* KV = dynamic_cast<SurfPoint*> (T1);
+          if (KV)
+          {
+            // Ensure that we have a it in the surface list:
+            std::map<int, Surface*>::const_iterator mf = Smap.find(KV->getKeyN());
+            if (mf != Smap.end())
+            {
+              KV->setKey(mf->second);
+              Rcount++;
+            }
+            else
+            {
+              PLog.error("Error finding key");
+              throw Kernel::Exception::NotFoundError("Object::populate", KV->getKeyN());
+            }
+          }
+          // Not a surface : Determine leaves etc and add to stack:
+          else
+          {
+            TA = T1->leaf(0);
+            TB = T1->leaf(1);
+            if (TA)
+              Rst.push_back(TA);
+            if (TB)
+              Rst.push_back(TB);
+          }
+        }
+      }
+      createSurfaceList();
+      return 0;
+    }
+
+    /**
+    * This takes a string Ln, finds the first two
+    * Rxxx function, determines their join type
+    * make the rule,  adds to vector then removes two old rules from
+    * the vector, updates string
+    * @param Ln :: String to porcess
+    * @param Rlist :: Map of rules (added to)
+    * @param compUnit :: Last computed unit
+    * @retval 0 :: No rule to find
+    * @retval 1 :: A rule has been combined
+    */
+    int Object::procPair(std::string& Ln, std::map<int, Rule*>& Rlist, int& compUnit) const
+
+    {
+      unsigned int Rstart;
+      unsigned int Rend;
+      int Ra, Rb;
+
+      for (Rstart = 0; Rstart < Ln.size() && Ln[Rstart] != 'R'; Rstart++)
+        ;
+
+      int type = 0; //intersection
+
+      //plus 1 to skip 'R'
+      if (Rstart == Ln.size() || !Mantid::Kernel::Strings::convert(Ln.c_str() + Rstart + 1, Ra) || Rlist.find(Ra)
+        == Rlist.end())
+        return 0;
+
+      for (Rend = Rstart + 1; Rend < Ln.size() && Ln[Rend] != 'R'; Rend++)
+      {
+        if (Ln[Rend] == ':')
+          type = 1; //make union
+      }
+      if (Rend == Ln.size() || !Mantid::Kernel::Strings::convert(Ln.c_str() + Rend + 1, Rb) || Rlist.find(Rb) == Rlist.end())
+        return 0;
+
+      // Get end of number (digital)
+      for (Rend++; Rend < Ln.size() && Ln[Rend] >= '0' && Ln[Rend] <= '9'; Rend++)
+        ;
+
+      // Get rules
+      Rule* RRA = Rlist[Ra];
+      Rule* RRB = Rlist[Rb];
+      Rule* Join = (type) ? static_cast<Rule*> (new Union(RRA, RRB)) : static_cast<Rule*> (new Intersection(
+        RRA, RRB));
+      Rlist[Ra] = Join;
+      Rlist.erase(Rlist.find(Rb));
+
+      // Remove space round pair
+      int fb;
+      for (fb = Rstart - 1; fb >= 0 && Ln[fb] == ' '; fb--)
+        ;
+      Rstart = (fb < 0) ? 0 : fb;
+      for (fb = Rend; fb < static_cast<int> (Ln.size()) && Ln[fb] == ' '; fb++)
+        ;
+      Rend = fb;
+
+      std::stringstream cx;
+      cx << " R" << Ra << " ";
+      Ln.replace(Rstart, Rend, cx.str());
+      compUnit = Ra;
+      return 1;
+    }
+
+
+    /**
+    * Takes a Rule item and makes it a complementary group
+    * @param RItem :: to encapsulate
+    * @returns the complementary group
+    */
+    CompGrp* Object::procComp(Rule* RItem) const
+    {
+      if (!RItem)
+        return new CompGrp();
+
+      Rule* Pptr = RItem->getParent();
+      CompGrp* CG = new CompGrp(Pptr, RItem);
+      if (Pptr)
+      {
+        const int Ln = Pptr->findLeaf(RItem);
+        Pptr->setLeaf(CG, Ln);
+      }
+      return CG;
+    }
+
+    /**
+    * - (a) Uses the Surface list to check those surface
+    * that the point is on.
+    * - (b) Creates a list of normals to the touching surfaces
+    * - (c) Checks if normals and "normal pair bisection vector" are contary.
+    * If any are found to be so the the point is
+    * on a surface.
+    * - (d) Return 1 / 0 depending on test (c)
+
+    * \todo This needs to be completed to deal with apex points
+    * In the case of a apex (e.g. top of a pyramid) you need
+    * to interate over all clusters of points on the Snorm
+    * ie. sum of 2, sum of 3 sum of 4. etc. to be certain
+    * to get a correct normal test.
+
+    * @param Pt :: Point to check
+    * @returns 1 if the point is on the surface
+    */
+    bool Object::isOnSide(const Geometry::V3D& Pt) const
+    {
+      std::list<Geometry::V3D> Snorms; // Normals from the constact surface.
+
+      std::vector<const Surface*>::const_iterator vc;
+      for (vc = SurList.begin(); vc != SurList.end(); vc++)
+      {
+        if ((*vc)->onSurface(Pt))
+        {
+          Snorms.push_back((*vc)->surfaceNormal(Pt));
+          // can check direct normal here since one success
+          // means that we can return 1 and finish
+          if (!checkSurfaceValid(Pt, Snorms.back()))
+            return true;
+        }
+      }
+      std::list<Geometry::V3D>::const_iterator xs, ys;
+      Geometry::V3D NormPair;
+      for (xs = Snorms.begin(); xs != Snorms.end(); xs++)
+        for (ys = xs, ys++; ys != Snorms.end(); ys++)
+        {
+          NormPair = (*ys) + (*xs);
+          NormPair.normalize();
+          if (!checkSurfaceValid(Pt, NormPair))
+            return true;
+        }
+        // Ok everthing failed return 0;
+        return false;
+    }
+
+    /**
+    * Determine if a point is valid by checking both
+    * directions of the normal away from the line
+    * A good point will have one valid and one invalid.
+    * @param C :: Point on a basic surface to check
+    * @param Nm :: Direction +/- to be checked
+    * @retval +1 ::  Point outlayer (ie not in object)
+    * @retval -1 :: Point included (e.g at convex intersection)
+    * @retval 0 :: success
+    */
+    int Object::checkSurfaceValid(const Geometry::V3D& C, const Geometry::V3D& Nm) const
+    {
+      int status(0);
+      Geometry::V3D tmp = C + Nm * (Tolerance * 5.0);
+      status = (!isValid(tmp)) ? 1 : -1;
+      tmp -= Nm * (Tolerance * 10.0);
+      status += (!isValid(tmp)) ? 1 : -1;
+      return status / 2;
+    }
+
+    /**
+    * Determines is Pt is within the object or on the surface
+    * @param Pt :: Point to be tested
+    * @returns 1 if true and 0 if false
+    */
+    bool Object::isValid(const Geometry::V3D& Pt) const
+    {
+      if (!TopRule)
+        return false;
+      return TopRule->isValid(Pt);
+    }
+    
+    /**
+     * Determines is group of surface maps are valid
+     * @param SMap :: map of SurfaceNumber : status
+     * @returns 1 if true and 0 if false
+     */
+    bool Object::isValid(const std::map<int, int>& SMap) const
+    {
+      if (!TopRule)
+        return false;
+      return TopRule->isValid(SMap);
+    }
+
+    /**
+    * Uses the topRule* to create a surface list
+    * by iterating throught the tree
+    * @param outFlag :: Sends output to standard error if true
+    * @return 1 (should be number of surfaces)
+    */
+    int Object::createSurfaceList(const int outFlag)
+    {
+      SurList.clear();
+      std::stack<const Rule*> TreeLine;
+      TreeLine.push(TopRule);
+      while (!TreeLine.empty())
+      {
+        const Rule* tmpA = TreeLine.top();
+        TreeLine.pop();
+        const Rule* tmpB = tmpA->leaf(0);
+        const Rule* tmpC = tmpA->leaf(1);
+        if (tmpB || tmpC)
+        {
+          if (tmpB)
+            TreeLine.push(tmpB);
+          if (tmpC)
+            TreeLine.push(tmpC);
+        }
+        else
+        {
+          const SurfPoint* SurX = dynamic_cast<const SurfPoint*> (tmpA);
+          if (SurX)
+          {
+            SurList.push_back(SurX->getKey());
+          }
+        }
+      }
+      if (outFlag)
+      {
+
+        std::vector<const Surface*>::const_iterator vc;
+        for (vc = SurList.begin(); vc != SurList.end(); vc++)
+        {
+          std::cerr << "Point == " << reinterpret_cast<long int> (*vc) << std::endl;
+          std::cerr << (*vc)->getName() << std::endl;
+        }
+      }
+      return 1;
+    }
+
+    /**
+    * Returns all of the numbers of surfaces
+    * @return Surface numbers
+    */
+    std::vector<int> Object::getSurfaceIndex() const
+    {
+      std::vector<int> out;
+      transform(SurList.begin(), SurList.end(), std::insert_iterator<std::vector<int> >(out, out.begin()),
+        std::mem_fun(&Surface::getName));
+      return out;
+    }
+
+    /**
+    * Removes a surface and then re-builds the
+    * cell. This could be done by just removing
+    * the surface from the object.
+    * @param SurfN :: Number for the surface
+    * @return number of surfaces removes
+    */
+    int Object::removeSurface(const int SurfN)
+    {
+      if (!TopRule)
+        return -1;
+      const int cnt = Rule::removeItem(TopRule, SurfN);
+      if (cnt)
+        createSurfaceList();
+      return cnt;
+    }
+
+    /**
+    * Removes a surface and then re-builds the cell.
+    * @param SurfN :: Number for the surface
+    * @param NsurfN :: New surface number
+    * @param SPtr :: Surface pointer for surface NsurfN
+    * @return number of surfaces substituted
+    */
+    int Object::substituteSurf(const int SurfN, const int NsurfN, Surface* SPtr)
+    {
+      if (!TopRule)
+        return 0;
+      const int out = TopRule->substituteSurf(SurfN, NsurfN, SPtr);
+      if (out)
+        createSurfaceList();
+      return out;
+    }
+
+    /**
+    * Prints almost everything
+    */
+    void Object::print() const
+    {
+      std::deque<Rule*> Rst;
+      std::vector<int> Cells;
+      int Rcount(0);
+      Rst.push_back(TopRule);
+      Rule* TA, *TB; //Temp. for storage
+
+      while (Rst.size())
+      {
+        Rule* T1 = Rst.front();
+        Rst.pop_front();
+        if (T1)
+        {
+          Rcount++;
+          SurfPoint* KV = dynamic_cast<SurfPoint*> (T1);
+          if (KV)
+            Cells.push_back(KV->getKeyN());
+          else
+          {
+            TA = T1->leaf(0);
+            TB = T1->leaf(1);
+            if (TA)
+              Rst.push_back(TA);
+            if (TB)
+              Rst.push_back(TB);
+          }
+        }
+      }
+
+      std::cout << "Name == " << ObjName << std::endl;
+      std::cout << "Rules == " << Rcount << std::endl;
+      std::vector<int>::const_iterator mc;
+      std::cout << "Surface included == ";
+      for (mc = Cells.begin(); mc < Cells.end(); mc++)
+      {
+        std::cout << (*mc) << " ";
+      }
+      std::cout << std::endl;
+      return;
+    }
+
+    /**
+     * Takes the complement of a group
+    */
+    void Object::makeComplement() 
+    {
+      Rule* NCG = procComp(TopRule);
+      TopRule = NCG;
+      return;
+    }
+
+    /**
+     * Displays the rule tree
+     */
+    void Object::printTree() const
+    {
+      std::cout << "Name == " << ObjName << std::endl;
+      std::cout << TopRule->display() << std::endl;
+      return;
+    }
+
+    /**
+    * Write the object to a string.
+    * This includes only rules.
+    * @return Object Line
+    */
+    std::string Object::cellCompStr() const
+    {
+      std::ostringstream cx;
+      if (TopRule)
+        cx << TopRule->display();
+      return cx.str();
+    }
+
+    /**
+     * Write the object to a string.
+     * This includes the Name but not post-fix operators
+     * @return Object Line
+     */
+    std::string Object::str() const
+    {
+      std::ostringstream cx;
+      if (TopRule)
+      {
+        cx << ObjName << " ";
+        cx << TopRule->display();
+      }
+      return cx.str();
+    }
+    
+    /**
+    * Write the object to a standard stream
+    * in standard MCNPX output format.
+    * @param OX :: Output stream (required for multiple std::endl)
+    */
+    void Object::write(std::ostream& OX) const
+    {
+      std::ostringstream cx;
+      cx.precision(10);
+      cx << str();
+      Mantid::Kernel::Strings::writeMCNPX(cx.str(), OX);
+      return;
+    }
+
+    /**
+     * Processes the cell string. This is an internal function
+     * to process a string with - String type has #( and ( )
+     * @param Line :: String value
+     * @returns 1 on success
+     */
+    int Object::procString(const std::string& Line)
+    {
+      delete TopRule;
+      TopRule = 0;
+      std::map<int, Rule*> RuleList; //List for the rules
+      int Ridx = 0; //Current index (not necessary size of RuleList
+      // SURFACE REPLACEMENT
+      // Now replace all free planes/Surfaces with appropiate Rxxx
+      SurfPoint* TmpR(0); //Tempory Rule storage position
+      CompObj* TmpO(0); //Tempory Rule storage position
+
+      std::string Ln = Line;
+      // Remove all surfaces :
+      std::ostringstream cx;
+      const std::string::size_type length = Ln.length();
+      for (size_t i = 0; i < length; i++)
+      {
+        if (isdigit(Ln[i]) || Ln[i] == '-')
+        {
+          int SN;
+          int nLen = Mantid::Kernel::Strings::convPartNum(Ln.substr(i), SN);
+          if (!nLen)
+            throw std::invalid_argument("Invalid surface string in Object::ProcString : " + Line);
+          // Process #Number
+          if (i != 0 && Ln[i - 1] == '#')
+          {
+            TmpO = new CompObj();
+            TmpO->setObjN(SN);
+            RuleList[Ridx] = TmpO;
+          }
+          else // Normal rule
+          {
+            TmpR = new SurfPoint();
+            TmpR->setKeyN(SN);
+            RuleList[Ridx] = TmpR;
+          }
+          cx << " R" << Ridx << " ";
+          Ridx++;
+          i += nLen;
+        }
+        if (i < length)
+          cx << Ln[i];
+      }
+      Ln = cx.str();
+      // PROCESS BRACKETS
+
+      int brack_exists = 1;
+      while (brack_exists)
+      {
+        std::string::size_type rbrack = Ln.find(')');
+        std::string::size_type lbrack = Ln.rfind('(', rbrack);
+        if (rbrack != std::string::npos && lbrack != std::string::npos)
+        {
+          std::string Lx = Ln.substr(lbrack + 1, rbrack - lbrack - 1);
+          // Check to see if a #( unit
+          int compUnit(0);
+          while (procPair(Lx, RuleList, compUnit))
+            ;
+          Ln.replace(lbrack, 1 + rbrack - lbrack, Lx);
+          // Search back and find if # ( exists.
+          int hCnt;
+          for (hCnt = lbrack - 1; hCnt >= 0 && isspace(Ln[hCnt]); hCnt--)
+            ;
+          if (hCnt >= 0 && Ln[hCnt] == '#')
+          {
+            RuleList[compUnit] = procComp(RuleList[compUnit]);
+            std::ostringstream px;
+            Ln.erase(hCnt, lbrack - hCnt);
+          }
+        }
+        else
+          brack_exists = 0;
+      }
+      // Do outside loop...
+      int nullInt;
+      while (procPair(Ln, RuleList, nullInt))
+        ;
+
+      if (RuleList.size() != 1)
+      {
+        std::cerr << "Map size not equal to 1 == " << RuleList.size() << std::endl;
+        std::cerr << "Error Object::ProcString : " << Ln << std::endl;
+        exit(1);
+        return 0;
+      }
+      TopRule = (RuleList.begin())->second;
+      return 1;
+    }
+
+    /**
+     * Given a track, fill the track with valid section
+     * @param UT :: Initial track
+     * @return Number of segments added
+    */
+    int Object::interceptSurface(Geometry::Track& UT) const
+    {
+      int cnt = UT.count(); // Number of intersections original track
+      // Loop over all the surfaces.
+      LineIntersectVisit LI(UT.startPoint(), UT.direction());
+      std::vector<const Surface*>::const_iterator vc;
+      for (vc = SurList.begin(); vc != SurList.end(); vc++)
+      {
+        (*vc)->acceptVisitor(LI);
+      }
+      const std::vector<Geometry::V3D>& IPts(LI.getPoints());
+      const std::vector<double>& dPts(LI.getDistance());
+
+      for (unsigned int i = 0; i < IPts.size(); i++)
+      {
+        if (dPts[i] > 0.0) // only interested in forward going points
+        {
+          // Is the point and enterance/exit Point
+          const int flag = calcValidType(IPts[i], UT.direction());
+          UT.addPoint(flag, IPts[i]);
+        }
+      }
+      UT.buildLink();
+      // Return number of track segments added
+      return (UT.count() - cnt);
+    }
+
+    /**
+    * Calculate if a point PT is a valid point on the track
+    * @param Pt :: Point to calculate from.
+    * @param uVec :: Unit vector of the track
+    * @retval 0 :: Not valid / double valid
+    * @retval 1 :: Entry point
+    * @retval -1 :: Exit Point
+    */
+    int Object::calcValidType(const Geometry::V3D& Pt, const Geometry::V3D& uVec) const
+    {
+      const Geometry::V3D shift(uVec * Tolerance * 25.0);
+      const Geometry::V3D testA(Pt - shift);
+      const Geometry::V3D testB(Pt + shift);
+      const int flagA = isValid(testA);
+      const int flagB = isValid(testB);
+      if (!(flagA ^ flagB))
+        return 0;
+      return (flagA) ? -1 : 1;
+    }
+
+    /**
+    * Find soild angle of object wrt the observer. This interface routine calls either
+    * getTriangleSoldiAngle or getRayTraceSolidAngle. Choice made on number of triangles
+    * in the discete surface representation.
+    * @param observer :: point to measure solid angle from
+    * @return :: estimate of solid angle of object. Accuracy depends on object shape.
+    */
+    double Object::solidAngle(const Geometry::V3D& observer) const
+    {
+      if (this->NumberOfTriangles() > 30000)
+        return rayTraceSolidAngle(observer);
+      return triangleSolidAngle(observer);
+    }
+
+    /**
+     * Find solid angle of object wrt the observer with a scaleFactor for the object.
+     * @param observer :: point to measure solid angle from
+     * @param scaleFactor :: V3D giving scaling of the object
+     * @return :: estimate of solid angle of object. Accuracy depends on triangulation quality.
+     */
+    double Object::solidAngle(const Geometry::V3D& observer, const Geometry::V3D& scaleFactor) const
+      
+    {
+      return triangleSolidAngle(observer, scaleFactor);
+    }
+
+    /**
+    * Given an observer position find the approximate solid angle of the object
+    * @param observer :: position of the observer (V3D)
+    * @return Solid angle in steradians (+/- 1% if accurate bounding box available)
+    */
+    double Object::rayTraceSolidAngle(const Geometry::V3D& observer) const
+    {
+      // Calculation of solid angle as numerical double integral over all
+      // angles. This could be optimised further e.g. by
+      // using a light weight version of the interceptSurface method - this does more work
+      // than is necessary in this application.
+      // Accuracy is of the order of 1% for objects with an accurate boundng box, though
+      // less in the case of high aspect ratios.
+      //
+      // resBB controls accuracy and cost - linear accuracy improvement with increasing res,
+      // but quadratic increase in run time. If no bounding box found, resNoBB used instead.
+      const int resNoBB = 200, resBB = 100, resPhiMin = 10;
+      int res = resNoBB, itheta, jphi, resPhi;
+      double theta, phi, sum, dphi, dtheta;
+      if (this->isValid(observer) && !this->isOnSide(observer))
+        return 4 * M_PI; // internal point
+      if (this->isOnSide(observer))
+        return 2 * M_PI; // this is wrong if on an edge
+      // Use BB if available, and if observer not within it
+      const BoundingBox & boundingBox = getBoundingBox();
+      double thetaMax = M_PI;
+      bool useBB = false, usePt = false;
+      Geometry::V3D ptInObject, axis;
+      Quat zToPt;
+
+      // Is the bounding box a reasonable one?
+      if(boundingBox.isNonNull() && !boundingBox.isPointInside(observer))
+      {
+        useBB = usePt = true;
+        thetaMax = boundingBox.angularWidth(observer);
+        ptInObject = boundingBox.centrePoint();
+        res = resBB;
+      }
+      // Try and find a point in the object if useful bounding box not found
+      if (!useBB)
+      {
+        usePt = getPointInObject(ptInObject) == 1;
+      }
+      if (usePt)
+      {
+        // found point in object, now get rotation that maps z axis to this direction from observer
+        ptInObject -= observer;
+        double theta0 = -180.0 / M_PI * acos(ptInObject.Z() / ptInObject.norm());
+        Geometry::V3D zDir(0.0, 0.0, 1.0);
+        axis = ptInObject.cross_prod(zDir);
+        if (axis.nullVector())
+          axis = Geometry::V3D(1.0, 0.0, 0.0);
+        zToPt(theta0, axis);
+      }
+      dtheta = thetaMax / res;
+      int count = 0, countPhi;
+      sum = 0.;
+      for (itheta = 1; itheta <= res; itheta++)
+      {
+        // itegrate theta from 0 to maximum from bounding box, or PI otherwise
+        theta = thetaMax * (itheta - 0.5) / res;
+        resPhi = static_cast<int> (res * sin(theta));
+        if (resPhi < resPhiMin)
+          resPhi = resPhiMin;
+        dphi = 2 * M_PI / resPhi;
+        countPhi = 0;
+        for (jphi = 1; jphi <= resPhi; jphi++)
+        {
+          // integrate phi from 0 to 2*PI
+          phi = 2.0 * M_PI * (jphi - 0.5) / resPhi;
+          Geometry::V3D dir(sin(theta) * cos(phi), sin(theta) * sin(phi), cos(theta));
+          if (usePt)
+            zToPt.rotate(dir);
+          if (!useBB || boundingBox.doesLineIntersect(observer, dir))
+          {
+            Track tr(observer, dir);
+            if (this->interceptSurface(tr) > 0)
+            {
+              sum += dtheta * dphi * sin(theta);
+              countPhi++;
+            }
+          }
+        }
+        // this break (only used in no BB defined) may be wrong if object has hole in middle
+        if (!useBB && countPhi == 0)
+          break;
+        count += countPhi;
+      }
+      if (!useBB && count < resPhiMin + 1)
+      {
+        // case of no bound box defined and object has few if any points in sum
+        // redo integration on finer scale
+        thetaMax = thetaMax * (itheta - 0.5) / res;
+        dtheta = thetaMax / res;
+        sum = 0;
+        for (itheta = 1; itheta <= res; itheta++)
+        {
+          theta = thetaMax * (itheta - 0.5) / res;
+          resPhi = static_cast<int> (res * sin(theta));
+          if (resPhi < resPhiMin)
+            resPhi = resPhiMin;
+          dphi = 2 * M_PI / resPhi;
+          countPhi = 0;
+          for (jphi = 1; jphi <= resPhi; jphi++)
+          {
+            phi = 2.0 * M_PI * (jphi - 0.5) / resPhi;
+            Geometry::V3D dir(sin(theta) * cos(phi), sin(theta) * sin(phi), cos(theta));
+            if (usePt)
+              zToPt.rotate(dir);
+            Track tr(observer, dir);
+            if (this->interceptSurface(tr) > 0)
+            {
+              sum += dtheta * dphi * sin(theta);
+              countPhi++;
+            }
+          }
+          if (countPhi == 0)
+            break;
+        }
+      }
+
+      return sum;
+    }
+
+    /**
+    * Find the solid angle of a triangle defined by vectors a,b,c from point "observer"
+    *
+    * formula (Oosterom) O=2atan([a,b,c]/(abc+(a.b)c+(a.c)b+(b.c)a))
+    *
+    * @param a :: first point of triangle
+    * @param b :: second point of triangle
+    * @param c :: third point of triangle
+    * @param observer :: point from which solid angle is required
+    * @return :: solid angle of triangle in Steradians.
+    */
+    double Object::getTriangleSolidAngle(const V3D& a, const V3D& b, const V3D& c, const V3D& observer) const
+    {
+      const V3D ao = a - observer;
+      const V3D bo = b - observer;
+      const V3D co = c - observer;
+      const double modao = ao.norm();
+      const double modbo = bo.norm();
+      const double modco = co.norm();
+      const double aobo = ao.scalar_prod(bo);
+      const double aoco = ao.scalar_prod(co);
+      const double boco = bo.scalar_prod(co);
+      const double scalTripProd = ao.scalar_prod(bo.cross_prod(co));
+      const double denom = modao * modbo * modco + modco * aobo + modbo * aoco + modao * boco;
+      if (denom != 0.0)
+        return 2.0 * atan(scalTripProd / denom);
+      else
+        return 0.0; // not certain this is correct
+    }
+
+    /**
+    * Find solid angle of object from point "observer" using the
+    * OC triangluation of the object, if it exists
+    *
+    * @param observer :: Point from which solid angle is required
+    * @return the solid angle
+    */
+    double Object::triangleSolidAngle(const V3D& observer) const
+    {
+      //
+      // Because the triangles from OC are not consistently ordered wrt their outward normal
+      // internal points give incorrect solid angle. Surface points are difficult to get right
+      // with the triangle based method. Hence catch these two (unlikely) cases.
+      const BoundingBox & boundingBox = this->getBoundingBox();
+      if( boundingBox.isNonNull() && boundingBox.isPointInside(observer) )
+      {
+        if (isValid(observer))
+        {
+          if (isOnSide(observer))
+            return (2.0 * M_PI);
+          else
+            return (4.0 * M_PI);
+        }
+      }
+
+      int nTri = this->NumberOfTriangles();
+      //
+      // If triangulation is not available fall back to ray tracing method, unless
+      // object is a standard shape, currently: sphere, cuboid or cylinder.
+      //
+      if (nTri == 0)
+      {
+        double height(0.0), radius(0.0);
+        int type(0);
+        std::vector<Mantid::Geometry::V3D> geometry_vectors(0);
+        this->GetObjectGeom(type, geometry_vectors, radius, height);
+        if (type == 1)
+          return CuboidSolidAngle(observer, geometry_vectors);
+        else if (type == 2)
+          return SphereSolidAngle(observer, geometry_vectors, radius);
+        else if (type == 3)
+          return CylinderSolidAngle(observer, geometry_vectors[0], geometry_vectors[1], radius, height);
+        else if (type == 4)
+          return ConeSolidAngle(observer, geometry_vectors[0], geometry_vectors[1], radius, height);
+        return rayTraceSolidAngle(observer);
+      }
+
+      double* vertices = this->getTriangleVertices();
+      int *faces = this->getTriangleFaces();
+      double sangle(0.0), sneg(0.0);
+      for (int i = 0; i < nTri; i++)
+      {
+        int p1 = faces[i * 3], p2 = faces[i * 3 + 1], p3 = faces[i * 3 + 2];
+        V3D vp1 = V3D(vertices[3 * p1], vertices[3 * p1 + 1], vertices[3 * p1 + 2]);
+        V3D vp2 = V3D(vertices[3 * p2], vertices[3 * p2 + 1], vertices[3 * p2 + 2]);
+        V3D vp3 = V3D(vertices[3 * p3], vertices[3 * p3 + 1], vertices[3 * p3 + 2]);
+        double sa = getTriangleSolidAngle(vp1, vp2, vp3, observer);
+        if (sa > 0.0)
+        {
+          sangle += sa;
+        }
+        else
+        {
+          sneg += sa;
+        }
+      }
+      return 0.5 * (sangle - sneg);
+    }
+    /**
+    * Find solid angle of object from point "observer" using the
+    * OC triangluation of the object, if it exists. This method expects a
+    * scaling vector scaleFactor that scales the three axes.
+    *
+    * @param observer :: Point from which solid angle is required.
+    * @param scaleFactor :: V3D each component giving the scaling of the object only (not observer)
+    * @return the solid angle
+    */
+    double Object::triangleSolidAngle(const V3D& observer, const V3D& scaleFactor) const
+    {
+      //
+      // Because the triangles from OC are not consistently ordered wrt their outward normal
+      // internal points give incorrect solid angle. Surface points are difficult to get right
+      // with the triangle based method. Hence catch these two (unlikely) cases.
+      const BoundingBox & boundingBox = this->getBoundingBox();
+      double sx = scaleFactor[0], sy = scaleFactor[1], sz = scaleFactor[2];
+      V3D sObserver = observer;
+      if( boundingBox.isNonNull() && boundingBox.isPointInside(sObserver) )
+      {
+        if (isValid(sObserver))
+        {
+          if (isOnSide(sObserver))
+            return (2.0 * M_PI);
+          else
+            return (4.0 * M_PI);
+        }
+      }
+
+      int nTri = this->NumberOfTriangles();
+      //
+      // If triangulation is not available fall back to ray tracing method, unless
+      // object is a standard shape, currently Cuboid or Sphere. Should add Cylinder
+      // and Cone cases as well.
+      //
+      if (nTri == 0)
+      {
+        double height = 0.0, radius(0.0);
+        int type;
+        std::vector<Geometry::V3D> vectors;
+        this->GetObjectGeom(type, vectors, radius, height);
+        if (type == 1)
+        {
+          for (size_t i = 0; i < vectors.size(); i++)
+            vectors[i] *= scaleFactor;
+          return CuboidSolidAngle(observer, vectors);
+        }
+        else if (type == 2) // this is wrong for scaled objects
+          return SphereSolidAngle(observer, vectors, radius);
+        //
+        // No special case, do the ray trace.
+        //
+        return rayTraceSolidAngle(observer); // so is this
+      }
+      double* vertices = this->getTriangleVertices();
+      int *faces = this->getTriangleFaces();
+      double sangle(0.0), sneg(0.0);
+      for (int i = 0; i < nTri; i++)
+      {
+        int p1 = faces[i * 3], p2 = faces[i * 3 + 1], p3 = faces[i * 3 + 2];
+        // would be more efficient to pre-multiply the vertices (copy of) by these factors beforehand
+        V3D vp1 = V3D(sx * vertices[3 * p1], sy * vertices[3 * p1 + 1], sz * vertices[3 * p1 + 2]);
+        V3D vp2 = V3D(sx * vertices[3 * p2], sy * vertices[3 * p2 + 1], sz * vertices[3 * p2 + 2]);
+        V3D vp3 = V3D(sx * vertices[3 * p3], sy * vertices[3 * p3 + 1], sz * vertices[3 * p3 + 2]);
+        double sa = getTriangleSolidAngle(vp1, vp2, vp3, observer);
+        if (sa > 0.0)
+          sangle += sa;
+        else
+          sneg += sa;
+        //    std::cout << vp1 << vp2 << vp2;
+      }
+      return (0.5 * (sangle - sneg));
+    }
+    /**
+    * Get the solid angle of a sphere defined by centre and radius using an analytic formula
+    * @param observer :: point from which solid angle required
+    * @param vectors :: vector of V3D - the only value is the sphere centre
+    * @param radius :: sphere radius
+    * @return :: solid angle of sphere
+    */
+    double Object::SphereSolidAngle(const V3D observer, const std::vector<Geometry::V3D> vectors,
+      const double radius) const
+    {
+      const double distance = (observer - vectors[0]).norm();
+      const double tol = Tolerance;
+      if (distance > radius + tol)
+      {
+        const double sa = 2.0 * M_PI * (1.0 - cos(asin(radius / distance)));
+        return sa;
+      }
+      else if (distance < radius - tol)
+        return 4.0 * M_PI; // internal point
+      else
+        return 2.0 * M_PI; // surface point
+    }
+
+    /**
+    * Get the solid angle of a cuboid defined by 4 points. Simple use of triangle based soild angle
+    * calculation. Should work for parallel-piped as well.
+    * @param observer :: point from which solid angle required
+    * @param vectors :: vector of V3D - the values are the 4 points used to defined the cuboid
+    * @return :: solid angle of cuboid - good accuracy
+    */
+    double Object::CuboidSolidAngle(const V3D observer, const std::vector<Geometry::V3D> vectors) const
+    {
+      // Build bounding points, then set up map of 12 bounding
+      // triangles defining the 6 surfaces of the bounding box. Using a consistent
+      // ordering of points the "away facing" triangles give -ve contributions to the
+      // solid angle and hence are ignored.
+      std::vector<V3D> pts;
+      pts.reserve(8);
+      Geometry::V3D dx = vectors[1] - vectors[0];
+      Geometry::V3D dz = vectors[3] - vectors[0];
+      pts.push_back(vectors[2]);
+      pts.push_back(vectors[2] + dx);
+      pts.push_back(vectors[1]);
+      pts.push_back(vectors[0]);
+      pts.push_back(vectors[2] + dz);
+      pts.push_back(vectors[2] + dz + dx);
+      pts.push_back(vectors[1] + dz);
+      pts.push_back(vectors[0] + dz);
+
+      const unsigned int ntriangles(12);
+      std::vector<std::vector<int> > triMap(ntriangles, std::vector<int>(3, 0));
+      triMap[0][0] = 1;
+      triMap[0][1] = 4;
+      triMap[0][2] = 3;
+      triMap[1][0] = 3;
+      triMap[1][1] = 2;
+      triMap[1][2] = 1;
+      triMap[2][0] = 5;
+      triMap[2][1] = 6;
+      triMap[2][2] = 7;
+      triMap[3][0] = 7;
+      triMap[3][1] = 8;
+      triMap[3][2] = 5;
+      triMap[4][0] = 1;
+      triMap[4][1] = 2;
+      triMap[4][2] = 6;
+      triMap[5][0] = 6;
+      triMap[5][1] = 5;
+      triMap[5][2] = 1;
+      triMap[6][0] = 2;
+      triMap[6][1] = 3;
+      triMap[6][2] = 7;
+      triMap[7][0] = 7;
+      triMap[7][1] = 6;
+      triMap[7][2] = 2;
+      triMap[8][0] = 3;
+      triMap[8][1] = 4;
+      triMap[8][2] = 8;
+      triMap[9][0] = 8;
+      triMap[9][1] = 7;
+      triMap[9][2] = 3;
+      triMap[10][0] = 1;
+      triMap[10][1] = 5;
+      triMap[10][2] = 8;
+      triMap[11][0] = 8;
+      triMap[11][1] = 4;
+      triMap[11][2] = 1;
+      double sangle = 0.0;
+      for (unsigned int i = 0; i < ntriangles; i++)
+      {
+        double sa = getTriangleSolidAngle(pts[triMap[i][0] - 1], pts[triMap[i][1] - 1],
+          pts[triMap[i][2] - 1], observer);
+        if (sa > 0)
+          sangle += sa;
+      }
+      return (sangle);
+    }
+
+    /**
+    * Calculate the solid angle for a cylinder using triangulation.
+    * @param observer :: The observer's point
+    * @param centre :: The centre vector
+    * @param axis :: The axis vector
+    * @param radius :: The radius
+    * @param height :: The height
+    * @returns The solid angle value
+    */
+    double Object::CylinderSolidAngle(const V3D & observer, const Mantid::Geometry::V3D & centre,
+      const Mantid::Geometry::V3D & axis, const double radius, const double height) const
+    {
+      // The cylinder is broken down into three pieces and then in turn broken down into triangles. Any triangle
+      // that has a normal facing away from the observer gives a negative solid angle and is excluded
+      // For simplicity the triangulation points are constructed such that the cone axis points up the +Z axis
+      // and then rotated into their final position
+      Geometry::V3D axis_direction = axis;
+      axis_direction.normalize();
+      // Required rotation
+      Geometry::V3D initial_axis = Geometry::V3D(0., 0., 1.0);
+      Geometry::V3D final_axis = axis_direction;
+      Geometry::Quat transform(initial_axis, final_axis);
+
+      // Do the base cap which is a point at the centre and nslices points around it
+      const int nslices(Mantid::Geometry::Cylinder::g_nslices);
+      const double angle_step = 2 * M_PI / (double) nslices;
+      // Store the (x,y) points as they are used quite frequently
+      double *cos_table = new double[nslices];
+      double *sin_table = new double[nslices];
+
+      double solid_angle(0.0);
+      for (int sl = 0; sl < nslices; ++sl)
+      {
+        int vertex = sl;
+        cos_table[vertex] = radius * std::cos(angle_step * vertex);
+        sin_table[vertex] = radius * std::sin(angle_step * vertex);
+        Geometry::V3D pt2 = Geometry::V3D(cos_table[vertex], sin_table[vertex], 0.0);
+
+        if (sl < nslices - 1)
+        {
+          vertex = sl + 1;
+          cos_table[vertex] = radius * std::cos(angle_step * vertex);
+          sin_table[vertex] = radius * std::sin(angle_step * vertex);
+        }
+        else
+          vertex = 0;
+
+        Geometry::V3D pt3 = Geometry::V3D(cos_table[vertex], sin_table[vertex], 0.0);
+        transform.rotate(pt2);
+        transform.rotate(pt3);
+        pt2 += centre;
+        pt3 += centre;
+
+        double sa = getTriangleSolidAngle(centre, pt2, pt3, observer);
+        if (sa > 0.0)
+        {
+          solid_angle += sa;
+        }
+      }
+
+      // Second the top cap
+      Geometry::V3D top_centre = Geometry::V3D(0.0, 0.0, height);
+      transform.rotate(top_centre);
+      top_centre += centre;
+
+      for (int sl = 0; sl < nslices; ++sl)
+      {
+        int vertex = sl;
+        Geometry::V3D pt2 = Geometry::V3D(cos_table[vertex], sin_table[vertex], height);
+
+        if (sl < nslices - 1)
+          vertex = sl + 1;
+        else
+          vertex = 0;
+        Geometry::V3D pt3 = Geometry::V3D(cos_table[vertex], sin_table[vertex], height);
+
+        // Rotate them to the correct axis orientation
+        transform.rotate(pt2);
+        transform.rotate(pt3);
+        pt2 += centre;
+        pt3 += centre;
+        double sa = getTriangleSolidAngle(top_centre, pt3, pt2, observer);
+        if (sa > 0.0)
+        {
+          solid_angle += sa;
+        }
+      }
+
+      // Now the main section
+      const int nstacks(Mantid::Geometry::Cylinder::g_nstacks);
+      const double z_step = height / nstacks;
+      double z0(0.0), z1(z_step);
+
+      for (int st = 1; st <= nstacks; ++st)
+      {
+        if (st == nstacks)
+          z1 = height;
+
+        for (int sl = 0; sl < nslices; ++sl)
+        {
+          int vertex = sl;
+          Geometry::V3D pt1 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z0);
+          if (sl < nslices - 1)
+            vertex = sl + 1;
+          else
+            vertex = 0;
+          Geometry::V3D pt3 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z0);
+
+          vertex = sl;
+          Geometry::V3D pt2 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z1);
+          if (sl < nslices - 1)
+            vertex = sl + 1;
+          else
+            vertex = 0;
+          Geometry::V3D pt4 = Geometry::V3D(cos_table[vertex], sin_table[vertex], z1);
+          // Rotations
+          transform.rotate(pt1);
+          transform.rotate(pt3);
+          transform.rotate(pt2);
+          transform.rotate(pt4);
+
+          pt1 += centre;
+          pt2 += centre;
+          pt3 += centre;
+          pt4 += centre;
+
+          double sa = getTriangleSolidAngle(pt1, pt4, pt3, observer);
+          if (sa > 0.0)
+          {
+            solid_angle += sa;
+          }
+          sa = getTriangleSolidAngle(pt1, pt2, pt4, observer);
+          if (sa > 0.0)
+          {
+            solid_angle += sa;
+          }
+        }
+
+        z0 = z1;
+        z1 += z_step;
+      }
+
+      delete[] cos_table;
+      delete[] sin_table;
+      return solid_angle;
+    }
+
+    /**
+    * Calculate the solid angle for a cone using triangulation.
+    * @param observer :: The observer's point
+    * @param centre :: The centre vector
+    * @param axis :: The axis vector
+    * @param radius :: The radius
+    * @param height :: The height
+    * @returns The solid angle value
+    */
+    double Object::ConeSolidAngle(const V3D & observer, const Mantid::Geometry::V3D & centre,
+      const Mantid::Geometry::V3D & axis, const double radius, const double height) const
+    {
+      // The cone is broken down into three pieces and then in turn broken down into triangles. Any triangle
+      // that has a normal facing away from the observer gives a negative solid angle and is excluded
+      // For simplicity the triangulation points are constructed such that the cone axis points up the +Z axis
+      // and then rotated into their final position
+
+      Geometry::V3D axis_direction = axis;
+      axis_direction.normalize();
+      // Required rotation
+      Geometry::V3D initial_axis = Geometry::V3D(0., 0., 1.0);
+      Geometry::V3D final_axis = axis_direction;
+      Geometry::Quat transform(initial_axis, final_axis);
+
+      // Do the base cap which is a point at the centre and nslices points around it
+      const int nslices(Mantid::Geometry::Cone::g_nslices);
+      const double angle_step = 2 * M_PI / (double) nslices;
+      // Store the (x,y) points as they are used quite frequently
+      double *cos_table = new double[nslices];
+      double *sin_table = new double[nslices];
+
+      double solid_angle(0.0);
+      for (int sl = 0; sl < nslices; ++sl)
+      {
+        int vertex = sl;
+        cos_table[vertex] = std::cos(angle_step * vertex);
+        sin_table[vertex] = std::sin(angle_step * vertex);
+        Geometry::V3D pt2 = Geometry::V3D(radius * cos_table[vertex], radius * sin_table[vertex], 0.0);
+
+        if (sl < nslices - 1)
+        {
+          vertex = sl + 1;
+          cos_table[vertex] = std::cos(angle_step * vertex);
+          sin_table[vertex] = std::sin(angle_step * vertex);
+        }
+        else
+          vertex = 0;
+
+        Geometry::V3D pt3 = Geometry::V3D(radius * cos_table[vertex], radius * sin_table[vertex], 0.0);
+
+        transform.rotate(pt2);
+        transform.rotate(pt3);
+        pt2 += centre;
+        pt3 += centre;
+
+        double sa = getTriangleSolidAngle(centre, pt2, pt3, observer);
+        if (sa > 0.0)
+        {
+          solid_angle += sa;
+        }
+      }
+
+      // Now the main section
+      const int nstacks(Mantid::Geometry::Cone::g_nstacks);
+      const double z_step = height / nstacks;
+      const double r_step = height / nstacks;
+      double z0(0.0), z1(z_step);
+      double r0(radius), r1(r0 - r_step);
+
+      for (int st = 1; st < nstacks; ++st)
+      {
+        if (st == nstacks)
+          z1 = height;
+
+        for (int sl = 0; sl < nslices; ++sl)
+        {
+          int vertex = sl;
+          Geometry::V3D pt1 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], z0);
+          if (sl < nslices - 1)
+            vertex = sl + 1;
+          else
+            vertex = 0;
+          Geometry::V3D pt3 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], z0);
+
+          vertex = sl;
+          Geometry::V3D pt2 = Geometry::V3D(r1 * cos_table[vertex], r1 * sin_table[vertex], z1);
+          if (sl < nslices - 1)
+            vertex = sl + 1;
+          else
+            vertex = 0;
+          Geometry::V3D pt4 = Geometry::V3D(r1 * cos_table[vertex], r1 * sin_table[vertex], z1);
+          // Rotations
+          transform.rotate(pt1);
+          transform.rotate(pt3);
+          transform.rotate(pt2);
+          transform.rotate(pt4);
+
+          pt1 += centre;
+          pt2 += centre;
+          pt3 += centre;
+          pt4 += centre;
+          double sa = getTriangleSolidAngle(pt1, pt4, pt3, observer);
+          if (sa > 0.0)
+          {
+            solid_angle += sa;
+          }
+          sa = getTriangleSolidAngle(pt1, pt2, pt4, observer);
+          if (sa > 0.0)
+          {
+            solid_angle += sa;
+          }
+        }
+
+        z0 = z1;
+        r0 = r1;
+        z1 += z_step;
+        r1 -= r_step;
+      }
+
+      // Top section
+      Geometry::V3D top_centre = Geometry::V3D(0.0, 0.0, height) + centre;
+      transform.rotate(top_centre);
+      top_centre += centre;
+
+      for (int sl = 0; sl < nslices; ++sl)
+      {
+        int vertex = sl;
+        Geometry::V3D pt2 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], height);
+
+        if (sl < nslices - 1)
+          vertex = sl + 1;
+        else
+          vertex = 0;
+        Geometry::V3D pt3 = Geometry::V3D(r0 * cos_table[vertex], r0 * sin_table[vertex], height);
+
+        // Rotate them to the correct axis orientation
+        transform.rotate(pt2);
+        transform.rotate(pt3);
+
+        pt2 += centre;
+        pt3 += centre;
+
+        double sa = getTriangleSolidAngle(top_centre, pt3, pt2, observer);
+        if (sa > 0.0)
+        {
+          solid_angle += sa;
+        }
+      }
+
+      delete[] cos_table;
+      delete[] sin_table;
+
+      return solid_angle;
+    }
+
+    /**
+    * Returns an axis-aligned bounding box that will fit the shape
+    * @returns A shared pointer to a bounding box for this shape.
+    */
+    const BoundingBox & Object::getBoundingBox() const
+    {
+      // This member function is const given that from a user's perspective it is perfecly reasonable 
+      // to call it on a const object. We need to call a non-const function in places to update the cache,
+      // which is where the const_cast comes in to play.
+
+      if( !TopRule )
+      {
+        // If we don't know the extent of the object, the bounding box doesn't mean anything
+	const_cast<Object*>(this)->setNullBoundingBox();
+      }
+      else if( m_boundingBox.isNull() )
+      {
+        // First up, construct the trial set of elements from the object's bounding box
+        const double big(1e10); 
+        double minX(-big), maxX(big), minY(-big), maxY(big), minZ(-big), maxZ(big);
+        TopRule->getBoundingBox(maxX, maxY, maxZ, minX, minY, minZ);
+        //If the object is not axis aligned then the bounding box will be poor, in particular the minima are left at the trial start so return 
+        // a null object here
+        if( minX == -big || minY == -big || minZ == -big )
+        {
+	  const_cast<Object*>(this)->setNullBoundingBox();
+        }
+	else
+	{
+	  const_cast<Object*>(this)->defineBoundingBox(maxX, maxY, maxZ, minX, minY, minZ);
+	}
+      }
+      else {}
+      
+      return m_boundingBox;
+    }
+
+    /**
+    * Takes input axis aligned bounding box max and min points and calculates the bounding box for the
+    * object and returns them back in max and min points.
+    *
+    * @param xmax :: Maximum value for the bounding box in x direction
+    * @param ymax :: Maximum value for the bounding box in y direction
+    * @param zmax :: Maximum value for the bounding box in z direction
+    * @param xmin :: Minimum value for the bounding box in x direction
+    * @param ymin :: Minimum value for the bounding box in y direction
+    * @param zmin :: Minimum value for the bounding box in z direction
+    */
+    void Object::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin,
+      double &zmin) const
+    {
+      if (!TopRule)
+      { //If no rule defined then return zero boundbing box
+        xmax = ymax = zmax = xmin = ymin = zmin = 0.0;
+        return;
+      }
+      if (!boolBounded)
+      {
+        AABBxMax = xmax;
+        AABByMax = ymax;
+        AABBzMax = zmax;
+        AABBxMin = xmin;
+        AABByMin = ymin;
+        AABBzMin = zmin;
+        TopRule->getBoundingBox(AABBxMax, AABByMax, AABBzMax, AABBxMin, AABByMin, AABBzMin);
+        if (AABBxMax >= xmax || AABBxMin <= xmin || AABByMax >= ymax || AABByMin <= ymin || AABBzMax >= zmax
+          || AABBzMin <= zmin)
+          boolBounded = false;
+        else
+          boolBounded = true;
+      }
+      xmax = AABBxMax;
+      ymax = AABByMax;
+      zmax = AABBzMax;
+      xmin = AABBxMin;
+      ymin = AABByMin;
+      zmin = AABBzMin;
+    }
+
+    /**
+    * Takes input axis aligned bounding box max and min points and stores these as the
+    * bounding box for the object. Can be used when getBoundingBox fails and bounds are
+    * known.
+    *
+    * @param xMax :: Maximum value for the bounding box in x direction
+    * @param yMax :: Maximum value for the bounding box in y direction
+    * @param zMax :: Maximum value for the bounding box in z direction
+    * @param xMin :: Minimum value for the bounding box in x direction
+    * @param yMin :: Minimum value for the bounding box in y direction
+    * @param zMin :: Minimum value for the bounding box in z direction
+    */
+    void Object::defineBoundingBox(const double &xMax, const double &yMax, const double &zMax,
+      const double &xMin, const double &yMin, const double &zMin)
+    {
+
+      AABBxMax = xMax;
+      AABByMax = yMax;
+      AABBzMax = zMax;
+      AABBxMin = xMin;
+      AABByMin = yMin;
+      AABBzMin = zMin;
+      boolBounded = true;
+
+      m_boundingBox = BoundingBox(xMax, yMax, zMax, xMin, yMin, zMin);
+    }
+    
+    /**
+     * Set the bounding box to a null box
+     */
+    void Object::setNullBoundingBox()
+    {
+      m_boundingBox = BoundingBox();
+    }
+
+    /**
+    Try to find a point that lies within (or on) the object
+    @param[out] point :: on exit set to the point value, if found
+    @return 1 if point found, 0 otherwise
+    */
+    int Object::getPointInObject(Geometry::V3D& point) const
+    {
+      //
+      // Simple method - check if origin in object, if not search directions along
+      // axes. If that fails, try centre of boundingBox, and paths about there
+      //
+      Geometry::V3D testPt(0, 0, 0);
+      if (searchForObject(testPt))
+      {
+        point = testPt;
+        return 1;
+      }
+      // Try centre of bounding box as initial guess, if we have one.
+      const BoundingBox & boundingBox = getBoundingBox();
+      if(boundingBox.isNonNull())
+      {
+        testPt = boundingBox.centrePoint();
+        if (searchForObject(testPt) > 0)
+        {
+          point = testPt;
+          return 1;
+        }
+      }
+
+      return 0;
+    }
+
+    /**
+    * Try to find a point that lies within (or on) the object, given a seed point
+    * @param point :: on entry the seed point, on exit point in object, if found
+    * @return 1 if point found, 0 otherwise
+    */
+    int Object::searchForObject(Geometry::V3D& point) const
+    {
+      //
+      // Method - check if point in object, if not search directions along
+      // principle axes using interceptSurface
+      //
+      Geometry::V3D testPt;
+      if (isValid(point))
+        return 1;
+      std::vector<Geometry::V3D> axes;
+      axes.reserve(6);
+      axes.push_back(Geometry::V3D(1, 0, 0));
+      axes.push_back(Geometry::V3D(-1, 0, 0));
+      axes.push_back(Geometry::V3D(0, 1, 0));
+      axes.push_back(Geometry::V3D(0, -1, 0));
+      axes.push_back(Geometry::V3D(0, 0, 1));
+      axes.push_back(Geometry::V3D(0, 0, -1));
+      std::vector<Geometry::V3D>::const_iterator dir;
+      for (dir = axes.begin(); dir != axes.end(); dir++)
+      {
+        Geometry::Track tr(point, (*dir));
+        if (this->interceptSurface(tr) > 0)
+        {
+          point = tr.begin()->entryPoint;
+          return 1;
+        }
+      }
+      return 0;
+    }
+
+    /**
+    * Set the geometry handler for Object
+    * @param[in] h is pointer to the geometry handler. don't delete this pointer in the calling function.
+    */
+    void Object::setGeometryHandler(boost::shared_ptr<GeometryHandler> h)
+    {
+      if (h == NULL)
+        return;
+      handle = h;
+    }
+
+    /**
+    * Draws the Object using geometry handler, If the handler is not set then this function does nothing.
+    */
+    void Object::draw() const
+    {
+      if (handle == NULL)
+        return;
+      //Render the Object
+      handle->Render();
+    }
+
+    /**
+    * Initializes/prepares the object to be rendered, this will generate geometry for object,
+    * If the handler is not set then this function does nothing.
+    */
+    void Object::initDraw() const
+    {
+      if (handle == NULL)
+        return;
+      //Render the Object
+      handle->Initialize();
+    }
+    /**
+    * set vtkGeometryCache writer
+    */
+    void Object::setVtkGeometryCacheWriter(boost::shared_ptr<vtkGeometryCacheWriter> writer)
+    {
+      vtkCacheWriter = writer;
+      updateGeometryHandler();
+    }
+
+    /**
+    * set vtkGeometryCache reader
+    */
+    void Object::setVtkGeometryCacheReader(boost::shared_ptr<vtkGeometryCacheReader> reader)
+    {
+      vtkCacheReader = reader;
+    }
+
+    /**
+    * Returns the geometry handler
+    */
+    boost::shared_ptr<GeometryHandler> Object::getGeometryHandler()
+    {
+      //Check if the geometry handler is upto dated with the cache, if not then
+      //cache it now.
+      return handle;
+    }
+
+    /**
+    * Updates the geometry handler if needed
+    */
+    void Object::updateGeometryHandler()
+    {
+      if (bGeometryCaching)
+        return;
+      bGeometryCaching = true;
+      //Check if the Geometry handler can be handled for cache
+      if (handle == NULL)
+        return;
+      if (!handle->canTriangulate())
+        return;
+      //Check if the reader exist then read the cache
+      if (vtkCacheReader.get() != NULL)
+      {
+        vtkCacheReader->readCacheForObject(this);
+      }
+      //Check if the writer exist then write the cache
+      if (vtkCacheWriter.get() != NULL)
+      {
+        vtkCacheWriter->addObject(this);
+      }
+    }
+
+
+    //Initialize Draw Object
+
+    /**
+    * get number of triangles
+    * @return the number of triangles
+    */
+    int Object::NumberOfTriangles() const
+    {
+      if (handle == NULL)
+        return 0;
+      return handle->NumberOfTriangles();
+    }
+
+    /**
+    * get number of points
+    */
+    int Object::NumberOfPoints() const
+    {
+      if (handle == NULL)
+        return 0;
+      return handle->NumberOfPoints();
+    }
+
+    /**
+    * get vertices
+    */
+    double* Object::getTriangleVertices() const
+    {
+      if (handle == NULL)
+        return NULL;
+      return handle->getTriangleVertices();
+    }
+
+    /**
+    * get faces
+    */
+    int* Object::getTriangleFaces() const
+    {
+      if (handle == NULL)
+        return NULL;
+      return handle->getTriangleFaces();
+    }
+
+    /**
+    * get info on standard shapes
+    */
+    void Object::GetObjectGeom(int& type, std::vector<Geometry::V3D>& vectors, double& myradius,
+      double & myheight) const
+    {
+      type = 0;
+      if (handle == NULL)
+        return;
+      handle->GetObjectGeom(type, vectors, myradius, myheight);
+    }
+
+  } // NAMESPACE Geometry
+} // NAMESPACE Mantid
diff --git a/Code/Mantid/Framework/Geometry/src/Objects/RuleItems.cpp b/Code/Mantid/Framework/Geometry/src/Objects/RuleItems.cpp
index d1ee9fbed5bf98e698909e889460b14d1d04267d..e04a396771177e681c877ed2417a909255ecfefe 100644
--- a/Code/Mantid/Framework/Geometry/src/Objects/RuleItems.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Objects/RuleItems.cpp
@@ -1,1647 +1,1647 @@
-#include <fstream>
-#include <iomanip>
-#include <iostream>
-#include <complex>
-#include <cmath>
-#include <vector>
-#include <map>
-#include <list>
-#include <stack>
-#include <string>
-#include <sstream>
-#include <algorithm>
-#include <iterator>
-#include <cfloat>
-
-#include "MantidKernel/Logger.h"
-#include "MantidKernel/Exception.h"
-
-#include "MantidGeometry/Math/Triple.h"
-#include "MantidGeometry/Math/Matrix.h"
-#include "MantidGeometry/V3D.h"
-#include "MantidGeometry/Surfaces/Line.h"
-#include "MantidGeometry/Surfaces/BaseVisit.h"
-#include "MantidGeometry/Surfaces/Surface.h"
-#include "MantidGeometry/Objects/Rules.h"
-#include "MantidGeometry/Objects/Object.h"
-
-namespace Mantid
-{
-
-namespace Geometry
-{
-
-Kernel::Logger& Intersection::PLog(Kernel::Logger::get("Intersection"));
-
-Intersection::Intersection() : Rule(),
-  A(0),B(0)
-  /**
-    Standard Constructor with null leaves
-  */
-{}
-
-Intersection::Intersection(Rule* Ix,Rule* Iy) : Rule(),
-  A(Iy),B(Ix)
-  /**
-    Intersection constructor from two Rule ptrs.
-    - Sets A,B's parents to *this
-    - Allowed to control Ix and Iy
-    @param Ix :: Rule A
-    @param Iy :: Rule B 
-  */
-{ 
-  if (A)
-    A->setParent(this);
-  if (B)
-    B->setParent(this); 
-}
-
-Intersection::Intersection(Rule* Parent,Rule* Ix,Rule* Iy) : 
-  Rule(Parent),A(Ix),B(Iy)    
-  /**
-    Intersection constructor from two Rule ptrs 
-    - Sets A,B's parents to *this.
-    @param Parent :: Set the Rule::Parent pointer
-    @param Ix :: Rule A
-    @param Iy :: Rule B 
-  */
-{
-  if (A)
-    A->setParent(this);
-  if (B)
-    B->setParent(this);
-}
-
-Intersection::Intersection(const Intersection& Iother) : 
-  Rule(),A(0),B(0)
-  /**
-    Copy constructor:
-    Does a clone on the sub-tree below
-    @param Iother :: Intersection to copy
-  */
-{
-  if (Iother.A)
-    {
-      A=Iother.A->clone();
-      A->setParent(this);
-    }
-  if (Iother.B)
-    {
-      B=Iother.B->clone();
-      B->setParent(this);
-    }
-}
-
-Intersection&
-Intersection::operator=(const Intersection& Iother) 
-  /**
-    Assignment operator :: Does a deep copy
-    of the leaves of Iother. 
-    @param Iother :: object to copy
-    @return *this
-  */
-{
-  if (this!=&Iother)
-    {
-      Rule::operator=(Iother);
-      // first create new copy all fresh
-      if (Iother.A)
-        {
-	  Rule* Xa=Iother.A->clone();
-	  delete A;
-	  A=Xa;
-	  A->setParent(this);
-	}
-      if (Iother.B)
-        {
-	  Rule* Xb=Iother.B->clone();
-	  delete B;
-	  B=Xb;
-	  B->setParent(this);
-	}
-    }
-  return *this;
-}
-
-Intersection::~Intersection()
-  /**
-    Destructor :: responsible for the two
-    leaf intersections.
-  */
-{
-  delete A;
-  delete B;
-}
-
-Intersection*
-Intersection::clone() const
-  /**
-    Virtual copy constructor
-    @return new Intersection(this)
-  */
-{
-  return new Intersection(*this);
-}
-
-int
-Intersection::isComplementary() const 
-  /**
-    Determine is the rule has complementary
-    sub components
-    @retval 1 :: A side
-    @retval -1 :: B side
-    @retval 0 :: no complement
-  */
-{
-  if (A && A->isComplementary())
-    return 1;
-  if (B && B->isComplementary())
-    return -1;
-
-  return 0;
-}
-
-void
-Intersection::setLeaves(Rule* aR,Rule* bR)
-  /**
-    Replaces a both with a rule.
-    No deletion is carried out but sets the parents.
-    @param aR :: Rule on the left
-    @param bR :: Rule on the right
-  */
-{
-  A=aR;
-  B=bR;
-  if (A)
-    A->setParent(this);
-  if (B)
-    B->setParent(this);
-  return;
-}
-
-void
-Intersection::setLeaf(Rule* nR,const int side)
-  /**
-    Replaces a leaf with a rule.
-    Calls delete on previous leaf.
-    @param nR :: new rule
-    @param side :: side to use 
-    - 0 == LHS 
-    - 1 == RHS
-  */
-{
-  if (side)
-  {
-    delete B;
-    B=nR;
-    if (B)
-      B->setParent(this);
-  }
-  else
-  {
-    delete A;
-    A=nR;
-    if (A)
-      A->setParent(this);
-  }
-  return;
-}
-
-int 
-Intersection::findLeaf(const Rule* R) const
-  /**
-    Finds out if the Rule is the
-    same as the leaves
-    @param R :: Rule pointer to compare
-    @retval 0 / 1 for LHS / RHS leaf 
-    @retval -1 :: neither leaf
-  */
-{
-  if (A==R)
-    return 0;
-  if (B==R)
-    return 1;
-  return -1;
-}
-
-Rule*
-Intersection::findKey(const int KeyN)
-  /**
-    Finds the leaf with the surface number KeyN
-    @param KeyN :: Number to search for
-    @retval 0 :: no leaf with that key number availiable
-    @retval Rule* if an appropiate leaf is found
-  */
-{
-  Rule* PtrOut=(A) ? A->findKey(KeyN) : 0;
-  if (PtrOut)
-    return PtrOut;
-  return (B) ? B->findKey(KeyN) : 0;
-}
-
-std::string
-Intersection::display() const
-  /**
-    Displaces a bracket wrapped object
-    @return Bracketed string
-  */
-{
-  std::string out;
-  if (!A || !B)
-    throw std::runtime_error("Intersection::display incomplete type");
-  if (A->type()==-1)
-    out="("+A->display()+")";
-  else
-    out=A->display();
-
-  out+=" ";
-  
-  if (B->type()==-1)
-    out+="("+B->display()+")";
-  else
-    out+=B->display();
-  return out;
-}
-
-std::string
-Intersection::displayAddress() const
-  /**
-    Debug function that converts the 
-    the intersection ion space delimited unit
-    to denote intersection.
-    @return ( leaf leaf )
-  */
-{
-  std::stringstream cx;
-  cx<<" [ "<<reinterpret_cast<long>(this);
-  if (A && B)
-    cx<<" ] ("+A->displayAddress()+" "+B->displayAddress()+") ";
-  else if (A)
-    cx<<" ] ("+A->displayAddress()+" 0x0 ) ";
-  else if (B)
-    cx<<" ] ( 0x0 "+B->displayAddress()+") ";
-  else
-    cx<<" ] ( 0x0 0x0 ) ";
-  return cx.str();
-}
-
-bool 
-Intersection::isValid(const Geometry::V3D& Vec) const
-  /**
-    Calculates if Vec is within the object
-    @param Vec :: Point to test
-    @retval 1 ::  Vec is within object 
-    @retval 0 :: Vec is outside object.
-  */
-{
-  if (!A || !B)
-    return false;
-  return (A->isValid(Vec) && B->isValid(Vec)) ? true : false;
-}
-
-bool
-Intersection::isValid(const std::map<int,int>& MX) const
-  /**
-    Use MX to determine if the surface truth etc is 
-    valie
-    @param MX :: map of key + logical value XOR sign
-    @retval 1 ::  Both sides are valid
-    @retval 0 :: Either side is invalid.
-  */
-{
-  if (!A || !B)
-    return false;
-  return (A->isValid(MX) && B->isValid(MX)) ? true : false;
-}
-
-int
-Intersection::simplify() 
-  /**
-    Union simplification:: 
-      - -S S simplify to True.
-      - S S simplify to S 
-      - -S -S simplifies to -S
-      @retval 1 if clauses removed (not top)
-      @retval -1 replacement of this intersection is required
-                  by leaf 0
-      @retval 0 if no work to do.
-  */
-{
-  return 0;
-}
-
-/**
- * find the common bounding box with the two childs of intersection
- * @param xmax :: Maximum value for the bounding box in x direction
- * @param ymax :: Maximum value for the bounding box in y direction
- * @param zmax :: Maximum value for the bounding box in z direction
- * @param xmin :: Minimum value for the bounding box in x direction
- * @param ymin :: Minimum value for the bounding box in y direction
- * @param zmin :: Minimum value for the bounding box in z direction
- */
-void Intersection::getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin)
-{
-	double Axmax,Aymax,Azmax,Axmin,Aymin,Azmin;
-	double Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin;
-	Axmax=Bxmax=xmax;
-	Aymax=Bymax=ymax;
-	Azmax=Bzmax=zmax;
-	Axmin=Bxmin=xmin;
-	Aymin=Bymin=ymin;
-	Azmin=Bzmin=zmin;
-	A->getBoundingBox(Axmax,Aymax,Azmax,Axmin,Aymin,Azmin);
-	B->getBoundingBox(Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin);
-	xmax=(Axmax<Bxmax)? Axmax:Bxmax;
-	xmin=(Axmin>Bxmin)? Axmin:Bxmin;
-	ymax=(Aymax<Bymax)? Aymax:Bymax;
-	ymin=(Aymin>Bymin)? Aymin:Bymin;
-	zmax=(Azmax<Bzmax)? Azmax:Bzmax;
-	zmin=(Azmin>Bzmin)? Azmin:Bzmin;
-}
-
-// -------------------------------------------------------------
-//         UNION
-//---------------------------------------------------------------
-
-Kernel::Logger& Union::PLog(Kernel::Logger::get("Union"));
-
-Union::Union() : 
-  Rule(),A(0),B(0)
-  /**
-    Standard Constructor with null leaves
-  */
-{}
-
-Union::Union(Rule* Parent,Rule* Ix,Rule* Iy) : Rule(Parent),
-  A(Ix),B(Iy)    
-  /**
-    Union constructor from two Rule ptrs.
-    - Sets A,B's parents to *this
-    - Allowed to control Ix and Iy
-    @param Parent :: Rule that is the parent to this 
-    @param Ix :: Rule A
-    @param Iy :: Rule B 
-  */
-{
-  if (A)
-    A->setParent(this);
-  if (B)
-    B->setParent(this);
-}
-
-Union::Union(Rule* Ix,Rule* Iy) : Rule(),
-  A(Ix),B(Iy)
-  /**
-    Union constructor from two Rule ptrs 
-    - Sets A,B's parents to *this.
-    - Allowed to control Ix and Iy
-    @param Ix :: Rule A
-    @param Iy :: Rule B 
-  */
-{
-  if (A)
-    A->setParent(this);
-  if (B)
-    B->setParent(this);
-}
-
-Union::Union(const Union& Iother) : Rule(Iother),
-   A(0),B(0)
-  /**
-    Copy constructor:
-    Does a clone on the sub-tree below
-    @param Iother :: Union to copy
-  */
-{
-  if (Iother.A)
-    {
-      A=Iother.A->clone();
-      A->setParent(this);
-    }
-  if (Iother.B)
-    {
-      B=Iother.B->clone();
-      B->setParent(this);
-    }
-}
-
-Union&
-Union::operator=(const Union& Iother) 
-  /**
-    Assignment operator :: Does a deep copy
-    of the leaves of Iother. 
-    @param Iother :: Union to assign to it. 
-    @return this union (copy).
-  */
-{
-  if (this!=&Iother)
-    {
-      Rule::operator=(Iother);
-      // first create new copy all fresh
-      if (Iother.A)
-        {
-	  Rule* Xa=Iother.A->clone();
-	  delete A;
-	  A=Xa;
-	  A->setParent(this);
-	}
-      if (Iother.B)
-        {
-	  Rule* Xb=Iother.B->clone();
-	  delete B;
-	  B=Xb;
-	  B->setParent(this);
-	}
-    }
-  return *this;
-}
-
-Union::~Union()
-  /**
-    Delete operator : deletes both leaves
-  */
-{
-  delete A;
-  delete B;
-}
-
-Union*
-Union::clone() const
-  /**
-    Clone allows deep virtual coping
-    @return new Union copy.
-  */
-{
-  return new Union(*this);
-}
-
-void
-Union::setLeaf(Rule* nR,const int side)
-  /**
-    Replaces a leaf with a rule.
-    Calls delete on previous leaf.
-    @param nR :: new rule
-    @param side :: side to use 
-    - 0 == LHS 
-    - 1 == RHS
-  */
-{
-  if (side)
-  {
-    delete B;
-    B=nR;
-    if (B)
-      B->setParent(this);
-  }
-  else
-  {
-    delete A;
-    A=nR;
-    if (A)
-      A->setParent(this);
-  }
-  return;
-}
-
-void
-Union::setLeaves(Rule* aR,Rule* bR)
-  /**
-     Replaces a both with a rule.
-    No deletion is carried out but sets the parents.
-    @param aR :: Rule on the left
-    @param bR :: Rule on the right
-  */
-{
-  A=aR;
-  B=bR;
-  if (A)
-    A->setParent(this);
-  if (B)
-    B->setParent(this);
-  return;
-}
-
-int 
-Union::findLeaf(const Rule* R) const
-  /**
-    Finds out if the Rule is the
-    same as the leaves
-    @param R :: Rule pointer to compare
-    @retval 0 / 1 for LHS / RHS leaf 
-    @retval -1 :: neither leaf
-  */
-{
-  if (A==R)
-    return 0;
-  if (B==R)
-    return 1;
-  return -1;
-}
-
-Rule*
-Union::findKey(const int KeyN)
-  /**
-    Finds the leaf with the surface number KeyN
-    @param KeyN :: Number to search for
-    @retval 0 :: no leaf with that key number availiable
-    @retval Rule* if an appropiate leaf is found
-  */
-{
-
-  Rule* PtrOut=(A) ? A->findKey(KeyN) : 0;
-  if (PtrOut)
-    return PtrOut;
-  return (B) ? B->findKey(KeyN) : 0;
-}
-
-int
-Union::isComplementary() const 
-  /**
-    Determine is the rule has complementary
-    sub components
-    @retval 1 :: A side
-    @retval -1 :: B side
-    @retval 0 :: no complement
-  */
-{
-  if (A && A->isComplementary())
-    return 1;
-  if (B && B->isComplementary())
-    return -1;
-
-  return 0;
-}
-
-int
-Union::simplify() 
-  /**
-    Union simplification:: 
-      - -S S simplify to True.
-      - S S simplify to S 
-      - -S -S simplifies to -S
-      @retval 1 if clauses removed (not top)
-      @retval -1 replacement of this intersection is required
-                  by leaf 0
-      @retval 0 if no work to do.
-  */
-{
-  if (!commonType())
-    return 0;
-  return 0;
-}
-
-bool 
-Union::isValid(const Geometry::V3D& Vec) const
-  /**
-    Calculates if Vec is within the object
-    @param Vec :: Point to test
-    @retval  1 ::  Vec is within object 
-    @retval 0 :: Vec is outside object.
-  */
-{
-  return ((A && A->isValid(Vec)) ||
-	  (B && B->isValid(Vec))) ? true : false;
-}
-
-bool 
-Union::isValid(const std::map<int,int>& MX) const
-  /**
-    Use MX to determine if the surface truth etc is 
-    valie
-    @param MX :: map of key + logical value XOR sign
-    @retval 1 :: if either side is valid
-    @retval 0 :: Neither side is valid
-  */
-{
-  return ((A && A->isValid(MX)) ||
-	  (B && B->isValid(MX))) ? true : false;
-}
-
-
-std::string
-Union::display() const
-  /**
-    Display the union in the form
-    (N:M) where N,M are the downward
-    rules
-    @return bracket string 
-  */
-{
-  std::string out;
-  if (!A || !B)
-    throw std::runtime_error("Union::display incomplete type");
-  if (A->type()==1)
-    out="("+A->display()+")";
-  else
-    out=A->display();
-
-  out+=" : ";
-  
-  if (B->type()==1)
-    out+="("+B->display()+")";
-  else
-    out+=B->display();
-
-  return out;
-}
-
-std::string
-Union::displayAddress() const
-  /**
-    Returns the memory address as 
-    a string. Displays addresses of leaves
-    @return String of address
-  */
-{
-  std::stringstream cx;
-  cx<<" [ "<<reinterpret_cast<long int>(this);
-
-  if (A && B)
-    cx<<" ] ("+A->displayAddress()+" : "+B->displayAddress()+") ";
-  else if (A)
-    cx<<" ] ("+A->displayAddress()+" : 0x0 ) ";
-  else if (B)
-    cx<<" ] ( 0x0 : "+B->displayAddress()+") ";
-  else
-    cx<<" ] ( 0x0 : 0x0 ) ";
-  return cx.str();
-}
-
-/**
- * gets the bounding box for the Union Rule
- * @param xmax :: Maximum value for the bounding box in x direction
- * @param ymax :: Maximum value for the bounding box in y direction
- * @param zmax :: Maximum value for the bounding box in z direction
- * @param xmin :: Minimum value for the bounding box in x direction
- * @param ymin :: Minimum value for the bounding box in y direction
- * @param zmin :: Minimum value for the bounding box in z direction
- */
-void Union::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
-{
-	double Axmax,Aymax,Azmax,Axmin,Aymin,Azmin;
-	double Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin;
-	Axmax=Bxmax=xmax;
-	Aymax=Bymax=ymax;
-	Azmax=Bzmax=zmax;
-	Axmin=Bxmin=xmin;
-	Aymin=Bymin=ymin;
-	Azmin=Bzmin=zmin;
-	A->getBoundingBox(Axmax,Aymax,Azmax,Axmin,Aymin,Azmin);
-	B->getBoundingBox(Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin);
-	xmax=(Axmax>Bxmax)? Axmax:Bxmax;
-	xmin=(Axmin<Bxmin)? Axmin:Bxmin;
-	ymax=(Aymax>Bymax)? Aymax:Bymax;
-	ymin=(Aymin<Bymin)? Aymin:Bymin;
-	zmax=(Azmax>Bzmax)? Azmax:Bzmax;
-	zmin=(Azmin<Bzmin)? Azmin:Bzmin;
-}
-// -------------------------------------------------------------
-//         SURF KEYS
-//---------------------------------------------------------------
-Kernel::Logger& SurfPoint::PLog(Kernel::Logger::get("SurfPoint"));
-
-SurfPoint::SurfPoint() : Rule(),
-  key(0),keyN(0),sign(1)
-  /**
-    Constructor with null key/number
-  */
-{}
-
-SurfPoint::SurfPoint(const SurfPoint& A) : Rule(),
-  key(A.key->clone()),keyN(A.keyN),sign(A.sign)
-  /**
-    Copy constructor
-    @param A :: SurfPoint to copy
-  */
-{}
-
-SurfPoint*
-SurfPoint::clone() const
-  /**
-    Clone constructor
-    @return new(*this)
-  */
-{
-  return new SurfPoint(*this);
-}
-
-
-SurfPoint&
-SurfPoint::operator=(const SurfPoint& A) 
-  /**
-    Assigment operator
-    @param A :: Object to copy
-    @return *this
-  */
-{
-  if (&A!=this)
-  {
-    delete key;
-    key=A.key->clone();
-    keyN=A.keyN;
-    sign=A.sign;
-  }
-  return *this;
-}
-
-SurfPoint::~SurfPoint()
-  /**
-    Destructor
-  */
-{
-  delete key;
-}
-
-void
-SurfPoint::setLeaf(Rule* nR,const int)
-  /**
-    Replaces a leaf with a rule.
-    This REQUIRES that nR is of type SurfPoint
-    @param nR :: new rule
-    @param int :: ignored
-  */
-{
- // std::cerr<<"Calling SurfPoint setLeaf"<<std::endl;
-  SurfPoint* newX = dynamic_cast<SurfPoint*>(nR);
-  if (newX)
-    *this = *newX;
-  return;
-}
-
-void
-SurfPoint::setLeaves(Rule* aR,Rule*)
-  /**
-    Replaces a leaf with a rule.
-    This REQUIRES that nR is of type SurfPoint
-    @param aR :: new rule
-  */
-{
-  //std::cerr<<"Calling SurfPoint setLeaf"<<std::endl;
-  SurfPoint* newX = dynamic_cast<SurfPoint*>(aR);
-  if (newX)
-    *this = *newX;
-  return;
-}
-
-int
-SurfPoint::findLeaf(const Rule* A) const
-  /**
-    Determines if this rule is a particular leaf value
-    uses memory address to compare.
-    @param A :: Rule to check
-    @return 0 if true and -1 if false.
-  */
-{
-  return (this==A) ? 0 : -1;
-}
-
-Rule*
-SurfPoint::findKey(const int KeyNum)
-  /**
-    Finds the leaf with the surface number KeyN
-    @param KeyNum :: Number to search for
-    @retval 0 :: no leaf with that key number availiable
-    @retval Rule* if an appropiate leaf is found
-  */
-{
-  return (KeyNum==keyN) ? this : 0;
-}
-
-
-void
-SurfPoint::setKeyN(const int Ky)
-  /**
-    Sets the key and the sign 
-    @param Ky :: key value (+/- is used for sign)
-  */
-{
-  sign= (Ky<0) ? -1 : 1;
-  keyN= sign*Ky;
-  return;
-}
-
-void
-SurfPoint::setKey(Surface* Spoint)
-  /**
-    Sets the key pointer. The class takes ownership.
-    @param Spoint :: new key values
-  */
-{
-  if (key!=Spoint) delete key;
-  key=Spoint;
-  return;
-}
-
-int
-SurfPoint::simplify() 
-  /**
-    Impossible to simplify a simple 
-    rule leaf. Therefore returns 0
-    @return 0
-  */
-{
-  return 0;
-}
-
-bool 
-SurfPoint::isValid(const Geometry::V3D& Pt) const
-  /** 
-    Determines if a point  is valid.  
-    @param Pt :: Point to test
-    @retval 1 :: Pt is the +ve side of the 
-    surface or on the surface
-    @retval 0 :: Pt is on the -ve side of the surface
-  */
-{
-  if (key)
-    return (key->side(Pt)*sign)>=0 ? true : false;
-  else
-    return false;
-}
-
-bool 
-SurfPoint::isValid(const std::map<int,int>& MX) const
-  /** 
-    Use MX to determine if the surface truth etc is 
-    valid
-    @param MX :: map of key + logical value XOR sign
-    @return MX.second if key found or 0
-  */
-{
-  std::map<int,int>::const_iterator lx=MX.find(keyN);
-  if (lx==MX.end())
-    return false;
-  const int rtype=(lx->second) ? 1 : -1;
-  return (rtype*sign)>=0 ? true : false;
-}
-
-std::string
-SurfPoint::display() const
-  /**
-    Returns the signed surface number as
-    a string.
-    @return string of the value
-  */
-{
-  std::stringstream cx;
-  cx<<sign*keyN;
-  return cx.str();
-}
-
-std::string
-SurfPoint::displayAddress() const
-  /**
-    Returns the memory address as 
-    a string.
-    @return memory address as string
-  */
-{
-  std::stringstream cx;
-  cx<<reinterpret_cast<long int>(this);
-  return cx.str();
-}
-
-/**
- * gets the bounding box for the surface object held by SurfPoint
- * @param xmax :: Maximum value for the bounding box in x direction
- * @param ymax :: Maximum value for the bounding box in y direction
- * @param zmax :: Maximum value for the bounding box in z direction
- * @param xmin :: Minimum value for the bounding box in x direction
- * @param ymin :: Minimum value for the bounding box in y direction
- * @param zmin :: Minimum value for the bounding box in z direction
- */
-void SurfPoint::getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin)
-{
-	if(this->sign<1) //If the object sign is positive then include
-		key->getBoundingBox(xmax,ymax,zmax,xmin,ymin,zmin);
-	else{ //if the object sign is negative then get the complement
-		std::vector<V3D> listOfPoints;
-		double gXmax,gYmax,gZmax,gXmin,gYmin,gZmin;
-		gXmax=xmax; gYmax=ymax; gZmax=zmax; gXmin=xmin; gYmin=ymin; gZmin=zmin;
-		key->getBoundingBox(gXmax,gYmax,gZmax,gXmin,gYmin,gZmin);
-		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmax));
-		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmax));
-		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmin));
-		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmin));
-		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmin));
-		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmin));
-		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmax));
-		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmax));
-
-		//group box inside input box
-		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmax));
-		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmax));
-		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmin));
-		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmin));
-		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmin));
-		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmin));
-		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmax));
-		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmax));
-
-		if(listOfPoints.size()>0){
-			xmin=ymin=zmin=DBL_MAX;
-			xmax=ymax=zmax=-DBL_MAX;
-			for(std::vector<V3D>::const_iterator it=listOfPoints.begin();it!=listOfPoints.end();++it){
-				//			std::cout<<(*it)<<std::endl;
-				if((*it)[0]<xmin)xmin=(*it)[0];
-				if((*it)[1]<ymin)ymin=(*it)[1];
-				if((*it)[2]<zmin)zmin=(*it)[2];
-				if((*it)[0]>xmax)xmax=(*it)[0];
-				if((*it)[1]>ymax)ymax=(*it)[1];
-				if((*it)[2]>zmax)zmax=(*it)[2];
-			}
-		}
-	}
-}
-//----------------------------------------
-//       COMPOBJ
-//----------------------------------------
-Kernel::Logger& CompObj::PLog(Kernel::Logger::get("CompObj"));
-
-CompObj::CompObj() : Rule(),
-  objN(0),key(0)
-  /**
-    Constructor
-  */
-{}
-
-CompObj::CompObj(const CompObj& A) : 
-  Rule(A),
-  objN(A.objN),key(A.key)
-  /**
-    Standard copy constructor
-    @param A :: CompObj to copy
-   */
-{}
-
-CompObj&
-CompObj::operator=(const CompObj& A)
-  /**
-    Standard assignment operator
-    @param A :: CompObj to copy
-    @return *this
-   */
-{
-  if (this!=&A)
-    {
-      Rule::operator=(A);
-      objN=A.objN;
-      key=A.key;
-    }
-  return *this;
-}
-
-CompObj::~CompObj()
-  /**
-    Destructor
-  */
-{}
-
-
-CompObj*
-CompObj::clone() const
-  /**
-    Clone of this
-    @return new copy of this
-  */
-{
-  return new CompObj(*this);
-}
-
-void
-CompObj::setObjN(const int Ky)
-  /**
-    Sets the object Number
-    @param Ky :: key value 
-  */
-{
-  objN= Ky;
-  return;
-}
-
-void
-CompObj::setObj(Object *val)
-  /**
-    Sets the object
-    @param val :: Object value 
-  */
-{
-  key= val;
-  return;
-}
-
-void
-CompObj::setLeaf(Rule* aR,const int)
-  /**
-    Replaces a leaf with a rule.
-    This REQUIRES that aR is of type SurfPoint
-    @param aR :: new rule
-    @param int :: Null side point
-  */
-{
-  CompObj* newX = dynamic_cast<CompObj*>(aR);
-  // Make a copy
-  if (newX)
-    *this = *newX;
-  return;
-}
-
-void
-CompObj::setLeaves(Rule* aR,Rule* oR)
-  /**
-    Replaces a leaf with a rule.
-    This REQUIRES that aR is of type CompObj
-    @param aR :: new rule
-    @param oR :: Null other rule
-  */
-{
-  (void) oR; //Avoid compiler warning
-
-  CompObj* newX = dynamic_cast<CompObj*>(aR);
-  if (newX)
-    *this = *newX;
-  return;
-}
-
-Rule*
-CompObj::findKey(const int i)
-  /**
-    This is a complementary object and we dont
-    search into CompObjs. If that is needed
-    then the CompObj should be removed first
-    @param i :: Null index key
-    @return 0
-  */
-{
-  (void) i; //Avoid compiler warning
-  return 0;
-}
-
-int
-CompObj::findLeaf(const Rule* A) const
-  /**
-    Check to see if this is a copy of a given Rule
-    @param A :: Rule Ptr to find
-    @retval 0 on success -ve on failuire
-  */
-{
-  return (this==A) ? 0 : -1;
-}
-
-bool
-CompObj::isValid(const Geometry::V3D& Pt) const
-  /** 
-    Determines if a point  is valid.  
-    Checks to see if the point is valid in the object
-    and returns ture if it is not valid.
-    @param  Pt :: Point to test
-    @retval not valid in the object 
-    @retval true is no object is set
-  */
-{
-  if (key)
-    return !(key->isValid(Pt));
-  return true;
-}
-
-bool
-CompObj::isValid(const std::map<int,int>& SMap) const
-  /** 
-    Determines if a point  is valid.  
-    @param  SMap :: map of surface number and true values
-    @return :: status
-  */
-{
-  return (key) ? !(key->isValid(SMap)) : true;
-}
-
-int
-CompObj::simplify() 
-  /**
-    Impossible to simplify a simple 
-    rule leaf. Therefore returns 0
-    @return 0
-  */
-{
-  return 0;
-}
-
-std::string
-CompObj::display() const
-  /**
-    Displays the object as \#number
-    @return string component
-  */
-{
-  std::stringstream cx;
-  cx<<"#"<<objN;
-  return cx.str();
-}
-
-std::string
-CompObj::displayAddress() const
-  /**
-    Returns the memory address as 
-    a string.
-    @return memory address as string
-  */
-{
-  std::stringstream cx;
-  cx<<reinterpret_cast<long int>(this);
-  return cx.str();
-}
-
-/**
- * gets the bounding box for the Complementary of the object
- * @param xmax :: Maximum value for the bounding box in x direction
- * @param ymax :: Maximum value for the bounding box in y direction
- * @param zmax :: Maximum value for the bounding box in z direction
- * @param xmin :: Minimum value for the bounding box in x direction
- * @param ymin :: Minimum value for the bounding box in y direction
- * @param zmin :: Minimum value for the bounding box in z direction
- */
-void CompObj::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
-{
-	///To calculate the bounding box is formed by the all the points in input box that are not in object bounding box
-	///and all the points in object bounding box that are in the input box
-	std::vector<V3D> listOfPoints;
-	double gXmax,gYmax,gZmax,gXmin,gYmin,gZmin;
-	gXmax=xmax; gYmax=ymax; gZmax=zmax; gXmin=xmin; gYmin=ymin; gZmin=zmin;
-	key->getBoundingBox(gXmax,gYmax,gZmax,gXmin,gYmin,gZmin);
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmax));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmax));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmin));
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmin));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmin));
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmin));
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmax));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmax));
-
-	//object box inside input box
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmax));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmax));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmin));
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmin));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmin));
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmin));
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmax));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmax));
-
-	if(listOfPoints.size()>0){
-		xmin=ymin=zmin=DBL_MAX;
-		xmax=ymax=zmax=-DBL_MAX;
-		for(std::vector<V3D>::const_iterator it=listOfPoints.begin();it!=listOfPoints.end();++it){
-			//			std::cout<<(*it)<<std::endl;
-			if((*it)[0]<xmin)xmin=(*it)[0];
-			if((*it)[1]<ymin)ymin=(*it)[1];
-			if((*it)[2]<zmin)zmin=(*it)[2];
-			if((*it)[0]>xmax)xmax=(*it)[0];
-			if((*it)[1]>ymax)ymax=(*it)[1];
-			if((*it)[2]>zmax)zmax=(*it)[2];
-		}
-	}
-}
-
-// -----------------------------------------------
-// BOOLVALUE
-// -----------------------------------------------
-
-Kernel::Logger& BoolValue::PLog(Kernel::Logger::get("BoolValue"));
-
-BoolValue::BoolValue() : Rule(), status(-1)
-  /**
-    Constructor
-  */
-{}
-
-BoolValue::BoolValue(const BoolValue& A) : 
-  Rule(A),
-  status(A.status)
-  /**
-    Copy Constructor 
-    @param A :: BoolValue to copy
-  */
-{}
-
-BoolValue&
-BoolValue::operator=(const BoolValue& A)
-  /**
-    Assignment operator 
-    @param A :: BoolValue to copy
-    @return *this
-   */
-{
-  if (this!=&A)
-    {
-      Rule::operator=(A);
-      status=A.status;
-    }
-  return *this;
-}
-
-BoolValue*
-BoolValue::clone() const
-  /**
-    Clone constructor
-    @return new(*this)
-   */
-{
-  return new BoolValue(*this);
-}
-
-BoolValue::~BoolValue()
-  /**
-    Destructor
-  */
-{}
-
-void
-BoolValue::setLeaf(Rule* aR,const int)
-  /**
-    Replaces a leaf with a rule.
-    This REQUIRES that aR is of type SurfPoint
-    @param aR :: new rule
-    @param int :: Null side point
-  */
-{
-  //std::cerr<<"Calling BoolValue setLeaf"<<std::endl;
-  BoolValue* newX = dynamic_cast<BoolValue*>(aR);
-  if (newX)
-    *this = *newX;
-  return;
-}
-
-void
-BoolValue::setLeaves(Rule* aR,Rule* oR)
-  /**
-    Replaces a leaf with a rule.
-    This REQUIRES that aR is of type SurfPoint
-    @param aR :: new rule
-    @param oR :: Null other rule
-  */
-{
-  (void) oR; //Avoid compiler warning
-  //std::cerr<<"Calling BoolValue setLeaves"<<std::endl;
-  BoolValue* newX = dynamic_cast<BoolValue*>(aR);
-  if (newX)
-    *this = *newX;
-  return;
-}
-
-int
-BoolValue::findLeaf(const Rule* A) const
-{
-  return (this==A) ? 0 : -1;
-}
-
-bool
-BoolValue::isValid(const Geometry::V3D& pt) const
-  /** 
-    Determines if a point  is valid.  
-    @param pt :: Point to test
-    @return status
-  */
-{
-  (void) pt; //Avoid compiler warning
-  return (status > 0 ) ? true : false;
-}
-
-bool
-BoolValue::isValid(const std::map<int,int>& map) const
-  /** 
-    Determines if a point  is valid.  
-    @param map :: map of surface number and true values
-    @return :: status
-  */
-{
-  (void) map; //Avoid compiler warning
-  return (status > 0 ) ? true : false;
-}
-
-int
-BoolValue::simplify()
-  /**
-    Bool value is always in simplest form
-    @return 0 
-  */
-{
-  return 0;
-}
-
-std::string
-BoolValue::display() const
-  /**
-    @return string of 
-     - "true" "false" or "unknown"
-  */
-
-{
-  switch(status) 
-    {
-    case 1:
-      return " True ";
-    case 0:
-      return " False ";
-    }
-  return " Unknown ";
-}
-
-
-std::string
-BoolValue::displayAddress() const
-  /**
-    Returns the memory address as 
-    a string.
-    @return string of Address
-  */
-{
-  std::stringstream cx;
-  cx<<reinterpret_cast<long int>(this);
-  return cx.str();
-}
-  
-/**
- * gets the bounding box for the BoolValue Rule
- * @param xmax :: Maximum value for the bounding box in x direction
- * @param ymax :: Maximum value for the bounding box in y direction
- * @param zmax :: Maximum value for the bounding box in z direction
- * @param xmin :: Minimum value for the bounding box in x direction
- * @param ymin :: Minimum value for the bounding box in y direction
- * @param zmin :: Minimum value for the bounding box in z direction
- */
-void BoolValue::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
-{
-	//Returns what ever bounding box it gets
-  (void) xmax; //Avoid compiler warning
-  (void) ymax; //Avoid compiler warning
-  (void) zmax; //Avoid compiler warning
-  (void) xmin; //Avoid compiler warning
-  (void) ymin; //Avoid compiler warning
-  (void) zmin; //Avoid compiler warning
-}
-
-//----------------------------------------
-//       COMPGRP
-//----------------------------------------
-Kernel::Logger& CompGrp::PLog(Kernel::Logger::get("CompGrp"));
-
-CompGrp::CompGrp() : 
-  Rule(),A(0)
-  /**
-    Constructor
-  */
-{}
-
-CompGrp::CompGrp(Rule* Parent,Rule* Cx) :
-  Rule(Parent),A(Cx)
-  /**
-    Constructor to build parent and complent tree
-    @param Parent :: Rule that is the parent to this
-    @param Cx :: Complementary object below
-  */
-{
-  if (Cx)
-    Cx->setParent(this);
-}
-
-CompGrp::CompGrp(const CompGrp& Cother) : 
-  Rule(Cother),A(0)
-  /**
-    Standard copy constructor
-    @param Cother :: CompGrp to copy
-   */
-{
-  if (Cother.A)
-    {
-      A=Cother.A->clone();
-      A->setParent(this);
-    }
-}
-
-CompGrp&
-CompGrp::operator=(const CompGrp& Cother)
-  /**
-    Standard assignment operator
-    @param Cother :: CompGrp to copy
-    @return *this
-   */
-{
-  if (this!=&Cother)
-    {
-      Rule::operator=(Cother);
-      if (Cother.A)
-        {
-	  Rule* Xa=Cother.A->clone();
-	  delete A;
-	  A=Xa;
-	  A->setParent(this);
-	}
-    }
-  return *this;
-}
-
-CompGrp::~CompGrp()
-  /**
-    Destructor
-  */
-{
-  delete A;
-}
-
-
-CompGrp*
-CompGrp::clone() const
-  /**
-    Clone of this
-    @return new copy of this
-  */
-{
-  return new CompGrp(*this);
-}
-
-void
-CompGrp::setLeaf(Rule* nR,const int side)
-  /**
-    Replaces a leaf with a rule.
-    No deletion is carried out
-    @param nR :: new rule
-    @param side :: side to use 
-  */
-{
-  (void) side; //Avoid compiler warning
-  A=nR;
-  if (A)
-    A->setParent(this);
-  return;
-}
-
-void
-CompGrp::setLeaves(Rule* aR,Rule* oR)
-  /**
-    Replaces a leaf with a rule.
-    No deletion is carried out but sets the parents.
-    @param aR :: new rule
-    @param oR :: Null other rule
-  */
-{
-  (void) oR; //Avoid compiler warning
-  A=aR;
-  if (A)
-    A->setParent(this);
-  return;
-}
-
-Rule*
-CompGrp::findKey(const int i)
-  /**
-    This is a complementary object and we dont
-    search into CompGrps. If that is needed
-    then the CompGrp should be removed first
-    @param i :: Null index key
-    @return 0
-  */
-{
-  (void) i; //Avoid compiler warning
-  return 0;
-}
-
-int
-CompGrp::findLeaf(const Rule* R) const
-  /**
-    Check to see if this is a copy of a given Rule
-    @param R :: Rule Ptr to find
-    @retval 0 on success -ve on failuire
-  */
-{
-  return (A==R) ? 0 : -1;
-}
-
-bool
-CompGrp::isValid(const Geometry::V3D& Pt) const
-  /** 
-    Determines if a point  is valid.  
-    Checks to see if the point is valid in the object
-    and returns ture if it is not valid.
-    Note the complementary reverse in the test.
-    @param  Pt :: Point to test
-    @retval not valid in the object 
-    @retval true is no object is set
-  */
-{
-  // Note:: if isValid is true then return 0:
-  if (A)
-    return !(A->isValid(Pt));
-  return true;
-}
-
-bool
-CompGrp::isValid(const std::map<int,int>& SMap) const
-  /** 
-    Determines if a point  is valid.  
-    @param  SMap :: map of surface number and true values
-    @return :: status
-  */
-{
-  // Note:: if isValid is true then return 0:
-  if (A)
-    return (A->isValid(SMap)) ? false : true;
-  return true;
-}
-
-int
-CompGrp::simplify() 
-  /**
-    Impossible to simplify a simple 
-    rule leaf. Therefore returns 0
-    @return 0
-  */
-{
-  return 0;
-}
-
-std::string
-CompGrp::display() const
-  /**
-    Displays the object as \#number
-    @return string component
-  */
-{
-  std::stringstream cx;
-  if (A)
-    cx<<"#( "<< A->display()<<" )";
-  return cx.str();
-}
-
-
-std::string
-CompGrp::displayAddress() const
-  /**
-    Returns the memory address as 
-    a string.
-    @return memory address as string
-  */
-{
-  std::stringstream cx;
-  cx<<"#( ["<<reinterpret_cast<long int>(this) <<"] ";
-  if (A)
-    cx<<A->displayAddress();
-  else
-    cx<<"0x0";
-  cx<<" ) ";
-  return cx.str();
-}
-
-/**
- * gets the bounding box for the complement of the group
- * @param xmax :: Maximum value for the bounding box in x direction
- * @param ymax :: Maximum value for the bounding box in y direction
- * @param zmax :: Maximum value for the bounding box in z direction
- * @param xmin :: Minimum value for the bounding box in x direction
- * @param ymin :: Minimum value for the bounding box in y direction
- * @param zmin :: Minimum value for the bounding box in z direction
- */
-void CompGrp::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
-{
-	///To calculate the bounding box is formed by the all the points in input box that are not in group bounding box
-	///and all the points in group bounding box that are in the input box
-	std::vector<V3D> listOfPoints;
-	double gXmax,gYmax,gZmax,gXmin,gYmin,gZmin;
-	gXmax=xmax; gYmax=ymax; gZmax=zmax; gXmin=xmin; gYmin=ymin; gZmin=zmin;
-	A->getBoundingBox(gXmax,gYmax,gZmax,gXmin,gYmin,gZmin);
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmax));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmax));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmin));
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmin));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmin));
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmin));
-	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmax));
-	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmax));
-
-	//group box inside input box
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmax));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmax));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmin));
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmin));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmin));
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmin));
-	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmax));
-	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmax));
-
-	if(listOfPoints.size()>0){
-		xmin=ymin=zmin=DBL_MAX;
-		xmax=ymax=zmax=-DBL_MAX;
-		for(std::vector<V3D>::const_iterator it=listOfPoints.begin();it!=listOfPoints.end();++it){
-			//			std::cout<<(*it)<<std::endl;
-			if((*it)[0]<xmin)xmin=(*it)[0];
-			if((*it)[1]<ymin)ymin=(*it)[1];
-			if((*it)[2]<zmin)zmin=(*it)[2];
-			if((*it)[0]>xmax)xmax=(*it)[0];
-			if((*it)[1]>ymax)ymax=(*it)[1];
-			if((*it)[2]>zmax)zmax=(*it)[2];
-		}
-	}
-}
-
-}  // NAMESPACE Geometry
-
-}  // NAMESPACE Mantid
+#include <fstream>
+#include <iomanip>
+#include <iostream>
+#include <complex>
+#include <cmath>
+#include <vector>
+#include <map>
+#include <list>
+#include <stack>
+#include <string>
+#include <sstream>
+#include <algorithm>
+#include <iterator>
+#include <cfloat>
+
+#include "MantidKernel/Logger.h"
+#include "MantidKernel/Exception.h"
+
+#include "MantidGeometry/Math/Triple.h"
+#include "MantidGeometry/Math/Matrix.h"
+#include "MantidGeometry/V3D.h"
+#include "MantidGeometry/Surfaces/Line.h"
+#include "MantidGeometry/Surfaces/BaseVisit.h"
+#include "MantidGeometry/Surfaces/Surface.h"
+#include "MantidGeometry/Objects/Rules.h"
+#include "MantidGeometry/Objects/Object.h"
+
+namespace Mantid
+{
+
+namespace Geometry
+{
+
+Kernel::Logger& Intersection::PLog(Kernel::Logger::get("Intersection"));
+
+Intersection::Intersection() : Rule(),
+  A(0),B(0)
+  /**
+    Standard Constructor with null leaves
+  */
+{}
+
+Intersection::Intersection(Rule* Ix,Rule* Iy) : Rule(),
+  A(Iy),B(Ix)
+  /**
+    Intersection constructor from two Rule ptrs.
+    - Sets A,B's parents to *this
+    - Allowed to control Ix and Iy
+    @param Ix :: Rule A
+    @param Iy :: Rule B 
+  */
+{ 
+  if (A)
+    A->setParent(this);
+  if (B)
+    B->setParent(this); 
+}
+
+Intersection::Intersection(Rule* Parent,Rule* Ix,Rule* Iy) : 
+  Rule(Parent),A(Ix),B(Iy)    
+  /**
+    Intersection constructor from two Rule ptrs 
+    - Sets A,B's parents to *this.
+    @param Parent :: Set the Rule::Parent pointer
+    @param Ix :: Rule A
+    @param Iy :: Rule B 
+  */
+{
+  if (A)
+    A->setParent(this);
+  if (B)
+    B->setParent(this);
+}
+
+Intersection::Intersection(const Intersection& Iother) : 
+  Rule(),A(0),B(0)
+  /**
+    Copy constructor:
+    Does a clone on the sub-tree below
+    @param Iother :: Intersection to copy
+  */
+{
+  if (Iother.A)
+    {
+      A=Iother.A->clone();
+      A->setParent(this);
+    }
+  if (Iother.B)
+    {
+      B=Iother.B->clone();
+      B->setParent(this);
+    }
+}
+
+Intersection&
+Intersection::operator=(const Intersection& Iother) 
+  /**
+    Assignment operator :: Does a deep copy
+    of the leaves of Iother. 
+    @param Iother :: object to copy
+    @return *this
+  */
+{
+  if (this!=&Iother)
+    {
+      Rule::operator=(Iother);
+      // first create new copy all fresh
+      if (Iother.A)
+        {
+	  Rule* Xa=Iother.A->clone();
+	  delete A;
+	  A=Xa;
+	  A->setParent(this);
+	}
+      if (Iother.B)
+        {
+	  Rule* Xb=Iother.B->clone();
+	  delete B;
+	  B=Xb;
+	  B->setParent(this);
+	}
+    }
+  return *this;
+}
+
+Intersection::~Intersection()
+  /**
+    Destructor :: responsible for the two
+    leaf intersections.
+  */
+{
+  delete A;
+  delete B;
+}
+
+Intersection*
+Intersection::clone() const
+  /**
+    Virtual copy constructor
+    @return new Intersection(this)
+  */
+{
+  return new Intersection(*this);
+}
+
+int
+Intersection::isComplementary() const 
+  /**
+    Determine is the rule has complementary
+    sub components
+    @retval 1 :: A side
+    @retval -1 :: B side
+    @retval 0 :: no complement
+  */
+{
+  if (A && A->isComplementary())
+    return 1;
+  if (B && B->isComplementary())
+    return -1;
+
+  return 0;
+}
+
+void
+Intersection::setLeaves(Rule* aR,Rule* bR)
+  /**
+    Replaces a both with a rule.
+    No deletion is carried out but sets the parents.
+    @param aR :: Rule on the left
+    @param bR :: Rule on the right
+  */
+{
+  A=aR;
+  B=bR;
+  if (A)
+    A->setParent(this);
+  if (B)
+    B->setParent(this);
+  return;
+}
+
+void
+Intersection::setLeaf(Rule* nR,const int side)
+  /**
+    Replaces a leaf with a rule.
+    Calls delete on previous leaf.
+    @param nR :: new rule
+    @param side :: side to use 
+    - 0 == LHS 
+    - 1 == RHS
+  */
+{
+  if (side)
+  {
+    delete B;
+    B=nR;
+    if (B)
+      B->setParent(this);
+  }
+  else
+  {
+    delete A;
+    A=nR;
+    if (A)
+      A->setParent(this);
+  }
+  return;
+}
+
+int 
+Intersection::findLeaf(const Rule* R) const
+  /**
+    Finds out if the Rule is the
+    same as the leaves
+    @param R :: Rule pointer to compare
+    @retval 0 / 1 for LHS / RHS leaf 
+    @retval -1 :: neither leaf
+  */
+{
+  if (A==R)
+    return 0;
+  if (B==R)
+    return 1;
+  return -1;
+}
+
+Rule*
+Intersection::findKey(const int KeyN)
+  /**
+    Finds the leaf with the surface number KeyN
+    @param KeyN :: Number to search for
+    @retval 0 :: no leaf with that key number availiable
+    @retval Rule* if an appropiate leaf is found
+  */
+{
+  Rule* PtrOut=(A) ? A->findKey(KeyN) : 0;
+  if (PtrOut)
+    return PtrOut;
+  return (B) ? B->findKey(KeyN) : 0;
+}
+
+std::string
+Intersection::display() const
+  /**
+    Displaces a bracket wrapped object
+    @return Bracketed string
+  */
+{
+  std::string out;
+  if (!A || !B)
+    throw std::runtime_error("Intersection::display incomplete type");
+  if (A->type()==-1)
+    out="("+A->display()+")";
+  else
+    out=A->display();
+
+  out+=" ";
+  
+  if (B->type()==-1)
+    out+="("+B->display()+")";
+  else
+    out+=B->display();
+  return out;
+}
+
+std::string
+Intersection::displayAddress() const
+  /**
+    Debug function that converts the 
+    the intersection ion space delimited unit
+    to denote intersection.
+    @return ( leaf leaf )
+  */
+{
+  std::stringstream cx;
+  cx<<" [ "<<reinterpret_cast<long>(this);
+  if (A && B)
+    cx<<" ] ("+A->displayAddress()+" "+B->displayAddress()+") ";
+  else if (A)
+    cx<<" ] ("+A->displayAddress()+" 0x0 ) ";
+  else if (B)
+    cx<<" ] ( 0x0 "+B->displayAddress()+") ";
+  else
+    cx<<" ] ( 0x0 0x0 ) ";
+  return cx.str();
+}
+
+bool 
+Intersection::isValid(const Geometry::V3D& Vec) const
+  /**
+    Calculates if Vec is within the object
+    @param Vec :: Point to test
+    @retval 1 ::  Vec is within object 
+    @retval 0 :: Vec is outside object.
+  */
+{
+  if (!A || !B)
+    return false;
+  return (A->isValid(Vec) && B->isValid(Vec)) ? true : false;
+}
+
+bool
+Intersection::isValid(const std::map<int,int>& MX) const
+  /**
+    Use MX to determine if the surface truth etc is 
+    valie
+    @param MX :: map of key + logical value XOR sign
+    @retval 1 ::  Both sides are valid
+    @retval 0 :: Either side is invalid.
+  */
+{
+  if (!A || !B)
+    return false;
+  return (A->isValid(MX) && B->isValid(MX)) ? true : false;
+}
+
+int
+Intersection::simplify() 
+  /**
+    Union simplification:: 
+      - -S S simplify to True.
+      - S S simplify to S 
+      - -S -S simplifies to -S
+      @retval 1 if clauses removed (not top)
+      @retval -1 replacement of this intersection is required
+                  by leaf 0
+      @retval 0 if no work to do.
+  */
+{
+  return 0;
+}
+
+/**
+ * find the common bounding box with the two childs of intersection
+ * @param xmax :: Maximum value for the bounding box in x direction
+ * @param ymax :: Maximum value for the bounding box in y direction
+ * @param zmax :: Maximum value for the bounding box in z direction
+ * @param xmin :: Minimum value for the bounding box in x direction
+ * @param ymin :: Minimum value for the bounding box in y direction
+ * @param zmin :: Minimum value for the bounding box in z direction
+ */
+void Intersection::getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin)
+{
+	double Axmax,Aymax,Azmax,Axmin,Aymin,Azmin;
+	double Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin;
+	Axmax=Bxmax=xmax;
+	Aymax=Bymax=ymax;
+	Azmax=Bzmax=zmax;
+	Axmin=Bxmin=xmin;
+	Aymin=Bymin=ymin;
+	Azmin=Bzmin=zmin;
+	A->getBoundingBox(Axmax,Aymax,Azmax,Axmin,Aymin,Azmin);
+	B->getBoundingBox(Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin);
+	xmax=(Axmax<Bxmax)? Axmax:Bxmax;
+	xmin=(Axmin>Bxmin)? Axmin:Bxmin;
+	ymax=(Aymax<Bymax)? Aymax:Bymax;
+	ymin=(Aymin>Bymin)? Aymin:Bymin;
+	zmax=(Azmax<Bzmax)? Azmax:Bzmax;
+	zmin=(Azmin>Bzmin)? Azmin:Bzmin;
+}
+
+// -------------------------------------------------------------
+//         UNION
+//---------------------------------------------------------------
+
+Kernel::Logger& Union::PLog(Kernel::Logger::get("Union"));
+
+Union::Union() : 
+  Rule(),A(0),B(0)
+  /**
+    Standard Constructor with null leaves
+  */
+{}
+
+Union::Union(Rule* Parent,Rule* Ix,Rule* Iy) : Rule(Parent),
+  A(Ix),B(Iy)    
+  /**
+    Union constructor from two Rule ptrs.
+    - Sets A,B's parents to *this
+    - Allowed to control Ix and Iy
+    @param Parent :: Rule that is the parent to this 
+    @param Ix :: Rule A
+    @param Iy :: Rule B 
+  */
+{
+  if (A)
+    A->setParent(this);
+  if (B)
+    B->setParent(this);
+}
+
+Union::Union(Rule* Ix,Rule* Iy) : Rule(),
+  A(Ix),B(Iy)
+  /**
+    Union constructor from two Rule ptrs 
+    - Sets A,B's parents to *this.
+    - Allowed to control Ix and Iy
+    @param Ix :: Rule A
+    @param Iy :: Rule B 
+  */
+{
+  if (A)
+    A->setParent(this);
+  if (B)
+    B->setParent(this);
+}
+
+Union::Union(const Union& Iother) : Rule(Iother),
+   A(0),B(0)
+  /**
+    Copy constructor:
+    Does a clone on the sub-tree below
+    @param Iother :: Union to copy
+  */
+{
+  if (Iother.A)
+    {
+      A=Iother.A->clone();
+      A->setParent(this);
+    }
+  if (Iother.B)
+    {
+      B=Iother.B->clone();
+      B->setParent(this);
+    }
+}
+
+Union&
+Union::operator=(const Union& Iother) 
+  /**
+    Assignment operator :: Does a deep copy
+    of the leaves of Iother. 
+    @param Iother :: Union to assign to it. 
+    @return this union (copy).
+  */
+{
+  if (this!=&Iother)
+    {
+      Rule::operator=(Iother);
+      // first create new copy all fresh
+      if (Iother.A)
+        {
+	  Rule* Xa=Iother.A->clone();
+	  delete A;
+	  A=Xa;
+	  A->setParent(this);
+	}
+      if (Iother.B)
+        {
+	  Rule* Xb=Iother.B->clone();
+	  delete B;
+	  B=Xb;
+	  B->setParent(this);
+	}
+    }
+  return *this;
+}
+
+Union::~Union()
+  /**
+    Delete operator : deletes both leaves
+  */
+{
+  delete A;
+  delete B;
+}
+
+Union*
+Union::clone() const
+  /**
+    Clone allows deep virtual coping
+    @return new Union copy.
+  */
+{
+  return new Union(*this);
+}
+
+void
+Union::setLeaf(Rule* nR,const int side)
+  /**
+    Replaces a leaf with a rule.
+    Calls delete on previous leaf.
+    @param nR :: new rule
+    @param side :: side to use 
+    - 0 == LHS 
+    - 1 == RHS
+  */
+{
+  if (side)
+  {
+    delete B;
+    B=nR;
+    if (B)
+      B->setParent(this);
+  }
+  else
+  {
+    delete A;
+    A=nR;
+    if (A)
+      A->setParent(this);
+  }
+  return;
+}
+
+void
+Union::setLeaves(Rule* aR,Rule* bR)
+  /**
+     Replaces a both with a rule.
+    No deletion is carried out but sets the parents.
+    @param aR :: Rule on the left
+    @param bR :: Rule on the right
+  */
+{
+  A=aR;
+  B=bR;
+  if (A)
+    A->setParent(this);
+  if (B)
+    B->setParent(this);
+  return;
+}
+
+int 
+Union::findLeaf(const Rule* R) const
+  /**
+    Finds out if the Rule is the
+    same as the leaves
+    @param R :: Rule pointer to compare
+    @retval 0 / 1 for LHS / RHS leaf 
+    @retval -1 :: neither leaf
+  */
+{
+  if (A==R)
+    return 0;
+  if (B==R)
+    return 1;
+  return -1;
+}
+
+Rule*
+Union::findKey(const int KeyN)
+  /**
+    Finds the leaf with the surface number KeyN
+    @param KeyN :: Number to search for
+    @retval 0 :: no leaf with that key number availiable
+    @retval Rule* if an appropiate leaf is found
+  */
+{
+
+  Rule* PtrOut=(A) ? A->findKey(KeyN) : 0;
+  if (PtrOut)
+    return PtrOut;
+  return (B) ? B->findKey(KeyN) : 0;
+}
+
+int
+Union::isComplementary() const 
+  /**
+    Determine is the rule has complementary
+    sub components
+    @retval 1 :: A side
+    @retval -1 :: B side
+    @retval 0 :: no complement
+  */
+{
+  if (A && A->isComplementary())
+    return 1;
+  if (B && B->isComplementary())
+    return -1;
+
+  return 0;
+}
+
+int
+Union::simplify() 
+  /**
+    Union simplification:: 
+      - -S S simplify to True.
+      - S S simplify to S 
+      - -S -S simplifies to -S
+      @retval 1 if clauses removed (not top)
+      @retval -1 replacement of this intersection is required
+                  by leaf 0
+      @retval 0 if no work to do.
+  */
+{
+  if (!commonType())
+    return 0;
+  return 0;
+}
+
+bool 
+Union::isValid(const Geometry::V3D& Vec) const
+  /**
+    Calculates if Vec is within the object
+    @param Vec :: Point to test
+    @retval  1 ::  Vec is within object 
+    @retval 0 :: Vec is outside object.
+  */
+{
+  return ((A && A->isValid(Vec)) ||
+	  (B && B->isValid(Vec))) ? true : false;
+}
+
+bool 
+Union::isValid(const std::map<int,int>& MX) const
+  /**
+    Use MX to determine if the surface truth etc is 
+    valie
+    @param MX :: map of key + logical value XOR sign
+    @retval 1 :: if either side is valid
+    @retval 0 :: Neither side is valid
+  */
+{
+  return ((A && A->isValid(MX)) ||
+	  (B && B->isValid(MX))) ? true : false;
+}
+
+
+std::string
+Union::display() const
+  /**
+    Display the union in the form
+    (N:M) where N,M are the downward
+    rules
+    @return bracket string 
+  */
+{
+  std::string out;
+  if (!A || !B)
+    throw std::runtime_error("Union::display incomplete type");
+  if (A->type()==1)
+    out="("+A->display()+")";
+  else
+    out=A->display();
+
+  out+=" : ";
+  
+  if (B->type()==1)
+    out+="("+B->display()+")";
+  else
+    out+=B->display();
+
+  return out;
+}
+
+std::string
+Union::displayAddress() const
+  /**
+    Returns the memory address as 
+    a string. Displays addresses of leaves
+    @return String of address
+  */
+{
+  std::stringstream cx;
+  cx<<" [ "<<reinterpret_cast<long int>(this);
+
+  if (A && B)
+    cx<<" ] ("+A->displayAddress()+" : "+B->displayAddress()+") ";
+  else if (A)
+    cx<<" ] ("+A->displayAddress()+" : 0x0 ) ";
+  else if (B)
+    cx<<" ] ( 0x0 : "+B->displayAddress()+") ";
+  else
+    cx<<" ] ( 0x0 : 0x0 ) ";
+  return cx.str();
+}
+
+/**
+ * gets the bounding box for the Union Rule
+ * @param xmax :: Maximum value for the bounding box in x direction
+ * @param ymax :: Maximum value for the bounding box in y direction
+ * @param zmax :: Maximum value for the bounding box in z direction
+ * @param xmin :: Minimum value for the bounding box in x direction
+ * @param ymin :: Minimum value for the bounding box in y direction
+ * @param zmin :: Minimum value for the bounding box in z direction
+ */
+void Union::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
+{
+	double Axmax,Aymax,Azmax,Axmin,Aymin,Azmin;
+	double Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin;
+	Axmax=Bxmax=xmax;
+	Aymax=Bymax=ymax;
+	Azmax=Bzmax=zmax;
+	Axmin=Bxmin=xmin;
+	Aymin=Bymin=ymin;
+	Azmin=Bzmin=zmin;
+	A->getBoundingBox(Axmax,Aymax,Azmax,Axmin,Aymin,Azmin);
+	B->getBoundingBox(Bxmax,Bymax,Bzmax,Bxmin,Bymin,Bzmin);
+	xmax=(Axmax>Bxmax)? Axmax:Bxmax;
+	xmin=(Axmin<Bxmin)? Axmin:Bxmin;
+	ymax=(Aymax>Bymax)? Aymax:Bymax;
+	ymin=(Aymin<Bymin)? Aymin:Bymin;
+	zmax=(Azmax>Bzmax)? Azmax:Bzmax;
+	zmin=(Azmin<Bzmin)? Azmin:Bzmin;
+}
+// -------------------------------------------------------------
+//         SURF KEYS
+//---------------------------------------------------------------
+Kernel::Logger& SurfPoint::PLog(Kernel::Logger::get("SurfPoint"));
+
+SurfPoint::SurfPoint() : Rule(),
+  key(0),keyN(0),sign(1)
+  /**
+    Constructor with null key/number
+  */
+{}
+
+SurfPoint::SurfPoint(const SurfPoint& A) : Rule(),
+  key(A.key->clone()),keyN(A.keyN),sign(A.sign)
+  /**
+    Copy constructor
+    @param A :: SurfPoint to copy
+  */
+{}
+
+SurfPoint*
+SurfPoint::clone() const
+  /**
+    Clone constructor
+    @return new(*this)
+  */
+{
+  return new SurfPoint(*this);
+}
+
+
+SurfPoint&
+SurfPoint::operator=(const SurfPoint& A) 
+  /**
+    Assigment operator
+    @param A :: Object to copy
+    @return *this
+  */
+{
+  if (&A!=this)
+  {
+    delete key;
+    key=A.key->clone();
+    keyN=A.keyN;
+    sign=A.sign;
+  }
+  return *this;
+}
+
+SurfPoint::~SurfPoint()
+  /**
+    Destructor
+  */
+{
+  delete key;
+}
+
+void
+SurfPoint::setLeaf(Rule* nR,const int)
+  /**
+    Replaces a leaf with a rule.
+    This REQUIRES that nR is of type SurfPoint
+    @param nR :: new rule
+    @param int :: ignored
+  */
+{
+ // std::cerr<<"Calling SurfPoint setLeaf"<<std::endl;
+  SurfPoint* newX = dynamic_cast<SurfPoint*>(nR);
+  if (newX)
+    *this = *newX;
+  return;
+}
+
+void
+SurfPoint::setLeaves(Rule* aR,Rule*)
+  /**
+    Replaces a leaf with a rule.
+    This REQUIRES that nR is of type SurfPoint
+    @param aR :: new rule
+  */
+{
+  //std::cerr<<"Calling SurfPoint setLeaf"<<std::endl;
+  SurfPoint* newX = dynamic_cast<SurfPoint*>(aR);
+  if (newX)
+    *this = *newX;
+  return;
+}
+
+int
+SurfPoint::findLeaf(const Rule* A) const
+  /**
+    Determines if this rule is a particular leaf value
+    uses memory address to compare.
+    @param A :: Rule to check
+    @return 0 if true and -1 if false.
+  */
+{
+  return (this==A) ? 0 : -1;
+}
+
+Rule*
+SurfPoint::findKey(const int KeyNum)
+  /**
+    Finds the leaf with the surface number KeyN
+    @param KeyNum :: Number to search for
+    @retval 0 :: no leaf with that key number availiable
+    @retval Rule* if an appropiate leaf is found
+  */
+{
+  return (KeyNum==keyN) ? this : 0;
+}
+
+
+void
+SurfPoint::setKeyN(const int Ky)
+  /**
+    Sets the key and the sign 
+    @param Ky :: key value (+/- is used for sign)
+  */
+{
+  sign= (Ky<0) ? -1 : 1;
+  keyN= sign*Ky;
+  return;
+}
+
+void
+SurfPoint::setKey(Surface* Spoint)
+  /**
+    Sets the key pointer. The class takes ownership.
+    @param Spoint :: new key values
+  */
+{
+  if (key!=Spoint) delete key;
+  key=Spoint;
+  return;
+}
+
+int
+SurfPoint::simplify() 
+  /**
+    Impossible to simplify a simple 
+    rule leaf. Therefore returns 0
+    @return 0
+  */
+{
+  return 0;
+}
+
+bool 
+SurfPoint::isValid(const Geometry::V3D& Pt) const
+  /** 
+    Determines if a point  is valid.  
+    @param Pt :: Point to test
+    @retval 1 :: Pt is the +ve side of the 
+    surface or on the surface
+    @retval 0 :: Pt is on the -ve side of the surface
+  */
+{
+  if (key)
+    return (key->side(Pt)*sign)>=0 ? true : false;
+  else
+    return false;
+}
+
+bool 
+SurfPoint::isValid(const std::map<int,int>& MX) const
+  /** 
+    Use MX to determine if the surface truth etc is 
+    valid
+    @param MX :: map of key + logical value XOR sign
+    @return MX.second if key found or 0
+  */
+{
+  std::map<int,int>::const_iterator lx=MX.find(keyN);
+  if (lx==MX.end())
+    return false;
+  const int rtype=(lx->second) ? 1 : -1;
+  return (rtype*sign)>=0 ? true : false;
+}
+
+std::string
+SurfPoint::display() const
+  /**
+    Returns the signed surface number as
+    a string.
+    @return string of the value
+  */
+{
+  std::stringstream cx;
+  cx<<sign*keyN;
+  return cx.str();
+}
+
+std::string
+SurfPoint::displayAddress() const
+  /**
+    Returns the memory address as 
+    a string.
+    @return memory address as string
+  */
+{
+  std::stringstream cx;
+  cx<<reinterpret_cast<long int>(this);
+  return cx.str();
+}
+
+/**
+ * gets the bounding box for the surface object held by SurfPoint
+ * @param xmax :: Maximum value for the bounding box in x direction
+ * @param ymax :: Maximum value for the bounding box in y direction
+ * @param zmax :: Maximum value for the bounding box in z direction
+ * @param xmin :: Minimum value for the bounding box in x direction
+ * @param ymin :: Minimum value for the bounding box in y direction
+ * @param zmin :: Minimum value for the bounding box in z direction
+ */
+void SurfPoint::getBoundingBox(double &xmax,double &ymax,double &zmax,double &xmin,double &ymin,double &zmin)
+{
+	if(this->sign<1) //If the object sign is positive then include
+		key->getBoundingBox(xmax,ymax,zmax,xmin,ymin,zmin);
+	else{ //if the object sign is negative then get the complement
+		std::vector<V3D> listOfPoints;
+		double gXmax,gYmax,gZmax,gXmin,gYmin,gZmin;
+		gXmax=xmax; gYmax=ymax; gZmax=zmax; gXmin=xmin; gYmin=ymin; gZmin=zmin;
+		key->getBoundingBox(gXmax,gYmax,gZmax,gXmin,gYmin,gZmin);
+		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmax));
+		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmax));
+		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmin));
+		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmin));
+		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmin));
+		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmin));
+		if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmax));
+		if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmax));
+
+		//group box inside input box
+		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmax));
+		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmax));
+		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmin));
+		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmin));
+		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmin));
+		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmin));
+		if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmax));
+		if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmax));
+
+		if(listOfPoints.size()>0){
+			xmin=ymin=zmin=DBL_MAX;
+			xmax=ymax=zmax=-DBL_MAX;
+			for(std::vector<V3D>::const_iterator it=listOfPoints.begin();it!=listOfPoints.end();++it){
+				//			std::cout<<(*it)<<std::endl;
+				if((*it)[0]<xmin)xmin=(*it)[0];
+				if((*it)[1]<ymin)ymin=(*it)[1];
+				if((*it)[2]<zmin)zmin=(*it)[2];
+				if((*it)[0]>xmax)xmax=(*it)[0];
+				if((*it)[1]>ymax)ymax=(*it)[1];
+				if((*it)[2]>zmax)zmax=(*it)[2];
+			}
+		}
+	}
+}
+//----------------------------------------
+//       COMPOBJ
+//----------------------------------------
+Kernel::Logger& CompObj::PLog(Kernel::Logger::get("CompObj"));
+
+CompObj::CompObj() : Rule(),
+  objN(0),key(0)
+  /**
+    Constructor
+  */
+{}
+
+CompObj::CompObj(const CompObj& A) : 
+  Rule(A),
+  objN(A.objN),key(A.key)
+  /**
+    Standard copy constructor
+    @param A :: CompObj to copy
+   */
+{}
+
+CompObj&
+CompObj::operator=(const CompObj& A)
+  /**
+    Standard assignment operator
+    @param A :: CompObj to copy
+    @return *this
+   */
+{
+  if (this!=&A)
+    {
+      Rule::operator=(A);
+      objN=A.objN;
+      key=A.key;
+    }
+  return *this;
+}
+
+CompObj::~CompObj()
+  /**
+    Destructor
+  */
+{}
+
+
+CompObj*
+CompObj::clone() const
+  /**
+    Clone of this
+    @return new copy of this
+  */
+{
+  return new CompObj(*this);
+}
+
+void
+CompObj::setObjN(const int Ky)
+  /**
+    Sets the object Number
+    @param Ky :: key value 
+  */
+{
+  objN= Ky;
+  return;
+}
+
+void
+CompObj::setObj(Object *val)
+  /**
+    Sets the object
+    @param val :: Object value 
+  */
+{
+  key= val;
+  return;
+}
+
+void
+CompObj::setLeaf(Rule* aR,const int)
+  /**
+    Replaces a leaf with a rule.
+    This REQUIRES that aR is of type SurfPoint
+    @param aR :: new rule
+    @param int :: Null side point
+  */
+{
+  CompObj* newX = dynamic_cast<CompObj*>(aR);
+  // Make a copy
+  if (newX)
+    *this = *newX;
+  return;
+}
+
+void
+CompObj::setLeaves(Rule* aR,Rule* oR)
+  /**
+    Replaces a leaf with a rule.
+    This REQUIRES that aR is of type CompObj
+    @param aR :: new rule
+    @param oR :: Null other rule
+  */
+{
+  (void) oR; //Avoid compiler warning
+
+  CompObj* newX = dynamic_cast<CompObj*>(aR);
+  if (newX)
+    *this = *newX;
+  return;
+}
+
+Rule*
+CompObj::findKey(const int i)
+  /**
+    This is a complementary object and we dont
+    search into CompObjs. If that is needed
+    then the CompObj should be removed first
+    @param i :: Null index key
+    @return 0
+  */
+{
+  (void) i; //Avoid compiler warning
+  return 0;
+}
+
+int
+CompObj::findLeaf(const Rule* A) const
+  /**
+    Check to see if this is a copy of a given Rule
+    @param A :: Rule Ptr to find
+    @retval 0 on success -ve on failuire
+  */
+{
+  return (this==A) ? 0 : -1;
+}
+
+bool
+CompObj::isValid(const Geometry::V3D& Pt) const
+  /** 
+    Determines if a point  is valid.  
+    Checks to see if the point is valid in the object
+    and returns ture if it is not valid.
+    @param  Pt :: Point to test
+    @retval not valid in the object 
+    @retval true is no object is set
+  */
+{
+  if (key)
+    return !(key->isValid(Pt));
+  return true;
+}
+
+bool
+CompObj::isValid(const std::map<int,int>& SMap) const
+  /** 
+    Determines if a point  is valid.  
+    @param  SMap :: map of surface number and true values
+    @return :: status
+  */
+{
+  return (key) ? !(key->isValid(SMap)) : true;
+}
+
+int
+CompObj::simplify() 
+  /**
+    Impossible to simplify a simple 
+    rule leaf. Therefore returns 0
+    @return 0
+  */
+{
+  return 0;
+}
+
+std::string
+CompObj::display() const
+  /**
+    Displays the object as \#number
+    @return string component
+  */
+{
+  std::stringstream cx;
+  cx<<"#"<<objN;
+  return cx.str();
+}
+
+std::string
+CompObj::displayAddress() const
+  /**
+    Returns the memory address as 
+    a string.
+    @return memory address as string
+  */
+{
+  std::stringstream cx;
+  cx<<reinterpret_cast<long int>(this);
+  return cx.str();
+}
+
+/**
+ * gets the bounding box for the Complementary of the object
+ * @param xmax :: Maximum value for the bounding box in x direction
+ * @param ymax :: Maximum value for the bounding box in y direction
+ * @param zmax :: Maximum value for the bounding box in z direction
+ * @param xmin :: Minimum value for the bounding box in x direction
+ * @param ymin :: Minimum value for the bounding box in y direction
+ * @param zmin :: Minimum value for the bounding box in z direction
+ */
+void CompObj::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
+{
+	///To calculate the bounding box is formed by the all the points in input box that are not in object bounding box
+	///and all the points in object bounding box that are in the input box
+	std::vector<V3D> listOfPoints;
+	double gXmax,gYmax,gZmax,gXmin,gYmin,gZmin;
+	gXmax=xmax; gYmax=ymax; gZmax=zmax; gXmin=xmin; gYmin=ymin; gZmin=zmin;
+	key->getBoundingBox(gXmax,gYmax,gZmax,gXmin,gYmin,gZmin);
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmax));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmax));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmin));
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmin));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmin));
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmin));
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmax));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmax));
+
+	//object box inside input box
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmax));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmax));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmin));
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmin));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmin));
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmin));
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmax));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmax));
+
+	if(listOfPoints.size()>0){
+		xmin=ymin=zmin=DBL_MAX;
+		xmax=ymax=zmax=-DBL_MAX;
+		for(std::vector<V3D>::const_iterator it=listOfPoints.begin();it!=listOfPoints.end();++it){
+			//			std::cout<<(*it)<<std::endl;
+			if((*it)[0]<xmin)xmin=(*it)[0];
+			if((*it)[1]<ymin)ymin=(*it)[1];
+			if((*it)[2]<zmin)zmin=(*it)[2];
+			if((*it)[0]>xmax)xmax=(*it)[0];
+			if((*it)[1]>ymax)ymax=(*it)[1];
+			if((*it)[2]>zmax)zmax=(*it)[2];
+		}
+	}
+}
+
+// -----------------------------------------------
+// BOOLVALUE
+// -----------------------------------------------
+
+Kernel::Logger& BoolValue::PLog(Kernel::Logger::get("BoolValue"));
+
+BoolValue::BoolValue() : Rule(), status(-1)
+  /**
+    Constructor
+  */
+{}
+
+BoolValue::BoolValue(const BoolValue& A) : 
+  Rule(A),
+  status(A.status)
+  /**
+    Copy Constructor 
+    @param A :: BoolValue to copy
+  */
+{}
+
+BoolValue&
+BoolValue::operator=(const BoolValue& A)
+  /**
+    Assignment operator 
+    @param A :: BoolValue to copy
+    @return *this
+   */
+{
+  if (this!=&A)
+    {
+      Rule::operator=(A);
+      status=A.status;
+    }
+  return *this;
+}
+
+BoolValue*
+BoolValue::clone() const
+  /**
+    Clone constructor
+    @return new(*this)
+   */
+{
+  return new BoolValue(*this);
+}
+
+BoolValue::~BoolValue()
+  /**
+    Destructor
+  */
+{}
+
+void
+BoolValue::setLeaf(Rule* aR,const int)
+  /**
+    Replaces a leaf with a rule.
+    This REQUIRES that aR is of type SurfPoint
+    @param aR :: new rule
+    @param int :: Null side point
+  */
+{
+  //std::cerr<<"Calling BoolValue setLeaf"<<std::endl;
+  BoolValue* newX = dynamic_cast<BoolValue*>(aR);
+  if (newX)
+    *this = *newX;
+  return;
+}
+
+void
+BoolValue::setLeaves(Rule* aR,Rule* oR)
+  /**
+    Replaces a leaf with a rule.
+    This REQUIRES that aR is of type SurfPoint
+    @param aR :: new rule
+    @param oR :: Null other rule
+  */
+{
+  (void) oR; //Avoid compiler warning
+  //std::cerr<<"Calling BoolValue setLeaves"<<std::endl;
+  BoolValue* newX = dynamic_cast<BoolValue*>(aR);
+  if (newX)
+    *this = *newX;
+  return;
+}
+
+int
+BoolValue::findLeaf(const Rule* A) const
+{
+  return (this==A) ? 0 : -1;
+}
+
+bool
+BoolValue::isValid(const Geometry::V3D& pt) const
+  /** 
+    Determines if a point  is valid.  
+    @param pt :: Point to test
+    @return status
+  */
+{
+  (void) pt; //Avoid compiler warning
+  return (status > 0 ) ? true : false;
+}
+
+bool
+BoolValue::isValid(const std::map<int,int>& map) const
+  /** 
+    Determines if a point  is valid.  
+    @param map :: map of surface number and true values
+    @return :: status
+  */
+{
+  (void) map; //Avoid compiler warning
+  return (status > 0 ) ? true : false;
+}
+
+int
+BoolValue::simplify()
+  /**
+    Bool value is always in simplest form
+    @return 0 
+  */
+{
+  return 0;
+}
+
+std::string
+BoolValue::display() const
+  /**
+    @return string of 
+     - "true" "false" or "unknown"
+  */
+
+{
+  switch(status) 
+    {
+    case 1:
+      return " True ";
+    case 0:
+      return " False ";
+    }
+  return " Unknown ";
+}
+
+
+std::string
+BoolValue::displayAddress() const
+  /**
+    Returns the memory address as 
+    a string.
+    @return string of Address
+  */
+{
+  std::stringstream cx;
+  cx<<reinterpret_cast<long int>(this);
+  return cx.str();
+}
+  
+/**
+ * gets the bounding box for the BoolValue Rule
+ * @param xmax :: Maximum value for the bounding box in x direction
+ * @param ymax :: Maximum value for the bounding box in y direction
+ * @param zmax :: Maximum value for the bounding box in z direction
+ * @param xmin :: Minimum value for the bounding box in x direction
+ * @param ymin :: Minimum value for the bounding box in y direction
+ * @param zmin :: Minimum value for the bounding box in z direction
+ */
+void BoolValue::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
+{
+	//Returns what ever bounding box it gets
+  (void) xmax; //Avoid compiler warning
+  (void) ymax; //Avoid compiler warning
+  (void) zmax; //Avoid compiler warning
+  (void) xmin; //Avoid compiler warning
+  (void) ymin; //Avoid compiler warning
+  (void) zmin; //Avoid compiler warning
+}
+
+//----------------------------------------
+//       COMPGRP
+//----------------------------------------
+Kernel::Logger& CompGrp::PLog(Kernel::Logger::get("CompGrp"));
+
+CompGrp::CompGrp() : 
+  Rule(),A(0)
+  /**
+    Constructor
+  */
+{}
+
+CompGrp::CompGrp(Rule* Parent,Rule* Cx) :
+  Rule(Parent),A(Cx)
+  /**
+    Constructor to build parent and complent tree
+    @param Parent :: Rule that is the parent to this
+    @param Cx :: Complementary object below
+  */
+{
+  if (Cx)
+    Cx->setParent(this);
+}
+
+CompGrp::CompGrp(const CompGrp& Cother) : 
+  Rule(Cother),A(0)
+  /**
+    Standard copy constructor
+    @param Cother :: CompGrp to copy
+   */
+{
+  if (Cother.A)
+    {
+      A=Cother.A->clone();
+      A->setParent(this);
+    }
+}
+
+CompGrp&
+CompGrp::operator=(const CompGrp& Cother)
+  /**
+    Standard assignment operator
+    @param Cother :: CompGrp to copy
+    @return *this
+   */
+{
+  if (this!=&Cother)
+    {
+      Rule::operator=(Cother);
+      if (Cother.A)
+        {
+	  Rule* Xa=Cother.A->clone();
+	  delete A;
+	  A=Xa;
+	  A->setParent(this);
+	}
+    }
+  return *this;
+}
+
+CompGrp::~CompGrp()
+  /**
+    Destructor
+  */
+{
+  delete A;
+}
+
+
+CompGrp*
+CompGrp::clone() const
+  /**
+    Clone of this
+    @return new copy of this
+  */
+{
+  return new CompGrp(*this);
+}
+
+void
+CompGrp::setLeaf(Rule* nR,const int side)
+  /**
+    Replaces a leaf with a rule.
+    No deletion is carried out
+    @param nR :: new rule
+    @param side :: side to use 
+  */
+{
+  (void) side; //Avoid compiler warning
+  A=nR;
+  if (A)
+    A->setParent(this);
+  return;
+}
+
+void
+CompGrp::setLeaves(Rule* aR,Rule* oR)
+  /**
+    Replaces a leaf with a rule.
+    No deletion is carried out but sets the parents.
+    @param aR :: new rule
+    @param oR :: Null other rule
+  */
+{
+  (void) oR; //Avoid compiler warning
+  A=aR;
+  if (A)
+    A->setParent(this);
+  return;
+}
+
+Rule*
+CompGrp::findKey(const int i)
+  /**
+    This is a complementary object and we dont
+    search into CompGrps. If that is needed
+    then the CompGrp should be removed first
+    @param i :: Null index key
+    @return 0
+  */
+{
+  (void) i; //Avoid compiler warning
+  return 0;
+}
+
+int
+CompGrp::findLeaf(const Rule* R) const
+  /**
+    Check to see if this is a copy of a given Rule
+    @param R :: Rule Ptr to find
+    @retval 0 on success -ve on failuire
+  */
+{
+  return (A==R) ? 0 : -1;
+}
+
+bool
+CompGrp::isValid(const Geometry::V3D& Pt) const
+  /** 
+    Determines if a point  is valid.  
+    Checks to see if the point is valid in the object
+    and returns ture if it is not valid.
+    Note the complementary reverse in the test.
+    @param  Pt :: Point to test
+    @retval not valid in the object 
+    @retval true is no object is set
+  */
+{
+  // Note:: if isValid is true then return 0:
+  if (A)
+    return !(A->isValid(Pt));
+  return true;
+}
+
+bool
+CompGrp::isValid(const std::map<int,int>& SMap) const
+  /** 
+    Determines if a point  is valid.  
+    @param  SMap :: map of surface number and true values
+    @return :: status
+  */
+{
+  // Note:: if isValid is true then return 0:
+  if (A)
+    return (A->isValid(SMap)) ? false : true;
+  return true;
+}
+
+int
+CompGrp::simplify() 
+  /**
+    Impossible to simplify a simple 
+    rule leaf. Therefore returns 0
+    @return 0
+  */
+{
+  return 0;
+}
+
+std::string
+CompGrp::display() const
+  /**
+    Displays the object as \#number
+    @return string component
+  */
+{
+  std::stringstream cx;
+  if (A)
+    cx<<"#( "<< A->display()<<" )";
+  return cx.str();
+}
+
+
+std::string
+CompGrp::displayAddress() const
+  /**
+    Returns the memory address as 
+    a string.
+    @return memory address as string
+  */
+{
+  std::stringstream cx;
+  cx<<"#( ["<<reinterpret_cast<long int>(this) <<"] ";
+  if (A)
+    cx<<A->displayAddress();
+  else
+    cx<<"0x0";
+  cx<<" ) ";
+  return cx.str();
+}
+
+/**
+ * gets the bounding box for the complement of the group
+ * @param xmax :: Maximum value for the bounding box in x direction
+ * @param ymax :: Maximum value for the bounding box in y direction
+ * @param zmax :: Maximum value for the bounding box in z direction
+ * @param xmin :: Minimum value for the bounding box in x direction
+ * @param ymin :: Minimum value for the bounding box in y direction
+ * @param zmin :: Minimum value for the bounding box in z direction
+ */
+void CompGrp::getBoundingBox(double &xmax, double &ymax, double &zmax, double &xmin, double &ymin, double &zmin)
+{
+	///To calculate the bounding box is formed by the all the points in input box that are not in group bounding box
+	///and all the points in group bounding box that are in the input box
+	std::vector<V3D> listOfPoints;
+	double gXmax,gYmax,gZmax,gXmin,gYmin,gZmin;
+	gXmax=xmax; gYmax=ymax; gZmax=zmax; gXmin=xmin; gYmin=ymin; gZmin=zmin;
+	A->getBoundingBox(gXmax,gYmax,gZmax,gXmin,gYmin,gZmin);
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmax));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmax));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymax,zmin));
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymax<=gYmax && ymax>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymax,zmin));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmin));
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmin<=gZmax && zmin>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmin));
+	if(!((xmax<=gXmax && xmax>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmax,ymin,zmax));
+	if(!((xmin<=gXmax && xmin>=gXmin)&&(ymin<=gYmax && ymin>=gYmin)&&(zmax<=gZmax && zmax>=gZmin))) listOfPoints.push_back(V3D(xmin,ymin,zmax));
+
+	//group box inside input box
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmax));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmax));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmax,gZmin));
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmax<=ymax && gYmax>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmax!=ymax||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmax,gZmin));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmin));
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmin<=zmax && gZmin>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmin!=zmin)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmin));
+	if(((gXmax<=xmax && gXmax>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmax!=xmax||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmax,gYmin,gZmax));
+	if(((gXmin<=xmax && gXmin>=xmin)&&(gYmin<=ymax && gYmin>=ymin)&&(gZmax<=zmax && gZmax>=zmin))&&(gXmin!=xmin||gYmin!=ymin||gZmax!=zmax)) listOfPoints.push_back(V3D(gXmin,gYmin,gZmax));
+
+	if(listOfPoints.size()>0){
+		xmin=ymin=zmin=DBL_MAX;
+		xmax=ymax=zmax=-DBL_MAX;
+		for(std::vector<V3D>::const_iterator it=listOfPoints.begin();it!=listOfPoints.end();++it){
+			//			std::cout<<(*it)<<std::endl;
+			if((*it)[0]<xmin)xmin=(*it)[0];
+			if((*it)[1]<ymin)ymin=(*it)[1];
+			if((*it)[2]<zmin)zmin=(*it)[2];
+			if((*it)[0]>xmax)xmax=(*it)[0];
+			if((*it)[1]>ymax)ymax=(*it)[1];
+			if((*it)[2]>zmax)zmax=(*it)[2];
+		}
+	}
+}
+
+}  // NAMESPACE Geometry
+
+}  // NAMESPACE Mantid
diff --git a/Code/Mantid/Framework/Geometry/src/Objects/ShapeFactory.cpp b/Code/Mantid/Framework/Geometry/src/Objects/ShapeFactory.cpp
index a367f69257ffe20e61a6e38649833386f56629a9..158339cc17dfe02ec8bddcc0e9703b1effbeb030 100644
--- a/Code/Mantid/Framework/Geometry/src/Objects/ShapeFactory.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Objects/ShapeFactory.cpp
@@ -1,1066 +1,1066 @@
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidGeometry/Objects/ShapeFactory.h"
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidGeometry/Surfaces/Quadratic.h"
-#include "MantidGeometry/Surfaces/Surface.h"
-#include "MantidGeometry/Surfaces/Sphere.h"
-#include "MantidGeometry/Surfaces/Plane.h"
-#include "MantidGeometry/Surfaces/Cylinder.h"
-#include "MantidGeometry/Surfaces/Cone.h"
-#include "MantidGeometry/Surfaces/Torus.h"
-#include "MantidGeometry/Rendering/GluGeometryHandler.h"
-
-#include <Poco/AutoPtr.h>
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-
-using Poco::XML::DOMParser;
-using Poco::XML::Document;
-using Poco::XML::Element;
-using Poco::XML::Node;
-using Poco::XML::NodeList;
-using Poco::XML::NodeIterator;
-using Poco::XML::NodeFilter;
-
-namespace Mantid
-{
-namespace Geometry
-{
-
-using namespace Kernel;
-
-Logger& ShapeFactory::g_log = Logger::get("ShapeFactory");
-
-/// Empty default constructor
-ShapeFactory::ShapeFactory()
-{}
-
-/** Creates a geometric object directly from a XML shape string
- *
- *  @param shapeXML :: XML shape string
- *  @return A shared pointer to a geometric shape (defaults to an 'empty' shape if XML tags contain no geo. info.) 
- */
-boost::shared_ptr<Object> ShapeFactory::createShape(std::string shapeXML)
-{
-	//wrap in a type tag
-	shapeXML = "<type name=\"userShape\"> " + shapeXML + " </type>";
-
-	// Set up the DOM parser and parse xml string
-	DOMParser pParser;
-	Document* pDoc;
-	try
-	{
-		pDoc = pParser.parseString(shapeXML);
-	}
-	catch(...)
-	{
-		g_log.warning("Unable to parse XML string " + shapeXML + " . Empty geometry Object is returned.");
-    boost::shared_ptr<Object> retVal = boost::shared_ptr<Object>(new Object);
-    return retVal;
-	}
-	// Get pointer to root element
-	Element* pRootElem = pDoc->documentElement();
-
-	//convert into a Geometry object
-	boost::shared_ptr<Object> retVal = createShape(pRootElem);
-	pDoc->release();
-
-  return retVal;
-}
-
-
-/** Creates a geometric object from a DOM-element-node pointing to a \<type> element
- *  containing shape information. If no shape information an empty Object is returned
- *
- *  @param pElem :: XML element from instrument def. file which may specify a geometric shape
- *  @return A shared pointer to a geometric shape (defaults to an 'empty' shape if XML tags contain no geo. info.) 
- *
- *  @throw logic_error Thrown if argument is not a pointer to a 'type' XML element
- */
-boost::shared_ptr<Object> ShapeFactory::createShape(Poco::XML::Element* pElem)
-{
-  // check if pElem is an element with tag name 'type'
-
-  if ( (pElem->tagName()).compare("type") )
-  {
-    g_log.error("Argument to function createShape must be a pointer to an XML element with tag name type.");
-    throw std::logic_error( "Argument to function createShape must be a pointer to an XML element with tag name type." );
-  }
-
-  boost::shared_ptr<Object> retVal = boost::shared_ptr<Object>(new Object);
-
-  bool defaultAlgebra = false; // if no <algebra> element then use default algebra
-
-  // get algebra string
-  Poco::AutoPtr<NodeList> pNL_algebra = pElem->getElementsByTagName("algebra");
-  std::string algebraFromUser;
-  if ( pNL_algebra->length() == 0 )
-  {
-    defaultAlgebra = true;
-  }
-  else if ( pNL_algebra->length() == 1 )
-  {
-    Element* pElemAlgebra = static_cast<Element*>(pNL_algebra->item(0)); 
-    algebraFromUser = pElemAlgebra->getAttribute("val");
-  }
-  else
-  {
-    g_log.warning() << "More than one algebra string defined for this shape. "
-                    << "Maximum one allowed. Therefore empty shape is returned.";
-    return retVal;
-  }
-
-  std::map<std::string,std::string> idMatching; // match id given to a shape by the user to 
-                                                // id understandable by Mantid code 
-
-  // loop over all the sub-elements of pElem
-
-  NodeList* pNL = pElem->childNodes(); // get all child nodes
-  unsigned int pNL_length = pNL->length();
-  int numPrimitives = 0; // used for counting number of primitives in this 'type' XML element
-  std::map<int, Surface*> primitives; // stores the primitives that will be used to build final shape
-  int l_id = 1; // used to build up unique id's for each shape added. Must start from int > zero.
-
-  Element* lastElement=NULL; //This is to store element for the fixed complete objects such as sphere,cone,cylinder and cuboid
-  for (unsigned int i = 0; i < pNL_length; i++)
-  {
-    if ( (pNL->item(i))->nodeType() == Node::ELEMENT_NODE )
-    {
-      Element* pE = static_cast<Element*>(pNL->item(i));
-
-      // assume for now that if sub-element has attribute id then it is a shape element
-      if ( pE->hasAttribute("id") )  
-      {
-        std::string idFromUser = pE->getAttribute("id"); // get id
-
-        std::string primitiveName = pE->tagName();  // get name of primitive
-
-
-        // if there are any error thrown while parsing the XML string for a given shape
-        // write out a warning to the user that this shape is ignored. If all shapes are ignored
-        // this way an empty object is returned to the user.
-        try 
-        {
-          if ( !primitiveName.compare("sphere"))
-          {
-            lastElement=pE;
-            idMatching[idFromUser] = parseSphere(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("infinite-plane"))
-          {
-            idMatching[idFromUser] = parseInfinitePlane(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("infinite-cylinder"))
-          {
-            idMatching[idFromUser] = parseInfiniteCylinder(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("cylinder"))
-          {
-            lastElement=pE;
-            idMatching[idFromUser] = parseCylinder(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("segmented-cylinder"))
-          {
-            lastElement=pE;
-            idMatching[idFromUser] = parseSegmentedCylinder(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("cuboid"))
-          {
-            lastElement=pE;
-            idMatching[idFromUser] = parseCuboid(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("infinite-cone"))
-          {
-            idMatching[idFromUser] = parseInfiniteCone(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("cone"))
-          {
-            lastElement=pE;
-            idMatching[idFromUser] = parseCone(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("hexahedron"))
-          {
-            idMatching[idFromUser] = parseHexahedron(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("torus"))
-          {
-            idMatching[idFromUser] = parseTorus(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else if ( !primitiveName.compare("slice-of-cylinder-ring"))
-          {
-            idMatching[idFromUser] = parseSliceOfCylinderRing(pE, primitives, l_id);  
-            numPrimitives++;
-          }
-          else
-          {
-            g_log.warning(primitiveName + " not a recognised geometric shape. This shape is ignored.");
-          }
-        }
-		    catch (std::invalid_argument& e)
-		    {
-			    g_log.warning() << e.what() << " <" << primitiveName << "> shape is ignored.";
-		    }
-		    catch (...)
-		    {
-			    g_log.warning() << " Problem with parsing XML string for <" << primitiveName << ">. This shape is ignored.";
-		    }
-      }
-    }
-  }
-
-  pNL->release();
-  
-  if ( defaultAlgebra == false )
-  {
-    // Translate algebra string defined by the user into something Mantid can
-    // understand
-
-    std::string algebra;  // to hold algebra in a way Mantid can understand
-    std::map<std::string,std::string>::iterator iter;
-    size_t found;
-    std::map<size_t,std::string, std::greater<size_t> > allFound;
-    for( iter = idMatching.begin(); iter != idMatching.end(); iter++ )
-    {
-      found = algebraFromUser.find(iter->first);
-
-      if (found==std::string::npos)
-        continue;
-      else
-      {
-        allFound[found] = iter->first;
-      }
-    }
-
-    // Here do the actually swapping of strings 
-    std::map<size_t,std::string, std::greater<size_t> >::iterator iter2;
-    for( iter2 = allFound.begin(); iter2 != allFound.end(); iter2++ )
-    {
-      std::string  kuse = iter2->second;
-      algebraFromUser.replace(iter2->first, (iter2->second).size(), idMatching[iter2->second]);
-    }
-  }
-  else
-  {
-    std::map<std::string,std::string>::iterator iter;
-    for( iter = idMatching.begin(); iter != idMatching.end(); iter++ )
-    {
-      algebraFromUser.append( iter->second + " " ); // default is intersection
-    }
-  }
-
-  // check to see if there actually were any primitives in 'type' xml element
-  // and if yes then return empty Object. Otherwise populate Object with the
-  // primitives
-
-  if ( numPrimitives == 0 )
-    return retVal;
-  else
-  {
-    retVal->setObject(21, algebraFromUser);
-    retVal->populate(primitives);
-    //check whether there is only one surface/closed surface
-    if(numPrimitives == 1 && lastElement!=NULL)//special case
-    {
-      //parse the primitive and create a Geometry handler for the object
-      createGeometryHandler(lastElement,retVal);
-    }
-
-    // get bounding box string
-    Poco::AutoPtr<NodeList> pNL_boundingBox = pElem->getElementsByTagName("bounding-box");
-    if ( pNL_boundingBox->length() != 1)  // should probably throw an error if more than 1 bounding box is defined...
-      return retVal;
-
-    double xmin = atof( ((getShapeElement(pElem, "x-min"))->getAttribute("val")).c_str() );
-    double ymin = atof( ((getShapeElement(pElem, "y-min"))->getAttribute("val")).c_str() );
-    double zmin = atof( ((getShapeElement(pElem, "z-min"))->getAttribute("val")).c_str() );
-    double xmax = atof( ((getShapeElement(pElem, "x-max"))->getAttribute("val")).c_str() );
-    double ymax = atof( ((getShapeElement(pElem, "y-max"))->getAttribute("val")).c_str() );
-    double zmax = atof( ((getShapeElement(pElem, "z-max"))->getAttribute("val")).c_str() );
-
-    retVal->defineBoundingBox(xmax, ymax, zmax, xmin, ymin, zmin);
-
-    return retVal;
-  }
-}
-
-
-/** Parse XML 'sphere' element
- *
- *  @param pElem :: XML 'sphere' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseSphere(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemCentre = getShapeElement(pElem, "centre"); 
-  Element* pElemRadius = getShapeElement(pElem, "radius"); 
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double radius = getDoubleAttribute(pElemRadius,"val");
-  
-  // create sphere
-  Sphere* pSphere = new Sphere;
-  pSphere->setCentre(parsePosition(pElemCentre)); 
-  pSphere->setRadius(radius);
-  prim[l_id] = pSphere;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(-" << l_id << ")";
-  l_id++;
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'infinite-plane' element
- *
- *  @param pElem :: XML 'infinite-plane' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseInfinitePlane(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemPip = getShapeElement(pElem, "point-in-plane"); 
-  Element* pElemNormal = getShapeElement(pElem, "normal-to-plane"); 
-
-  // create infinite-plane
-  Plane* pPlane = new Plane();
-  pPlane->setPlane(parsePosition(pElemPip), parsePosition(pElemNormal)); 
-  prim[l_id] = pPlane;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(" << l_id << ")";
-  l_id++;
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'infinite-cylinder' element
- *
- *  @param pElem :: XML 'infinite-cylinder' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseInfiniteCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemCentre = getShapeElement(pElem, "centre");  
-  Element* pElemAxis = getShapeElement(pElem, "axis");   
-  Element* pElemRadius = getShapeElement(pElem, "radius"); 
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double radius = getDoubleAttribute(pElemRadius,"val");
-  
-  // create infinite-cylinder
-  Cylinder* pCylinder = new Cylinder();
-  pCylinder->setCentre(parsePosition(pElemCentre));      
-
-  V3D dummy1 = pCylinder->getCentre();
-
-  pCylinder->setNorm(parsePosition(pElemAxis));
-  V3D dummy2 = pCylinder->getNormal();
-
-  pCylinder->setRadius(radius);
-  prim[l_id] = pCylinder;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(-" << l_id << ")";
-  l_id++;
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'cylinder' element
- *
- *  @param pElem :: XML 'cylinder' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemBase = getShapeElement(pElem, "centre-of-bottom-base"); 
-  Element* pElemAxis = getShapeElement(pElem, "axis"); 
-  Element* pElemRadius = getShapeElement(pElem, "radius"); 
-  Element* pElemHeight = getShapeElement(pElem, "height"); 
-
-  V3D normVec = parsePosition(pElemAxis);
-  normVec.normalize();
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double radius = getDoubleAttribute(pElemRadius,"val");
-  const double height = getDoubleAttribute(pElemHeight,"val");
-  
-  // add infinite cylinder
-  Cylinder* pCylinder = new Cylinder();
-  V3D centreOfBottomBase = parsePosition(pElemBase);
-  pCylinder->setCentre(centreOfBottomBase+normVec*(0.5*height));              
-  pCylinder->setNorm(normVec);  
-  pCylinder->setRadius(radius);
-  prim[l_id] = pCylinder;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(-" << l_id << " ";
-  l_id++;
-
-  // add top plane
-  Plane* pPlaneTop = new Plane();
-  // to get point in top plane
-  V3D pointInPlane = centreOfBottomBase + (normVec * height);
-  pPlaneTop->setPlane(pointInPlane, normVec); 
-  prim[l_id] = pPlaneTop;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  // add bottom plane
-  Plane* pPlaneBottom = new Plane();
-  pPlaneBottom->setPlane(centreOfBottomBase, normVec); 
-  prim[l_id] = pPlaneBottom;
-  retAlgebraMatch << "" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-/** Parse XML 'cylinder' element
- *
- *  @param pElem :: XML 'cylinder' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseSegmentedCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemBase = getShapeElement(pElem, "centre-of-bottom-base"); 
-  Element* pElemAxis = getShapeElement(pElem, "axis"); 
-  Element* pElemRadius = getShapeElement(pElem, "radius"); 
-  Element* pElemHeight = getShapeElement(pElem, "height"); 
-
-  V3D normVec = parsePosition(pElemAxis);
-  normVec.normalize();
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double radius = getDoubleAttribute(pElemRadius,"val");
-  const double height = getDoubleAttribute(pElemHeight,"val");
-  
-  // add infinite cylinder
-  Cylinder* pCylinder = new Cylinder();
-  V3D centreOfBottomBase = parsePosition(pElemBase);
-  pCylinder->setCentre(centreOfBottomBase+normVec*(0.5*height));              
-  pCylinder->setNorm(normVec);  
-  pCylinder->setRadius(radius);
-  prim[l_id] = pCylinder;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(-" << l_id << " ";
-  l_id++;
-
-  // add top plane
-  Plane* pPlaneTop = new Plane();
-  // to get point in top plane
-  V3D pointInPlane = centreOfBottomBase + (normVec * height);
-  pPlaneTop->setPlane(pointInPlane, normVec); 
-  prim[l_id] = pPlaneTop;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  // add bottom plane
-  Plane* pPlaneBottom = new Plane();
-  pPlaneBottom->setPlane(centreOfBottomBase, normVec); 
-  prim[l_id] = pPlaneBottom;
-  retAlgebraMatch << "" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-/** Parse XML 'cuboid' element
- *
- *  @param pElem :: XML 'cuboid' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseCuboid(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElem_lfb = getShapeElement(pElem, "left-front-bottom-point"); 
-  Element* pElem_lft = getShapeElement(pElem, "left-front-top-point"); 
-  Element* pElem_lbb = getShapeElement(pElem, "left-back-bottom-point"); 
-  Element* pElem_rfb = getShapeElement(pElem, "right-front-bottom-point"); 
-
-  V3D lfb = parsePosition(pElem_lfb);  // left front bottom
-  V3D lft = parsePosition(pElem_lft);  // left front top
-  V3D lbb = parsePosition(pElem_lbb);  // left back bottom
-  V3D rfb = parsePosition(pElem_rfb);  // right front bottom
-
-  V3D pointTowardBack = lbb-lfb;
-  pointTowardBack.normalize();
-
-  // add front plane cutoff
-  Plane* pPlaneFrontCutoff = new Plane();
-  pPlaneFrontCutoff->setPlane(lfb, pointTowardBack); 
-  prim[l_id] = pPlaneFrontCutoff;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(" << l_id << " ";
-  l_id++;
-
-  // add back plane cutoff
-  Plane* pPlaneBackCutoff = new Plane();
-  pPlaneBackCutoff->setPlane(lbb, pointTowardBack); 
-  prim[l_id] = pPlaneBackCutoff;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-
-  V3D pointTowardRight = rfb-lfb;
-  pointTowardRight.normalize();
-
-  // add left plane cutoff
-  Plane* pPlaneLeftCutoff = new Plane();
-  pPlaneLeftCutoff->setPlane(lfb, pointTowardRight); 
-  prim[l_id] = pPlaneLeftCutoff;
-  retAlgebraMatch << "" << l_id << " ";
-  l_id++;
-
-  // add right plane cutoff
-  Plane* pPlaneRightCutoff = new Plane();
-  pPlaneRightCutoff->setPlane(rfb, pointTowardRight); 
-  prim[l_id] = pPlaneRightCutoff;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-
-  V3D pointTowardTop = lft-lfb;
-  pointTowardTop.normalize();
-
-  // add bottom plane cutoff
-  Plane* pPlaneBottomCutoff = new Plane();
-  pPlaneBottomCutoff->setPlane(lfb, pointTowardTop); 
-  prim[l_id] = pPlaneBottomCutoff;
-  retAlgebraMatch << "" << l_id << " ";
-  l_id++;
-
-  // add top plane cutoff
-  Plane* pPlaneTopCutoff = new Plane();
-  pPlaneTopCutoff->setPlane(lft, pointTowardTop); 
-  prim[l_id] = pPlaneTopCutoff;
-  retAlgebraMatch << "-" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'infinite-cone' element
- *
- *  @param pElem :: XML 'infinite-cone' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseInfiniteCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemTipPoint = getShapeElement(pElem, "tip-point"); 
-  Element* pElemAxis = getShapeElement(pElem, "axis"); 
-  Element* pElemAngle = getShapeElement(pElem, "angle");  
-
-  V3D normVec = parsePosition(pElemAxis);
-  normVec.normalize();
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double angle = getDoubleAttribute(pElemAngle,"val");
-  
-  // add infinite double cone
-  Cone* pCone = new Cone();
-  pCone->setCentre(parsePosition(pElemTipPoint));              
-  pCone->setNorm(normVec);  
-  pCone->setAngle(angle);
-  prim[l_id] = pCone;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(" << l_id << " ";
-  l_id++;
-
-
-  // plane top cut of top part of double cone  
-  Plane* pPlaneBottom = new Plane();
-  pPlaneBottom->setPlane(parsePosition(pElemTipPoint), normVec); 
-  prim[l_id] = pPlaneBottom;
-  retAlgebraMatch << "-" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'cone' element
- *
- *  @param pElem :: XML 'cone' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemTipPoint = getShapeElement(pElem, "tip-point"); 
-  Element* pElemAxis = getShapeElement(pElem, "axis");  
-  Element* pElemAngle = getShapeElement(pElem, "angle");  
-  Element* pElemHeight = getShapeElement(pElem, "height"); 
-
-  V3D normVec = parsePosition(pElemAxis);
-  normVec.normalize();
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double angle = getDoubleAttribute(pElemAngle,"val");
-  const double height = getDoubleAttribute(pElemHeight, "val");
-  
-  // add infinite double cone
-  Cone* pCone = new Cone();
-  pCone->setCentre(parsePosition(pElemTipPoint));              
-  pCone->setNorm(normVec);  
-  pCone->setAngle(angle);
-  prim[l_id] = pCone;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(" << l_id << " ";
-  l_id++;
-
-  // Plane to cut off cone from below
-  Plane* pPlaneTop = new Plane();
-  V3D pointInPlane = parsePosition(pElemTipPoint);
-  pointInPlane -= (normVec * height);
-  pPlaneTop->setPlane(pointInPlane, normVec); 
-  prim[l_id] = pPlaneTop;
-  retAlgebraMatch << "" << l_id << " ";
-  l_id++; 
-
-  // plane top cut of top part of double cone 
-  Plane* pPlaneBottom = new Plane();
-  pPlaneBottom->setPlane(parsePosition(pElemTipPoint), normVec); 
-  prim[l_id] = pPlaneBottom;
-  retAlgebraMatch << "-" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'hexahedron' element
- *
- *  @param pElem :: XML 'hexahedron' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseHexahedron(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElem_lfb = getShapeElement(pElem, "left-front-bottom-point");
-  Element* pElem_lft = getShapeElement(pElem, "left-front-top-point"); 
-  Element* pElem_lbb = getShapeElement(pElem, "left-back-bottom-point"); 
-  Element* pElem_lbt = getShapeElement(pElem, "left-back-top-point"); 
-  Element* pElem_rfb = getShapeElement(pElem, "right-front-bottom-point");  
-  Element* pElem_rft = getShapeElement(pElem, "right-front-top-point");  
-  Element* pElem_rbb = getShapeElement(pElem, "right-back-bottom-point"); 
-  Element* pElem_rbt = getShapeElement(pElem, "right-back-top-point"); 
-
-  V3D lfb = parsePosition(pElem_lfb);  // left front bottom
-  V3D lft = parsePosition(pElem_lft);  // left front top
-  V3D lbb = parsePosition(pElem_lbb);  // left back bottom
-  V3D lbt = parsePosition(pElem_lbt);  // left back top
-  V3D rfb = parsePosition(pElem_rfb);  // right front bottom
-  V3D rft = parsePosition(pElem_rft);  // right front top
-  V3D rbb = parsePosition(pElem_rbb);  // right back bottom
-  V3D rbt = parsePosition(pElem_rbt);  // right back top
-
-  V3D pointTowardBack = lbb-lfb;
-  pointTowardBack.normalize();
-
-  V3D normal;
-
-  // add front face
-  Plane* pPlaneFrontCutoff = new Plane();
-  normal = (rfb-lfb).cross_prod(lft-lfb);
-  
- // V3D jjj = (normal*(rfb-rbb));
-  if ( normal.scalar_prod(rfb-rbb) < 0 )
-    normal *= -1.0;
-  pPlaneFrontCutoff->setPlane(lfb, normal); 
-  prim[l_id] = pPlaneFrontCutoff;
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(-" << l_id << " ";
-  l_id++;
-
-  // add back face
-  Plane* pPlaneBackCutoff = new Plane();
-  normal = (rbb-lbb).cross_prod(lbt-lbb);
-  if ( normal.scalar_prod(rfb-rbb) < 0 )
-    normal *= -1.0;  
-  pPlaneBackCutoff->setPlane(lbb, normal); 
-  prim[l_id] = pPlaneBackCutoff;
-  retAlgebraMatch << "" << l_id << " ";
-  l_id++;
-
-  // add left face
-  Plane* pPlaneLeftCutoff = new Plane();
-  normal = (lbb-lfb).cross_prod(lft-lfb);
-  if ( normal.scalar_prod(rfb-lfb) < 0 )
-    normal *= -1.0; 
-  pPlaneLeftCutoff->setPlane(lfb, normal); 
-  prim[l_id] = pPlaneLeftCutoff;
-  retAlgebraMatch << "" << l_id << " ";
-  l_id++;
-
-  // add right face
-  Plane* pPlaneRightCutoff = new Plane();
-  normal = (rbb-rfb).cross_prod(rft-rfb);
-  if ( normal.scalar_prod(rfb-lfb) < 0 )
-    normal *= -1.0; 
-  pPlaneRightCutoff->setPlane(rfb, normal); 
-  prim[l_id] = pPlaneRightCutoff;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  // add top face
-  Plane* pPlaneTopCutoff = new Plane();
-  normal = (rft-lft).cross_prod(lbt-lft);
-  if ( normal.scalar_prod(rft-rfb) < 0 )
-    normal *= -1.0; 
-  pPlaneTopCutoff->setPlane(lft, normal); 
-  prim[l_id] = pPlaneTopCutoff;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  // add bottom face
-  Plane* pPlaneBottomCutoff = new Plane();
-  normal = (rfb-lfb).cross_prod(lbb-lfb);
-  if ( normal.scalar_prod(rft-rfb) < 0 )
-    normal *= -1.0; 
-  pPlaneBottomCutoff->setPlane(lfb, normal); 
-  prim[l_id] = pPlaneBottomCutoff;
-  retAlgebraMatch << "" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'torus' element
- *
- *  @param pElem :: XML 'torus' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseTorus(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemCentre = getShapeElement(pElem, "centre"); 
-  Element* pElemAxis = getShapeElement(pElem, "axis");  
-  Element* pElemRadiusFromCentre = getShapeElement(pElem, "radius-from-centre-to-tube");
-  Element* pElemRadiusTube = getShapeElement(pElem, "radius-tube");
-
-  V3D normVec = parsePosition(pElemAxis);
-  normVec.normalize();
-
-  // getDoubleAttribute can throw - put the calls above any new
-  const double radiusCentre = getDoubleAttribute(pElemRadiusFromCentre,"val");
-  const double radiusTube = getDoubleAttribute(pElemRadiusTube, "val");
-  
-  // add torus
-  Torus* pTorus = new Torus();
-  pTorus->setCentre(parsePosition(pElemCentre));              
-  pTorus->setNorm(normVec);  
-  pTorus->setDistanceFromCentreToTube(radiusCentre);
-  pTorus->setTubeRadius(radiusTube);
-  prim[l_id] = pTorus;
-
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(-" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-
-/** Parse XML 'slice-of-cylinder-ring' element
- *
- *  @param pElem :: XML 'slice-of-cylinder-ring' element from instrument def. file
- *  @param prim :: To add shapes to
- *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
- *  @return A Mantid algebra string for this shape
- *
- *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
- */
-std::string ShapeFactory::parseSliceOfCylinderRing(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
-{
-  Element* pElemArc = getShapeElement(pElem, "arc"); 
-  Element* pElemInnerRadius = getShapeElement(pElem, "inner-radius");  
-  Element* pElemOuterRadius = getShapeElement(pElem, "outer-radius");  
-  Element* pElemDepth = getShapeElement(pElem, "depth"); 
-
-  const double innerRadius = getDoubleAttribute(pElemInnerRadius,"val");
-  const double outerRadius = getDoubleAttribute(pElemOuterRadius,"val");
-  const double middleRadius = (outerRadius + innerRadius)/2.0;
-
-  const double depth = getDoubleAttribute(pElemDepth,"val");
-  const double arc = (M_PI/180.0) * getDoubleAttribute(pElemArc,"val");
-  
-  V3D normVec(0,0,1);
-  V3D centrePoint(-middleRadius,0,0);
-
-  // add inner infinite cylinder 
-  Cylinder* pCylinder1 = new Cylinder();
-  pCylinder1->setCentre(centrePoint);              
-  pCylinder1->setNorm(normVec);  
-  pCylinder1->setRadius(innerRadius);
-  prim[l_id] = pCylinder1;
-  std::stringstream retAlgebraMatch;
-  retAlgebraMatch << "(" << l_id << " ";
-  l_id++;
-
-  // add outer infinite cylinder 
-  Cylinder* pCylinder2 = new Cylinder();
-  pCylinder2->setCentre(centrePoint);              
-  pCylinder2->setNorm(normVec);  
-  pCylinder2->setRadius(outerRadius);
-  prim[l_id] = pCylinder2;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  // add top cutoff plane of infinite cylinder ring
-  Plane* pPlaneTop = new Plane();
-  pPlaneTop->setPlane(V3D(0,0,depth), normVec); 
-  prim[l_id] = pPlaneTop;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  // add bottom cutoff plane (which is assumed to fase the sample) 
-  // which at this point will result in a cylinder ring
-  Plane* pPlaneBottom = new Plane();
-  pPlaneBottom->setPlane(V3D(0,0,0), normVec); 
-  prim[l_id] = pPlaneBottom;
-  retAlgebraMatch << "" << l_id << " ";
-  l_id++;
-
-
-  // the two planes that are going to cut a slice of the cylinder ring
-
-  Plane* pPlaneSlice1 = new Plane();
-  pPlaneSlice1->setPlane(V3D(-middleRadius,0,0), V3D(cos(arc/2.0+M_PI/2.0),sin(arc/2.0+M_PI/2.0),0)); 
-  prim[l_id] = pPlaneSlice1;
-  retAlgebraMatch << "-" << l_id << " ";
-  l_id++;
-
-  Plane* pPlaneSlice2 = new Plane();
-  pPlaneSlice2->setPlane(V3D(-middleRadius,0,0), V3D(cos(-arc/2.0+M_PI/2.0),sin(-arc/2.0+M_PI/2.0),0)); 
-  prim[l_id] = pPlaneSlice2;
-  retAlgebraMatch << "" << l_id << ")";
-  l_id++;
-
-  return retAlgebraMatch.str();
-}
-
-
-/** Return a subelement of an XML element, but also checks that there exist exactly one entry
- *  of this subelement.
- *
- *  @param pElem :: XML from instrument def. file
- *  @param name :: Name of subelement 
- *  @return The subelement
- *
- *  @throw std::invalid_argument Thrown if issues with XML string
- */
-Poco::XML::Element* ShapeFactory::getShapeElement(Poco::XML::Element* pElem, const std::string& name)
-{
-  // check if this shape element contain an element with name specified by the 2nd function argument
-  Poco::AutoPtr<NodeList> pNL = pElem->getElementsByTagName(name);
-  if ( pNL->length() != 1)
-  {
-    throw std::invalid_argument("XML element: <" + pElem->tagName() +
-      "> must contain exactly one sub-element with name: <" + name + ">.");
-  }
-  Element* retVal = static_cast<Element*>(pNL->item(0));
-  return retVal;
-}
-
-
-/** Return value of attribute to XML element. It is an extension of poco's getAttribute method, which
- *  in addition check that this attribute exists and if not throws an error. 
- *
- *  @param pElem :: XML from instrument def. file
- *  @param name :: Name of subelement 
- *  @return Value of attribute
- *
- *  @throw std::invalid_argument Thrown if issues with XML string
- */
-double ShapeFactory::getDoubleAttribute(Poco::XML::Element* pElem, const std::string& name)
-{
-  if ( pElem->hasAttribute(name) )
-  {
-    return atof( (pElem->getAttribute(name)).c_str() );
-  }
-  else
-  {
-    throw std::invalid_argument("XML element: <" + pElem->tagName() +
-      "> does not have the attribute: " + name + ".");  
-  }
-}
-
-
-/** Get position coordinates from XML element
- *
- *  @param pElem :: XML element whose attributes contain position coordinates
- *  @return Position coordinates in the form of a V3D object 
- */
-V3D ShapeFactory::parsePosition(Poco::XML::Element* pElem)
-{
-  V3D retVal;
-
-  if ( pElem->hasAttribute("R") || pElem->hasAttribute("theta") || pElem->hasAttribute("phi") )
-  {
-    double R=0.0, theta=0.0, phi=0.0;
-
-    if ( pElem->hasAttribute("R") ) R = atof((pElem->getAttribute("R")).c_str());
-    if ( pElem->hasAttribute("theta") ) theta = atof((pElem->getAttribute("theta")).c_str());
-    if ( pElem->hasAttribute("phi") ) phi = atof((pElem->getAttribute("phi")).c_str());
-
-    retVal.spherical(R,theta,phi);
-  }
-  else if ( pElem->hasAttribute("r") || pElem->hasAttribute("t") ||
-    pElem->hasAttribute("p") )
-  // This is alternative way a user may specify sphecical coordinates
-  // which may be preferred in the long run to the more verbose of
-  // using R, theta and phi.
-  {
-    double R=0.0, theta=0.0, phi=0.0;
-
-    if ( pElem->hasAttribute("r") )
-      R = atof((pElem->getAttribute("r")).c_str());
-    if ( pElem->hasAttribute("t") )
-      theta = atof((pElem->getAttribute("t")).c_str());
-    if ( pElem->hasAttribute("p") )
-      phi = atof((pElem->getAttribute("p")).c_str());
-
-    retVal.spherical(R,theta,phi);
-  }
-  else
-  {
-    double x=0.0, y=0.0, z=0.0;
-
-    if ( pElem->hasAttribute("x") ) x = atof((pElem->getAttribute("x")).c_str());
-    if ( pElem->hasAttribute("y") ) y = atof((pElem->getAttribute("y")).c_str());
-    if ( pElem->hasAttribute("z") ) z = atof((pElem->getAttribute("z")).c_str());
-
-    retVal(x,y,z);
-  }
-
-  return retVal;
-}
-
-/// create a special geometry handler for the known finite primitives
-void ShapeFactory::createGeometryHandler(Poco::XML::Element* pElem,boost::shared_ptr<Object> Obj)
-{
-  if(pElem->tagName()=="cuboid")
-  {
-    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
-    Obj->setGeometryHandler(handler);
-    Element* pElem_lfb = getShapeElement(pElem, "left-front-bottom-point");
-    Element* pElem_lft = getShapeElement(pElem, "left-front-top-point");
-    Element* pElem_lbb = getShapeElement(pElem, "left-back-bottom-point");
-    Element* pElem_rfb = getShapeElement(pElem, "right-front-bottom-point");
-
-    V3D lfb = parsePosition(pElem_lfb);  // left front bottom
-    V3D lft = parsePosition(pElem_lft);  // left front top
-    V3D lbb = parsePosition(pElem_lbb);  // left back bottom
-    V3D rfb = parsePosition(pElem_rfb);  // right front bottom
-    ((GluGeometryHandler*)(handler.get()))->setCuboid(lfb,lft,lbb,rfb);
-  }
-  else if(pElem->tagName()=="sphere")
-  {
-    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
-    Obj->setGeometryHandler(handler);
-    Element* pElemCentre = getShapeElement(pElem, "centre");
-    Element* pElemRadius = getShapeElement(pElem, "radius");
-    ((GluGeometryHandler*)(handler.get()))->setSphere(parsePosition(pElemCentre),atof( (pElemRadius->getAttribute("val")).c_str() ));
-  }
-  else if(pElem->tagName()=="cylinder")
-  {
-    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
-    Obj->setGeometryHandler(handler);
-    Element* pElemCentre = getShapeElement(pElem, "centre-of-bottom-base");
-    Element* pElemAxis = getShapeElement(pElem, "axis");
-    Element* pElemRadius = getShapeElement(pElem, "radius");
-    Element* pElemHeight = getShapeElement(pElem, "height");
-    V3D normVec = parsePosition(pElemAxis);
-    normVec.normalize();
-    ((GluGeometryHandler*)(handler.get()))->setCylinder(parsePosition(pElemCentre),normVec,atof( (pElemRadius->getAttribute("val")).c_str() ),atof( (pElemHeight->getAttribute("val")).c_str() ));
-  }
-  else if(pElem->tagName()=="segmented-cylinder")
-  {
-    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
-    Obj->setGeometryHandler(handler);
-    Element* pElemCentre = getShapeElement(pElem, "centre-of-bottom-base");
-    Element* pElemAxis = getShapeElement(pElem, "axis");
-    Element* pElemRadius = getShapeElement(pElem, "radius");
-    Element* pElemHeight = getShapeElement(pElem, "height");
-    V3D normVec = parsePosition(pElemAxis);
-    normVec.normalize();
-    ((GluGeometryHandler*)(handler.get()))->setSegmentedCylinder(parsePosition(pElemCentre),normVec,atof( (pElemRadius->getAttribute("val")).c_str() ),atof( (pElemHeight->getAttribute("val")).c_str() ));
-  }
-  else if(pElem->tagName()=="cone")
-  {
-    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
-    Obj->setGeometryHandler(handler);
-    Element* pElemTipPoint = getShapeElement(pElem, "tip-point");
-    Element* pElemAxis = getShapeElement(pElem, "axis");
-    Element* pElemAngle = getShapeElement(pElem, "angle");
-    Element* pElemHeight = getShapeElement(pElem, "height");
-
-    V3D normVec = parsePosition(pElemAxis);
-    normVec.normalize();
-    double height=atof( (pElemHeight->getAttribute("val")).c_str() );
-    double radius=height*tan(M_PI*atof( (pElemAngle->getAttribute("val")).c_str() )/180.0 );
-    ((GluGeometryHandler*)(handler.get()))->setCone(parsePosition(pElemTipPoint),normVec,radius,height);
-  }
-
-}
-
-} // namespace Geometry
-} // namespace Mantid
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidGeometry/Objects/ShapeFactory.h"
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidGeometry/Surfaces/Quadratic.h"
+#include "MantidGeometry/Surfaces/Surface.h"
+#include "MantidGeometry/Surfaces/Sphere.h"
+#include "MantidGeometry/Surfaces/Plane.h"
+#include "MantidGeometry/Surfaces/Cylinder.h"
+#include "MantidGeometry/Surfaces/Cone.h"
+#include "MantidGeometry/Surfaces/Torus.h"
+#include "MantidGeometry/Rendering/GluGeometryHandler.h"
+
+#include <Poco/AutoPtr.h>
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+
+using Poco::XML::DOMParser;
+using Poco::XML::Document;
+using Poco::XML::Element;
+using Poco::XML::Node;
+using Poco::XML::NodeList;
+using Poco::XML::NodeIterator;
+using Poco::XML::NodeFilter;
+
+namespace Mantid
+{
+namespace Geometry
+{
+
+using namespace Kernel;
+
+Logger& ShapeFactory::g_log = Logger::get("ShapeFactory");
+
+/// Empty default constructor
+ShapeFactory::ShapeFactory()
+{}
+
+/** Creates a geometric object directly from a XML shape string
+ *
+ *  @param shapeXML :: XML shape string
+ *  @return A shared pointer to a geometric shape (defaults to an 'empty' shape if XML tags contain no geo. info.) 
+ */
+boost::shared_ptr<Object> ShapeFactory::createShape(std::string shapeXML)
+{
+	//wrap in a type tag
+	shapeXML = "<type name=\"userShape\"> " + shapeXML + " </type>";
+
+	// Set up the DOM parser and parse xml string
+	DOMParser pParser;
+	Document* pDoc;
+	try
+	{
+		pDoc = pParser.parseString(shapeXML);
+	}
+	catch(...)
+	{
+		g_log.warning("Unable to parse XML string " + shapeXML + " . Empty geometry Object is returned.");
+    boost::shared_ptr<Object> retVal = boost::shared_ptr<Object>(new Object);
+    return retVal;
+	}
+	// Get pointer to root element
+	Element* pRootElem = pDoc->documentElement();
+
+	//convert into a Geometry object
+	boost::shared_ptr<Object> retVal = createShape(pRootElem);
+	pDoc->release();
+
+  return retVal;
+}
+
+
+/** Creates a geometric object from a DOM-element-node pointing to a \<type> element
+ *  containing shape information. If no shape information an empty Object is returned
+ *
+ *  @param pElem :: XML element from instrument def. file which may specify a geometric shape
+ *  @return A shared pointer to a geometric shape (defaults to an 'empty' shape if XML tags contain no geo. info.) 
+ *
+ *  @throw logic_error Thrown if argument is not a pointer to a 'type' XML element
+ */
+boost::shared_ptr<Object> ShapeFactory::createShape(Poco::XML::Element* pElem)
+{
+  // check if pElem is an element with tag name 'type'
+
+  if ( (pElem->tagName()).compare("type") )
+  {
+    g_log.error("Argument to function createShape must be a pointer to an XML element with tag name type.");
+    throw std::logic_error( "Argument to function createShape must be a pointer to an XML element with tag name type." );
+  }
+
+  boost::shared_ptr<Object> retVal = boost::shared_ptr<Object>(new Object);
+
+  bool defaultAlgebra = false; // if no <algebra> element then use default algebra
+
+  // get algebra string
+  Poco::AutoPtr<NodeList> pNL_algebra = pElem->getElementsByTagName("algebra");
+  std::string algebraFromUser;
+  if ( pNL_algebra->length() == 0 )
+  {
+    defaultAlgebra = true;
+  }
+  else if ( pNL_algebra->length() == 1 )
+  {
+    Element* pElemAlgebra = static_cast<Element*>(pNL_algebra->item(0)); 
+    algebraFromUser = pElemAlgebra->getAttribute("val");
+  }
+  else
+  {
+    g_log.warning() << "More than one algebra string defined for this shape. "
+                    << "Maximum one allowed. Therefore empty shape is returned.";
+    return retVal;
+  }
+
+  std::map<std::string,std::string> idMatching; // match id given to a shape by the user to 
+                                                // id understandable by Mantid code 
+
+  // loop over all the sub-elements of pElem
+
+  NodeList* pNL = pElem->childNodes(); // get all child nodes
+  unsigned int pNL_length = pNL->length();
+  int numPrimitives = 0; // used for counting number of primitives in this 'type' XML element
+  std::map<int, Surface*> primitives; // stores the primitives that will be used to build final shape
+  int l_id = 1; // used to build up unique id's for each shape added. Must start from int > zero.
+
+  Element* lastElement=NULL; //This is to store element for the fixed complete objects such as sphere,cone,cylinder and cuboid
+  for (unsigned int i = 0; i < pNL_length; i++)
+  {
+    if ( (pNL->item(i))->nodeType() == Node::ELEMENT_NODE )
+    {
+      Element* pE = static_cast<Element*>(pNL->item(i));
+
+      // assume for now that if sub-element has attribute id then it is a shape element
+      if ( pE->hasAttribute("id") )  
+      {
+        std::string idFromUser = pE->getAttribute("id"); // get id
+
+        std::string primitiveName = pE->tagName();  // get name of primitive
+
+
+        // if there are any error thrown while parsing the XML string for a given shape
+        // write out a warning to the user that this shape is ignored. If all shapes are ignored
+        // this way an empty object is returned to the user.
+        try 
+        {
+          if ( !primitiveName.compare("sphere"))
+          {
+            lastElement=pE;
+            idMatching[idFromUser] = parseSphere(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("infinite-plane"))
+          {
+            idMatching[idFromUser] = parseInfinitePlane(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("infinite-cylinder"))
+          {
+            idMatching[idFromUser] = parseInfiniteCylinder(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("cylinder"))
+          {
+            lastElement=pE;
+            idMatching[idFromUser] = parseCylinder(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("segmented-cylinder"))
+          {
+            lastElement=pE;
+            idMatching[idFromUser] = parseSegmentedCylinder(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("cuboid"))
+          {
+            lastElement=pE;
+            idMatching[idFromUser] = parseCuboid(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("infinite-cone"))
+          {
+            idMatching[idFromUser] = parseInfiniteCone(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("cone"))
+          {
+            lastElement=pE;
+            idMatching[idFromUser] = parseCone(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("hexahedron"))
+          {
+            idMatching[idFromUser] = parseHexahedron(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("torus"))
+          {
+            idMatching[idFromUser] = parseTorus(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else if ( !primitiveName.compare("slice-of-cylinder-ring"))
+          {
+            idMatching[idFromUser] = parseSliceOfCylinderRing(pE, primitives, l_id);  
+            numPrimitives++;
+          }
+          else
+          {
+            g_log.warning(primitiveName + " not a recognised geometric shape. This shape is ignored.");
+          }
+        }
+		    catch (std::invalid_argument& e)
+		    {
+			    g_log.warning() << e.what() << " <" << primitiveName << "> shape is ignored.";
+		    }
+		    catch (...)
+		    {
+			    g_log.warning() << " Problem with parsing XML string for <" << primitiveName << ">. This shape is ignored.";
+		    }
+      }
+    }
+  }
+
+  pNL->release();
+  
+  if ( defaultAlgebra == false )
+  {
+    // Translate algebra string defined by the user into something Mantid can
+    // understand
+
+    std::string algebra;  // to hold algebra in a way Mantid can understand
+    std::map<std::string,std::string>::iterator iter;
+    size_t found;
+    std::map<size_t,std::string, std::greater<size_t> > allFound;
+    for( iter = idMatching.begin(); iter != idMatching.end(); iter++ )
+    {
+      found = algebraFromUser.find(iter->first);
+
+      if (found==std::string::npos)
+        continue;
+      else
+      {
+        allFound[found] = iter->first;
+      }
+    }
+
+    // Here do the actually swapping of strings 
+    std::map<size_t,std::string, std::greater<size_t> >::iterator iter2;
+    for( iter2 = allFound.begin(); iter2 != allFound.end(); iter2++ )
+    {
+      std::string  kuse = iter2->second;
+      algebraFromUser.replace(iter2->first, (iter2->second).size(), idMatching[iter2->second]);
+    }
+  }
+  else
+  {
+    std::map<std::string,std::string>::iterator iter;
+    for( iter = idMatching.begin(); iter != idMatching.end(); iter++ )
+    {
+      algebraFromUser.append( iter->second + " " ); // default is intersection
+    }
+  }
+
+  // check to see if there actually were any primitives in 'type' xml element
+  // and if yes then return empty Object. Otherwise populate Object with the
+  // primitives
+
+  if ( numPrimitives == 0 )
+    return retVal;
+  else
+  {
+    retVal->setObject(21, algebraFromUser);
+    retVal->populate(primitives);
+    //check whether there is only one surface/closed surface
+    if(numPrimitives == 1 && lastElement!=NULL)//special case
+    {
+      //parse the primitive and create a Geometry handler for the object
+      createGeometryHandler(lastElement,retVal);
+    }
+
+    // get bounding box string
+    Poco::AutoPtr<NodeList> pNL_boundingBox = pElem->getElementsByTagName("bounding-box");
+    if ( pNL_boundingBox->length() != 1)  // should probably throw an error if more than 1 bounding box is defined...
+      return retVal;
+
+    double xmin = atof( ((getShapeElement(pElem, "x-min"))->getAttribute("val")).c_str() );
+    double ymin = atof( ((getShapeElement(pElem, "y-min"))->getAttribute("val")).c_str() );
+    double zmin = atof( ((getShapeElement(pElem, "z-min"))->getAttribute("val")).c_str() );
+    double xmax = atof( ((getShapeElement(pElem, "x-max"))->getAttribute("val")).c_str() );
+    double ymax = atof( ((getShapeElement(pElem, "y-max"))->getAttribute("val")).c_str() );
+    double zmax = atof( ((getShapeElement(pElem, "z-max"))->getAttribute("val")).c_str() );
+
+    retVal->defineBoundingBox(xmax, ymax, zmax, xmin, ymin, zmin);
+
+    return retVal;
+  }
+}
+
+
+/** Parse XML 'sphere' element
+ *
+ *  @param pElem :: XML 'sphere' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseSphere(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemCentre = getShapeElement(pElem, "centre"); 
+  Element* pElemRadius = getShapeElement(pElem, "radius"); 
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double radius = getDoubleAttribute(pElemRadius,"val");
+  
+  // create sphere
+  Sphere* pSphere = new Sphere;
+  pSphere->setCentre(parsePosition(pElemCentre)); 
+  pSphere->setRadius(radius);
+  prim[l_id] = pSphere;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(-" << l_id << ")";
+  l_id++;
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'infinite-plane' element
+ *
+ *  @param pElem :: XML 'infinite-plane' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseInfinitePlane(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemPip = getShapeElement(pElem, "point-in-plane"); 
+  Element* pElemNormal = getShapeElement(pElem, "normal-to-plane"); 
+
+  // create infinite-plane
+  Plane* pPlane = new Plane();
+  pPlane->setPlane(parsePosition(pElemPip), parsePosition(pElemNormal)); 
+  prim[l_id] = pPlane;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(" << l_id << ")";
+  l_id++;
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'infinite-cylinder' element
+ *
+ *  @param pElem :: XML 'infinite-cylinder' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseInfiniteCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemCentre = getShapeElement(pElem, "centre");  
+  Element* pElemAxis = getShapeElement(pElem, "axis");   
+  Element* pElemRadius = getShapeElement(pElem, "radius"); 
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double radius = getDoubleAttribute(pElemRadius,"val");
+  
+  // create infinite-cylinder
+  Cylinder* pCylinder = new Cylinder();
+  pCylinder->setCentre(parsePosition(pElemCentre));      
+
+  V3D dummy1 = pCylinder->getCentre();
+
+  pCylinder->setNorm(parsePosition(pElemAxis));
+  V3D dummy2 = pCylinder->getNormal();
+
+  pCylinder->setRadius(radius);
+  prim[l_id] = pCylinder;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(-" << l_id << ")";
+  l_id++;
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'cylinder' element
+ *
+ *  @param pElem :: XML 'cylinder' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemBase = getShapeElement(pElem, "centre-of-bottom-base"); 
+  Element* pElemAxis = getShapeElement(pElem, "axis"); 
+  Element* pElemRadius = getShapeElement(pElem, "radius"); 
+  Element* pElemHeight = getShapeElement(pElem, "height"); 
+
+  V3D normVec = parsePosition(pElemAxis);
+  normVec.normalize();
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double radius = getDoubleAttribute(pElemRadius,"val");
+  const double height = getDoubleAttribute(pElemHeight,"val");
+  
+  // add infinite cylinder
+  Cylinder* pCylinder = new Cylinder();
+  V3D centreOfBottomBase = parsePosition(pElemBase);
+  pCylinder->setCentre(centreOfBottomBase+normVec*(0.5*height));              
+  pCylinder->setNorm(normVec);  
+  pCylinder->setRadius(radius);
+  prim[l_id] = pCylinder;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(-" << l_id << " ";
+  l_id++;
+
+  // add top plane
+  Plane* pPlaneTop = new Plane();
+  // to get point in top plane
+  V3D pointInPlane = centreOfBottomBase + (normVec * height);
+  pPlaneTop->setPlane(pointInPlane, normVec); 
+  prim[l_id] = pPlaneTop;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  // add bottom plane
+  Plane* pPlaneBottom = new Plane();
+  pPlaneBottom->setPlane(centreOfBottomBase, normVec); 
+  prim[l_id] = pPlaneBottom;
+  retAlgebraMatch << "" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+/** Parse XML 'cylinder' element
+ *
+ *  @param pElem :: XML 'cylinder' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseSegmentedCylinder(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemBase = getShapeElement(pElem, "centre-of-bottom-base"); 
+  Element* pElemAxis = getShapeElement(pElem, "axis"); 
+  Element* pElemRadius = getShapeElement(pElem, "radius"); 
+  Element* pElemHeight = getShapeElement(pElem, "height"); 
+
+  V3D normVec = parsePosition(pElemAxis);
+  normVec.normalize();
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double radius = getDoubleAttribute(pElemRadius,"val");
+  const double height = getDoubleAttribute(pElemHeight,"val");
+  
+  // add infinite cylinder
+  Cylinder* pCylinder = new Cylinder();
+  V3D centreOfBottomBase = parsePosition(pElemBase);
+  pCylinder->setCentre(centreOfBottomBase+normVec*(0.5*height));              
+  pCylinder->setNorm(normVec);  
+  pCylinder->setRadius(radius);
+  prim[l_id] = pCylinder;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(-" << l_id << " ";
+  l_id++;
+
+  // add top plane
+  Plane* pPlaneTop = new Plane();
+  // to get point in top plane
+  V3D pointInPlane = centreOfBottomBase + (normVec * height);
+  pPlaneTop->setPlane(pointInPlane, normVec); 
+  prim[l_id] = pPlaneTop;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  // add bottom plane
+  Plane* pPlaneBottom = new Plane();
+  pPlaneBottom->setPlane(centreOfBottomBase, normVec); 
+  prim[l_id] = pPlaneBottom;
+  retAlgebraMatch << "" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+/** Parse XML 'cuboid' element
+ *
+ *  @param pElem :: XML 'cuboid' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseCuboid(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElem_lfb = getShapeElement(pElem, "left-front-bottom-point"); 
+  Element* pElem_lft = getShapeElement(pElem, "left-front-top-point"); 
+  Element* pElem_lbb = getShapeElement(pElem, "left-back-bottom-point"); 
+  Element* pElem_rfb = getShapeElement(pElem, "right-front-bottom-point"); 
+
+  V3D lfb = parsePosition(pElem_lfb);  // left front bottom
+  V3D lft = parsePosition(pElem_lft);  // left front top
+  V3D lbb = parsePosition(pElem_lbb);  // left back bottom
+  V3D rfb = parsePosition(pElem_rfb);  // right front bottom
+
+  V3D pointTowardBack = lbb-lfb;
+  pointTowardBack.normalize();
+
+  // add front plane cutoff
+  Plane* pPlaneFrontCutoff = new Plane();
+  pPlaneFrontCutoff->setPlane(lfb, pointTowardBack); 
+  prim[l_id] = pPlaneFrontCutoff;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(" << l_id << " ";
+  l_id++;
+
+  // add back plane cutoff
+  Plane* pPlaneBackCutoff = new Plane();
+  pPlaneBackCutoff->setPlane(lbb, pointTowardBack); 
+  prim[l_id] = pPlaneBackCutoff;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+
+  V3D pointTowardRight = rfb-lfb;
+  pointTowardRight.normalize();
+
+  // add left plane cutoff
+  Plane* pPlaneLeftCutoff = new Plane();
+  pPlaneLeftCutoff->setPlane(lfb, pointTowardRight); 
+  prim[l_id] = pPlaneLeftCutoff;
+  retAlgebraMatch << "" << l_id << " ";
+  l_id++;
+
+  // add right plane cutoff
+  Plane* pPlaneRightCutoff = new Plane();
+  pPlaneRightCutoff->setPlane(rfb, pointTowardRight); 
+  prim[l_id] = pPlaneRightCutoff;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+
+  V3D pointTowardTop = lft-lfb;
+  pointTowardTop.normalize();
+
+  // add bottom plane cutoff
+  Plane* pPlaneBottomCutoff = new Plane();
+  pPlaneBottomCutoff->setPlane(lfb, pointTowardTop); 
+  prim[l_id] = pPlaneBottomCutoff;
+  retAlgebraMatch << "" << l_id << " ";
+  l_id++;
+
+  // add top plane cutoff
+  Plane* pPlaneTopCutoff = new Plane();
+  pPlaneTopCutoff->setPlane(lft, pointTowardTop); 
+  prim[l_id] = pPlaneTopCutoff;
+  retAlgebraMatch << "-" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'infinite-cone' element
+ *
+ *  @param pElem :: XML 'infinite-cone' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseInfiniteCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemTipPoint = getShapeElement(pElem, "tip-point"); 
+  Element* pElemAxis = getShapeElement(pElem, "axis"); 
+  Element* pElemAngle = getShapeElement(pElem, "angle");  
+
+  V3D normVec = parsePosition(pElemAxis);
+  normVec.normalize();
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double angle = getDoubleAttribute(pElemAngle,"val");
+  
+  // add infinite double cone
+  Cone* pCone = new Cone();
+  pCone->setCentre(parsePosition(pElemTipPoint));              
+  pCone->setNorm(normVec);  
+  pCone->setAngle(angle);
+  prim[l_id] = pCone;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(" << l_id << " ";
+  l_id++;
+
+
+  // plane top cut of top part of double cone  
+  Plane* pPlaneBottom = new Plane();
+  pPlaneBottom->setPlane(parsePosition(pElemTipPoint), normVec); 
+  prim[l_id] = pPlaneBottom;
+  retAlgebraMatch << "-" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'cone' element
+ *
+ *  @param pElem :: XML 'cone' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseCone(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemTipPoint = getShapeElement(pElem, "tip-point"); 
+  Element* pElemAxis = getShapeElement(pElem, "axis");  
+  Element* pElemAngle = getShapeElement(pElem, "angle");  
+  Element* pElemHeight = getShapeElement(pElem, "height"); 
+
+  V3D normVec = parsePosition(pElemAxis);
+  normVec.normalize();
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double angle = getDoubleAttribute(pElemAngle,"val");
+  const double height = getDoubleAttribute(pElemHeight, "val");
+  
+  // add infinite double cone
+  Cone* pCone = new Cone();
+  pCone->setCentre(parsePosition(pElemTipPoint));              
+  pCone->setNorm(normVec);  
+  pCone->setAngle(angle);
+  prim[l_id] = pCone;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(" << l_id << " ";
+  l_id++;
+
+  // Plane to cut off cone from below
+  Plane* pPlaneTop = new Plane();
+  V3D pointInPlane = parsePosition(pElemTipPoint);
+  pointInPlane -= (normVec * height);
+  pPlaneTop->setPlane(pointInPlane, normVec); 
+  prim[l_id] = pPlaneTop;
+  retAlgebraMatch << "" << l_id << " ";
+  l_id++; 
+
+  // plane top cut of top part of double cone 
+  Plane* pPlaneBottom = new Plane();
+  pPlaneBottom->setPlane(parsePosition(pElemTipPoint), normVec); 
+  prim[l_id] = pPlaneBottom;
+  retAlgebraMatch << "-" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'hexahedron' element
+ *
+ *  @param pElem :: XML 'hexahedron' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseHexahedron(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElem_lfb = getShapeElement(pElem, "left-front-bottom-point");
+  Element* pElem_lft = getShapeElement(pElem, "left-front-top-point"); 
+  Element* pElem_lbb = getShapeElement(pElem, "left-back-bottom-point"); 
+  Element* pElem_lbt = getShapeElement(pElem, "left-back-top-point"); 
+  Element* pElem_rfb = getShapeElement(pElem, "right-front-bottom-point");  
+  Element* pElem_rft = getShapeElement(pElem, "right-front-top-point");  
+  Element* pElem_rbb = getShapeElement(pElem, "right-back-bottom-point"); 
+  Element* pElem_rbt = getShapeElement(pElem, "right-back-top-point"); 
+
+  V3D lfb = parsePosition(pElem_lfb);  // left front bottom
+  V3D lft = parsePosition(pElem_lft);  // left front top
+  V3D lbb = parsePosition(pElem_lbb);  // left back bottom
+  V3D lbt = parsePosition(pElem_lbt);  // left back top
+  V3D rfb = parsePosition(pElem_rfb);  // right front bottom
+  V3D rft = parsePosition(pElem_rft);  // right front top
+  V3D rbb = parsePosition(pElem_rbb);  // right back bottom
+  V3D rbt = parsePosition(pElem_rbt);  // right back top
+
+  V3D pointTowardBack = lbb-lfb;
+  pointTowardBack.normalize();
+
+  V3D normal;
+
+  // add front face
+  Plane* pPlaneFrontCutoff = new Plane();
+  normal = (rfb-lfb).cross_prod(lft-lfb);
+  
+ // V3D jjj = (normal*(rfb-rbb));
+  if ( normal.scalar_prod(rfb-rbb) < 0 )
+    normal *= -1.0;
+  pPlaneFrontCutoff->setPlane(lfb, normal); 
+  prim[l_id] = pPlaneFrontCutoff;
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(-" << l_id << " ";
+  l_id++;
+
+  // add back face
+  Plane* pPlaneBackCutoff = new Plane();
+  normal = (rbb-lbb).cross_prod(lbt-lbb);
+  if ( normal.scalar_prod(rfb-rbb) < 0 )
+    normal *= -1.0;  
+  pPlaneBackCutoff->setPlane(lbb, normal); 
+  prim[l_id] = pPlaneBackCutoff;
+  retAlgebraMatch << "" << l_id << " ";
+  l_id++;
+
+  // add left face
+  Plane* pPlaneLeftCutoff = new Plane();
+  normal = (lbb-lfb).cross_prod(lft-lfb);
+  if ( normal.scalar_prod(rfb-lfb) < 0 )
+    normal *= -1.0; 
+  pPlaneLeftCutoff->setPlane(lfb, normal); 
+  prim[l_id] = pPlaneLeftCutoff;
+  retAlgebraMatch << "" << l_id << " ";
+  l_id++;
+
+  // add right face
+  Plane* pPlaneRightCutoff = new Plane();
+  normal = (rbb-rfb).cross_prod(rft-rfb);
+  if ( normal.scalar_prod(rfb-lfb) < 0 )
+    normal *= -1.0; 
+  pPlaneRightCutoff->setPlane(rfb, normal); 
+  prim[l_id] = pPlaneRightCutoff;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  // add top face
+  Plane* pPlaneTopCutoff = new Plane();
+  normal = (rft-lft).cross_prod(lbt-lft);
+  if ( normal.scalar_prod(rft-rfb) < 0 )
+    normal *= -1.0; 
+  pPlaneTopCutoff->setPlane(lft, normal); 
+  prim[l_id] = pPlaneTopCutoff;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  // add bottom face
+  Plane* pPlaneBottomCutoff = new Plane();
+  normal = (rfb-lfb).cross_prod(lbb-lfb);
+  if ( normal.scalar_prod(rft-rfb) < 0 )
+    normal *= -1.0; 
+  pPlaneBottomCutoff->setPlane(lfb, normal); 
+  prim[l_id] = pPlaneBottomCutoff;
+  retAlgebraMatch << "" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'torus' element
+ *
+ *  @param pElem :: XML 'torus' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseTorus(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemCentre = getShapeElement(pElem, "centre"); 
+  Element* pElemAxis = getShapeElement(pElem, "axis");  
+  Element* pElemRadiusFromCentre = getShapeElement(pElem, "radius-from-centre-to-tube");
+  Element* pElemRadiusTube = getShapeElement(pElem, "radius-tube");
+
+  V3D normVec = parsePosition(pElemAxis);
+  normVec.normalize();
+
+  // getDoubleAttribute can throw - put the calls above any new
+  const double radiusCentre = getDoubleAttribute(pElemRadiusFromCentre,"val");
+  const double radiusTube = getDoubleAttribute(pElemRadiusTube, "val");
+  
+  // add torus
+  Torus* pTorus = new Torus();
+  pTorus->setCentre(parsePosition(pElemCentre));              
+  pTorus->setNorm(normVec);  
+  pTorus->setDistanceFromCentreToTube(radiusCentre);
+  pTorus->setTubeRadius(radiusTube);
+  prim[l_id] = pTorus;
+
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(-" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+
+/** Parse XML 'slice-of-cylinder-ring' element
+ *
+ *  @param pElem :: XML 'slice-of-cylinder-ring' element from instrument def. file
+ *  @param prim :: To add shapes to
+ *  @param l_id :: When shapes added to the map prim l_id is the continuous incremented index 
+ *  @return A Mantid algebra string for this shape
+ *
+ *  @throw InstrumentDefinitionError Thrown if issues with the content of XML instrument file
+ */
+std::string ShapeFactory::parseSliceOfCylinderRing(Poco::XML::Element* pElem, std::map<int, Surface*>& prim, int& l_id)
+{
+  Element* pElemArc = getShapeElement(pElem, "arc"); 
+  Element* pElemInnerRadius = getShapeElement(pElem, "inner-radius");  
+  Element* pElemOuterRadius = getShapeElement(pElem, "outer-radius");  
+  Element* pElemDepth = getShapeElement(pElem, "depth"); 
+
+  const double innerRadius = getDoubleAttribute(pElemInnerRadius,"val");
+  const double outerRadius = getDoubleAttribute(pElemOuterRadius,"val");
+  const double middleRadius = (outerRadius + innerRadius)/2.0;
+
+  const double depth = getDoubleAttribute(pElemDepth,"val");
+  const double arc = (M_PI/180.0) * getDoubleAttribute(pElemArc,"val");
+  
+  V3D normVec(0,0,1);
+  V3D centrePoint(-middleRadius,0,0);
+
+  // add inner infinite cylinder 
+  Cylinder* pCylinder1 = new Cylinder();
+  pCylinder1->setCentre(centrePoint);              
+  pCylinder1->setNorm(normVec);  
+  pCylinder1->setRadius(innerRadius);
+  prim[l_id] = pCylinder1;
+  std::stringstream retAlgebraMatch;
+  retAlgebraMatch << "(" << l_id << " ";
+  l_id++;
+
+  // add outer infinite cylinder 
+  Cylinder* pCylinder2 = new Cylinder();
+  pCylinder2->setCentre(centrePoint);              
+  pCylinder2->setNorm(normVec);  
+  pCylinder2->setRadius(outerRadius);
+  prim[l_id] = pCylinder2;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  // add top cutoff plane of infinite cylinder ring
+  Plane* pPlaneTop = new Plane();
+  pPlaneTop->setPlane(V3D(0,0,depth), normVec); 
+  prim[l_id] = pPlaneTop;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  // add bottom cutoff plane (which is assumed to fase the sample) 
+  // which at this point will result in a cylinder ring
+  Plane* pPlaneBottom = new Plane();
+  pPlaneBottom->setPlane(V3D(0,0,0), normVec); 
+  prim[l_id] = pPlaneBottom;
+  retAlgebraMatch << "" << l_id << " ";
+  l_id++;
+
+
+  // the two planes that are going to cut a slice of the cylinder ring
+
+  Plane* pPlaneSlice1 = new Plane();
+  pPlaneSlice1->setPlane(V3D(-middleRadius,0,0), V3D(cos(arc/2.0+M_PI/2.0),sin(arc/2.0+M_PI/2.0),0)); 
+  prim[l_id] = pPlaneSlice1;
+  retAlgebraMatch << "-" << l_id << " ";
+  l_id++;
+
+  Plane* pPlaneSlice2 = new Plane();
+  pPlaneSlice2->setPlane(V3D(-middleRadius,0,0), V3D(cos(-arc/2.0+M_PI/2.0),sin(-arc/2.0+M_PI/2.0),0)); 
+  prim[l_id] = pPlaneSlice2;
+  retAlgebraMatch << "" << l_id << ")";
+  l_id++;
+
+  return retAlgebraMatch.str();
+}
+
+
+/** Return a subelement of an XML element, but also checks that there exist exactly one entry
+ *  of this subelement.
+ *
+ *  @param pElem :: XML from instrument def. file
+ *  @param name :: Name of subelement 
+ *  @return The subelement
+ *
+ *  @throw std::invalid_argument Thrown if issues with XML string
+ */
+Poco::XML::Element* ShapeFactory::getShapeElement(Poco::XML::Element* pElem, const std::string& name)
+{
+  // check if this shape element contain an element with name specified by the 2nd function argument
+  Poco::AutoPtr<NodeList> pNL = pElem->getElementsByTagName(name);
+  if ( pNL->length() != 1)
+  {
+    throw std::invalid_argument("XML element: <" + pElem->tagName() +
+      "> must contain exactly one sub-element with name: <" + name + ">.");
+  }
+  Element* retVal = static_cast<Element*>(pNL->item(0));
+  return retVal;
+}
+
+
+/** Return value of attribute to XML element. It is an extension of poco's getAttribute method, which
+ *  in addition check that this attribute exists and if not throws an error. 
+ *
+ *  @param pElem :: XML from instrument def. file
+ *  @param name :: Name of subelement 
+ *  @return Value of attribute
+ *
+ *  @throw std::invalid_argument Thrown if issues with XML string
+ */
+double ShapeFactory::getDoubleAttribute(Poco::XML::Element* pElem, const std::string& name)
+{
+  if ( pElem->hasAttribute(name) )
+  {
+    return atof( (pElem->getAttribute(name)).c_str() );
+  }
+  else
+  {
+    throw std::invalid_argument("XML element: <" + pElem->tagName() +
+      "> does not have the attribute: " + name + ".");  
+  }
+}
+
+
+/** Get position coordinates from XML element
+ *
+ *  @param pElem :: XML element whose attributes contain position coordinates
+ *  @return Position coordinates in the form of a V3D object 
+ */
+V3D ShapeFactory::parsePosition(Poco::XML::Element* pElem)
+{
+  V3D retVal;
+
+  if ( pElem->hasAttribute("R") || pElem->hasAttribute("theta") || pElem->hasAttribute("phi") )
+  {
+    double R=0.0, theta=0.0, phi=0.0;
+
+    if ( pElem->hasAttribute("R") ) R = atof((pElem->getAttribute("R")).c_str());
+    if ( pElem->hasAttribute("theta") ) theta = atof((pElem->getAttribute("theta")).c_str());
+    if ( pElem->hasAttribute("phi") ) phi = atof((pElem->getAttribute("phi")).c_str());
+
+    retVal.spherical(R,theta,phi);
+  }
+  else if ( pElem->hasAttribute("r") || pElem->hasAttribute("t") ||
+    pElem->hasAttribute("p") )
+  // This is alternative way a user may specify sphecical coordinates
+  // which may be preferred in the long run to the more verbose of
+  // using R, theta and phi.
+  {
+    double R=0.0, theta=0.0, phi=0.0;
+
+    if ( pElem->hasAttribute("r") )
+      R = atof((pElem->getAttribute("r")).c_str());
+    if ( pElem->hasAttribute("t") )
+      theta = atof((pElem->getAttribute("t")).c_str());
+    if ( pElem->hasAttribute("p") )
+      phi = atof((pElem->getAttribute("p")).c_str());
+
+    retVal.spherical(R,theta,phi);
+  }
+  else
+  {
+    double x=0.0, y=0.0, z=0.0;
+
+    if ( pElem->hasAttribute("x") ) x = atof((pElem->getAttribute("x")).c_str());
+    if ( pElem->hasAttribute("y") ) y = atof((pElem->getAttribute("y")).c_str());
+    if ( pElem->hasAttribute("z") ) z = atof((pElem->getAttribute("z")).c_str());
+
+    retVal(x,y,z);
+  }
+
+  return retVal;
+}
+
+/// create a special geometry handler for the known finite primitives
+void ShapeFactory::createGeometryHandler(Poco::XML::Element* pElem,boost::shared_ptr<Object> Obj)
+{
+  if(pElem->tagName()=="cuboid")
+  {
+    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
+    Obj->setGeometryHandler(handler);
+    Element* pElem_lfb = getShapeElement(pElem, "left-front-bottom-point");
+    Element* pElem_lft = getShapeElement(pElem, "left-front-top-point");
+    Element* pElem_lbb = getShapeElement(pElem, "left-back-bottom-point");
+    Element* pElem_rfb = getShapeElement(pElem, "right-front-bottom-point");
+
+    V3D lfb = parsePosition(pElem_lfb);  // left front bottom
+    V3D lft = parsePosition(pElem_lft);  // left front top
+    V3D lbb = parsePosition(pElem_lbb);  // left back bottom
+    V3D rfb = parsePosition(pElem_rfb);  // right front bottom
+    ((GluGeometryHandler*)(handler.get()))->setCuboid(lfb,lft,lbb,rfb);
+  }
+  else if(pElem->tagName()=="sphere")
+  {
+    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
+    Obj->setGeometryHandler(handler);
+    Element* pElemCentre = getShapeElement(pElem, "centre");
+    Element* pElemRadius = getShapeElement(pElem, "radius");
+    ((GluGeometryHandler*)(handler.get()))->setSphere(parsePosition(pElemCentre),atof( (pElemRadius->getAttribute("val")).c_str() ));
+  }
+  else if(pElem->tagName()=="cylinder")
+  {
+    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
+    Obj->setGeometryHandler(handler);
+    Element* pElemCentre = getShapeElement(pElem, "centre-of-bottom-base");
+    Element* pElemAxis = getShapeElement(pElem, "axis");
+    Element* pElemRadius = getShapeElement(pElem, "radius");
+    Element* pElemHeight = getShapeElement(pElem, "height");
+    V3D normVec = parsePosition(pElemAxis);
+    normVec.normalize();
+    ((GluGeometryHandler*)(handler.get()))->setCylinder(parsePosition(pElemCentre),normVec,atof( (pElemRadius->getAttribute("val")).c_str() ),atof( (pElemHeight->getAttribute("val")).c_str() ));
+  }
+  else if(pElem->tagName()=="segmented-cylinder")
+  {
+    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
+    Obj->setGeometryHandler(handler);
+    Element* pElemCentre = getShapeElement(pElem, "centre-of-bottom-base");
+    Element* pElemAxis = getShapeElement(pElem, "axis");
+    Element* pElemRadius = getShapeElement(pElem, "radius");
+    Element* pElemHeight = getShapeElement(pElem, "height");
+    V3D normVec = parsePosition(pElemAxis);
+    normVec.normalize();
+    ((GluGeometryHandler*)(handler.get()))->setSegmentedCylinder(parsePosition(pElemCentre),normVec,atof( (pElemRadius->getAttribute("val")).c_str() ),atof( (pElemHeight->getAttribute("val")).c_str() ));
+  }
+  else if(pElem->tagName()=="cone")
+  {
+    boost::shared_ptr<GeometryHandler> handler(new GluGeometryHandler(Obj));
+    Obj->setGeometryHandler(handler);
+    Element* pElemTipPoint = getShapeElement(pElem, "tip-point");
+    Element* pElemAxis = getShapeElement(pElem, "axis");
+    Element* pElemAngle = getShapeElement(pElem, "angle");
+    Element* pElemHeight = getShapeElement(pElem, "height");
+
+    V3D normVec = parsePosition(pElemAxis);
+    normVec.normalize();
+    double height=atof( (pElemHeight->getAttribute("val")).c_str() );
+    double radius=height*tan(M_PI*atof( (pElemAngle->getAttribute("val")).c_str() )/180.0 );
+    ((GluGeometryHandler*)(handler.get()))->setCone(parsePosition(pElemTipPoint),normVec,radius,height);
+  }
+
+}
+
+} // namespace Geometry
+} // namespace Mantid
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/CacheGeometryHandler.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/CacheGeometryHandler.cpp
index fe913ddc516844d34250d72aa42028966e721e87..146f07fa6642230ea36ac9d678eb33068046a202 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/CacheGeometryHandler.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/CacheGeometryHandler.cpp
@@ -1,50 +1,50 @@
-//#include "gts.h"
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidGeometry/Instrument/ObjComponent.h"
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-#include "MantidGeometry/Rendering/CacheGeometryHandler.h"
-#include "MantidGeometry/Rendering/CacheGeometryRenderer.h"
-#include "MantidGeometry/Rendering/CacheGeometryGenerator.h"
-
-namespace Mantid
-{
-	namespace Geometry
-	{
-		Kernel::Logger& CacheGeometryHandler::PLog(Kernel::Logger::get("CacheGeometryHandler"));
-		CacheGeometryHandler::CacheGeometryHandler(IObjComponent *comp):GeometryHandler(comp)
-		{
-			Triangulator=NULL;
-			Renderer    = new CacheGeometryRenderer();
-		}
-
-		CacheGeometryHandler::CacheGeometryHandler(boost::shared_ptr<Object> obj):GeometryHandler(obj)
-		{
-			Triangulator=new CacheGeometryGenerator(obj.get());
-			Renderer    =new CacheGeometryRenderer();
-		}
-
-		CacheGeometryHandler::CacheGeometryHandler(Object* obj):GeometryHandler(obj)
-		{
-			Triangulator=new CacheGeometryGenerator(obj);
-			Renderer    =new CacheGeometryRenderer();
-		}
-
-		CacheGeometryHandler::~CacheGeometryHandler()
-		{
-			if(Triangulator!=NULL) delete Triangulator;
-			if(Renderer    !=NULL) delete Renderer;
-		}
-
+//#include "gts.h"
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidGeometry/Instrument/ObjComponent.h"
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+#include "MantidGeometry/Rendering/CacheGeometryHandler.h"
+#include "MantidGeometry/Rendering/CacheGeometryRenderer.h"
+#include "MantidGeometry/Rendering/CacheGeometryGenerator.h"
+
+namespace Mantid
+{
+	namespace Geometry
+	{
+		Kernel::Logger& CacheGeometryHandler::PLog(Kernel::Logger::get("CacheGeometryHandler"));
+		CacheGeometryHandler::CacheGeometryHandler(IObjComponent *comp):GeometryHandler(comp)
+		{
+			Triangulator=NULL;
+			Renderer    = new CacheGeometryRenderer();
+		}
+
+		CacheGeometryHandler::CacheGeometryHandler(boost::shared_ptr<Object> obj):GeometryHandler(obj)
+		{
+			Triangulator=new CacheGeometryGenerator(obj.get());
+			Renderer    =new CacheGeometryRenderer();
+		}
+
+		CacheGeometryHandler::CacheGeometryHandler(Object* obj):GeometryHandler(obj)
+		{
+			Triangulator=new CacheGeometryGenerator(obj);
+			Renderer    =new CacheGeometryRenderer();
+		}
+
+		CacheGeometryHandler::~CacheGeometryHandler()
+		{
+			if(Triangulator!=NULL) delete Triangulator;
+			if(Renderer    !=NULL) delete Renderer;
+		}
+
 		GeometryHandler* CacheGeometryHandler::createInstance(IObjComponent *comp)
 		{
 			return new CacheGeometryHandler(comp);
 		}
-
-		GeometryHandler* CacheGeometryHandler::createInstance(boost::shared_ptr<Object> obj)
-		{
-			return new CacheGeometryHandler(obj);
-		}
-
+
+		GeometryHandler* CacheGeometryHandler::createInstance(boost::shared_ptr<Object> obj)
+		{
+			return new CacheGeometryHandler(obj);
+		}
+
 		void CacheGeometryHandler::Triangulate()
 		{
 			//Check whether Object is triangulated otherwise triangulate
@@ -54,94 +54,94 @@ namespace Mantid
 			}
 		}
 
-		void CacheGeometryHandler::Render()
-		{
-			if(Obj!=NULL){
-				if(boolTriangulated==false)	Triangulate();
-				Renderer->Render(Triangulator->getNumberOfPoints(),Triangulator->getNumberOfTriangles(),Triangulator->getTriangleVertices(),Triangulator->getTriangleFaces());
-			}else if(ObjComp!=NULL){
-				Renderer->Render(ObjComp);
-			}
-		}
-
-		void CacheGeometryHandler::Initialize()
-		{
-			if(Obj!=NULL){
-				Obj->updateGeometryHandler();
-				if(boolTriangulated==false)	Triangulate();
-				Renderer->Initialize(Triangulator->getNumberOfPoints(),Triangulator->getNumberOfTriangles(),Triangulator->getTriangleVertices(),Triangulator->getTriangleFaces());
-			}else if(ObjComp!=NULL){
-				Renderer->Initialize(ObjComp);
-			}
-		}
-
+		void CacheGeometryHandler::Render()
+		{
+			if(Obj!=NULL){
+				if(boolTriangulated==false)	Triangulate();
+				Renderer->Render(Triangulator->getNumberOfPoints(),Triangulator->getNumberOfTriangles(),Triangulator->getTriangleVertices(),Triangulator->getTriangleFaces());
+			}else if(ObjComp!=NULL){
+				Renderer->Render(ObjComp);
+			}
+		}
+
+		void CacheGeometryHandler::Initialize()
+		{
+			if(Obj!=NULL){
+				Obj->updateGeometryHandler();
+				if(boolTriangulated==false)	Triangulate();
+				Renderer->Initialize(Triangulator->getNumberOfPoints(),Triangulator->getNumberOfTriangles(),Triangulator->getTriangleVertices(),Triangulator->getTriangleFaces());
+			}else if(ObjComp!=NULL){
+				Renderer->Initialize(ObjComp);
+			}
+		}
+
 		int CacheGeometryHandler::NumberOfTriangles()
 		{
-			if(Obj!=NULL)
-			{
-				Obj->updateGeometryHandler();
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getNumberOfTriangles();
-			}
-			else
-			{
-				return 0;
+			if(Obj!=NULL)
+			{
+				Obj->updateGeometryHandler();
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getNumberOfTriangles();
+			}
+			else
+			{
+				return 0;
+			}
+		}
+
+		int CacheGeometryHandler::NumberOfPoints()
+		{
+			if(Obj!=NULL)
+			{
+				Obj->updateGeometryHandler();
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getNumberOfPoints();
+			}
+			else
+			{
+				return 0;
 			}
 		}
 
-		int CacheGeometryHandler::NumberOfPoints()
-		{
-			if(Obj!=NULL)
-			{
-				Obj->updateGeometryHandler();
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getNumberOfPoints();
-			}
-			else
-			{
-				return 0;
-			}
-		}
-
 		double* CacheGeometryHandler::getTriangleVertices()
 		{
-			if(Obj!=NULL)
-			{
-				Obj->updateGeometryHandler();
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getTriangleVertices();
-			}
-			else
-			{
-				return NULL;
+			if(Obj!=NULL)
+			{
+				Obj->updateGeometryHandler();
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getTriangleVertices();
+			}
+			else
+			{
+				return NULL;
 			}
 		}
 
 		int*    CacheGeometryHandler::getTriangleFaces()
 		{
-			if(Obj!=NULL)
-			{
-				Obj->updateGeometryHandler();
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getTriangleFaces();
-			}
-			else
-			{
-				return NULL;
+			if(Obj!=NULL)
+			{
+				Obj->updateGeometryHandler();
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getTriangleFaces();
+			}
+			else
+			{
+				return NULL;
 			}
-		}
-
+		}
+
 		/**
 		Sets the geometry cache using the triangulation information provided
 		@param noPts :: the number of points
 		@param noFaces :: the number of faces
 		@param pts :: a double array of the points
 		@param faces :: an int array of the faces
-		*/
-		void CacheGeometryHandler::setGeometryCache(int noPts,int noFaces,double* pts,int* faces)
-		{
-			Triangulator->setGeometryCache(noPts,noFaces,pts,faces);
-			boolTriangulated=true;
-		}
-	}
-}
+		*/
+		void CacheGeometryHandler::setGeometryCache(int noPts,int noFaces,double* pts,int* faces)
+		{
+			Triangulator->setGeometryCache(noPts,noFaces,pts,faces);
+			boolTriangulated=true;
+		}
+	}
+}
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/GeometryHandler.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/GeometryHandler.cpp
index 9d00eb445028e513c0767771944d23577f7d2954..f3c399cdaeca73b68f222d1cafc4d2bbd2f38e3d 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/GeometryHandler.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/GeometryHandler.cpp
@@ -1,14 +1,14 @@
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-
-namespace Mantid
-{
-	namespace Geometry
-	{
-
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+
+namespace Mantid
+{
+	namespace Geometry
+	{
+
 		/** Constructor
 		*  @param[in] comp 
 		*  This geometry handler will be ObjComponent's geometry handler
-		*/
+		*/
 		GeometryHandler::GeometryHandler(IObjComponent *comp):Obj()
 		{
 			ObjComp=comp;
@@ -47,4 +47,4 @@ namespace Mantid
 			ObjComp=NULL;
 		}
 	}
-}
+}
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/GluGeometryHandler.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/GluGeometryHandler.cpp
index 9d768a8dc799f93780e93a2a38139cb875754689..7ebab6d8966b1338934976a5c20adebccf7e3f21 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/GluGeometryHandler.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/GluGeometryHandler.cpp
@@ -1,76 +1,76 @@
-//#include "gts.h"
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidGeometry/Instrument/ObjComponent.h"
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-//#include "MantidGeometry/GtsGeometryRenderer.h"
-#include "MantidGeometry/Rendering/GluGeometryHandler.h"
-#include "MantidGeometry/Rendering/GluGeometryRenderer.h"
-
-namespace Mantid
-{
-	namespace Geometry
-	{
-		GluGeometryHandler::GluGeometryHandler(IObjComponent *comp):GeometryHandler(comp)
-		{
-			Renderer    = new GluGeometryRenderer();
-		}
-
-		GluGeometryHandler::GluGeometryHandler(boost::shared_ptr<Object> obj):GeometryHandler(obj)
-		{
-			Renderer    =new GluGeometryRenderer();
-		}
-
-		GluGeometryHandler::GluGeometryHandler(Object* obj):GeometryHandler(obj)
-		{
-			Renderer    =new GluGeometryRenderer();
-		}
-
-		GluGeometryHandler::~GluGeometryHandler()
-		{
-			if(Renderer    !=NULL) delete Renderer;
-		}
-
+//#include "gts.h"
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidGeometry/Instrument/ObjComponent.h"
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+//#include "MantidGeometry/GtsGeometryRenderer.h"
+#include "MantidGeometry/Rendering/GluGeometryHandler.h"
+#include "MantidGeometry/Rendering/GluGeometryRenderer.h"
+
+namespace Mantid
+{
+	namespace Geometry
+	{
+		GluGeometryHandler::GluGeometryHandler(IObjComponent *comp):GeometryHandler(comp)
+		{
+			Renderer    = new GluGeometryRenderer();
+		}
+
+		GluGeometryHandler::GluGeometryHandler(boost::shared_ptr<Object> obj):GeometryHandler(obj)
+		{
+			Renderer    =new GluGeometryRenderer();
+		}
+
+		GluGeometryHandler::GluGeometryHandler(Object* obj):GeometryHandler(obj)
+		{
+			Renderer    =new GluGeometryRenderer();
+		}
+
+		GluGeometryHandler::~GluGeometryHandler()
+		{
+			if(Renderer    !=NULL) delete Renderer;
+		}
+
 		GeometryHandler* GluGeometryHandler::createInstance(IObjComponent *comp)
 		{
 			return new GluGeometryHandler(comp);
 		}
-
-		GeometryHandler* GluGeometryHandler::createInstance(boost::shared_ptr<Object> obj)
-		{
-			return new GluGeometryHandler(obj);
-		}
-
+
+		GeometryHandler* GluGeometryHandler::createInstance(boost::shared_ptr<Object> obj)
+		{
+			return new GluGeometryHandler(obj);
+		}
+
 		void GluGeometryHandler::Triangulate()
 		{
 			//Check whether Object is triangulated otherwise triangulate
 			//Doesn't have to do anything because we are not going to triangulate anything
 		}
 
-		void GluGeometryHandler::Render()
-		{
-			if(Obj!=NULL){
-				switch(type){
-					case CUBOID:
-						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderCube(Point1,Point2,Point3,Point4);
-						break;
-					case SPHERE:
-						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderSphere(center,radius);
-						break;
-					case CYLINDER:
-						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderCylinder(center,axis,radius,height);
-						break;
-					case CONE:
-						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderCone(center,axis,radius,height);
-						break;
-					case SEGMENTED_CYLINDER:
-						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderSegmentedCylinder(center,axis,radius,height);
-						break;
-				}
-			}else if(ObjComp!=NULL){
-				Renderer->Render(ObjComp);
-			}
-		}
-
+		void GluGeometryHandler::Render()
+		{
+			if(Obj!=NULL){
+				switch(type){
+					case CUBOID:
+						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderCube(Point1,Point2,Point3,Point4);
+						break;
+					case SPHERE:
+						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderSphere(center,radius);
+						break;
+					case CYLINDER:
+						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderCylinder(center,axis,radius,height);
+						break;
+					case CONE:
+						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderCone(center,axis,radius,height);
+						break;
+					case SEGMENTED_CYLINDER:
+						(dynamic_cast<GluGeometryRenderer*>(Renderer))->RenderSegmentedCylinder(center,axis,radius,height);
+						break;
+				}
+			}else if(ObjComp!=NULL){
+				Renderer->Render(ObjComp);
+			}
+		}
+
 		void GluGeometryHandler::GetObjectGeom(int& mytype, std::vector<Geometry::V3D>& vectors, double& myradius, double & myheight)
 		{
 		  mytype=0;
@@ -113,17 +113,17 @@ namespace Mantid
 		    }
 		  }
 		}
-
-		void GluGeometryHandler::Initialize()
-		{
-			if(Obj!=NULL){
-				//There is no initialization or probably call render
-				Render();
-			}else if(ObjComp!=NULL){
-//				Renderer->Initialize(ObjComp);
-			}
-		}
-
+
+		void GluGeometryHandler::Initialize()
+		{
+			if(Obj!=NULL){
+				//There is no initialization or probably call render
+				Render();
+			}else if(ObjComp!=NULL){
+//				Renderer->Initialize(ObjComp);
+			}
+		}
+
 		void GluGeometryHandler::setCuboid(V3D p1,V3D p2,V3D p3,V3D p4)
 		{
 			type=CUBOID;
@@ -146,21 +146,21 @@ namespace Mantid
 			radius=r;
 			height=h;
 		}
-		void GluGeometryHandler::setCone(V3D c,V3D a,double r,double h)
-		{
-			type=CONE;
-			center=c;
-			axis=a;
-			radius=r;
-			height=h;
-		}
-    void GluGeometryHandler::setSegmentedCylinder(V3D c,V3D a,double r,double h)
-    {
+		void GluGeometryHandler::setCone(V3D c,V3D a,double r,double h)
+		{
+			type=CONE;
+			center=c;
+			axis=a;
+			radius=r;
+			height=h;
+		}
+    void GluGeometryHandler::setSegmentedCylinder(V3D c,V3D a,double r,double h)
+    {
 			type=SEGMENTED_CYLINDER;
 			center=c;
 			axis=a;
 			radius=r;
 			height=h;
-    }
-	}
-}
+    }
+	}
+}
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryGenerator.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryGenerator.cpp
index c7e9fcdf3bce0a140d514964c61f22173ff5ebb8..9eaa2531742f1ba76a702ea523a452b539049e32 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryGenerator.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryGenerator.cpp
@@ -16,7 +16,7 @@
 
 
 #include "MantidGeometry/Rendering/OpenCascadeConfig.h"
-#include <gp_Trsf.hxx>
+#include <gp_Trsf.hxx>
 #include <gp_Vec.hxx>
 #include <gp_Dir.hxx>
 #include <gp_Pnt.hxx>
@@ -32,9 +32,9 @@
 #include <BRepAlgoAPI_Common.hxx>
 #include <BRepAlgoAPI_Cut.hxx>
 #include <BRepPrimAPI_MakeHalfSpace.hxx>
-#include <BRepPrimAPI_MakeSphere.hxx>
-#include <BRepPrimAPI_MakeBox.hxx>
-#include <BRepPrimAPI_MakeCylinder.hxx>
+#include <BRepPrimAPI_MakeSphere.hxx>
+#include <BRepPrimAPI_MakeBox.hxx>
+#include <BRepPrimAPI_MakeCylinder.hxx>
 #include <BRepPrimAPI_MakeCone.hxx>
 #include <BRepBuilderAPI_MakeFace.hxx>
 #include <BRepBuilderAPI_Transform.hxx>
@@ -84,9 +84,9 @@ namespace Mantid
 			return ObjSurface;
 		}
 
-		/**
-		 * Analyzes the rule tree in object and creates a Topology Shape
-		 */
+		/**
+		 * Analyzes the rule tree in object and creates a Topology Shape
+		 */
 		void OCGeometryGenerator::AnalyzeObject()
 		{
 			if(Obj!=NULL) //If object exists
@@ -118,14 +118,14 @@ namespace Mantid
 		TopoDS_Shape OCGeometryGenerator::AnalyzeRule(Intersection* rule)
 		{
 			TopoDS_Shape left=AnalyzeRule(rule->leaf(0));
-			TopoDS_Shape right=AnalyzeRule(rule->leaf(1));
+			TopoDS_Shape right=AnalyzeRule(rule->leaf(1));
 			TopoDS_Shape Result=BRepAlgoAPI_Common(left,right);
 			return Result;
 		}
 		TopoDS_Shape OCGeometryGenerator::AnalyzeRule(Union* rule)
 		{
 			TopoDS_Shape left=AnalyzeRule(rule->leaf(0));
-			TopoDS_Shape right=AnalyzeRule(rule->leaf(1));
+			TopoDS_Shape right=AnalyzeRule(rule->leaf(1));
 			TopoDS_Shape Result=BRepAlgoAPI_Fuse(left,right);
 			return Result;
 		}
@@ -138,14 +138,14 @@ namespace Mantid
 			return Result;
 		}
 		TopoDS_Shape OCGeometryGenerator::AnalyzeRule(CompGrp* rule)
-		{
+		{
 			TopoDS_Shape Result=AnalyzeRule(rule->leaf(0));
 			Result.Complement();
 			return 	Result;
 		}
 		TopoDS_Shape OCGeometryGenerator::AnalyzeRule(CompObj* rule)
 		{
-			Object* obj=rule->getObj();
+			Object* obj=rule->getObj();
 			TopoDS_Shape Result=AnalyzeRule((Rule*)obj->topRule());
 			Result.Complement();
 			return 	Result;
@@ -205,11 +205,11 @@ namespace Mantid
 			V3D center=sphere->getCentre();
 			double radius=sphere->getRadius();
 			TopoDS_Shape shape=BRepPrimAPI_MakeSphere(radius).Shape();
-			gp_Trsf T;
-			gp_Vec v(center[0],center[1],center[2]);
-			T.SetTranslation(v);
-			BRepBuilderAPI_Transform move(T);
-			move.Perform(shape);
+			gp_Trsf T;
+			gp_Vec v(center[0],center[1],center[2]);
+			T.SetTranslation(v);
+			BRepBuilderAPI_Transform move(T);
+			move.Perform(shape);
 			return move.Shape();
 		}
 		TopoDS_Shape OCGeometryGenerator::CreateCylinder(Cylinder* cylinder)
@@ -270,12 +270,12 @@ namespace Mantid
 			if(ObjSurface!=NULL)
 			{
 				TopExp_Explorer Ex;
-				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
-				{
-					TopoDS_Face F=TopoDS::Face(Ex.Current());
-					TopLoc_Location L;
-					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
-					countFace+=facing->NbTriangles();
+				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
+				{
+					TopoDS_Face F=TopoDS::Face(Ex.Current());
+					TopLoc_Location L;
+					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
+					countFace+=facing->NbTriangles();
 				}
 			}
 			return countFace;
@@ -287,12 +287,12 @@ namespace Mantid
 			if(ObjSurface!=NULL)
 			{
 				TopExp_Explorer Ex;
-				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
-				{
-					TopoDS_Face F=TopoDS::Face(Ex.Current());
-					TopLoc_Location L;
-					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
-					countVert+=facing->NbNodes();
+				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
+				{
+					TopoDS_Face F=TopoDS::Face(Ex.Current());
+					TopLoc_Location L;
+					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
+					countVert+=facing->NbNodes();
 				}
 			}
 			return countVert;
@@ -307,20 +307,20 @@ namespace Mantid
 				points=new double[nPts*3];
 				int index=0;
 				TopExp_Explorer Ex;
-				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
-				{
-					TopoDS_Face F=TopoDS::Face(Ex.Current());
-					TopLoc_Location L;
-					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
-					TColgp_Array1OfPnt tab(1,(facing->NbNodes()));
-					tab = facing->Nodes();
-					for (Standard_Integer i=1;i<=(facing->NbNodes());i++) {
-						gp_Pnt pnt=tab.Value(i);
-						points[index*3+0]=pnt.X();
-						points[index*3+1]=pnt.Y();
-						points[index*3+2]=pnt.Z();
-						index++;
-					}
+				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
+				{
+					TopoDS_Face F=TopoDS::Face(Ex.Current());
+					TopLoc_Location L;
+					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
+					TColgp_Array1OfPnt tab(1,(facing->NbNodes()));
+					tab = facing->Nodes();
+					for (Standard_Integer i=1;i<=(facing->NbNodes());i++) {
+						gp_Pnt pnt=tab.Value(i);
+						points[index*3+0]=pnt.X();
+						points[index*3+1]=pnt.Y();
+						points[index*3+2]=pnt.Z();
+						index++;
+					}
 				}				
 			}
 			return points;
@@ -334,27 +334,27 @@ namespace Mantid
 			{
 				faces=new int[nFaces*3];
 				TopExp_Explorer Ex;
-				int maxindex=0;
-				int index=0;
-				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
-				{
-					TopoDS_Face F=TopoDS::Face(Ex.Current());
-					TopLoc_Location L;
-					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
-					TColgp_Array1OfPnt tab(1,(facing->NbNodes()));
-					tab = facing->Nodes();
-					Poly_Array1OfTriangle tri(1,facing->NbTriangles());
-					tri = facing->Triangles();
-					for (Standard_Integer i=1;i<=(facing->NbTriangles());i++) {
-						Poly_Triangle trian = tri.Value(i);
-						Standard_Integer index1,index2,index3;
-						trian.Get(index1,index2,index3);
-						faces[index*3+0]=maxindex+index1-1;
-						faces[index*3+1]=maxindex+index2-1;
-						faces[index*3+2]=maxindex+index3-1;
-						index++;
-					}		
-					maxindex+=facing->NbNodes();
+				int maxindex=0;
+				int index=0;
+				for(Ex.Init(*ObjSurface,TopAbs_FACE);Ex.More();Ex.Next())
+				{
+					TopoDS_Face F=TopoDS::Face(Ex.Current());
+					TopLoc_Location L;
+					Handle (Poly_Triangulation) facing=BRep_Tool::Triangulation(F,L);
+					TColgp_Array1OfPnt tab(1,(facing->NbNodes()));
+					tab = facing->Nodes();
+					Poly_Array1OfTriangle tri(1,facing->NbTriangles());
+					tri = facing->Triangles();
+					for (Standard_Integer i=1;i<=(facing->NbTriangles());i++) {
+						Poly_Triangle trian = tri.Value(i);
+						Standard_Integer index1,index2,index3;
+						trian.Get(index1,index2,index3);
+						faces[index*3+0]=maxindex+index1-1;
+						faces[index*3+1]=maxindex+index2-1;
+						faces[index*3+2]=maxindex+index3-1;
+						index++;
+					}		
+					maxindex+=facing->NbNodes();
 				}
 			}
 			return faces;
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryHandler.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryHandler.cpp
index 4ffa6a81c56d6e0a3bbf30446047ccc1e2e602b1..f522acb0cf1d04ad29128b87d9f8dde980b8a23d 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryHandler.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/OCGeometryHandler.cpp
@@ -1,48 +1,48 @@
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidGeometry/IObjComponent.h"
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-#include "MantidGeometry/Rendering/OCGeometryHandler.h"
-#include "MantidGeometry/Rendering/OCGeometryGenerator.h"
-#include "MantidGeometry/Rendering/OCGeometryRenderer.h"
-
-namespace Mantid
-{
-	namespace Geometry
-	{
-		OCGeometryHandler::OCGeometryHandler(IObjComponent *comp):GeometryHandler(comp)
-		{
-			Triangulator=NULL;
-			Renderer    = new OCGeometryRenderer();
-		}
-
-		OCGeometryHandler::OCGeometryHandler(boost::shared_ptr<Object> obj):GeometryHandler(obj)
-		{
-			Triangulator=new OCGeometryGenerator(obj.get());
-			Renderer    =new OCGeometryRenderer();
-		}
-
-		OCGeometryHandler::OCGeometryHandler(Object* obj):GeometryHandler(obj)
-		{
-			Triangulator=new OCGeometryGenerator(obj);
-			Renderer    =new OCGeometryRenderer();
-		}
-
-		OCGeometryHandler::~OCGeometryHandler()
-		{
-			if(Triangulator!=NULL) delete Triangulator;
-			if(Renderer    !=NULL) delete Renderer;
-		}
-
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidGeometry/IObjComponent.h"
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+#include "MantidGeometry/Rendering/OCGeometryHandler.h"
+#include "MantidGeometry/Rendering/OCGeometryGenerator.h"
+#include "MantidGeometry/Rendering/OCGeometryRenderer.h"
+
+namespace Mantid
+{
+	namespace Geometry
+	{
+		OCGeometryHandler::OCGeometryHandler(IObjComponent *comp):GeometryHandler(comp)
+		{
+			Triangulator=NULL;
+			Renderer    = new OCGeometryRenderer();
+		}
+
+		OCGeometryHandler::OCGeometryHandler(boost::shared_ptr<Object> obj):GeometryHandler(obj)
+		{
+			Triangulator=new OCGeometryGenerator(obj.get());
+			Renderer    =new OCGeometryRenderer();
+		}
+
+		OCGeometryHandler::OCGeometryHandler(Object* obj):GeometryHandler(obj)
+		{
+			Triangulator=new OCGeometryGenerator(obj);
+			Renderer    =new OCGeometryRenderer();
+		}
+
+		OCGeometryHandler::~OCGeometryHandler()
+		{
+			if(Triangulator!=NULL) delete Triangulator;
+			if(Renderer    !=NULL) delete Renderer;
+		}
+
 		GeometryHandler* OCGeometryHandler::createInstance(IObjComponent *comp)
 		{
 			return new OCGeometryHandler(comp);
 		}
-
-		GeometryHandler* OCGeometryHandler::createInstance(boost::shared_ptr<Object> obj)
-		{
-			return new OCGeometryHandler(obj);
-		}
-
+
+		GeometryHandler* OCGeometryHandler::createInstance(boost::shared_ptr<Object> obj)
+		{
+			return new OCGeometryHandler(obj);
+		}
+
 		void OCGeometryHandler::Triangulate()
 		{
 			//Check whether Object is triangulated otherwise triangulate
@@ -52,77 +52,77 @@ namespace Mantid
 			}
 		}
 
-		void OCGeometryHandler::Render()
-		{
-			if(Obj!=NULL){
-				if(boolTriangulated==false)	Triangulate();
-				Renderer->Render(Triangulator->getObjectSurface());
-			}else if(ObjComp!=NULL){
-				Renderer->Render(ObjComp);
-			}
-		}
-
-		void OCGeometryHandler::Initialize()
-		{
-			if(Obj!=NULL){
-				if(boolTriangulated==false)	Triangulate();
-				Renderer->Initialize(Triangulator->getObjectSurface());
-			}else if(ObjComp!=NULL){
-				Renderer->Initialize(ObjComp);
-			}
-		}
-
+		void OCGeometryHandler::Render()
+		{
+			if(Obj!=NULL){
+				if(boolTriangulated==false)	Triangulate();
+				Renderer->Render(Triangulator->getObjectSurface());
+			}else if(ObjComp!=NULL){
+				Renderer->Render(ObjComp);
+			}
+		}
+
+		void OCGeometryHandler::Initialize()
+		{
+			if(Obj!=NULL){
+				if(boolTriangulated==false)	Triangulate();
+				Renderer->Initialize(Triangulator->getObjectSurface());
+			}else if(ObjComp!=NULL){
+				Renderer->Initialize(ObjComp);
+			}
+		}
+
 		int OCGeometryHandler::NumberOfTriangles()
 		{
-			if(Obj!=NULL)
-			{
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getNumberOfTriangles();
-			}
-			else
-			{
-				return 0;
+			if(Obj!=NULL)
+			{
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getNumberOfTriangles();
+			}
+			else
+			{
+				return 0;
+			}
+		}
+
+		int OCGeometryHandler::NumberOfPoints()
+		{
+			if(Obj!=NULL)
+			{
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getNumberOfPoints();
+			}
+			else
+			{
+				return 0;
 			}
 		}
 
-		int OCGeometryHandler::NumberOfPoints()
-		{
-			if(Obj!=NULL)
-			{
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getNumberOfPoints();
-			}
-			else
-			{
-				return 0;
-			}
-		}
-
 		double* OCGeometryHandler::getTriangleVertices()
 		{
-			if(Obj!=NULL)
-			{
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getTriangleVertices();
-			}
-			else
-			{
-				return NULL;
+			if(Obj!=NULL)
+			{
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getTriangleVertices();
+			}
+			else
+			{
+				return NULL;
 			}
 		}
 
 		int*    OCGeometryHandler::getTriangleFaces()
 		{
-			if(Obj!=NULL)
-			{
-				if(boolTriangulated==false)	Triangulate();
-				return Triangulator->getTriangleFaces();
-			}
-			else
-			{
-				return NULL;
+			if(Obj!=NULL)
+			{
+				if(boolTriangulated==false)	Triangulate();
+				return Triangulator->getTriangleFaces();
+			}
+			else
+			{
+				return NULL;
 			}
 		}
-
-	}
-}
+
+	}
+}
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheReader.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheReader.cpp
index 53113d1320c44f8c552ba1f91d70b2169ce16529..a7f9e6936718bfd70ddbc9b62366c94f0bdc39d8 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheReader.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheReader.cpp
@@ -1,60 +1,60 @@
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/DOM/AutoPtr.h>
-#include <Poco/SAX/InputSource.h>
-#include <Poco/Exception.h>
-#include <Poco/DOM/Element.h>
-#include <iostream>
-
-
-using Poco::XML::DOMParser;
-using Poco::XML::InputSource;
-using Poco::XML::Document;
-using Poco::XML::NodeIterator;
-using Poco::XML::NodeFilter;
-using Poco::XML::Node;
-using Poco::XML::AutoPtr;
-using Poco::Exception;
-using Poco::XML::Element;
-
-#include "MantidKernel/Exception.h"
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-#include "MantidGeometry/Rendering/vtkGeometryCacheReader.h"
-
-
-namespace Mantid
-{
-	namespace Geometry
-	{
-		Kernel::Logger& vtkGeometryCacheReader::PLog(Kernel::Logger::get("Object"));
-
-		/**
-		* Constructor
-		*/
-		vtkGeometryCacheReader::vtkGeometryCacheReader(std::string filename)
-		{
-			mFileName=filename;
-			mDoc=NULL;
-			Init();
-		}
-
-		/**
-		* Destructor
-		*/
-		vtkGeometryCacheReader::~vtkGeometryCacheReader()
-		{
-		  mDoc->release();
-			delete pParser;
-		}
-
-		/**
-		 * Initialise Reading of the cached file
-		 */
-		void vtkGeometryCacheReader::Init()
-		{
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/DOM/AutoPtr.h>
+#include <Poco/SAX/InputSource.h>
+#include <Poco/Exception.h>
+#include <Poco/DOM/Element.h>
+#include <iostream>
+
+
+using Poco::XML::DOMParser;
+using Poco::XML::InputSource;
+using Poco::XML::Document;
+using Poco::XML::NodeIterator;
+using Poco::XML::NodeFilter;
+using Poco::XML::Node;
+using Poco::XML::AutoPtr;
+using Poco::Exception;
+using Poco::XML::Element;
+
+#include "MantidKernel/Exception.h"
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+#include "MantidGeometry/Rendering/vtkGeometryCacheReader.h"
+
+
+namespace Mantid
+{
+	namespace Geometry
+	{
+		Kernel::Logger& vtkGeometryCacheReader::PLog(Kernel::Logger::get("Object"));
+
+		/**
+		* Constructor
+		*/
+		vtkGeometryCacheReader::vtkGeometryCacheReader(std::string filename)
+		{
+			mFileName=filename;
+			mDoc=NULL;
+			Init();
+		}
+
+		/**
+		* Destructor
+		*/
+		vtkGeometryCacheReader::~vtkGeometryCacheReader()
+		{
+		  mDoc->release();
+			delete pParser;
+		}
+
+		/**
+		 * Initialise Reading of the cached file
+		 */
+		void vtkGeometryCacheReader::Init()
+		{
 			// Set up the DOM parser and parse xml file
 			pParser=new DOMParser();
 			try
@@ -65,126 +65,126 @@ namespace Mantid
 			{
 				PLog.error("Unable to parse file " + mFileName);
 				throw Kernel::Exception::FileError("Unable to parse File:" , mFileName);
-			}
-		}
-
-		/**
-		 * Set the geometry for the object
-		 */
-		void vtkGeometryCacheReader::readCacheForObject(Object *obj)
-		{
-			//Get the element corresponding to the name of the object
-			std::stringstream objName;
-			objName<<obj->getName();
-			Poco::XML::Element *pEle=getElementByObjectName(objName.str());
-			if(pEle==NULL) //Element not found
-			{
-				PLog.debug("Cache not found for Object with name " + objName.str());
-				return;
-			}
-			// Read the cache from the element
-			int noOfTriangles=0
-				,noOfPoints=0;
-			double *Points;
-			int    *Faces;
-			std::stringstream buff;
-			// Read number of points
-			buff<<pEle->getAttribute("NumberOfPoints");
-			buff>>noOfPoints;
-			buff.clear();
-			//Read number of triangles
-			buff<<pEle->getAttribute("NumberOfPolys");
-			buff>>noOfTriangles;
-			buff.clear();
-
-			// Read Points
-			Element* pPts = pEle->getChildElement("Points")->getChildElement("DataArray");
-			readPoints(pPts,&noOfPoints,&Points);
-
-			// Read Triangles
-			Element* pTris = pEle->getChildElement("Polys")->getChildElement("DataArray");
-			readTriangles(pTris,&noOfTriangles,&Faces);
-			
-			//First check whether Object can be written to the file
-			boost::shared_ptr<GeometryHandler> handle=obj->getGeometryHandler();
-			handle->setGeometryCache(noOfPoints,noOfTriangles,Points,Faces);	
-		}
-
-		/**
-		 * Get the Element by using the object name
-		 */
-		Poco::XML::Element* vtkGeometryCacheReader::getElementByObjectName(std::string name)
-		{			
-			Element* pRoot = mDoc->documentElement();
-			if(pRoot==NULL||pRoot->nodeName().compare("VTKFile")!=0)
-				return NULL;
-			Element* pPolyData = pRoot->getChildElement("PolyData");
-			if(pPolyData==NULL)
-				return NULL;
-			return pPolyData->getElementById(name,"name");
-		}
-
-		/**
-		 * Read the points from the element
-		 */
-		void vtkGeometryCacheReader::readPoints(Poco::XML::Element* pEle,int *noOfPoints,double** points)
-		{
-			if(pEle==NULL)
-			{
-				*noOfPoints=0;
-				return;
-			}
-			//Allocate memory
-			*points=new double[(*noOfPoints)*3];
-			if(*points==NULL) // Out of memory
-			{
-				PLog.error("Cannot allocate memory for triangle cache of Object ");
-				return;
-			}
-			if(pEle->getAttribute("format").compare("ascii")==0) 
-			{ //Read from Ascii
-				std::stringstream buf;
-				buf<<pEle->innerText();
-				for(int i=0;i<(*noOfPoints)*3;i++)
-				{
-					buf>>(*points)[i];
-				}
-			}
-			else
-			{ //Read from binary
-			}
-
-		}
-
-		/**
-		 * Read triangle face indexs
-		 */
-		void vtkGeometryCacheReader::readTriangles(Poco::XML::Element* pEle,int *noOfTriangles,int** faces)
-		{
-			if(pEle==NULL)
-			{
-				*noOfTriangles=0;
-				return;
-			}
-			//Allocate memory
-			*faces=new int[(*noOfTriangles)*3];
-			if(*faces==NULL) // Out of memory
-			{
-				PLog.error("Cannot allocate memory for triangle cache of Object ");
-				return;
-			}
-			if(pEle->getAttribute("format").compare("ascii")==0) 
-			{ //Read from Ascii
-				std::stringstream buf;
-				buf<<pEle->innerText();
-				for(int i=0;i<(*noOfTriangles)*3;i++)
-				{
-					buf>>(*faces)[i];
-				}
-			}
-			else
-			{ //Read from binary
-			}
-		}
-	}
-}
+			}
+		}
+
+		/**
+		 * Set the geometry for the object
+		 */
+		void vtkGeometryCacheReader::readCacheForObject(Object *obj)
+		{
+			//Get the element corresponding to the name of the object
+			std::stringstream objName;
+			objName<<obj->getName();
+			Poco::XML::Element *pEle=getElementByObjectName(objName.str());
+			if(pEle==NULL) //Element not found
+			{
+				PLog.debug("Cache not found for Object with name " + objName.str());
+				return;
+			}
+			// Read the cache from the element
+			int noOfTriangles=0
+				,noOfPoints=0;
+			double *Points;
+			int    *Faces;
+			std::stringstream buff;
+			// Read number of points
+			buff<<pEle->getAttribute("NumberOfPoints");
+			buff>>noOfPoints;
+			buff.clear();
+			//Read number of triangles
+			buff<<pEle->getAttribute("NumberOfPolys");
+			buff>>noOfTriangles;
+			buff.clear();
+
+			// Read Points
+			Element* pPts = pEle->getChildElement("Points")->getChildElement("DataArray");
+			readPoints(pPts,&noOfPoints,&Points);
+
+			// Read Triangles
+			Element* pTris = pEle->getChildElement("Polys")->getChildElement("DataArray");
+			readTriangles(pTris,&noOfTriangles,&Faces);
+			
+			//First check whether Object can be written to the file
+			boost::shared_ptr<GeometryHandler> handle=obj->getGeometryHandler();
+			handle->setGeometryCache(noOfPoints,noOfTriangles,Points,Faces);	
+		}
+
+		/**
+		 * Get the Element by using the object name
+		 */
+		Poco::XML::Element* vtkGeometryCacheReader::getElementByObjectName(std::string name)
+		{			
+			Element* pRoot = mDoc->documentElement();
+			if(pRoot==NULL||pRoot->nodeName().compare("VTKFile")!=0)
+				return NULL;
+			Element* pPolyData = pRoot->getChildElement("PolyData");
+			if(pPolyData==NULL)
+				return NULL;
+			return pPolyData->getElementById(name,"name");
+		}
+
+		/**
+		 * Read the points from the element
+		 */
+		void vtkGeometryCacheReader::readPoints(Poco::XML::Element* pEle,int *noOfPoints,double** points)
+		{
+			if(pEle==NULL)
+			{
+				*noOfPoints=0;
+				return;
+			}
+			//Allocate memory
+			*points=new double[(*noOfPoints)*3];
+			if(*points==NULL) // Out of memory
+			{
+				PLog.error("Cannot allocate memory for triangle cache of Object ");
+				return;
+			}
+			if(pEle->getAttribute("format").compare("ascii")==0) 
+			{ //Read from Ascii
+				std::stringstream buf;
+				buf<<pEle->innerText();
+				for(int i=0;i<(*noOfPoints)*3;i++)
+				{
+					buf>>(*points)[i];
+				}
+			}
+			else
+			{ //Read from binary
+			}
+
+		}
+
+		/**
+		 * Read triangle face indexs
+		 */
+		void vtkGeometryCacheReader::readTriangles(Poco::XML::Element* pEle,int *noOfTriangles,int** faces)
+		{
+			if(pEle==NULL)
+			{
+				*noOfTriangles=0;
+				return;
+			}
+			//Allocate memory
+			*faces=new int[(*noOfTriangles)*3];
+			if(*faces==NULL) // Out of memory
+			{
+				PLog.error("Cannot allocate memory for triangle cache of Object ");
+				return;
+			}
+			if(pEle->getAttribute("format").compare("ascii")==0) 
+			{ //Read from Ascii
+				std::stringstream buf;
+				buf<<pEle->innerText();
+				for(int i=0;i<(*noOfTriangles)*3;i++)
+				{
+					buf>>(*faces)[i];
+				}
+			}
+			else
+			{ //Read from binary
+			}
+		}
+	}
+}
diff --git a/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheWriter.cpp b/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheWriter.cpp
index 8539223dea92ca9a96423b8063da4925e7530cdf..4050a293e4fb57592f45092954a65d899599c0f6 100644
--- a/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheWriter.cpp
+++ b/Code/Mantid/Framework/Geometry/src/Rendering/vtkGeometryCacheWriter.cpp
@@ -1,184 +1,184 @@
-#include "MantidGeometry/Rendering/vtkGeometryCacheWriter.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidGeometry/Objects/Object.h"
-#include "MantidGeometry/Rendering/GeometryHandler.h"
-
-#include <Poco/FileStream.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/Text.h>
-#include <Poco/DOM/AutoPtr.h>
-#include <Poco/DOM/DOMWriter.h>
-#include <Poco/XML/XMLWriter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-#include <iostream>
-#include <sstream>
-#include <fstream>
-
-using Poco::XML::Document;
-using Poco::XML::Element;
-using Poco::XML::Text;
-using Poco::XML::AutoPtr;
-using Poco::XML::DOMWriter;
-using Poco::XML::XMLWriter;
-
-namespace Mantid
-{
-  namespace Geometry
-  {
-    Kernel::Logger& vtkGeometryCacheWriter::PLog(Kernel::Logger::get("vtkGeometryCacheWriter"));
-    /**
-     * Constructor
-     */
-    vtkGeometryCacheWriter::vtkGeometryCacheWriter(std::string filename)
-    {
-      mFileName=filename;
-
-      mDoc=new Document();
-      Init();
-    }
-
-    /**
-     * Destructor
-     */
-    vtkGeometryCacheWriter::~vtkGeometryCacheWriter()
-    {
-      mRoot->release();
-      mDoc->release();
-    }
-
-    /**
-     * Initialises the XML Document with the required vtk XML Headings
-     */
-    void vtkGeometryCacheWriter::Init()
-    {
-      mRoot=mDoc->createElement("PolyData");
-      createVTKFileHeader();
-    }
-    /**
-     * creates VTK XML header
-     * \<VTKFile type="PolyData" version="1.0" byte_order="LittleEndian"\>
-     *    \<PolyData\>
-     *    \</PolyData\>
-     * \</VTKFile\>
-     */
-    void vtkGeometryCacheWriter::createVTKFileHeader()
-    {
-      AutoPtr<Element> pRoot = mDoc->createElement("VTKFile");
-      pRoot->setAttribute("type","PolyData");
-      pRoot->setAttribute("version","1.0");
-      pRoot->setAttribute("byte_order","LittleEndian");
-      mDoc->appendChild(pRoot);
-      pRoot->appendChild(mRoot);
-    }
-
-    /**
-     * Adds the geometry of the Object to the document
-     * @param obj :: The object to add
-     */
-    void vtkGeometryCacheWriter::addObject(Object* obj)
-    {
-      //First check whether Object can be written to the file
-      boost::shared_ptr<GeometryHandler> handle=obj->getGeometryHandler();
-      if(!(handle->canTriangulate())) return; //Cannot add the object to the file
-      std::stringstream buf;
-      //get the name of the Object
-      int name=obj->getName();
-      //get number of point
-      int noPts=handle->NumberOfPoints();
-      //get number of triangles
-      int noTris=handle->NumberOfTriangles();
-      //Add Piece
-      AutoPtr<Element> pPiece=mDoc->createElement("Piece");
-      //Add attribute name
-      buf<<name;
-      pPiece->setAttribute("name",buf.str());
-      //Add Number of Points
-      buf.str("");
-      buf<<noPts;
-      pPiece->setAttribute("NumberOfPoints",buf.str());
-      //Add Number of Triangles/Polys
-      buf.str("");
-      buf<<noTris;
-      pPiece->setAttribute("NumberOfPolys",buf.str());
-      //write the points
-      AutoPtr<Element> pPoints=mDoc->createElement("Points");
-      AutoPtr<Element> pPtsDataArray=mDoc->createElement("DataArray");
-      //Add attributes to data array
-      pPtsDataArray->setAttribute("type","Float32");
-      pPtsDataArray->setAttribute("NumberOfComponents","3");
-      pPtsDataArray->setAttribute("format","ascii");
-      buf.str("");
-      //get the triangles info
-      double* points=handle->getTriangleVertices();
-      int i;
-      for(i=0;i<noPts*3;i++)
-      {
-        buf<<points[i]<<" ";
-      }
-      AutoPtr<Text> pPointText=mDoc->createTextNode(buf.str());
-      pPtsDataArray->appendChild(pPointText);
-      pPoints->appendChild(pPtsDataArray);
-      //get triangles faces info
-      AutoPtr<Element> pFaces=mDoc->createElement("Polys");
-      AutoPtr<Element> pTrisDataArray = mDoc->createElement("DataArray");
-      //add attribute
-      pTrisDataArray->setAttribute("type","Int32");
-      pTrisDataArray->setAttribute("Name","connectivity");
-      pTrisDataArray->setAttribute("format","ascii");
-
-      buf.str("");
-      int* faces=handle->getTriangleFaces();
-      for(i=0;i<noTris*3;i++)
-      {
-        buf<<faces[i]<<" ";
-      }
-      AutoPtr<Text> pTrisDataText=mDoc->createTextNode(buf.str());
-      pTrisDataArray->appendChild(pTrisDataText);
-      pFaces->appendChild(pTrisDataArray);
-      //set the offsets
-      AutoPtr<Element> pTrisOffsetDataArray=mDoc->createElement("DataArray");
-      //add attribute
-      pTrisOffsetDataArray->setAttribute("type","Int32");
-      pTrisOffsetDataArray->setAttribute("Name","offsets");
-      pTrisOffsetDataArray->setAttribute("format","ascii");
-      buf.str("");
-      for(i=1;i<noTris+1;i++)
-      {
-        buf<<i*3<<" ";
-      }
-      AutoPtr<Text> pTrisOffsetDataText=mDoc->createTextNode(buf.str());
-      pTrisOffsetDataArray->appendChild(pTrisOffsetDataText);
-      pFaces->appendChild(pTrisOffsetDataArray);
-
-      //append all
-      pPiece->appendChild(pPoints);
-      pPiece->appendChild(pFaces);
-
-      //add this piece to root
-      mRoot->appendChild(pPiece);
-    }
-    /**
-     * Write the XML to the file
-     */	  
-    void vtkGeometryCacheWriter::write()
-    {
-      DOMWriter writer;
-      writer.setNewLine("\n");
-      writer.setOptions(XMLWriter::PRETTY_PRINT);
-      std::ofstream file;
-      try
-      {
-        file.open(mFileName.c_str(),std::ios::trunc);
-        writer.writeNode(file, mDoc);
-        file.close();
-      }
-      catch(...)
-      {
-        PLog.error("Geometry Cache file writing exception");
-      }
-    }
-  }
-}
+#include "MantidGeometry/Rendering/vtkGeometryCacheWriter.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidGeometry/Objects/Object.h"
+#include "MantidGeometry/Rendering/GeometryHandler.h"
+
+#include <Poco/FileStream.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/Text.h>
+#include <Poco/DOM/AutoPtr.h>
+#include <Poco/DOM/DOMWriter.h>
+#include <Poco/XML/XMLWriter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+#include <iostream>
+#include <sstream>
+#include <fstream>
+
+using Poco::XML::Document;
+using Poco::XML::Element;
+using Poco::XML::Text;
+using Poco::XML::AutoPtr;
+using Poco::XML::DOMWriter;
+using Poco::XML::XMLWriter;
+
+namespace Mantid
+{
+  namespace Geometry
+  {
+    Kernel::Logger& vtkGeometryCacheWriter::PLog(Kernel::Logger::get("vtkGeometryCacheWriter"));
+    /**
+     * Constructor
+     */
+    vtkGeometryCacheWriter::vtkGeometryCacheWriter(std::string filename)
+    {
+      mFileName=filename;
+
+      mDoc=new Document();
+      Init();
+    }
+
+    /**
+     * Destructor
+     */
+    vtkGeometryCacheWriter::~vtkGeometryCacheWriter()
+    {
+      mRoot->release();
+      mDoc->release();
+    }
+
+    /**
+     * Initialises the XML Document with the required vtk XML Headings
+     */
+    void vtkGeometryCacheWriter::Init()
+    {
+      mRoot=mDoc->createElement("PolyData");
+      createVTKFileHeader();
+    }
+    /**
+     * creates VTK XML header
+     * \<VTKFile type="PolyData" version="1.0" byte_order="LittleEndian"\>
+     *    \<PolyData\>
+     *    \</PolyData\>
+     * \</VTKFile\>
+     */
+    void vtkGeometryCacheWriter::createVTKFileHeader()
+    {
+      AutoPtr<Element> pRoot = mDoc->createElement("VTKFile");
+      pRoot->setAttribute("type","PolyData");
+      pRoot->setAttribute("version","1.0");
+      pRoot->setAttribute("byte_order","LittleEndian");
+      mDoc->appendChild(pRoot);
+      pRoot->appendChild(mRoot);
+    }
+
+    /**
+     * Adds the geometry of the Object to the document
+     * @param obj :: The object to add
+     */
+    void vtkGeometryCacheWriter::addObject(Object* obj)
+    {
+      //First check whether Object can be written to the file
+      boost::shared_ptr<GeometryHandler> handle=obj->getGeometryHandler();
+      if(!(handle->canTriangulate())) return; //Cannot add the object to the file
+      std::stringstream buf;
+      //get the name of the Object
+      int name=obj->getName();
+      //get number of point
+      int noPts=handle->NumberOfPoints();
+      //get number of triangles
+      int noTris=handle->NumberOfTriangles();
+      //Add Piece
+      AutoPtr<Element> pPiece=mDoc->createElement("Piece");
+      //Add attribute name
+      buf<<name;
+      pPiece->setAttribute("name",buf.str());
+      //Add Number of Points
+      buf.str("");
+      buf<<noPts;
+      pPiece->setAttribute("NumberOfPoints",buf.str());
+      //Add Number of Triangles/Polys
+      buf.str("");
+      buf<<noTris;
+      pPiece->setAttribute("NumberOfPolys",buf.str());
+      //write the points
+      AutoPtr<Element> pPoints=mDoc->createElement("Points");
+      AutoPtr<Element> pPtsDataArray=mDoc->createElement("DataArray");
+      //Add attributes to data array
+      pPtsDataArray->setAttribute("type","Float32");
+      pPtsDataArray->setAttribute("NumberOfComponents","3");
+      pPtsDataArray->setAttribute("format","ascii");
+      buf.str("");
+      //get the triangles info
+      double* points=handle->getTriangleVertices();
+      int i;
+      for(i=0;i<noPts*3;i++)
+      {
+        buf<<points[i]<<" ";
+      }
+      AutoPtr<Text> pPointText=mDoc->createTextNode(buf.str());
+      pPtsDataArray->appendChild(pPointText);
+      pPoints->appendChild(pPtsDataArray);
+      //get triangles faces info
+      AutoPtr<Element> pFaces=mDoc->createElement("Polys");
+      AutoPtr<Element> pTrisDataArray = mDoc->createElement("DataArray");
+      //add attribute
+      pTrisDataArray->setAttribute("type","Int32");
+      pTrisDataArray->setAttribute("Name","connectivity");
+      pTrisDataArray->setAttribute("format","ascii");
+
+      buf.str("");
+      int* faces=handle->getTriangleFaces();
+      for(i=0;i<noTris*3;i++)
+      {
+        buf<<faces[i]<<" ";
+      }
+      AutoPtr<Text> pTrisDataText=mDoc->createTextNode(buf.str());
+      pTrisDataArray->appendChild(pTrisDataText);
+      pFaces->appendChild(pTrisDataArray);
+      //set the offsets
+      AutoPtr<Element> pTrisOffsetDataArray=mDoc->createElement("DataArray");
+      //add attribute
+      pTrisOffsetDataArray->setAttribute("type","Int32");
+      pTrisOffsetDataArray->setAttribute("Name","offsets");
+      pTrisOffsetDataArray->setAttribute("format","ascii");
+      buf.str("");
+      for(i=1;i<noTris+1;i++)
+      {
+        buf<<i*3<<" ";
+      }
+      AutoPtr<Text> pTrisOffsetDataText=mDoc->createTextNode(buf.str());
+      pTrisOffsetDataArray->appendChild(pTrisOffsetDataText);
+      pFaces->appendChild(pTrisOffsetDataArray);
+
+      //append all
+      pPiece->appendChild(pPoints);
+      pPiece->appendChild(pFaces);
+
+      //add this piece to root
+      mRoot->appendChild(pPiece);
+    }
+    /**
+     * Write the XML to the file
+     */	  
+    void vtkGeometryCacheWriter::write()
+    {
+      DOMWriter writer;
+      writer.setNewLine("\n");
+      writer.setOptions(XMLWriter::PRETTY_PRINT);
+      std::ofstream file;
+      try
+      {
+        file.open(mFileName.c_str(),std::ios::trunc);
+        writer.writeNode(file, mDoc);
+        file.close();
+      }
+      catch(...)
+      {
+        PLog.error("Geometry Cache file writing exception");
+      }
+    }
+  }
+}
diff --git a/Code/Mantid/Framework/Geometry/test/MDCellTest.h b/Code/Mantid/Framework/Geometry/test/MDCellTest.h
index 3d6738ef2eec6ce58c721f5ce99aa6036a86462f..20e113988476cc9d7045ca6f9b49ce7f49b97ee8 100644
--- a/Code/Mantid/Framework/Geometry/test/MDCellTest.h
+++ b/Code/Mantid/Framework/Geometry/test/MDCellTest.h
@@ -1,86 +1,86 @@
-#ifndef MD_CELL_TEST_H
-#define MD_CELL_TEST_H
-
-#include <cxxtest/TestSuite.h>
-#include "MantidGeometry/MDGeometry/MDPoint.h"
-#include "MantidGeometry/MDGeometry/MDCell.h"
-#include <boost/scoped_ptr.hpp>
-
-class MDCellTest :    public CxxTest::TestSuite
-{
-
-private:
-  //TODO: replace with gmock versions in future.
-  class FakeMDPoint : public  Mantid::Geometry::MDPoint
-  {
-  public:
-    
-    double getSignal() const
-    {
-      return 1;
-    }
-
-    double getError() const
-    {
-      return 0.1;
-    }
-  };
-
-    //Helper constructional method.
-  static Mantid::Geometry::MDCell* constructMDCell()
-  {
-    using namespace Mantid::Geometry;
-    std::vector<coordinate> vertexes;
-    coordinate c = coordinate::createCoordinate4D(4, 3, 2, 1);
-    vertexes.push_back(c);
-
-    std::vector<boost::shared_ptr<MDPoint> > points;
-    points.push_back(boost::shared_ptr<MDPoint>(new FakeMDPoint));
-    points.push_back(boost::shared_ptr<MDPoint>(new FakeMDPoint));
-
-    return new MDCell(points, vertexes);
-  }
-
-public:
-
-  void testGetSignal()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDCell> cell(constructMDCell());
-    TSM_ASSERT_EQUALS("The signal value is not wired-up correctly", 2, cell->getSignal()); 
-  }
-
-  void testGetError()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDCell> cell(constructMDCell());
-    TSM_ASSERT_EQUALS("The error value is not wired-up correctly", 0.2, cell->getError()); 
-  }
-
-  void testGetContributingPoints()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDCell> cell(constructMDCell());
-    std::vector<boost::shared_ptr<MDPoint> > contributingPoints = cell->getContributingPoints();
-    TSM_ASSERT_EQUALS("Wrong number of contributing points returned", 2, contributingPoints.size());
-    TSM_ASSERT("First contributing point is null", NULL != contributingPoints.at(0).get());
-    TSM_ASSERT("Second contributing point is null", NULL != contributingPoints.at(1).get());
-  }
-
-
-//  void testGetVertexes()
-//  {
-//    using namespace Mantid::Geometry;
-//    boost::scoped_ptr<MDCell> cell(constructMDCell());
-//    std::vector<coordinate> vertexes = cell->getVertexes();
-//    TSM_ASSERT_EQUALS("A single vertex should be present.", 1, vertexes.size());
-//    coordinate v1 = vertexes.at(0);
-//    TSM_ASSERT_EQUALS("Vertex x value incorrect", 4, v1.getX());
-//    TSM_ASSERT_EQUALS("Vertex y value incorrect", 3, v1.getY());
-//    TSM_ASSERT_EQUALS("Vertex z value incorrect", 2, v1.getZ());
-//    TSM_ASSERT_EQUALS("Vertex t value incorrect", 1, v1.gett());
-//  }
-
-
-};
-#endif
+#ifndef MD_CELL_TEST_H
+#define MD_CELL_TEST_H
+
+#include <cxxtest/TestSuite.h>
+#include "MantidGeometry/MDGeometry/MDPoint.h"
+#include "MantidGeometry/MDGeometry/MDCell.h"
+#include <boost/scoped_ptr.hpp>
+
+class MDCellTest :    public CxxTest::TestSuite
+{
+
+private:
+  //TODO: replace with gmock versions in future.
+  class FakeMDPoint : public  Mantid::Geometry::MDPoint
+  {
+  public:
+    
+    double getSignal() const
+    {
+      return 1;
+    }
+
+    double getError() const
+    {
+      return 0.1;
+    }
+  };
+
+    //Helper constructional method.
+  static Mantid::Geometry::MDCell* constructMDCell()
+  {
+    using namespace Mantid::Geometry;
+    std::vector<coordinate> vertexes;
+    coordinate c = coordinate::createCoordinate4D(4, 3, 2, 1);
+    vertexes.push_back(c);
+
+    std::vector<boost::shared_ptr<MDPoint> > points;
+    points.push_back(boost::shared_ptr<MDPoint>(new FakeMDPoint));
+    points.push_back(boost::shared_ptr<MDPoint>(new FakeMDPoint));
+
+    return new MDCell(points, vertexes);
+  }
+
+public:
+
+  void testGetSignal()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDCell> cell(constructMDCell());
+    TSM_ASSERT_EQUALS("The signal value is not wired-up correctly", 2, cell->getSignal()); 
+  }
+
+  void testGetError()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDCell> cell(constructMDCell());
+    TSM_ASSERT_EQUALS("The error value is not wired-up correctly", 0.2, cell->getError()); 
+  }
+
+  void testGetContributingPoints()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDCell> cell(constructMDCell());
+    std::vector<boost::shared_ptr<MDPoint> > contributingPoints = cell->getContributingPoints();
+    TSM_ASSERT_EQUALS("Wrong number of contributing points returned", 2, contributingPoints.size());
+    TSM_ASSERT("First contributing point is null", NULL != contributingPoints.at(0).get());
+    TSM_ASSERT("Second contributing point is null", NULL != contributingPoints.at(1).get());
+  }
+
+
+//  void testGetVertexes()
+//  {
+//    using namespace Mantid::Geometry;
+//    boost::scoped_ptr<MDCell> cell(constructMDCell());
+//    std::vector<coordinate> vertexes = cell->getVertexes();
+//    TSM_ASSERT_EQUALS("A single vertex should be present.", 1, vertexes.size());
+//    coordinate v1 = vertexes.at(0);
+//    TSM_ASSERT_EQUALS("Vertex x value incorrect", 4, v1.getX());
+//    TSM_ASSERT_EQUALS("Vertex y value incorrect", 3, v1.getY());
+//    TSM_ASSERT_EQUALS("Vertex z value incorrect", 2, v1.getZ());
+//    TSM_ASSERT_EQUALS("Vertex t value incorrect", 1, v1.gett());
+//  }
+
+
+};
+#endif
diff --git a/Code/Mantid/Framework/Geometry/test/MDDimensionTest.h b/Code/Mantid/Framework/Geometry/test/MDDimensionTest.h
index 10aad0351319874119917affe25a8a033f5dffaa..a9281a23f290fa0a042d8f253426ff47e0376737 100644
--- a/Code/Mantid/Framework/Geometry/test/MDDimensionTest.h
+++ b/Code/Mantid/Framework/Geometry/test/MDDimensionTest.h
@@ -1,329 +1,329 @@
-#ifndef H_TEST_DIMENSION
-#define H_TEST_DIMENSION
-
-#include <cxxtest/TestSuite.h>
-#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
-#include <cfloat>
-#include <cstring>
-
-using namespace Mantid;
-using namespace Geometry;
-// test class for dimension; The dimensions are internal classes for MD geometry;
-class tDimension: public MDDimension
-{
-public:
-    tDimension(const std::string &ID):MDDimension(ID){};
-    virtual void  setRange(double rMin=-1,double rMax=1,unsigned int nBins=1){
-        MDDimension::setRange(rMin,rMax,nBins);
-    }
-    void  setName(const char *name){
-          MDDimension::setName(name);
-    }
-    void  setName(const std::string & name){
-          MDDimension::setName(name);
-    }
-    void setIntegrated(){
-        MDDimension::setIntegrated();
-    }
-    void setExpanded(unsigned int nBins){
-        MDDimension::setExpanded(nBins);
-    }
-	
-
-};
-// test class for dimensionRes
-class tDimensionRes: public MDDimensionRes
-{
-public:
-   tDimensionRes(const std::string &ID,const rec_dim nDim):MDDimensionRes(ID,nDim){}; 
-   virtual void  setRange(double rMin=-1,double rMax=1,unsigned int nBins=1){
-        MDDimensionRes::setRange(rMin,rMax,nBins);
-    }
-    void  setName(const char *name){
-          MDDimensionRes::setName(name);
-    }
-    void setIntegrated(){
-        MDDimensionRes::setIntegrated();
-    }
-    void setExpanded(unsigned int nBins){
-        MDDimensionRes::setExpanded(nBins);
-    }
-	void setDirection(const V3D &newDir){
-		MDDimensionRes::setDirection(newDir);
-	}
-
-};
-
-class MDDimensionTest :    public CxxTest::TestSuite
-{
-    tDimensionRes *pResDim;
-    tDimension    *pOrtDim;
-public:
-
-    void testPublicConstructor()
-	{
-	 using namespace Mantid::Geometry;
-	 std::string id = "1";
-	 MDDimension dim(id); //Will cause compilation error if constructor is hidden.
-	 TSM_ASSERT_EQUALS("Id getter not wired-up correctly.", "1", dim.getDimensionId());
-	}
-
-    void testDimensionConstructor(void){
-        // define one reciprocal 
-       TS_ASSERT_THROWS_NOTHING(pResDim = new tDimensionRes("x",q1));
-       // and one orthogonal dimension
-       TS_ASSERT_THROWS_NOTHING(pOrtDim = new tDimension("en"));
-    }
-	void testDirections(void){
-		V3D dirOrt = pOrtDim->getDirection();
-		V3D dirRec = pResDim->getDirection();
-		
-		TSM_ASSERT_DELTA("The norm for the orthogonal dimension direction should be close to 0",0,dirOrt.norm2(),FLT_EPSILON);
-		TSM_ASSERT_DELTA("The norm for the reciprocal dimension direction should be close to 1",1,dirRec.norm2(),FLT_EPSILON);
-		V3D desDir(1,0,0);
-		TSM_ASSERT_EQUALS("First reciprocal dimension direction should be {1,0,0}",desDir,dirRec);
-	}
-	void testZeroDirectionThrows(){
-		V3D zeroDir;
-		TSM_ASSERT_THROWS("A direction in a reciprocal dimension can not be 0",pResDim->setDirection(zeroDir),std::invalid_argument);
-	}
-	void testSetDirection(void){
-		V3D desDir(1,-2,0);
-		TSM_ASSERT_THROWS_NOTHING("Setting an direction should not throw",pResDim->setDirection(desDir));
-
-		TSM_ASSERT_DELTA("The norm for the reciprocal dimension direction should be close to 1",1,pResDim->getDirection().norm2(),FLT_EPSILON);
-
-		TSM_ASSERT_EQUALS("The actual reciprocal dimension should be as set ",desDir,pResDim->getDirectionCryst());
-
-		desDir.normalize();
-	    TSM_ASSERT_EQUALS("The actual reciprocal dimension should be as set but normalized to 1 ",desDir,pResDim->getDirection());
-
-	}
- 
-
-    void testSetRanges(){
-        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
-
-          // wrong limits
-          TS_ASSERT_THROWS_ANYTHING(pOrtDim->setRange(20,-200,200))
-          // wrong bins (too many)
-          TS_ASSERT_THROWS_ANYTHING(pOrtDim->setRange(-20,200, 2 * MAX_REASONABLE_BIN_NUMBER))
-
-          // should be ok -- sets axis and ranges
-          TS_ASSERT_THROWS_NOTHING(pOrtDim->setRange(-200,200,200));
-          // should get axis points withour any problem
-          std::vector<double> points;
-          TS_ASSERT_THROWS_NOTHING(pOrtDim->getAxisPoints(points));
-
-          TS_ASSERT_DELTA(pOrtDim->getRange(),400,FLT_EPSILON);
-
-          TS_ASSERT_DELTA(pOrtDim->getMinimum(),-200,FLT_EPSILON);
-          TS_ASSERT_DELTA(pOrtDim->getMaximum(), 200,FLT_EPSILON);
-
-          // check axis name
-          TS_ASSERT_EQUALS(pOrtDim->getName(),"en");
-    }
-    void testGetX(){
-      double x;
-      if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
-      TS_ASSERT_THROWS_NOTHING(x=pOrtDim->getX(0));
-      TS_ASSERT_DELTA(x,pOrtDim->getMinimum(),FLT_EPSILON);
-      unsigned int nBins;
-      TS_ASSERT_THROWS_NOTHING(nBins = pOrtDim->getNBins());
-
-      TS_ASSERT_THROWS_NOTHING(x=pOrtDim->getX(nBins));
-      TS_ASSERT_DELTA(x,pOrtDim->getMaximum(),FLT_EPSILON);
-      // out of range request
-      TS_ASSERT_THROWS_ANYTHING(x=pOrtDim->getX(-1));
-      TS_ASSERT_THROWS_ANYTHING(x=pOrtDim->getX(nBins+1));
-    }
-
-    void testSetAxisName(){
-        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
-          // set axis name
-
-         std::string name("MY new axis name");
-         TS_ASSERT_THROWS_NOTHING(pOrtDim->setName(name));   
-         TS_ASSERT_SAME_DATA(pOrtDim->getName().c_str(),"MY new axis name",strlen(pOrtDim->getName().c_str()));
-
-          // is integrated?, false by default nBins > 1 so it is not integrated
-          TS_ASSERT_EQUALS(pOrtDim->getIntegrated(),false);
-          // it is now integrated;
-          TS_ASSERT_THROWS_NOTHING(pOrtDim->setIntegrated());
-          TS_ASSERT_EQUALS(pOrtDim->getIntegrated(),true);
-          // the n-bins is too high
-          TS_ASSERT_THROWS_ANYTHING(pOrtDim->setExpanded(MAX_REASONABLE_BIN_NUMBER+10));
-          // this one should be fine. 
-          TS_ASSERT_THROWS_NOTHING(pOrtDim->setExpanded(100));
-          TS_ASSERT_EQUALS(pOrtDim->getIntegrated(),false);
-    }
-    void testAxis(){
-        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
-      // axiss
-          std::vector<double> ax;
-          TS_ASSERT_THROWS_NOTHING(ax=pResDim->getAxis());
-
-    }
-	  void testRecDimDirection(){
-        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
-      // axiss
-          V3D dir;
-          TS_ASSERT_THROWS_NOTHING(dir=pResDim->getDirectionCryst());
-          TS_ASSERT_DELTA(dir[0],1,FLT_EPSILON);
-	  }
-
-    void testDimensionRes(void){
-
-
-        tDimensionRes dimY("yy",q2);
-        V3D e0;
-		TS_ASSERT_THROWS_NOTHING(e0=dimY.getDirection());
-
-        TS_ASSERT_DELTA(e0[0],0,FLT_EPSILON);
-        TS_ASSERT_DELTA(e0[1],1,FLT_EPSILON);
-        TS_ASSERT_DELTA(e0[2],0,FLT_EPSILON);
-
-    }
-
-    void testEquivalent()
-    {
-      MDDimension a("a");
-      MDDimension b("a");
-      TSM_ASSERT("Equivelant comparison failed", a == b);
-    }
-
-    void testNotEquivalent()
-    {
-      MDDimension a("a");
-      MDDimension b("b");
-      TSM_ASSERT("Not Equivelant comparison failed", a != b);
-    }
-
-    MDDimensionTest():pResDim(NULL),pOrtDim(NULL){}
-    ~MDDimensionTest(){
-        if(pResDim)delete pResDim;
-        if(pOrtDim)delete pOrtDim;
-        pResDim=NULL;
-        pOrtDim=NULL;
-    }
-
-    /// Tests for orthogonal dimensions
-    void testToXMLStringIntegrated()
-    {
-      tDimension dimension("1");
-      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
-      dimension.setName("Qx");
-      dimension.setIntegrated();
-
-      //Expected output of the xml serialization code.
-      std::string expectedXML =std::string( 
-      "<Dimension ID=\"1\">") +
-      "<Name>Qx</Name>" +
-      "<UpperBounds>3</UpperBounds>" +
-      "<LowerBounds>1</LowerBounds>" +
-      "<NumberOfBins>1</NumberOfBins>" +
-      "<Integrated>" +
-        "<UpperLimit>3</UpperLimit>" +
-        "<LowerLimit>1</LowerLimit>" +
-      "</Integrated>" +
-      "</Dimension>";
-
-      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
-    }
-
-    /// Test for orthogonal dimensions
-    void testToXMLStringNotIntegrated()
-    {
-      tDimension dimension("1");
-      dimension.setRange(1, 3, 10); // last argument gives 1 bin.
-      dimension.setName("Qx");
-
-      //Expected output of the xml serialization code.
-      std::string expectedXML =std::string( 
-      "<Dimension ID=\"1\">") +
-      "<Name>Qx</Name>" +
-      "<UpperBounds>3</UpperBounds>" +
-      "<LowerBounds>1</LowerBounds>" +
-      "<NumberOfBins>10</NumberOfBins>" +
-      "</Dimension>";
-
-      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
-    }
-
-    /// Test for reciprocal dimensions Q1
-    void testToXMLStringReciprocalQ1()
-    {
-      tDimensionRes dimension("1", q1);
-      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
-      dimension.setName("Qx");
-      dimension.setIntegrated();
-
-      //Expected output of the xml serialization code.
-      std::string expectedXML =std::string( 
-      "<Dimension ID=\"1\">") +
-      "<Name>Qx</Name>" +
-      "<UpperBounds>3</UpperBounds>" +
-      "<LowerBounds>1</LowerBounds>" +
-      "<NumberOfBins>1</NumberOfBins>" +
-      "<Integrated>" +
-        "<UpperLimit>3</UpperLimit>" +
-        "<LowerLimit>1</LowerLimit>" +
-      "</Integrated>" +
-      "<ReciprocalDimensionMapping>q1</ReciprocalDimensionMapping>" + // NB: q1 in expectation
-      "</Dimension>";
-
-      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
-    }
-
-    /// Test for reciprocal dimensions Q2
-    void testToXMLStringReciprocalQ2()
-    {
-      tDimensionRes dimension("1", q2);
-      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
-      dimension.setName("Qy");
-      dimension.setIntegrated();
-
-      //Expected output of the xml serialization code.
-      std::string expectedXML =std::string( 
-      "<Dimension ID=\"1\">") +
-      "<Name>Qy</Name>" +
-      "<UpperBounds>3</UpperBounds>" +
-      "<LowerBounds>1</LowerBounds>" +
-      "<NumberOfBins>1</NumberOfBins>" +
-      "<Integrated>" +
-        "<UpperLimit>3</UpperLimit>" +
-        "<LowerLimit>1</LowerLimit>" +
-      "</Integrated>" +
-      "<ReciprocalDimensionMapping>q2</ReciprocalDimensionMapping>" + // NB: q2 in expectation
-      "</Dimension>";
-
-      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
-    }
-
-    /// Test for reciprocal dimensions Q3
-    void testToXMLStringReciprocalQ3()
-    {
-      tDimensionRes dimension("1", q3);
-      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
-      dimension.setName("Qz");
-      dimension.setIntegrated();
-
-      //Expected output of the xml serialization code.
-      std::string expectedXML =std::string( 
-      "<Dimension ID=\"1\">") +
-      "<Name>Qz</Name>" +
-      "<UpperBounds>3</UpperBounds>" +
-      "<LowerBounds>1</LowerBounds>" +
-      "<NumberOfBins>1</NumberOfBins>" +
-      "<Integrated>" +
-        "<UpperLimit>3</UpperLimit>" +
-        "<LowerLimit>1</LowerLimit>" +
-      "</Integrated>" +
-      "<ReciprocalDimensionMapping>q3</ReciprocalDimensionMapping>" + // NB: q3 in expectation
-      "</Dimension>";
-
-      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
-    }
-
-};
-#endif
+#ifndef H_TEST_DIMENSION
+#define H_TEST_DIMENSION
+
+#include <cxxtest/TestSuite.h>
+#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
+#include <cfloat>
+#include <cstring>
+
+using namespace Mantid;
+using namespace Geometry;
+// test class for dimension; The dimensions are internal classes for MD geometry;
+class tDimension: public MDDimension
+{
+public:
+    tDimension(const std::string &ID):MDDimension(ID){};
+    virtual void  setRange(double rMin=-1,double rMax=1,unsigned int nBins=1){
+        MDDimension::setRange(rMin,rMax,nBins);
+    }
+    void  setName(const char *name){
+          MDDimension::setName(name);
+    }
+    void  setName(const std::string & name){
+          MDDimension::setName(name);
+    }
+    void setIntegrated(){
+        MDDimension::setIntegrated();
+    }
+    void setExpanded(unsigned int nBins){
+        MDDimension::setExpanded(nBins);
+    }
+	
+
+};
+// test class for dimensionRes
+class tDimensionRes: public MDDimensionRes
+{
+public:
+   tDimensionRes(const std::string &ID,const rec_dim nDim):MDDimensionRes(ID,nDim){}; 
+   virtual void  setRange(double rMin=-1,double rMax=1,unsigned int nBins=1){
+        MDDimensionRes::setRange(rMin,rMax,nBins);
+    }
+    void  setName(const char *name){
+          MDDimensionRes::setName(name);
+    }
+    void setIntegrated(){
+        MDDimensionRes::setIntegrated();
+    }
+    void setExpanded(unsigned int nBins){
+        MDDimensionRes::setExpanded(nBins);
+    }
+	void setDirection(const V3D &newDir){
+		MDDimensionRes::setDirection(newDir);
+	}
+
+};
+
+class MDDimensionTest :    public CxxTest::TestSuite
+{
+    tDimensionRes *pResDim;
+    tDimension    *pOrtDim;
+public:
+
+    void testPublicConstructor()
+	{
+	 using namespace Mantid::Geometry;
+	 std::string id = "1";
+	 MDDimension dim(id); //Will cause compilation error if constructor is hidden.
+	 TSM_ASSERT_EQUALS("Id getter not wired-up correctly.", "1", dim.getDimensionId());
+	}
+
+    void testDimensionConstructor(void){
+        // define one reciprocal 
+       TS_ASSERT_THROWS_NOTHING(pResDim = new tDimensionRes("x",q1));
+       // and one orthogonal dimension
+       TS_ASSERT_THROWS_NOTHING(pOrtDim = new tDimension("en"));
+    }
+	void testDirections(void){
+		V3D dirOrt = pOrtDim->getDirection();
+		V3D dirRec = pResDim->getDirection();
+		
+		TSM_ASSERT_DELTA("The norm for the orthogonal dimension direction should be close to 0",0,dirOrt.norm2(),FLT_EPSILON);
+		TSM_ASSERT_DELTA("The norm for the reciprocal dimension direction should be close to 1",1,dirRec.norm2(),FLT_EPSILON);
+		V3D desDir(1,0,0);
+		TSM_ASSERT_EQUALS("First reciprocal dimension direction should be {1,0,0}",desDir,dirRec);
+	}
+	void testZeroDirectionThrows(){
+		V3D zeroDir;
+		TSM_ASSERT_THROWS("A direction in a reciprocal dimension can not be 0",pResDim->setDirection(zeroDir),std::invalid_argument);
+	}
+	void testSetDirection(void){
+		V3D desDir(1,-2,0);
+		TSM_ASSERT_THROWS_NOTHING("Setting an direction should not throw",pResDim->setDirection(desDir));
+
+		TSM_ASSERT_DELTA("The norm for the reciprocal dimension direction should be close to 1",1,pResDim->getDirection().norm2(),FLT_EPSILON);
+
+		TSM_ASSERT_EQUALS("The actual reciprocal dimension should be as set ",desDir,pResDim->getDirectionCryst());
+
+		desDir.normalize();
+	    TSM_ASSERT_EQUALS("The actual reciprocal dimension should be as set but normalized to 1 ",desDir,pResDim->getDirection());
+
+	}
+ 
+
+    void testSetRanges(){
+        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
+
+          // wrong limits
+          TS_ASSERT_THROWS_ANYTHING(pOrtDim->setRange(20,-200,200))
+          // wrong bins (too many)
+          TS_ASSERT_THROWS_ANYTHING(pOrtDim->setRange(-20,200, 2 * MAX_REASONABLE_BIN_NUMBER))
+
+          // should be ok -- sets axis and ranges
+          TS_ASSERT_THROWS_NOTHING(pOrtDim->setRange(-200,200,200));
+          // should get axis points withour any problem
+          std::vector<double> points;
+          TS_ASSERT_THROWS_NOTHING(pOrtDim->getAxisPoints(points));
+
+          TS_ASSERT_DELTA(pOrtDim->getRange(),400,FLT_EPSILON);
+
+          TS_ASSERT_DELTA(pOrtDim->getMinimum(),-200,FLT_EPSILON);
+          TS_ASSERT_DELTA(pOrtDim->getMaximum(), 200,FLT_EPSILON);
+
+          // check axis name
+          TS_ASSERT_EQUALS(pOrtDim->getName(),"en");
+    }
+    void testGetX(){
+      double x;
+      if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
+      TS_ASSERT_THROWS_NOTHING(x=pOrtDim->getX(0));
+      TS_ASSERT_DELTA(x,pOrtDim->getMinimum(),FLT_EPSILON);
+      unsigned int nBins;
+      TS_ASSERT_THROWS_NOTHING(nBins = pOrtDim->getNBins());
+
+      TS_ASSERT_THROWS_NOTHING(x=pOrtDim->getX(nBins));
+      TS_ASSERT_DELTA(x,pOrtDim->getMaximum(),FLT_EPSILON);
+      // out of range request
+      TS_ASSERT_THROWS_ANYTHING(x=pOrtDim->getX(-1));
+      TS_ASSERT_THROWS_ANYTHING(x=pOrtDim->getX(nBins+1));
+    }
+
+    void testSetAxisName(){
+        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
+          // set axis name
+
+         std::string name("MY new axis name");
+         TS_ASSERT_THROWS_NOTHING(pOrtDim->setName(name));   
+         TS_ASSERT_SAME_DATA(pOrtDim->getName().c_str(),"MY new axis name",strlen(pOrtDim->getName().c_str()));
+
+          // is integrated?, false by default nBins > 1 so it is not integrated
+          TS_ASSERT_EQUALS(pOrtDim->getIntegrated(),false);
+          // it is now integrated;
+          TS_ASSERT_THROWS_NOTHING(pOrtDim->setIntegrated());
+          TS_ASSERT_EQUALS(pOrtDim->getIntegrated(),true);
+          // the n-bins is too high
+          TS_ASSERT_THROWS_ANYTHING(pOrtDim->setExpanded(MAX_REASONABLE_BIN_NUMBER+10));
+          // this one should be fine. 
+          TS_ASSERT_THROWS_NOTHING(pOrtDim->setExpanded(100));
+          TS_ASSERT_EQUALS(pOrtDim->getIntegrated(),false);
+    }
+    void testAxis(){
+        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
+      // axiss
+          std::vector<double> ax;
+          TS_ASSERT_THROWS_NOTHING(ax=pResDim->getAxis());
+
+    }
+	  void testRecDimDirection(){
+        if(!pOrtDim)TS_FAIL("pOrtDim class has not been constructed properly");
+      // axiss
+          V3D dir;
+          TS_ASSERT_THROWS_NOTHING(dir=pResDim->getDirectionCryst());
+          TS_ASSERT_DELTA(dir[0],1,FLT_EPSILON);
+	  }
+
+    void testDimensionRes(void){
+
+
+        tDimensionRes dimY("yy",q2);
+        V3D e0;
+		TS_ASSERT_THROWS_NOTHING(e0=dimY.getDirection());
+
+        TS_ASSERT_DELTA(e0[0],0,FLT_EPSILON);
+        TS_ASSERT_DELTA(e0[1],1,FLT_EPSILON);
+        TS_ASSERT_DELTA(e0[2],0,FLT_EPSILON);
+
+    }
+
+    void testEquivalent()
+    {
+      MDDimension a("a");
+      MDDimension b("a");
+      TSM_ASSERT("Equivelant comparison failed", a == b);
+    }
+
+    void testNotEquivalent()
+    {
+      MDDimension a("a");
+      MDDimension b("b");
+      TSM_ASSERT("Not Equivelant comparison failed", a != b);
+    }
+
+    MDDimensionTest():pResDim(NULL),pOrtDim(NULL){}
+    ~MDDimensionTest(){
+        if(pResDim)delete pResDim;
+        if(pOrtDim)delete pOrtDim;
+        pResDim=NULL;
+        pOrtDim=NULL;
+    }
+
+    /// Tests for orthogonal dimensions
+    void testToXMLStringIntegrated()
+    {
+      tDimension dimension("1");
+      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
+      dimension.setName("Qx");
+      dimension.setIntegrated();
+
+      //Expected output of the xml serialization code.
+      std::string expectedXML =std::string( 
+      "<Dimension ID=\"1\">") +
+      "<Name>Qx</Name>" +
+      "<UpperBounds>3</UpperBounds>" +
+      "<LowerBounds>1</LowerBounds>" +
+      "<NumberOfBins>1</NumberOfBins>" +
+      "<Integrated>" +
+        "<UpperLimit>3</UpperLimit>" +
+        "<LowerLimit>1</LowerLimit>" +
+      "</Integrated>" +
+      "</Dimension>";
+
+      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
+    }
+
+    /// Test for orthogonal dimensions
+    void testToXMLStringNotIntegrated()
+    {
+      tDimension dimension("1");
+      dimension.setRange(1, 3, 10); // last argument gives 1 bin.
+      dimension.setName("Qx");
+
+      //Expected output of the xml serialization code.
+      std::string expectedXML =std::string( 
+      "<Dimension ID=\"1\">") +
+      "<Name>Qx</Name>" +
+      "<UpperBounds>3</UpperBounds>" +
+      "<LowerBounds>1</LowerBounds>" +
+      "<NumberOfBins>10</NumberOfBins>" +
+      "</Dimension>";
+
+      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
+    }
+
+    /// Test for reciprocal dimensions Q1
+    void testToXMLStringReciprocalQ1()
+    {
+      tDimensionRes dimension("1", q1);
+      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
+      dimension.setName("Qx");
+      dimension.setIntegrated();
+
+      //Expected output of the xml serialization code.
+      std::string expectedXML =std::string( 
+      "<Dimension ID=\"1\">") +
+      "<Name>Qx</Name>" +
+      "<UpperBounds>3</UpperBounds>" +
+      "<LowerBounds>1</LowerBounds>" +
+      "<NumberOfBins>1</NumberOfBins>" +
+      "<Integrated>" +
+        "<UpperLimit>3</UpperLimit>" +
+        "<LowerLimit>1</LowerLimit>" +
+      "</Integrated>" +
+      "<ReciprocalDimensionMapping>q1</ReciprocalDimensionMapping>" + // NB: q1 in expectation
+      "</Dimension>";
+
+      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
+    }
+
+    /// Test for reciprocal dimensions Q2
+    void testToXMLStringReciprocalQ2()
+    {
+      tDimensionRes dimension("1", q2);
+      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
+      dimension.setName("Qy");
+      dimension.setIntegrated();
+
+      //Expected output of the xml serialization code.
+      std::string expectedXML =std::string( 
+      "<Dimension ID=\"1\">") +
+      "<Name>Qy</Name>" +
+      "<UpperBounds>3</UpperBounds>" +
+      "<LowerBounds>1</LowerBounds>" +
+      "<NumberOfBins>1</NumberOfBins>" +
+      "<Integrated>" +
+        "<UpperLimit>3</UpperLimit>" +
+        "<LowerLimit>1</LowerLimit>" +
+      "</Integrated>" +
+      "<ReciprocalDimensionMapping>q2</ReciprocalDimensionMapping>" + // NB: q2 in expectation
+      "</Dimension>";
+
+      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
+    }
+
+    /// Test for reciprocal dimensions Q3
+    void testToXMLStringReciprocalQ3()
+    {
+      tDimensionRes dimension("1", q3);
+      dimension.setRange(1, 3, 1); // last argument gives 1 bin, so not integrated.
+      dimension.setName("Qz");
+      dimension.setIntegrated();
+
+      //Expected output of the xml serialization code.
+      std::string expectedXML =std::string( 
+      "<Dimension ID=\"1\">") +
+      "<Name>Qz</Name>" +
+      "<UpperBounds>3</UpperBounds>" +
+      "<LowerBounds>1</LowerBounds>" +
+      "<NumberOfBins>1</NumberOfBins>" +
+      "<Integrated>" +
+        "<UpperLimit>3</UpperLimit>" +
+        "<LowerLimit>1</LowerLimit>" +
+      "</Integrated>" +
+      "<ReciprocalDimensionMapping>q3</ReciprocalDimensionMapping>" + // NB: q3 in expectation
+      "</Dimension>";
+
+      TSM_ASSERT_EQUALS("The xml generated does not meet the schema.", expectedXML, dimension.toXMLString());
+    }
+
+};
+#endif
diff --git a/Code/Mantid/Framework/Geometry/test/MDGeometryBasisTest.h b/Code/Mantid/Framework/Geometry/test/MDGeometryBasisTest.h
index 2acdab3144f625b86f0d3fea6ec15562ac0e0f50..e362c48732e6b3bc102b4e2ad67c0d0424baaccc 100644
--- a/Code/Mantid/Framework/Geometry/test/MDGeometryBasisTest.h
+++ b/Code/Mantid/Framework/Geometry/test/MDGeometryBasisTest.h
@@ -1,145 +1,145 @@
-#ifndef H_TEST_WORKSPACE_GEOMETRY
-#define H_TEST_WORKSPACE_GEOMETRY
-
-#include <cxxtest/TestSuite.h>
-#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
-#include <set>
-#include <cfloat>
-#include <sstream>
-#include <boost/scoped_ptr.hpp>
-
-using namespace Mantid;
-using namespace Geometry;
-
-
-class MDGeometryBasisTest :   public CxxTest::TestSuite
-{
-private:
-
-  //Helper method to construct a MDGeometryBasis schenario.
-  static MDGeometryBasis* constructMDGeometryBasis()
-  {
-    using namespace Mantid::Geometry;
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qx", true, 0));
-    basisDimensions.insert(MDBasisDimension("qy", true, 1));
-    basisDimensions.insert(MDBasisDimension("qz", true, 2));
-    basisDimensions.insert(MDBasisDimension("p", false, 3));
-
-    UnitCell cell;
-    return new MDGeometryBasis(basisDimensions, cell);
-  }
-
-public:
-
-  void testConstructionWithDuplicateColumnsThrows()
-  {
-    using namespace Mantid::Geometry;
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qx", true, 1));
-    basisDimensions.insert(MDBasisDimension("qy", true, 1));
-
-    UnitCell cell;
-    TSM_ASSERT_THROWS("Duplicate column numbers were used. Should have thrown.", MDGeometryBasis(basisDimensions, cell), std::logic_error);
-  }
-  void testConstructWithWrongColumnNumbersThrows(){
-
-    using namespace Mantid::Geometry;
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qx", true, 1));
-    basisDimensions.insert(MDBasisDimension("qy", true, 2));
-
-    UnitCell cell;
-    TSM_ASSERT_THROWS("Number of any dimension has to be smaller then total number of dimensions. Should have thrown.", MDGeometryBasis(basisDimensions, cell), std::invalid_argument);
-
-  }
-
-  void testGetReciprocalDimensions()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
-    std::set<MDBasisDimension> reciprocalDimensions = basisDimension->getReciprocalDimensions();
-    TSM_ASSERT_LESS_THAN_EQUALS("Too many reciprocal dimensions.", 3, reciprocalDimensions.size());
-    TSM_ASSERT("Expect to have at least 1 reciprocal dimension.", reciprocalDimensions.size() > 0);  
-  }
-
-  void testGetNonReciprocalDimensions()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
-    std::set<MDBasisDimension> nonReciprocalDimensions = basisDimension->getNonReciprocalDimensions();
-    TSM_ASSERT_EQUALS("Wrong number of non-reciprocal dimensions returned.", 1, nonReciprocalDimensions.size());
-  }
-
-    void testGetAllBasisDimensions()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
-    std::set<MDBasisDimension> allBasisDimensions = basisDimension->getBasisDimensions();
-    TSM_ASSERT_EQUALS("Wrong number of basis dimensions returned.", 4, allBasisDimensions.size());
-  }
-
-  
-  void testConsistentNDimensions()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
-    std::set<MDBasisDimension> allBasisDimensions = basisDimension->getBasisDimensions(); 
-    TSM_ASSERT_EQUALS("The number of dimensions returned via the getter should be the same as the actual number of dimensions present.", basisDimension->getNumDims(), allBasisDimensions.size());
-  }
-
-  void testTooManyDimensionsThrows()
-  {
-    std::set<MDBasisDimension> basisDimensions;
-
-    std::stringstream stream;
-    for(int i = 0; i < 22; i++)
-    { 
-      stream << i;
-      basisDimensions.insert(MDBasisDimension(stream.str(), false, i));
-    }
-   
-    UnitCell cell;
-    TSM_ASSERT_THROWS("Cannot have this many basis dimensions.", MDGeometryBasis(basisDimensions, cell), std::invalid_argument);
-  }
-
-  void testTooManyReciprocalDimensionsThrows()
-  {
-    std::set<MDBasisDimension> basisDimensions;
-
-    std::stringstream stream;
-    for(int i = 0; i < 4; i++)
-    { 
-      stream << i;
-      basisDimensions.insert(MDBasisDimension(stream.str(), true, i));
-    }
-   
-    UnitCell cell;
-    TSM_ASSERT_THROWS("Cannot have this many reciprocal basis dimensions.", MDGeometryBasis(basisDimensions, cell), std::invalid_argument);
-  }
-
-  void testIDCompartibility(){
-
-    std::vector<std::string> new_ids(4,"");
-    new_ids[0]="qx";
-    new_ids[1]="qy";
-    new_ids[2]="qz";
-    new_ids[3]="p";
-
-    boost::scoped_ptr<MDGeometryBasis> basis(constructMDGeometryBasis());
-    TS_ASSERT_EQUALS(basis->checkIdCompartibility(new_ids),true);
-
-    new_ids[0]="k"; //some unknown id value
-    TS_ASSERT_EQUALS(basis->checkIdCompartibility(new_ids),false);
-  }
-
-  ~MDGeometryBasisTest()
-  {
-  }
-
-
-};
-
-
-
-#endif
+#ifndef H_TEST_WORKSPACE_GEOMETRY
+#define H_TEST_WORKSPACE_GEOMETRY
+
+#include <cxxtest/TestSuite.h>
+#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
+#include <set>
+#include <cfloat>
+#include <sstream>
+#include <boost/scoped_ptr.hpp>
+
+using namespace Mantid;
+using namespace Geometry;
+
+
+class MDGeometryBasisTest :   public CxxTest::TestSuite
+{
+private:
+
+  //Helper method to construct a MDGeometryBasis schenario.
+  static MDGeometryBasis* constructMDGeometryBasis()
+  {
+    using namespace Mantid::Geometry;
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qx", true, 0));
+    basisDimensions.insert(MDBasisDimension("qy", true, 1));
+    basisDimensions.insert(MDBasisDimension("qz", true, 2));
+    basisDimensions.insert(MDBasisDimension("p", false, 3));
+
+    UnitCell cell;
+    return new MDGeometryBasis(basisDimensions, cell);
+  }
+
+public:
+
+  void testConstructionWithDuplicateColumnsThrows()
+  {
+    using namespace Mantid::Geometry;
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qx", true, 1));
+    basisDimensions.insert(MDBasisDimension("qy", true, 1));
+
+    UnitCell cell;
+    TSM_ASSERT_THROWS("Duplicate column numbers were used. Should have thrown.", MDGeometryBasis(basisDimensions, cell), std::logic_error);
+  }
+  void testConstructWithWrongColumnNumbersThrows(){
+
+    using namespace Mantid::Geometry;
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qx", true, 1));
+    basisDimensions.insert(MDBasisDimension("qy", true, 2));
+
+    UnitCell cell;
+    TSM_ASSERT_THROWS("Number of any dimension has to be smaller then total number of dimensions. Should have thrown.", MDGeometryBasis(basisDimensions, cell), std::invalid_argument);
+
+  }
+
+  void testGetReciprocalDimensions()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
+    std::set<MDBasisDimension> reciprocalDimensions = basisDimension->getReciprocalDimensions();
+    TSM_ASSERT_LESS_THAN_EQUALS("Too many reciprocal dimensions.", 3, reciprocalDimensions.size());
+    TSM_ASSERT("Expect to have at least 1 reciprocal dimension.", reciprocalDimensions.size() > 0);  
+  }
+
+  void testGetNonReciprocalDimensions()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
+    std::set<MDBasisDimension> nonReciprocalDimensions = basisDimension->getNonReciprocalDimensions();
+    TSM_ASSERT_EQUALS("Wrong number of non-reciprocal dimensions returned.", 1, nonReciprocalDimensions.size());
+  }
+
+    void testGetAllBasisDimensions()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
+    std::set<MDBasisDimension> allBasisDimensions = basisDimension->getBasisDimensions();
+    TSM_ASSERT_EQUALS("Wrong number of basis dimensions returned.", 4, allBasisDimensions.size());
+  }
+
+  
+  void testConsistentNDimensions()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDGeometryBasis> basisDimension(constructMDGeometryBasis());
+    std::set<MDBasisDimension> allBasisDimensions = basisDimension->getBasisDimensions(); 
+    TSM_ASSERT_EQUALS("The number of dimensions returned via the getter should be the same as the actual number of dimensions present.", basisDimension->getNumDims(), allBasisDimensions.size());
+  }
+
+  void testTooManyDimensionsThrows()
+  {
+    std::set<MDBasisDimension> basisDimensions;
+
+    std::stringstream stream;
+    for(int i = 0; i < 22; i++)
+    { 
+      stream << i;
+      basisDimensions.insert(MDBasisDimension(stream.str(), false, i));
+    }
+   
+    UnitCell cell;
+    TSM_ASSERT_THROWS("Cannot have this many basis dimensions.", MDGeometryBasis(basisDimensions, cell), std::invalid_argument);
+  }
+
+  void testTooManyReciprocalDimensionsThrows()
+  {
+    std::set<MDBasisDimension> basisDimensions;
+
+    std::stringstream stream;
+    for(int i = 0; i < 4; i++)
+    { 
+      stream << i;
+      basisDimensions.insert(MDBasisDimension(stream.str(), true, i));
+    }
+   
+    UnitCell cell;
+    TSM_ASSERT_THROWS("Cannot have this many reciprocal basis dimensions.", MDGeometryBasis(basisDimensions, cell), std::invalid_argument);
+  }
+
+  void testIDCompartibility(){
+
+    std::vector<std::string> new_ids(4,"");
+    new_ids[0]="qx";
+    new_ids[1]="qy";
+    new_ids[2]="qz";
+    new_ids[3]="p";
+
+    boost::scoped_ptr<MDGeometryBasis> basis(constructMDGeometryBasis());
+    TS_ASSERT_EQUALS(basis->checkIdCompartibility(new_ids),true);
+
+    new_ids[0]="k"; //some unknown id value
+    TS_ASSERT_EQUALS(basis->checkIdCompartibility(new_ids),false);
+  }
+
+  ~MDGeometryBasisTest()
+  {
+  }
+
+
+};
+
+
+
+#endif
diff --git a/Code/Mantid/Framework/Geometry/test/MDGeometryDescriptionTest.h b/Code/Mantid/Framework/Geometry/test/MDGeometryDescriptionTest.h
index 98f0e570a275ab626bb9aae05ab1b9bbad0bf2a1..e9a0bb28bf66c0289337d91e56b5fbcb6b3ec850 100644
--- a/Code/Mantid/Framework/Geometry/test/MDGeometryDescriptionTest.h
+++ b/Code/Mantid/Framework/Geometry/test/MDGeometryDescriptionTest.h
@@ -1,111 +1,111 @@
-#include <cxxtest/TestSuite.h>
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include <boost/scoped_ptr.hpp>
-#include <boost/shared_ptr.hpp>
-
-using namespace Mantid;
-using namespace Geometry;
-class MDGeometryDescriptionTest: public CxxTest::TestSuite
-{
-  MDGeometryDescription *pSlice;
-
-  //helper constructional method.
-  MDGeometryDescription* constructDescription()
-  {
-    std::vector<boost::shared_ptr<IMDDimension> > dimensions;
-    boost::shared_ptr<IMDDimension> dimX = boost::shared_ptr<IMDDimension>(new MDDimension("q1"));
-    boost::shared_ptr<IMDDimension> dimY = boost::shared_ptr<IMDDimension>(new MDDimension("q2"));
-    boost::shared_ptr<IMDDimension> dimZ = boost::shared_ptr<IMDDimension>(new MDDimension("q3"));
-    boost::shared_ptr<IMDDimension> dimt = boost::shared_ptr<IMDDimension>(new MDDimension("p"));
-    boost::shared_ptr<IMDDimension> dimTemp = boost::shared_ptr<IMDDimension>(new MDDimension("T"));
-
-    dimensions.push_back(dimX);
-    dimensions.push_back(dimY);
-    dimensions.push_back(dimZ);
-    dimensions.push_back(dimt);
-    dimensions.push_back(dimTemp);
-    RotationMatrix rotationMatrix(9,0);
-    rotationMatrix[0] = rotationMatrix[4] = rotationMatrix[8] = 1; //Setup identity matrix for.
-    return new MDGeometryDescription(dimensions, dimX, dimY, dimZ, dimTemp, rotationMatrix);
-  }
-  
-
-public:
-
-  void testAlignX()
-  {
-    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
-    std::vector<std::string> ids = description->getDimensionsTags();
-    TSM_ASSERT_EQUALS(
-        "The constructor has not provided the alignment correctly. The dimension should have appeared in the first position.",
-        ids[0], "q1");
-  }
-
-  void testAlignY()
-  {
-    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
-    std::vector<std::string> ids = description->getDimensionsTags();
-    TSM_ASSERT_EQUALS(
-        "The constructor has not provided the alignment correctly. The dimension should have appeared in the second position.",
-        ids[1], "q2");
-  }
-
-  void testAlignZ()
-  {
-    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
-    std::vector<std::string> ids = description->getDimensionsTags();
-    TSM_ASSERT_EQUALS(
-        "The constructor has not provided the alignment correctly. The dimension should have appeared in the third position.",
-        ids[2], "q3");
-  }
-
-  void testAlignt()
-  {
-    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
-    std::vector<std::string> ids = description->getDimensionsTags();
-    TSM_ASSERT_EQUALS(
-        "The constructor has not provided the alignment correctly. The dimension should have appeared in the first position.",
-        ids[3], "T");
-  }
-
-  void testMDGDconstructor()
-  {
-    TS_ASSERT_THROWS_NOTHING(pSlice = new MDGeometryDescription());
-  }
-
-  // these functions has not been written yet
-  void testMDGDInput()
-  {
-    std::string input("");
-    TS_ASSERT_EQUALS(pSlice->fromXMLstring(input), true);
-  }
-
-  void testMDGDOutput()
-  {
-    std::string output("");
-    TS_ASSERT_THROWS_NOTHING(output = pSlice->toXMLstring());
-    TS_ASSERT_EQUALS(output, "TEST PROPERTY");
-  }
-  void testDataSize()
-  {
-    boost::shared_ptr<MDGeometryDescription> pDescr = boost::shared_ptr<MDGeometryDescription>(
-        constructDescription());
-	TS_ASSERT_THROWS_NOTHING(pDescr->pDimDescription("q1")->nBins=100);
-	TS_ASSERT_THROWS_NOTHING(pDescr->pDimDescription("q2")->nBins=100);
-	TS_ASSERT_THROWS_NOTHING(pDescr->pDimDescription("T")->nBins =100);
-
-    TSM_ASSERT_EQUALS("The image size described by this description differs from expected", 100 * 100
-        * 100, pDescr->getImageSize());
-  }
-
-  MDGeometryDescriptionTest() :
-    pSlice(NULL)
-  {
-  }
-  ~MDGeometryDescriptionTest()
-  {
-    if (pSlice)
-      delete pSlice;
-  }
-};
+#include <cxxtest/TestSuite.h>
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include <boost/scoped_ptr.hpp>
+#include <boost/shared_ptr.hpp>
+
+using namespace Mantid;
+using namespace Geometry;
+class MDGeometryDescriptionTest: public CxxTest::TestSuite
+{
+  MDGeometryDescription *pSlice;
+
+  //helper constructional method.
+  MDGeometryDescription* constructDescription()
+  {
+    std::vector<boost::shared_ptr<IMDDimension> > dimensions;
+    boost::shared_ptr<IMDDimension> dimX = boost::shared_ptr<IMDDimension>(new MDDimension("q1"));
+    boost::shared_ptr<IMDDimension> dimY = boost::shared_ptr<IMDDimension>(new MDDimension("q2"));
+    boost::shared_ptr<IMDDimension> dimZ = boost::shared_ptr<IMDDimension>(new MDDimension("q3"));
+    boost::shared_ptr<IMDDimension> dimt = boost::shared_ptr<IMDDimension>(new MDDimension("p"));
+    boost::shared_ptr<IMDDimension> dimTemp = boost::shared_ptr<IMDDimension>(new MDDimension("T"));
+
+    dimensions.push_back(dimX);
+    dimensions.push_back(dimY);
+    dimensions.push_back(dimZ);
+    dimensions.push_back(dimt);
+    dimensions.push_back(dimTemp);
+    RotationMatrix rotationMatrix(9,0);
+    rotationMatrix[0] = rotationMatrix[4] = rotationMatrix[8] = 1; //Setup identity matrix for.
+    return new MDGeometryDescription(dimensions, dimX, dimY, dimZ, dimTemp, rotationMatrix);
+  }
+  
+
+public:
+
+  void testAlignX()
+  {
+    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
+    std::vector<std::string> ids = description->getDimensionsTags();
+    TSM_ASSERT_EQUALS(
+        "The constructor has not provided the alignment correctly. The dimension should have appeared in the first position.",
+        ids[0], "q1");
+  }
+
+  void testAlignY()
+  {
+    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
+    std::vector<std::string> ids = description->getDimensionsTags();
+    TSM_ASSERT_EQUALS(
+        "The constructor has not provided the alignment correctly. The dimension should have appeared in the second position.",
+        ids[1], "q2");
+  }
+
+  void testAlignZ()
+  {
+    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
+    std::vector<std::string> ids = description->getDimensionsTags();
+    TSM_ASSERT_EQUALS(
+        "The constructor has not provided the alignment correctly. The dimension should have appeared in the third position.",
+        ids[2], "q3");
+  }
+
+  void testAlignt()
+  {
+    boost::scoped_ptr<MDGeometryDescription> description(constructDescription());
+    std::vector<std::string> ids = description->getDimensionsTags();
+    TSM_ASSERT_EQUALS(
+        "The constructor has not provided the alignment correctly. The dimension should have appeared in the first position.",
+        ids[3], "T");
+  }
+
+  void testMDGDconstructor()
+  {
+    TS_ASSERT_THROWS_NOTHING(pSlice = new MDGeometryDescription());
+  }
+
+  // these functions has not been written yet
+  void testMDGDInput()
+  {
+    std::string input("");
+    TS_ASSERT_EQUALS(pSlice->fromXMLstring(input), true);
+  }
+
+  void testMDGDOutput()
+  {
+    std::string output("");
+    TS_ASSERT_THROWS_NOTHING(output = pSlice->toXMLstring());
+    TS_ASSERT_EQUALS(output, "TEST PROPERTY");
+  }
+  void testDataSize()
+  {
+    boost::shared_ptr<MDGeometryDescription> pDescr = boost::shared_ptr<MDGeometryDescription>(
+        constructDescription());
+	TS_ASSERT_THROWS_NOTHING(pDescr->pDimDescription("q1")->nBins=100);
+	TS_ASSERT_THROWS_NOTHING(pDescr->pDimDescription("q2")->nBins=100);
+	TS_ASSERT_THROWS_NOTHING(pDescr->pDimDescription("T")->nBins =100);
+
+    TSM_ASSERT_EQUALS("The image size described by this description differs from expected", 100 * 100
+        * 100, pDescr->getImageSize());
+  }
+
+  MDGeometryDescriptionTest() :
+    pSlice(NULL)
+  {
+  }
+  ~MDGeometryDescriptionTest()
+  {
+    if (pSlice)
+      delete pSlice;
+  }
+};
diff --git a/Code/Mantid/Framework/Geometry/test/MDGeometryTest.h b/Code/Mantid/Framework/Geometry/test/MDGeometryTest.h
index 6d219cc4ffb6204648add062e24130df87835229..1a520d9dcfb8031e5a34e4db92fe62b9febba6f0 100644
--- a/Code/Mantid/Framework/Geometry/test/MDGeometryTest.h
+++ b/Code/Mantid/Framework/Geometry/test/MDGeometryTest.h
@@ -1,283 +1,283 @@
-#ifndef _TEST_MD_GEOMETRY_H
-#define _TEST_MD_GEOMETRY_H
-
-#include <cxxtest/TestSuite.h>
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-
-#include <boost/scoped_ptr.hpp>
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-
-using namespace Mantid::Geometry;
-class testMDGeometry: public MDGeometry
-{
-public:
-	testMDGeometry(const MDGeometryBasis &basis):
-	  MDGeometry(basis){};
-
-	  boost::shared_ptr<MDDimension> getDimension(unsigned int num){ return MDGeometry::getDimension(num);  }
-	  boost::shared_ptr<MDDimension> getDimension(const std::string &ID, bool doThrow=true){ return MDGeometry::getDimension(ID,doThrow);  }
-};
-
-
-class MDGeometryTest : public CxxTest::TestSuite
-{
-  // helper method to construct a near-complete geometry.
-  static MDGeometry* constructGeometry()
-  {
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("q1", true, 1));
-    basisDimensions.insert(MDBasisDimension("q2", true, 2));
-    basisDimensions.insert(MDBasisDimension("q3", true, 3));
-    basisDimensions.insert(MDBasisDimension("p", false, 0));
-    basisDimensions.insert(MDBasisDimension("T", false, 4));
-    UnitCell cell;
-    MDGeometryBasis basis(basisDimensions, cell);
-
-    //Dimensions generated, but have default values for bins and extents.
-    std::vector<boost::shared_ptr<IMDDimension> > dimensions; 
-    boost::shared_ptr<IMDDimension> dimX = boost::shared_ptr<IMDDimension>(new MDDimension("q1"));
-    boost::shared_ptr<IMDDimension> dimY = boost::shared_ptr<IMDDimension>(new MDDimension("q2"));
-    boost::shared_ptr<IMDDimension> dimZ = boost::shared_ptr<IMDDimension>(new MDDimension("q3"));
-    boost::shared_ptr<IMDDimension> dimt = boost::shared_ptr<IMDDimension>(new MDDimension("p"));
-    boost::shared_ptr<IMDDimension> dimTemp = boost::shared_ptr<IMDDimension>(new MDDimension("T"));
-
-    dimensions.push_back(dimX);
-    dimensions.push_back(dimY);
-    dimensions.push_back(dimZ);
-    dimensions.push_back(dimt);
-    dimensions.push_back(dimTemp);
-    RotationMatrix rotationMatrix(9,0);
-    rotationMatrix[0] = rotationMatrix[4] = rotationMatrix[8] = 1;
-    MDGeometryDescription description(dimensions, dimX, dimY, dimZ, dimTemp, rotationMatrix);
-
-    //Create a geometry.
-    return new MDGeometry(basis, description);
-
-  }
-
-  std::auto_ptr<testMDGeometry> tDND_geometry;
-  std::auto_ptr<MDGeometryDescription> pSlice;
-public:
-
-  MDGeometryTest()
-  {
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qx", true, 0));
-    basisDimensions.insert(MDBasisDimension("p", false, 3));
-    basisDimensions.insert(MDBasisDimension("qy", true, 1));
-    basisDimensions.insert(MDBasisDimension("qz", true, 2));
-
-
-    UnitCell cell;
-    TSM_ASSERT_THROWS_NOTHING("Valid MD geometry constructor should not throw",tDND_geometry= std::auto_ptr<testMDGeometry>(new testMDGeometry(MDGeometryBasis(basisDimensions, cell))));
-    
-	TSM_ASSERT_EQUALS("Empty geometry initiated by MDBasis only should be size 0",0,tDND_geometry->getGeometryExtend());
-
-  }
- 
-
-  void testMDGeometryDimAccessors(void){
-    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getXDimension());
-    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getYDimension());
-    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getZDimension());
-    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getTDimension());
-
-  }
-  void testMDGeomIntegrated(void){
-    std::vector<boost::shared_ptr<IMDDimension> > Dims = tDND_geometry->getIntegratedDimensions();
-    // default size of the dimensions is equal 4
-    TS_ASSERT_EQUALS(Dims.size(),4);
-  }
-  void testMDGeomDimAcessors(void){
-    // get pointer to the dimension 0
-    boost::shared_ptr<MDDimension> pDim=tDND_geometry->getDimension(0);
-    TS_ASSERT_EQUALS(pDim->getDimensionTag(),"qx");
-    
-    boost::shared_ptr<MDDimension> pDim0;
-    // no such dimension
-    TS_ASSERT_THROWS_ANYTHING(pDim0=tDND_geometry->getDimension(8));
-    // no such dimension
-    TS_ASSERT_THROWS_ANYTHING(pDim0=tDND_geometry->getDimension("u7"));
-    //        TS_ASSERT_EQUALS(pDim0,NULL);
-
-    // the same dimension as above
-    TS_ASSERT_THROWS_NOTHING(pDim0=tDND_geometry->getDimension("qx"));
-    TS_ASSERT_EQUALS(pDim0.get(),pDim.get());
-  }
-  void testSlicingProperty(void){
-    pSlice = std::auto_ptr<MDGeometryDescription>(new MDGeometryDescription(*tDND_geometry));
-
-    //       we want these data to be non-integrated;
-	TS_ASSERT_THROWS_NOTHING(pSlice->pDimDescription("p")->nBins=100);
-    // wrong tag
-	TS_ASSERT_THROWS_ANYTHING(pSlice->pDimDescription("eh")->nBins=200);
-    // right tag
-	TS_ASSERT_THROWS_NOTHING(pSlice->pDimDescription("qx")->nBins=200);
-
-    // we want first (0) axis to be energy 
-    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(0,"p"));
-    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(0,"p"));
-    // and the third (2) ->el (z-axis) 
-    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(3,"qz"));
-    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(2,"qz"));
-
-    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(3,"qx"));
-
-    std::vector<std::string> names = pSlice->getDimensionsTags();
-    for(unsigned int i=0;i<names.size();i++){
-		TS_ASSERT_EQUALS(names[i],pSlice->pDimDescription(i)->Tag);
-		TS_ASSERT_EQUALS(names[i],pSlice->pDimDescription(i)->AxisName);
-    }
-	TSM_ASSERT_EQUALS("The slice describes grid of specific size: ",100*200,pSlice->getImageSize());
-  }
-  void testMDGeomSetFromSlice1(void){
-   // pSlice describes 4x3 geometry with 200x100 dimensions expanded and others integrated;
-    TS_ASSERT_THROWS_NOTHING(tDND_geometry->initialize(*pSlice));
-    unsigned int i,ic;
-
-	TSM_ASSERT_EQUALS("The geometry initialized by the slicing property above has to have specific extend",200*100,tDND_geometry->getGeometryExtend());
-    boost::shared_ptr<MDDimension> pDim;
-
-    std::vector<std::string> expanded_tags(tDND_geometry->getNumDims());
-
-    // arrange dimensions tags like the dimensions are arranged in the geometry
-    ic=0;
-    TS_ASSERT_THROWS_NOTHING(
-      for(i=0;i<expanded_tags.size();i++){
-		  if(pSlice->pDimDescription(i)->nBins>1){  // non-integrated;
-          expanded_tags[ic]=pSlice->pDimDescription(i)->Tag;
-          ic++;
-        }
-      }
-      for(i=0;i<expanded_tags.size();i++){
-        if(pSlice->pDimDescription(i)->nBins<2){  // non-integrated;
-          expanded_tags[ic]=pSlice->pDimDescription(i)->Tag;
-          ic++;
-        }
-      }
-      )
-
-        for(i=0;i<tDND_geometry->getNumDims();i++){
-          TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(i));
-          TS_ASSERT_EQUALS(pDim->getDimensionTag(),expanded_tags[i]);
-        }
-
-        TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(0));
-        TS_ASSERT_EQUALS(pDim->getStride(),1);
-
-        TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(1));
-        TS_ASSERT_EQUALS(pDim->getStride(),100);
-        TS_ASSERT_EQUALS(pDim->getIntegrated(),false);
-
-        TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(2));
-        TS_ASSERT_EQUALS(pDim->getStride(),0);
-        TS_ASSERT_EQUALS(pDim->getIntegrated(),true);
-  }
- void testDimArrangementByBasis(){
-     // here we check if the dimension returned in a way, as they are arranged in basis and MDDataPoints
-     std::vector<boost::shared_ptr<IMDDimension> > psDims = tDND_geometry->getDimensions(true);
-     std::vector<std::string> dimID(4);
-     dimID[0]="qx";
-     dimID[1]="qy";
-     dimID[2]="qz";
-     dimID[3]="p";
-     for(unsigned int i=0; i<this->tDND_geometry->getNumDims();i++){
-         TSM_ASSERT_EQUALS("The dimension in the geometry is not located properly",dimID[i],psDims[i]->getDimensionId());
-     }
-  }
- void testDimArrangementByGeometry(){
-     // here we check if the dimension returned in a way, as they are arranged in MDGeometry
-     std::vector<boost::shared_ptr<IMDDimension> > psDims = tDND_geometry->getDimensions();
-     std::vector<std::string> dimID(4);
-     dimID[0]="p";
-     dimID[1]="qx";
-     dimID[3]="qy";
-     dimID[2]="qz";
-     for(unsigned int i=0; i<this->tDND_geometry->getNumDims();i++){
-         TSM_ASSERT_EQUALS("The dimension in the geometry is not located properly",dimID[i],psDims[i]->getDimensionId());
-     }
-  }
-  void testGeometryFromSlice1Size(){
-	  TSM_ASSERT_EQUALS("The size of the image, described by this geometry after resizing, differs from expected",tDND_geometry->getGeometryExtend(),100*200);
-  }
-  void testMDGeomSetFromSlice2(void){
-    // this should be fully equivalent to 1
-
-    // arrange final dimensions according to pAxis, this will run through one branch of initialize only
-    TS_ASSERT_THROWS_NOTHING(tDND_geometry->initialize(*pSlice));
-
-    boost::shared_ptr<MDDimension> pDim;
-
-
-    TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(0));
-    TS_ASSERT_EQUALS(pDim->getStride(),1);
-
-    TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(1));
-    TS_ASSERT_EQUALS(pDim->getStride(),100);
-    TS_ASSERT_EQUALS(pDim->getIntegrated(),false);
-
-    TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(2));
-    TS_ASSERT_EQUALS(pDim->getStride(),0);
-    TS_ASSERT_EQUALS(pDim->getIntegrated(),true);
-  }
-
-  void testgetNumDims()
-  {
-     TSM_ASSERT_EQUALS("The number of dimensions returned is not equal to the expected value.", 4, tDND_geometry->getNumDims());
-  }
-  /// returns the number of reciprocal dimensions
-  void  testGetNumReciprocalDims()
-  {
-   
-    TSM_ASSERT_EQUALS("The number of reciprocal dimensions returned is not equal to the expected value.", 3, tDND_geometry->getNumReciprocalDims());
-  }
-
-  void testGetNumExpandedDims()
-  {
-    TSM_ASSERT_EQUALS("The number of expanded dimensions returned is not equal to the expected value.", 2, tDND_geometry->getNumExpandedDims());
-  }
-
-  void testToXMLString()
-  {
-
-    boost::scoped_ptr<MDGeometry> geometry(constructGeometry());
-
-    //Only practicle way to check the xml output in the absense of xsd is as part of a dom tree.
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = geometry->toXMLString(); //Serialize the geometry.
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    //Check that the number of dimensions provided is correct.
-    TSM_ASSERT_EQUALS("Wrong number of dimension in geometry xml", 5, pRootElem->getElementsByTagName("Dimension")->length());
-
-    //Check that mapping nodes have been provided.
-    TSM_ASSERT_EQUALS("No DimensionX in geometry xml", 1, pRootElem->getElementsByTagName("XDimension")->length());
-    TSM_ASSERT_EQUALS("No DimensionY in geometry xml", 1, pRootElem->getElementsByTagName("YDimension")->length());
-    TSM_ASSERT_EQUALS("No DimensionZ in geometry xml", 1, pRootElem->getElementsByTagName("ZDimension")->length());
-    TSM_ASSERT_EQUALS("No DimensionT in geometry xml", 1, pRootElem->getElementsByTagName("TDimension")->length());
-
-    //Check that mapping nodes give correct mappings.
-    Poco::XML::Element* dimensionSetElement = pRootElem;
-    TSM_ASSERT_EQUALS("No DimensionX mapping is incorrect", "q1", dimensionSetElement->getChildElement("XDimension")->getChildElement("RefDimensionId")->innerText());
-    TSM_ASSERT_EQUALS("No DimensionY mapping is incorrect", "q2", dimensionSetElement->getChildElement("YDimension")->getChildElement("RefDimensionId")->innerText());
-    TSM_ASSERT_EQUALS("No DimensionZ mapping is incorrect", "q3", dimensionSetElement->getChildElement("ZDimension")->getChildElement("RefDimensionId")->innerText());
-    TSM_ASSERT_EQUALS("No DimensionT mapping is incorrect", "T",  dimensionSetElement->getChildElement("TDimension")->getChildElement("RefDimensionId")->innerText());
-
-
-  }
-
-  ~MDGeometryTest()
-  {
-  }
-};
-#endif
+#ifndef _TEST_MD_GEOMETRY_H
+#define _TEST_MD_GEOMETRY_H
+
+#include <cxxtest/TestSuite.h>
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+
+#include <boost/scoped_ptr.hpp>
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+
+using namespace Mantid::Geometry;
+class testMDGeometry: public MDGeometry
+{
+public:
+	testMDGeometry(const MDGeometryBasis &basis):
+	  MDGeometry(basis){};
+
+	  boost::shared_ptr<MDDimension> getDimension(unsigned int num){ return MDGeometry::getDimension(num);  }
+	  boost::shared_ptr<MDDimension> getDimension(const std::string &ID, bool doThrow=true){ return MDGeometry::getDimension(ID,doThrow);  }
+};
+
+
+class MDGeometryTest : public CxxTest::TestSuite
+{
+  // helper method to construct a near-complete geometry.
+  static MDGeometry* constructGeometry()
+  {
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("q1", true, 1));
+    basisDimensions.insert(MDBasisDimension("q2", true, 2));
+    basisDimensions.insert(MDBasisDimension("q3", true, 3));
+    basisDimensions.insert(MDBasisDimension("p", false, 0));
+    basisDimensions.insert(MDBasisDimension("T", false, 4));
+    UnitCell cell;
+    MDGeometryBasis basis(basisDimensions, cell);
+
+    //Dimensions generated, but have default values for bins and extents.
+    std::vector<boost::shared_ptr<IMDDimension> > dimensions; 
+    boost::shared_ptr<IMDDimension> dimX = boost::shared_ptr<IMDDimension>(new MDDimension("q1"));
+    boost::shared_ptr<IMDDimension> dimY = boost::shared_ptr<IMDDimension>(new MDDimension("q2"));
+    boost::shared_ptr<IMDDimension> dimZ = boost::shared_ptr<IMDDimension>(new MDDimension("q3"));
+    boost::shared_ptr<IMDDimension> dimt = boost::shared_ptr<IMDDimension>(new MDDimension("p"));
+    boost::shared_ptr<IMDDimension> dimTemp = boost::shared_ptr<IMDDimension>(new MDDimension("T"));
+
+    dimensions.push_back(dimX);
+    dimensions.push_back(dimY);
+    dimensions.push_back(dimZ);
+    dimensions.push_back(dimt);
+    dimensions.push_back(dimTemp);
+    RotationMatrix rotationMatrix(9,0);
+    rotationMatrix[0] = rotationMatrix[4] = rotationMatrix[8] = 1;
+    MDGeometryDescription description(dimensions, dimX, dimY, dimZ, dimTemp, rotationMatrix);
+
+    //Create a geometry.
+    return new MDGeometry(basis, description);
+
+  }
+
+  std::auto_ptr<testMDGeometry> tDND_geometry;
+  std::auto_ptr<MDGeometryDescription> pSlice;
+public:
+
+  MDGeometryTest()
+  {
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qx", true, 0));
+    basisDimensions.insert(MDBasisDimension("p", false, 3));
+    basisDimensions.insert(MDBasisDimension("qy", true, 1));
+    basisDimensions.insert(MDBasisDimension("qz", true, 2));
+
+
+    UnitCell cell;
+    TSM_ASSERT_THROWS_NOTHING("Valid MD geometry constructor should not throw",tDND_geometry= std::auto_ptr<testMDGeometry>(new testMDGeometry(MDGeometryBasis(basisDimensions, cell))));
+    
+	TSM_ASSERT_EQUALS("Empty geometry initiated by MDBasis only should be size 0",0,tDND_geometry->getGeometryExtend());
+
+  }
+ 
+
+  void testMDGeometryDimAccessors(void){
+    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getXDimension());
+    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getYDimension());
+    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getZDimension());
+    TS_ASSERT_THROWS_NOTHING(tDND_geometry->getTDimension());
+
+  }
+  void testMDGeomIntegrated(void){
+    std::vector<boost::shared_ptr<IMDDimension> > Dims = tDND_geometry->getIntegratedDimensions();
+    // default size of the dimensions is equal 4
+    TS_ASSERT_EQUALS(Dims.size(),4);
+  }
+  void testMDGeomDimAcessors(void){
+    // get pointer to the dimension 0
+    boost::shared_ptr<MDDimension> pDim=tDND_geometry->getDimension(0);
+    TS_ASSERT_EQUALS(pDim->getDimensionTag(),"qx");
+    
+    boost::shared_ptr<MDDimension> pDim0;
+    // no such dimension
+    TS_ASSERT_THROWS_ANYTHING(pDim0=tDND_geometry->getDimension(8));
+    // no such dimension
+    TS_ASSERT_THROWS_ANYTHING(pDim0=tDND_geometry->getDimension("u7"));
+    //        TS_ASSERT_EQUALS(pDim0,NULL);
+
+    // the same dimension as above
+    TS_ASSERT_THROWS_NOTHING(pDim0=tDND_geometry->getDimension("qx"));
+    TS_ASSERT_EQUALS(pDim0.get(),pDim.get());
+  }
+  void testSlicingProperty(void){
+    pSlice = std::auto_ptr<MDGeometryDescription>(new MDGeometryDescription(*tDND_geometry));
+
+    //       we want these data to be non-integrated;
+	TS_ASSERT_THROWS_NOTHING(pSlice->pDimDescription("p")->nBins=100);
+    // wrong tag
+	TS_ASSERT_THROWS_ANYTHING(pSlice->pDimDescription("eh")->nBins=200);
+    // right tag
+	TS_ASSERT_THROWS_NOTHING(pSlice->pDimDescription("qx")->nBins=200);
+
+    // we want first (0) axis to be energy 
+    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(0,"p"));
+    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(0,"p"));
+    // and the third (2) ->el (z-axis) 
+    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(3,"qz"));
+    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(2,"qz"));
+
+    TS_ASSERT_THROWS_NOTHING(pSlice->setPAxis(3,"qx"));
+
+    std::vector<std::string> names = pSlice->getDimensionsTags();
+    for(unsigned int i=0;i<names.size();i++){
+		TS_ASSERT_EQUALS(names[i],pSlice->pDimDescription(i)->Tag);
+		TS_ASSERT_EQUALS(names[i],pSlice->pDimDescription(i)->AxisName);
+    }
+	TSM_ASSERT_EQUALS("The slice describes grid of specific size: ",100*200,pSlice->getImageSize());
+  }
+  void testMDGeomSetFromSlice1(void){
+   // pSlice describes 4x3 geometry with 200x100 dimensions expanded and others integrated;
+    TS_ASSERT_THROWS_NOTHING(tDND_geometry->initialize(*pSlice));
+    unsigned int i,ic;
+
+	TSM_ASSERT_EQUALS("The geometry initialized by the slicing property above has to have specific extend",200*100,tDND_geometry->getGeometryExtend());
+    boost::shared_ptr<MDDimension> pDim;
+
+    std::vector<std::string> expanded_tags(tDND_geometry->getNumDims());
+
+    // arrange dimensions tags like the dimensions are arranged in the geometry
+    ic=0;
+    TS_ASSERT_THROWS_NOTHING(
+      for(i=0;i<expanded_tags.size();i++){
+		  if(pSlice->pDimDescription(i)->nBins>1){  // non-integrated;
+          expanded_tags[ic]=pSlice->pDimDescription(i)->Tag;
+          ic++;
+        }
+      }
+      for(i=0;i<expanded_tags.size();i++){
+        if(pSlice->pDimDescription(i)->nBins<2){  // non-integrated;
+          expanded_tags[ic]=pSlice->pDimDescription(i)->Tag;
+          ic++;
+        }
+      }
+      )
+
+        for(i=0;i<tDND_geometry->getNumDims();i++){
+          TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(i));
+          TS_ASSERT_EQUALS(pDim->getDimensionTag(),expanded_tags[i]);
+        }
+
+        TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(0));
+        TS_ASSERT_EQUALS(pDim->getStride(),1);
+
+        TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(1));
+        TS_ASSERT_EQUALS(pDim->getStride(),100);
+        TS_ASSERT_EQUALS(pDim->getIntegrated(),false);
+
+        TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(2));
+        TS_ASSERT_EQUALS(pDim->getStride(),0);
+        TS_ASSERT_EQUALS(pDim->getIntegrated(),true);
+  }
+ void testDimArrangementByBasis(){
+     // here we check if the dimension returned in a way, as they are arranged in basis and MDDataPoints
+     std::vector<boost::shared_ptr<IMDDimension> > psDims = tDND_geometry->getDimensions(true);
+     std::vector<std::string> dimID(4);
+     dimID[0]="qx";
+     dimID[1]="qy";
+     dimID[2]="qz";
+     dimID[3]="p";
+     for(unsigned int i=0; i<this->tDND_geometry->getNumDims();i++){
+         TSM_ASSERT_EQUALS("The dimension in the geometry is not located properly",dimID[i],psDims[i]->getDimensionId());
+     }
+  }
+ void testDimArrangementByGeometry(){
+     // here we check if the dimension returned in a way, as they are arranged in MDGeometry
+     std::vector<boost::shared_ptr<IMDDimension> > psDims = tDND_geometry->getDimensions();
+     std::vector<std::string> dimID(4);
+     dimID[0]="p";
+     dimID[1]="qx";
+     dimID[3]="qy";
+     dimID[2]="qz";
+     for(unsigned int i=0; i<this->tDND_geometry->getNumDims();i++){
+         TSM_ASSERT_EQUALS("The dimension in the geometry is not located properly",dimID[i],psDims[i]->getDimensionId());
+     }
+  }
+  void testGeometryFromSlice1Size(){
+	  TSM_ASSERT_EQUALS("The size of the image, described by this geometry after resizing, differs from expected",tDND_geometry->getGeometryExtend(),100*200);
+  }
+  void testMDGeomSetFromSlice2(void){
+    // this should be fully equivalent to 1
+
+    // arrange final dimensions according to pAxis, this will run through one branch of initialize only
+    TS_ASSERT_THROWS_NOTHING(tDND_geometry->initialize(*pSlice));
+
+    boost::shared_ptr<MDDimension> pDim;
+
+
+    TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(0));
+    TS_ASSERT_EQUALS(pDim->getStride(),1);
+
+    TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(1));
+    TS_ASSERT_EQUALS(pDim->getStride(),100);
+    TS_ASSERT_EQUALS(pDim->getIntegrated(),false);
+
+    TS_ASSERT_THROWS_NOTHING(pDim = tDND_geometry->getDimension(2));
+    TS_ASSERT_EQUALS(pDim->getStride(),0);
+    TS_ASSERT_EQUALS(pDim->getIntegrated(),true);
+  }
+
+  void testgetNumDims()
+  {
+     TSM_ASSERT_EQUALS("The number of dimensions returned is not equal to the expected value.", 4, tDND_geometry->getNumDims());
+  }
+  /// returns the number of reciprocal dimensions
+  void  testGetNumReciprocalDims()
+  {
+   
+    TSM_ASSERT_EQUALS("The number of reciprocal dimensions returned is not equal to the expected value.", 3, tDND_geometry->getNumReciprocalDims());
+  }
+
+  void testGetNumExpandedDims()
+  {
+    TSM_ASSERT_EQUALS("The number of expanded dimensions returned is not equal to the expected value.", 2, tDND_geometry->getNumExpandedDims());
+  }
+
+  void testToXMLString()
+  {
+
+    boost::scoped_ptr<MDGeometry> geometry(constructGeometry());
+
+    //Only practicle way to check the xml output in the absense of xsd is as part of a dom tree.
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = geometry->toXMLString(); //Serialize the geometry.
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    //Check that the number of dimensions provided is correct.
+    TSM_ASSERT_EQUALS("Wrong number of dimension in geometry xml", 5, pRootElem->getElementsByTagName("Dimension")->length());
+
+    //Check that mapping nodes have been provided.
+    TSM_ASSERT_EQUALS("No DimensionX in geometry xml", 1, pRootElem->getElementsByTagName("XDimension")->length());
+    TSM_ASSERT_EQUALS("No DimensionY in geometry xml", 1, pRootElem->getElementsByTagName("YDimension")->length());
+    TSM_ASSERT_EQUALS("No DimensionZ in geometry xml", 1, pRootElem->getElementsByTagName("ZDimension")->length());
+    TSM_ASSERT_EQUALS("No DimensionT in geometry xml", 1, pRootElem->getElementsByTagName("TDimension")->length());
+
+    //Check that mapping nodes give correct mappings.
+    Poco::XML::Element* dimensionSetElement = pRootElem;
+    TSM_ASSERT_EQUALS("No DimensionX mapping is incorrect", "q1", dimensionSetElement->getChildElement("XDimension")->getChildElement("RefDimensionId")->innerText());
+    TSM_ASSERT_EQUALS("No DimensionY mapping is incorrect", "q2", dimensionSetElement->getChildElement("YDimension")->getChildElement("RefDimensionId")->innerText());
+    TSM_ASSERT_EQUALS("No DimensionZ mapping is incorrect", "q3", dimensionSetElement->getChildElement("ZDimension")->getChildElement("RefDimensionId")->innerText());
+    TSM_ASSERT_EQUALS("No DimensionT mapping is incorrect", "T",  dimensionSetElement->getChildElement("TDimension")->getChildElement("RefDimensionId")->innerText());
+
+
+  }
+
+  ~MDGeometryTest()
+  {
+  }
+};
+#endif
diff --git a/Code/Mantid/Framework/Geometry/test/MDPointTest.h b/Code/Mantid/Framework/Geometry/test/MDPointTest.h
index f7bab23179a098ee5cc598af5e409542a4b9c423..877dc934e852e8b566cca1ecc67c6b887af34dc1 100644
--- a/Code/Mantid/Framework/Geometry/test/MDPointTest.h
+++ b/Code/Mantid/Framework/Geometry/test/MDPointTest.h
@@ -1,96 +1,96 @@
-#ifndef MD_POINT_TEST_H
-#define MD_POINT_TEST_H
-
-#include <cxxtest/TestSuite.h>
-#include "MantidGeometry/MDGeometry/MDPoint.h"
-#include "MantidGeometry/Instrument/Detector.h"
-#include "MantidGeometry/Instrument/Instrument.h"
-#include "MantidGeometry/IComponent.h"
-#include "MantidGeometry/V3D.h"
-#include <boost/scoped_ptr.hpp>
-
-class MDPointTest :    public CxxTest::TestSuite
-{
-
-private:
-
-  //TODO : replace fakes with Mocks using gmock.
-  class DummyDetector : public Mantid::Geometry::Detector
-  {
-  public:
-    DummyDetector(std::string name) : Mantid::Geometry::Detector(name, 0, NULL) {}
-    ~DummyDetector() {}
-  };
-
-  //TODO : replace fakes with Mocks using gmock.
-  class DummyInstrument : public Mantid::Geometry::Instrument
-  {
-  public:
-    DummyInstrument(std::string name) : Mantid::Geometry::Instrument(name) {}
-    ~DummyInstrument() {}
-  };
-
-  //Helper constructional method.
-  static Mantid::Geometry::MDPoint* constructMDPoint()
-  {
-    using namespace Mantid::Geometry;
-    std::vector<coordinate> vertexes;
-    coordinate c = coordinate::createCoordinate4D(1, 2, 3, 4);
-    vertexes.push_back(c);
-    IDetector_sptr detector = IDetector_sptr(new DummyDetector("dummydetector"));
-    IInstrument_sptr instrument = IInstrument_sptr(new DummyInstrument("dummyinstrument"));
-    return new MDPoint(1, 0.1, vertexes, detector, instrument);
-  }
-
-public:
-
-  void testGetSignal()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDPoint> point(constructMDPoint());
-    TSM_ASSERT_EQUALS("The signal value is not wired-up correctly", 1, point->getSignal()); 
-  }
-
-  void testGetError()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDPoint> point(constructMDPoint());
-    TSM_ASSERT_EQUALS("The error value is not wired-up correctly", 0.1, point->getError()); 
-  }
-
-  void testGetContributingPointsThrows()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDPoint> point(constructMDPoint());
-    TSM_ASSERT_THROWS("Attempting to fetching contributing points on a point should throw", point->getContributingPoints(), std::logic_error);
-  }
-
-  void testGetDetector()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDPoint> point(constructMDPoint());
-    TSM_ASSERT_EQUALS("The detector getter is not wired-up correctly", "dummydetector", point->getDetector()->getName());
-  }
-
-  void testGetInstrument()
-  {
-    using namespace Mantid::Geometry;
-    boost::scoped_ptr<MDPoint> point(constructMDPoint());
-    TSM_ASSERT_EQUALS("The instrument getter is not wired-up correctly", "dummyinstrument", point->getInstrument()->getName());
-  }
-
-//  void testGetVertexes()
-//  {
-//    using namespace Mantid::Geometry;
-//    boost::scoped_ptr<MDPoint> point(constructMDPoint());
-//    std::vector<coordinate> vertexes = point->getVertexes();
-//    TSM_ASSERT_EQUALS("A single vertex should be present.", 1, vertexes.size());
-//    coordinate v1 = vertexes.at(0);
-//    TSM_ASSERT_EQUALS("Vertex x value incorrect", 1, v1.getX());
-//    TSM_ASSERT_EQUALS("Vertex y value incorrect", 2, v1.getY());
-//    TSM_ASSERT_EQUALS("Vertex z value incorrect", 3, v1.getZ());
-//    TSM_ASSERT_EQUALS("Vertex t value incorrect", 4, v1.gett());
-//  }
-
-};
-#endif
+#ifndef MD_POINT_TEST_H
+#define MD_POINT_TEST_H
+
+#include <cxxtest/TestSuite.h>
+#include "MantidGeometry/MDGeometry/MDPoint.h"
+#include "MantidGeometry/Instrument/Detector.h"
+#include "MantidGeometry/Instrument/Instrument.h"
+#include "MantidGeometry/IComponent.h"
+#include "MantidGeometry/V3D.h"
+#include <boost/scoped_ptr.hpp>
+
+class MDPointTest :    public CxxTest::TestSuite
+{
+
+private:
+
+  //TODO : replace fakes with Mocks using gmock.
+  class DummyDetector : public Mantid::Geometry::Detector
+  {
+  public:
+    DummyDetector(std::string name) : Mantid::Geometry::Detector(name, 0, NULL) {}
+    ~DummyDetector() {}
+  };
+
+  //TODO : replace fakes with Mocks using gmock.
+  class DummyInstrument : public Mantid::Geometry::Instrument
+  {
+  public:
+    DummyInstrument(std::string name) : Mantid::Geometry::Instrument(name) {}
+    ~DummyInstrument() {}
+  };
+
+  //Helper constructional method.
+  static Mantid::Geometry::MDPoint* constructMDPoint()
+  {
+    using namespace Mantid::Geometry;
+    std::vector<coordinate> vertexes;
+    coordinate c = coordinate::createCoordinate4D(1, 2, 3, 4);
+    vertexes.push_back(c);
+    IDetector_sptr detector = IDetector_sptr(new DummyDetector("dummydetector"));
+    IInstrument_sptr instrument = IInstrument_sptr(new DummyInstrument("dummyinstrument"));
+    return new MDPoint(1, 0.1, vertexes, detector, instrument);
+  }
+
+public:
+
+  void testGetSignal()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDPoint> point(constructMDPoint());
+    TSM_ASSERT_EQUALS("The signal value is not wired-up correctly", 1, point->getSignal()); 
+  }
+
+  void testGetError()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDPoint> point(constructMDPoint());
+    TSM_ASSERT_EQUALS("The error value is not wired-up correctly", 0.1, point->getError()); 
+  }
+
+  void testGetContributingPointsThrows()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDPoint> point(constructMDPoint());
+    TSM_ASSERT_THROWS("Attempting to fetching contributing points on a point should throw", point->getContributingPoints(), std::logic_error);
+  }
+
+  void testGetDetector()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDPoint> point(constructMDPoint());
+    TSM_ASSERT_EQUALS("The detector getter is not wired-up correctly", "dummydetector", point->getDetector()->getName());
+  }
+
+  void testGetInstrument()
+  {
+    using namespace Mantid::Geometry;
+    boost::scoped_ptr<MDPoint> point(constructMDPoint());
+    TSM_ASSERT_EQUALS("The instrument getter is not wired-up correctly", "dummyinstrument", point->getInstrument()->getName());
+  }
+
+//  void testGetVertexes()
+//  {
+//    using namespace Mantid::Geometry;
+//    boost::scoped_ptr<MDPoint> point(constructMDPoint());
+//    std::vector<coordinate> vertexes = point->getVertexes();
+//    TSM_ASSERT_EQUALS("A single vertex should be present.", 1, vertexes.size());
+//    coordinate v1 = vertexes.at(0);
+//    TSM_ASSERT_EQUALS("Vertex x value incorrect", 1, v1.getX());
+//    TSM_ASSERT_EQUALS("Vertex y value incorrect", 2, v1.getY());
+//    TSM_ASSERT_EQUALS("Vertex z value incorrect", 3, v1.getZ());
+//    TSM_ASSERT_EQUALS("Vertex t value incorrect", 4, v1.gett());
+//  }
+
+};
+#endif
diff --git a/Code/Mantid/Framework/Geometry/test/NearestNeighboursTest.h b/Code/Mantid/Framework/Geometry/test/NearestNeighboursTest.h
index 2314484bdb539396a0a4190cbd109c0e244d3ed5..02d957730b298c707579d62b67481703cd490123 100644
--- a/Code/Mantid/Framework/Geometry/test/NearestNeighboursTest.h
+++ b/Code/Mantid/Framework/Geometry/test/NearestNeighboursTest.h
@@ -1,114 +1,114 @@
-#ifndef MANTID_TEST_GEOMETRY_NEARESTNEIGHBOURS
-#define MANTID_TEST_GEOMETRY_NEARESTNEIGHBOURS
-
-#include <cxxtest/TestSuite.h>
-
-// Header for class we're testing
-#include "MantidGeometry/Instrument/NearestNeighbours.h"
-
-// other headers
-#include "MantidTestHelpers/ComponentCreationHelper.h"
-
-#include "MantidGeometry/IInstrument.h"
-#include "MantidGeometry/IDetector.h"
-#include "MantidGeometry/Objects/BoundingBox.h"
-#include "MantidGeometry/Instrument/Detector.h"
-#include "MantidGeometry/Instrument/Instrument.h"
-#include "MantidGeometry/Instrument/RectangularDetector.h"
-#include "MantidGeometry/Instrument/ParameterMap.h"
-
-#include <map>
-
-using namespace Mantid;
-using namespace Mantid::Geometry;
-
-/**
-* Everything must be in one test or the instrument/detector list goes AWOL.
-*/
-
-class NearestNeighboursTest : public CxxTest::TestSuite
-{
-public:
-  void testNeighbourFinding()
-  {
-    // Create Instrument and make it Parameterised
-    Instrument_sptr instrument = boost::dynamic_pointer_cast<Instrument>(ComponentCreationHelper::createTestInstrumentCylindrical(2));
-    ParameterMap_sptr pmap(new ParameterMap());
-    Instrument_sptr m_instrument(new Instrument(instrument, pmap));
-    std::map<int, IDetector_sptr> m_detectors;
-    m_instrument->getDetectors(m_detectors);
-
-    // Need scaling vector since changes to NN ( 22/12/10 )
-    Mantid::Geometry::BoundingBox bbox = Mantid::Geometry::BoundingBox();
-    boost::shared_ptr<Detector> det = boost::dynamic_pointer_cast<Detector>(m_detectors[3]);
-    det->getBoundingBox(bbox);
-    V3D scale((bbox.xMax()-bbox.xMin()), (bbox.yMax()-bbox.yMin()), (bbox.zMax()-bbox.zMin()) );
-
-
-    // Check instrument was created to our expectations
-    ParameterMap_sptr p_map;
-    TS_ASSERT_THROWS_NOTHING(p_map = m_instrument->getParameterMap());
-    TS_ASSERT_EQUALS(m_detectors.size(), 18);
-
-    // Check distances calculated in NearestNeighbours compare with those using getDistance on component
-    std::map<int, double> distances = m_detectors[5]->getNeighbours();
-    std::map<int, double>::iterator distIt;
-
-    // We should have 8 neighbours when not specifying a range.
-    TS_ASSERT_EQUALS(distances.size(), 8);
-
-    for ( distIt = distances.begin(); distIt != distances.end(); ++distIt )
-    {
-      double nnDist = distIt->second;
-      V3D pos = m_detectors[distIt->first]->getPos();
-      pos -= m_detectors[5]->getPos();
-      pos /= scale;
-      double gmDist = pos.norm();
-      TS_ASSERT_EQUALS(nnDist, gmDist);
-    }
-
-    // Check that the 'radius' option works as expected
-    distances = m_detectors[14]->getNeighbours(1);
-    TS_ASSERT_EQUALS(distances.size(), 2);
-  }
-
-
-  // Let's try it with a rectangular detector.
-  void testNeighbours_RectangularDetector()
-  {
-    // 2 Rectangular detectors, 16x16
-    Instrument_sptr instrument = boost::dynamic_pointer_cast<Instrument>(ComponentCreationHelper::createTestInstrumentRectangular(2, 16) );
-
-    // Test fails without a parameter map.
-    ParameterMap_sptr pmap(new ParameterMap());
-    Instrument_sptr m_instrument(new Instrument(instrument, pmap));
-
-    // Correct # of detectors
-    TS_ASSERT_EQUALS( m_instrument->getDetectorIDs().size(), 16*16*2);
-
-    RectangularDetector_sptr bank1 = boost::dynamic_pointer_cast<RectangularDetector>(m_instrument->getComponentByName("bank1"));
-    boost::shared_ptr<Detector> det = bank1->getAtXY(2,3);
-    TS_ASSERT( det );
-    std::map<int, double> nb;
-
-    // Too close!
-    nb = det->getNeighbours(0.003);
-    TS_ASSERT_EQUALS( nb.size(), 0 );
-
-    // The ones above below and next to it
-    nb = det->getNeighbours(2);
-    TS_ASSERT_EQUALS( nb.size(), 4 );
-    int id = det->getID();
-    for (std::map<int, double>::iterator it = nb.begin(); it != nb.end(); it++)
-    {
-      int nid = it->first;
-      // One of 4 neighbors - we know what ID's they should be.
-      // TS_ASSERT(  (nid==id+1) || (nid==id-1) || (nid==id+16) || (nid==id-16) ); disable this for now as I can't
-      // work out how to get it to work, and it relies on the "old" form of NN which no one cares about AFAIK. MW 22/12/10
-    }
-
-  }
-
-};
-
-#endif /* MANTID_TEST_GEOMETRY_NEARESTNEIGHBOURS */
+#ifndef MANTID_TEST_GEOMETRY_NEARESTNEIGHBOURS
+#define MANTID_TEST_GEOMETRY_NEARESTNEIGHBOURS
+
+#include <cxxtest/TestSuite.h>
+
+// Header for class we're testing
+#include "MantidGeometry/Instrument/NearestNeighbours.h"
+
+// other headers
+#include "MantidTestHelpers/ComponentCreationHelper.h"
+
+#include "MantidGeometry/IInstrument.h"
+#include "MantidGeometry/IDetector.h"
+#include "MantidGeometry/Objects/BoundingBox.h"
+#include "MantidGeometry/Instrument/Detector.h"
+#include "MantidGeometry/Instrument/Instrument.h"
+#include "MantidGeometry/Instrument/RectangularDetector.h"
+#include "MantidGeometry/Instrument/ParameterMap.h"
+
+#include <map>
+
+using namespace Mantid;
+using namespace Mantid::Geometry;
+
+/**
+* Everything must be in one test or the instrument/detector list goes AWOL.
+*/
+
+class NearestNeighboursTest : public CxxTest::TestSuite
+{
+public:
+  void testNeighbourFinding()
+  {
+    // Create Instrument and make it Parameterised
+    Instrument_sptr instrument = boost::dynamic_pointer_cast<Instrument>(ComponentCreationHelper::createTestInstrumentCylindrical(2));
+    ParameterMap_sptr pmap(new ParameterMap());
+    Instrument_sptr m_instrument(new Instrument(instrument, pmap));
+    std::map<int, IDetector_sptr> m_detectors;
+    m_instrument->getDetectors(m_detectors);
+
+    // Need scaling vector since changes to NN ( 22/12/10 )
+    Mantid::Geometry::BoundingBox bbox = Mantid::Geometry::BoundingBox();
+    boost::shared_ptr<Detector> det = boost::dynamic_pointer_cast<Detector>(m_detectors[3]);
+    det->getBoundingBox(bbox);
+    V3D scale((bbox.xMax()-bbox.xMin()), (bbox.yMax()-bbox.yMin()), (bbox.zMax()-bbox.zMin()) );
+
+
+    // Check instrument was created to our expectations
+    ParameterMap_sptr p_map;
+    TS_ASSERT_THROWS_NOTHING(p_map = m_instrument->getParameterMap());
+    TS_ASSERT_EQUALS(m_detectors.size(), 18);
+
+    // Check distances calculated in NearestNeighbours compare with those using getDistance on component
+    std::map<int, double> distances = m_detectors[5]->getNeighbours();
+    std::map<int, double>::iterator distIt;
+
+    // We should have 8 neighbours when not specifying a range.
+    TS_ASSERT_EQUALS(distances.size(), 8);
+
+    for ( distIt = distances.begin(); distIt != distances.end(); ++distIt )
+    {
+      double nnDist = distIt->second;
+      V3D pos = m_detectors[distIt->first]->getPos();
+      pos -= m_detectors[5]->getPos();
+      pos /= scale;
+      double gmDist = pos.norm();
+      TS_ASSERT_EQUALS(nnDist, gmDist);
+    }
+
+    // Check that the 'radius' option works as expected
+    distances = m_detectors[14]->getNeighbours(1);
+    TS_ASSERT_EQUALS(distances.size(), 2);
+  }
+
+
+  // Let's try it with a rectangular detector.
+  void testNeighbours_RectangularDetector()
+  {
+    // 2 Rectangular detectors, 16x16
+    Instrument_sptr instrument = boost::dynamic_pointer_cast<Instrument>(ComponentCreationHelper::createTestInstrumentRectangular(2, 16) );
+
+    // Test fails without a parameter map.
+    ParameterMap_sptr pmap(new ParameterMap());
+    Instrument_sptr m_instrument(new Instrument(instrument, pmap));
+
+    // Correct # of detectors
+    TS_ASSERT_EQUALS( m_instrument->getDetectorIDs().size(), 16*16*2);
+
+    RectangularDetector_sptr bank1 = boost::dynamic_pointer_cast<RectangularDetector>(m_instrument->getComponentByName("bank1"));
+    boost::shared_ptr<Detector> det = bank1->getAtXY(2,3);
+    TS_ASSERT( det );
+    std::map<int, double> nb;
+
+    // Too close!
+    nb = det->getNeighbours(0.003);
+    TS_ASSERT_EQUALS( nb.size(), 0 );
+
+    // The ones above below and next to it
+    nb = det->getNeighbours(2);
+    TS_ASSERT_EQUALS( nb.size(), 4 );
+    int id = det->getID();
+    for (std::map<int, double>::iterator it = nb.begin(); it != nb.end(); it++)
+    {
+      int nid = it->first;
+      // One of 4 neighbors - we know what ID's they should be.
+      // TS_ASSERT(  (nid==id+1) || (nid==id-1) || (nid==id+16) || (nid==id-16) ); disable this for now as I can't
+      // work out how to get it to work, and it relies on the "old" form of NN which no one cares about AFAIK. MW 22/12/10
+    }
+
+  }
+
+};
+
+#endif /* MANTID_TEST_GEOMETRY_NEARESTNEIGHBOURS */
diff --git a/Code/Mantid/Framework/ICat/inc/MantidICat/ErrorHandling.h b/Code/Mantid/Framework/ICat/inc/MantidICat/ErrorHandling.h
index 4d9a2eff8b23987c817b5f25efa026d6499f2ceb..e773d66cc68484df4c3825293114d7c5e3793b23 100644
--- a/Code/Mantid/Framework/ICat/inc/MantidICat/ErrorHandling.h
+++ b/Code/Mantid/Framework/ICat/inc/MantidICat/ErrorHandling.h
@@ -1,76 +1,76 @@
-#ifndef MANTID_ICAT_ERRORHANDLING_H_
-#define MANTID_ICAT_ERRORHANDLING_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <stdexcept>
-
-//----------------------------------------------------------------------
-// Forward Declaration
-//----------------------------------------------------------------------
-class ICATPortBindingProxy;
-
-namespace Mantid
-{
-namespace ICat
-{
-
-/** CErrorHandling class responsible for handling errors in Mantid-ICat Algorithms.
-    This algorithm  gives the datsets for a given investigations record
-
-    @author Sofia Antony, ISIS Rutherford Appleton Laboratory 
-    @date 07/07/2010
-    Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
- */
-class CErrorHandling
-{
-public:
-  /// Constructor
-  CErrorHandling();
-  /// Destructor
-  ~CErrorHandling();
-
-  /** This method throws the error string returned by gsoap to mantid upper layer
-   *  @param icat ICat proxy object
-   */
-  static void throwErrorMessages(ICATPortBindingProxy& icat);
-};
-
-/** a class for Throwing Session exception in Catalog module
- */
-class SessionException: public std::runtime_error
-{
-private:
-  /// error string
-  std::string m_error;
-public:
-  /// constructor
-  SessionException(const std::string& error);
-  ///destructor
-  ~SessionException() throw() {}
-  ///return the error message
-  const char* what() const throw();
-};
-
-}
-}
-#endif
+#ifndef MANTID_ICAT_ERRORHANDLING_H_
+#define MANTID_ICAT_ERRORHANDLING_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <stdexcept>
+
+//----------------------------------------------------------------------
+// Forward Declaration
+//----------------------------------------------------------------------
+class ICATPortBindingProxy;
+
+namespace Mantid
+{
+namespace ICat
+{
+
+/** CErrorHandling class responsible for handling errors in Mantid-ICat Algorithms.
+    This algorithm  gives the datsets for a given investigations record
+
+    @author Sofia Antony, ISIS Rutherford Appleton Laboratory 
+    @date 07/07/2010
+    Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+ */
+class CErrorHandling
+{
+public:
+  /// Constructor
+  CErrorHandling();
+  /// Destructor
+  ~CErrorHandling();
+
+  /** This method throws the error string returned by gsoap to mantid upper layer
+   *  @param icat ICat proxy object
+   */
+  static void throwErrorMessages(ICATPortBindingProxy& icat);
+};
+
+/** a class for Throwing Session exception in Catalog module
+ */
+class SessionException: public std::runtime_error
+{
+private:
+  /// error string
+  std::string m_error;
+public:
+  /// constructor
+  SessionException(const std::string& error);
+  ///destructor
+  ~SessionException() throw() {}
+  ///return the error message
+  const char* what() const throw();
+};
+
+}
+}
+#endif
diff --git a/Code/Mantid/Framework/ICat/src/DownloadDataFile.cpp b/Code/Mantid/Framework/ICat/src/DownloadDataFile.cpp
index 29e7465e1fc60c326d577c46865dae104a96e35f..60a69f0e8c2943f427c5d1882edbad74abbd0757 100644
--- a/Code/Mantid/Framework/ICat/src/DownloadDataFile.cpp
+++ b/Code/Mantid/Framework/ICat/src/DownloadDataFile.cpp
@@ -1,16 +1,16 @@
-#include "MantidICat/DownloadDataFile.h"
-#include "MantidICat/Session.h"
-#include "MantidKernel/PropertyWithValue.h"
-#include "MantidKernel/BoundedValidator.h"
-#include "MantidAPI/WorkspaceProperty.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidICat/ErrorHandling.h" 
-#include "MantidKernel/ArrayProperty.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidAPI/ICatalog.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-
+#include "MantidICat/DownloadDataFile.h"
+#include "MantidICat/Session.h"
+#include "MantidKernel/PropertyWithValue.h"
+#include "MantidKernel/BoundedValidator.h"
+#include "MantidAPI/WorkspaceProperty.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidICat/ErrorHandling.h" 
+#include "MantidKernel/ArrayProperty.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidAPI/ICatalog.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+
 
 #include <Poco/Net/HTTPClientSession.h>
 #include <Poco/Net/HTTPRequest.h>
@@ -29,15 +29,15 @@ using Poco::StreamCopier;
 using Poco::Path;
 using Poco::URI;
 using Poco::Exception;
-
-namespace Mantid
-{
-namespace ICat
-{
-using namespace Kernel;
-using namespace API;
-
-DECLARE_ALGORITHM(CDownloadDataFile)
+
+namespace Mantid
+{
+namespace ICat
+{
+using namespace Kernel;
+using namespace API;
+
+DECLARE_ALGORITHM(CDownloadDataFile)
 
 /// Sets documentation strings for this algorithm
 void CDownloadDataFile::initDocs()
@@ -46,73 +46,73 @@ void CDownloadDataFile::initDocs()
   this->setOptionalMessage("Downloads the given data files from the data server");
 }
 
-
-/// declaring algorithm properties
-void CDownloadDataFile::init()
-{
-  declareProperty(new ArrayProperty<long long> ("FileIds"),"List of fileids to download from the data server");
-  declareProperty(new ArrayProperty<std::string> ("FileNames"),"List of filenames to download from the data server");
-  declareProperty( new ArrayProperty<std::string>("FileLocations",std::vector<std::string>(),new NullValidator<std::vector<std::string> >,
-      Direction::Output),"A list of containing  locations of files downloaded from data server");
-}
-/// Execute the algorithm
-void CDownloadDataFile::exec()
-{
-
-  ICatalog_sptr catalog_sptr;
-  try
-  {
-    catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-
-  }
-  catch(Kernel::Exception::NotFoundError&)
-  {
-    throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-  }
-  if(!catalog_sptr)
-  {
-    throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-  }
-  //get file ids
-  std::vector<long long> fileids = getProperty("FileIds");
-  //get file names
-  std::vector<std::string> filenames= getProperty("FileNames");
-
-  std::vector<std::string> filelocations;
-  std::vector<long long>::const_iterator citr1 =fileids.begin();
-  std::vector<std::string>::const_iterator citr2=filenames.begin();
-  m_prog =0.0;
-  //loop over file ids
-  for(;citr1!=fileids.end();++citr1,++citr2)
-  {
-    m_prog+=0.1;
-    double prog=m_prog/(double(fileids.size())/10);
-
-    std::string filelocation;
-    //get the location string from catalog
-
-    progress(prog,"getting location string...");
-    catalog_sptr->getFileLocation(*citr1,filelocation);
-
-    //if we are able to open the file from the location returned by getDatafile api
-    //the user got the permission to acess archive
-    std::ifstream isisfile(filelocation.c_str());
-    if(isisfile)
-    {
-      g_log.information()<<"isis archive location for the file with id  "<<*citr1<<" is "<<filelocation<<std::endl;
-      filelocations.push_back(filelocation);
-    }
-    else
-    {
-      g_log.information()<<"File with id "<<*citr1<<" can not be opened from archive,now file will be downloaded over internet from data server"<<std::endl;
-
-      std::string url;
-      progress(prog/2,"getting the url ....");
-      //getting the url for the file to downlaod from respective catalog
-      catalog_sptr->getDownloadURL(*citr1,url);
-
-      progress(prog,"downloading over internet...");
-      //now download the files from the data server to the machine where mantid is installed
+
+/// declaring algorithm properties
+void CDownloadDataFile::init()
+{
+  declareProperty(new ArrayProperty<long long> ("FileIds"),"List of fileids to download from the data server");
+  declareProperty(new ArrayProperty<std::string> ("FileNames"),"List of filenames to download from the data server");
+  declareProperty( new ArrayProperty<std::string>("FileLocations",std::vector<std::string>(),new NullValidator<std::vector<std::string> >,
+      Direction::Output),"A list of containing  locations of files downloaded from data server");
+}
+/// Execute the algorithm
+void CDownloadDataFile::exec()
+{
+
+  ICatalog_sptr catalog_sptr;
+  try
+  {
+    catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+
+  }
+  catch(Kernel::Exception::NotFoundError&)
+  {
+    throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+  }
+  if(!catalog_sptr)
+  {
+    throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+  }
+  //get file ids
+  std::vector<long long> fileids = getProperty("FileIds");
+  //get file names
+  std::vector<std::string> filenames= getProperty("FileNames");
+
+  std::vector<std::string> filelocations;
+  std::vector<long long>::const_iterator citr1 =fileids.begin();
+  std::vector<std::string>::const_iterator citr2=filenames.begin();
+  m_prog =0.0;
+  //loop over file ids
+  for(;citr1!=fileids.end();++citr1,++citr2)
+  {
+    m_prog+=0.1;
+    double prog=m_prog/(double(fileids.size())/10);
+
+    std::string filelocation;
+    //get the location string from catalog
+
+    progress(prog,"getting location string...");
+    catalog_sptr->getFileLocation(*citr1,filelocation);
+
+    //if we are able to open the file from the location returned by getDatafile api
+    //the user got the permission to acess archive
+    std::ifstream isisfile(filelocation.c_str());
+    if(isisfile)
+    {
+      g_log.information()<<"isis archive location for the file with id  "<<*citr1<<" is "<<filelocation<<std::endl;
+      filelocations.push_back(filelocation);
+    }
+    else
+    {
+      g_log.information()<<"File with id "<<*citr1<<" can not be opened from archive,now file will be downloaded over internet from data server"<<std::endl;
+
+      std::string url;
+      progress(prog/2,"getting the url ....");
+      //getting the url for the file to downlaod from respective catalog
+      catalog_sptr->getDownloadURL(*citr1,url);
+
+      progress(prog,"downloading over internet...");
+      //now download the files from the data server to the machine where mantid is installed
       downloadFileOverInternet(url,*citr2);
       //get the download directory name
       std::string downloadPath( Kernel::ConfigService::Instance().getString("defaultsave.directory"));
@@ -120,59 +120,59 @@ void CDownloadDataFile::exec()
       //replace "\" with "/"
       replaceBackwardSlash(downloadedFName);
       //set the filelocation property
-      filelocations.push_back(downloadedFName);
-    }
-
-  }
-
-  //set the filelocations  property
-  setProperty("FileLocations",filelocations);
-
-}
-
-
-/**This method calls ICat API downloadDatafile and gets the URL string and uses the URL to down load file server
- * @param url :: url of the file to download.
- * @param fileName :: name of the file to be saved to disk
- */
-void CDownloadDataFile::downloadFileOverInternet(const std::string & url,const std::string& fileName)
-{
-  //download using Poco HttpClient session and save to local disk
-  doDownloadandSavetoLocalDrive(url,fileName);
-
-}
-
-/** This method checks the file extn and if it's a raw file reurns true
- * This is useful when the we download a file over internet and save to local drive,
- * to open the file in binary or ascii mode
- * @param fileName ::  file name
- * @returns true if the file is a data file
- */
-bool CDownloadDataFile::isDataFile(const std::string & fileName)
-{
-  std::basic_string <char>::size_type dotIndex;
-  //const std::basic_string <char>::size_type npos = -1;
-  //find the position of .in row file
-  dotIndex = fileName.find_last_of (".");
-  std::string fextn=fileName.substr(dotIndex+1,fileName.size()-dotIndex);
-  std::transform(fextn.begin(),fextn.end(),fextn.begin(),tolower);
-
-  bool binary;
-  (!fextn.compare("raw")|| !fextn.compare("nxs")) ? binary = true : binary = false;
-  return binary;
-
-}
-
-/** This method downloads file over internet using Poco HTTPClientSession
- * @param URL- URL of the file to down load
- * @param fileName ::  file name
- */
-void CDownloadDataFile::doDownloadandSavetoLocalDrive(const std::string& URL,const std::string& fileName)
-{
-  clock_t start;
-  //use HTTP  Get method to download the data file from the server to local disk
-  try
-  {
+      filelocations.push_back(downloadedFName);
+    }
+
+  }
+
+  //set the filelocations  property
+  setProperty("FileLocations",filelocations);
+
+}
+
+
+/**This method calls ICat API downloadDatafile and gets the URL string and uses the URL to down load file server
+ * @param url :: url of the file to download.
+ * @param fileName :: name of the file to be saved to disk
+ */
+void CDownloadDataFile::downloadFileOverInternet(const std::string & url,const std::string& fileName)
+{
+  //download using Poco HttpClient session and save to local disk
+  doDownloadandSavetoLocalDrive(url,fileName);
+
+}
+
+/** This method checks the file extn and if it's a raw file reurns true
+ * This is useful when the we download a file over internet and save to local drive,
+ * to open the file in binary or ascii mode
+ * @param fileName ::  file name
+ * @returns true if the file is a data file
+ */
+bool CDownloadDataFile::isDataFile(const std::string & fileName)
+{
+  std::basic_string <char>::size_type dotIndex;
+  //const std::basic_string <char>::size_type npos = -1;
+  //find the position of .in row file
+  dotIndex = fileName.find_last_of (".");
+  std::string fextn=fileName.substr(dotIndex+1,fileName.size()-dotIndex);
+  std::transform(fextn.begin(),fextn.end(),fextn.begin(),tolower);
+
+  bool binary;
+  (!fextn.compare("raw")|| !fextn.compare("nxs")) ? binary = true : binary = false;
+  return binary;
+
+}
+
+/** This method downloads file over internet using Poco HTTPClientSession
+ * @param URL- URL of the file to down load
+ * @param fileName ::  file name
+ */
+void CDownloadDataFile::doDownloadandSavetoLocalDrive(const std::string& URL,const std::string& fileName)
+{
+  clock_t start;
+  //use HTTP  Get method to download the data file from the server to local disk
+  try
+  {
     URI uri(URL);
     std::string path(uri.getPathAndQuery());
     if (path.empty())
@@ -186,14 +186,14 @@ void CDownloadDataFile::doDownloadandSavetoLocalDrive(const std::string& URL,con
     session.sendRequest(req);
 
     HTTPResponse res;
-    std::istream& rs = session.receiveResponse(res);
+    std::istream& rs = session.receiveResponse(res);
     //save file to local disk
-    saveFiletoDisk(rs,fileName);
-
-    clock_t end=clock();
-    float diff = float(end - start)/CLOCKS_PER_SEC;
+    saveFiletoDisk(rs,fileName);
+
+    clock_t end=clock();
+    float diff = float(end - start)/CLOCKS_PER_SEC;
     g_log.information()<<"Time taken to download file "<< fileName<<" is "<<std::fixed << std::setprecision(2) << diff <<" seconds" << std::endl;
-
+
   }
   catch(Poco::SyntaxException&)
   {
@@ -203,61 +203,61 @@ void CDownloadDataFile::doDownloadandSavetoLocalDrive(const std::string& URL,con
   {
 
     throw std::runtime_error("Can not download the file "+fileName +". Path is invalid for the file.");
-  }
-
-}
-
-/** This method saves the input stream to a file
- * @param rs :: input stream
- * @param fileName :: name of the output file
- */
-void CDownloadDataFile::saveFiletoDisk(std::istream& rs,const std::string& fileName)
-{
-  std::string filepath ( Kernel::ConfigService::Instance().getString("defaultsave.directory"));
+  }
+
+}
+
+/** This method saves the input stream to a file
+ * @param rs :: input stream
+ * @param fileName :: name of the output file
+ */
+void CDownloadDataFile::saveFiletoDisk(std::istream& rs,const std::string& fileName)
+{
+  std::string filepath ( Kernel::ConfigService::Instance().getString("defaultsave.directory"));
   filepath += fileName;
 
   std::ios_base::openmode mode;
   //if raw/nexus file open it in binary mode else ascii
   isDataFile(fileName)? mode = std::ios_base::binary : mode = std::ios_base::out;
-  std::ofstream ofs(filepath.c_str(), mode);
-  if ( ofs.rdstate() & std::ios::failbit )
-  {
-    throw Mantid::Kernel::Exception::FileError("Error on creating File",fileName);
+  std::ofstream ofs(filepath.c_str(), mode);
+  if ( ofs.rdstate() & std::ios::failbit )
+  {
+    throw Mantid::Kernel::Exception::FileError("Error on creating File",fileName);
   }
   //copy the input stream to a file.
-  StreamCopier::copyStream(rs, ofs);
-
-}
-
-/** This method is used for unit testing purpose.
- * as the Poco::Net library httpget throws an exception when the nd server n/w is slow
- * I'm testing the download from mantid server.
- * as the downlaod method I've written is private I can't access that in unit testing.
- * so adding this public method to call the private downlaod method and testing.
- * @param URL :: URL of the file to download
- * @param fileName :: name of the file
- */
-void CDownloadDataFile::testDownload(const std::string& URL,const std::string& fileName)
-{
-  doDownloadandSavetoLocalDrive(URL,fileName);
-
-}
-/** This method replaces backward slash with forward slash for linux compatibility.
- * @param inputString :: input string
- */
-void CDownloadDataFile::replaceBackwardSlash(std::string& inputString)
-{
-  std::basic_string <char>::iterator iter;
-  for(iter=inputString.begin();iter!=inputString.end();++iter)
-  {
-    if((*iter)=='\\')
-    {
-      (*iter)='/';
-    }
-  }
-
-}
-
-
-}
-}
+  StreamCopier::copyStream(rs, ofs);
+
+}
+
+/** This method is used for unit testing purpose.
+ * as the Poco::Net library httpget throws an exception when the nd server n/w is slow
+ * I'm testing the download from mantid server.
+ * as the downlaod method I've written is private I can't access that in unit testing.
+ * so adding this public method to call the private downlaod method and testing.
+ * @param URL :: URL of the file to download
+ * @param fileName :: name of the file
+ */
+void CDownloadDataFile::testDownload(const std::string& URL,const std::string& fileName)
+{
+  doDownloadandSavetoLocalDrive(URL,fileName);
+
+}
+/** This method replaces backward slash with forward slash for linux compatibility.
+ * @param inputString :: input string
+ */
+void CDownloadDataFile::replaceBackwardSlash(std::string& inputString)
+{
+  std::basic_string <char>::iterator iter;
+  for(iter=inputString.begin();iter!=inputString.end();++iter)
+  {
+    if((*iter)=='\\')
+    {
+      (*iter)='/';
+    }
+  }
+
+}
+
+
+}
+}
diff --git a/Code/Mantid/Framework/ICat/src/ErrorHandling.cpp b/Code/Mantid/Framework/ICat/src/ErrorHandling.cpp
index ef91909bec3c559798ca8319b31a31d569fcbf0a..c22f8f44061a4e3d53cf55d33b358e21304198d3 100644
--- a/Code/Mantid/Framework/ICat/src/ErrorHandling.cpp
+++ b/Code/Mantid/Framework/ICat/src/ErrorHandling.cpp
@@ -1,23 +1,23 @@
-#include "MantidICat/ErrorHandling.h"
-#include "MantidICat/GSoapGenerated/soapICATPortBindingProxy.h"
-
-namespace Mantid
-{
-namespace ICat
-{
-/// Constructor
-CErrorHandling::CErrorHandling()
-{
-}
-CErrorHandling::~CErrorHandling()
-{
-}
-
-/**This method throws the error string returned by gsoap to mantid upper layer
- *@param icat :: -ICat proxy object
- */
-void CErrorHandling::throwErrorMessages(ICATPortBindingProxy& icat)
-{
+#include "MantidICat/ErrorHandling.h"
+#include "MantidICat/GSoapGenerated/soapICATPortBindingProxy.h"
+
+namespace Mantid
+{
+namespace ICat
+{
+/// Constructor
+CErrorHandling::CErrorHandling()
+{
+}
+CErrorHandling::~CErrorHandling()
+{
+}
+
+/**This method throws the error string returned by gsoap to mantid upper layer
+ *@param icat :: -ICat proxy object
+ */
+void CErrorHandling::throwErrorMessages(ICATPortBindingProxy& icat)
+{
   char buf[600];
   const int len=600;
   icat.soap_sprint_fault(buf,len);
@@ -32,19 +32,19 @@ void CErrorHandling::throwErrorMessages(ICATPortBindingProxy& icat)
   {
     exception = error.substr(index1+begmsg.length(),index2-(index1+begmsg.length()));
   }
-  throw std::runtime_error(exception);
-}
-/////////////////////
-
-/// constructor
-SessionException::SessionException(const std::string& error):std::runtime_error(error),m_error(error)
-{
-}
-
-const char* SessionException::what() const throw()
-{
-  return m_error.c_str();
-}
-
-}
-}
+  throw std::runtime_error(exception);
+}
+/////////////////////
+
+/// constructor
+SessionException::SessionException(const std::string& error):std::runtime_error(error),m_error(error)
+{
+}
+
+const char* SessionException::what() const throw()
+{
+  return m_error.c_str();
+}
+
+}
+}
diff --git a/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapC.cpp b/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapC.cpp
index 6e7db0fcca6c3e7cb106d85bd6158712b0579ca8..044f4cc046f3201274fb3292f5e9b948089e15f2 100644
--- a/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapC.cpp
+++ b/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapC.cpp
@@ -1,89524 +1,89524 @@
-/* soapC.cpp
-   Generated by gSOAP 2.7.17 from ICATService.h
-   Copyright(C) 2000-2010, Robert van Engelen, Genivia Inc. All Rights Reserved.
-   This part of the software is released under one of the following licenses:
-   GPL, the gSOAP public license, or Genivia's license for commercial use.
-*/
-
-#if defined(__BORLANDC__)
-#pragma option push -w-8060
-#pragma option push -w-8004
-// M. Gigg 2010-11-09: Added the next two pragmas to supress the warnings regarding
-// unused parameters. This file is generated by gsoap so each time the API is regenerated
-// this should be added.
-#elif defined(__GNUC__)
-#pragma GCC diagnostic ignored "-Wunused-parameter"
-#elif defined _WIN32 
-#pragma warning( disable: 4100 )
-#endif
-
-#include "MantidICat/GSoapGenerated/soapH.h"
-
-SOAP_SOURCE_STAMP("@(#) soapC.cpp ver 2.7.17 2010-10-12 10:30:43 GMT")
-
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serializeheader(struct soap *soap)
-{
-	if (soap->header)
-		soap_serialize_SOAP_ENV__Header(soap, soap->header);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_putheader(struct soap *soap)
-{
-	if (soap->header)
-	{	soap->part = SOAP_IN_HEADER;
-		if (soap_out_SOAP_ENV__Header(soap, "SOAP-ENV:Header", 0, soap->header, NULL))
-			return soap->error;
-		soap->part = SOAP_END_HEADER;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_getheader(struct soap *soap)
-{
-	soap->part = SOAP_IN_HEADER;
-	soap->header = soap_in_SOAP_ENV__Header(soap, "SOAP-ENV:Header", NULL, NULL);
-	soap->part = SOAP_END_HEADER;
-	return soap->header == NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_header(struct soap *soap)
-{
-	if (!soap->header)
-	{	if ((soap->header = soap_new_SOAP_ENV__Header(soap, -1)))
-			soap_default_SOAP_ENV__Header(soap, soap->header);
-	}
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap)
-{
-	if (!soap->fault)
-	{	soap->fault = soap_new_SOAP_ENV__Fault(soap, -1);
-		if (!soap->fault)
-			return;
-		soap_default_SOAP_ENV__Fault(soap, soap->fault);
-	}
-	if (soap->version == 2 && !soap->fault->SOAP_ENV__Code)
-	{	soap->fault->SOAP_ENV__Code = soap_new_SOAP_ENV__Code(soap, -1);
-		soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code);
-	}
-	if (soap->version == 2 && !soap->fault->SOAP_ENV__Reason)
-	{	soap->fault->SOAP_ENV__Reason = soap_new_SOAP_ENV__Reason(soap, -1);
-		soap_default_SOAP_ENV__Reason(soap, soap->fault->SOAP_ENV__Reason);
-	}
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap)
-{
-	soap_fault(soap);
-	if (soap->fault)
-		soap_serialize_SOAP_ENV__Fault(soap, soap->fault);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_putfault(struct soap *soap)
-{
-	if (soap->fault)
-		return soap_put_SOAP_ENV__Fault(soap, soap->fault, "SOAP-ENV:Fault", NULL);
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_getfault(struct soap *soap)
-{
-	return (soap->fault = soap_get_SOAP_ENV__Fault(soap, NULL, "SOAP-ENV:Fault", NULL)) == NULL;
-}
-
-SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultcode(struct soap *soap)
-{
-	soap_fault(soap);
-	if (soap->version == 2)
-		return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Value;
-	return (const char**)&soap->fault->faultcode;
-}
-
-SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultsubcode(struct soap *soap)
-{
-	soap_fault(soap);
-	if (soap->version == 2)
-	{	if (!soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode)
-		{	soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = soap_new_SOAP_ENV__Code(soap, -1);
-			soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode);
-		}
-		return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value;
-	}
-	return (const char**)&soap->fault->faultcode;
-}
-
-SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultstring(struct soap *soap)
-{
-	soap_fault(soap);
-	if (soap->version == 2)
-		return (const char**)&soap->fault->SOAP_ENV__Reason->SOAP_ENV__Text;
-	return (const char**)&soap->fault->faultstring;
-}
-
-SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultdetail(struct soap *soap)
-{
-	soap_fault(soap);
-	if (soap->version == 1)
-	{	if (!soap->fault->detail)
-		{	soap->fault->detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail));
-			soap_default_SOAP_ENV__Detail(soap, soap->fault->detail);
-		}
-		return (const char**)&soap->fault->detail->__any;
-	}
-	if (!soap->fault->SOAP_ENV__Detail)
-	{	soap->fault->SOAP_ENV__Detail = soap_new_SOAP_ENV__Detail(soap, -1);
-		soap_default_SOAP_ENV__Detail(soap, soap->fault->SOAP_ENV__Detail);
-	}
-	return (const char**)&soap->fault->SOAP_ENV__Detail->__any;
-}
-
-#endif
-
-#ifndef WITH_NOIDREF
-SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap *soap)
-{
-	int t;
-	if (soap->version == 1)
-	{	for (;;)
-		{	if (!soap_getelement(soap, &t))
-				if (soap->error || soap_ignore_element(soap))
-					break;
-		}
-	}
-	if (soap->error == SOAP_NO_TAG || soap->error == SOAP_EOF)
-		soap->error = SOAP_OK;
-	return soap->error;
-}
-#endif
-
-#ifndef WITH_NOIDREF
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, int *type)
-{
-	if (soap_peek_element(soap))
-		return NULL;
-	if (!*soap->id || !(*type = soap_lookup_type(soap, soap->id)))
-		*type = soap_lookup_type(soap, soap->href);
-	switch (*type)
-	{
-	case SOAP_TYPE_byte:
-		return soap_in_byte(soap, NULL, NULL, "xsd:byte");
-	case SOAP_TYPE_int:
-		return soap_in_int(soap, NULL, NULL, "xsd:int");
-	case SOAP_TYPE_LONG64:
-		return soap_in_LONG64(soap, NULL, NULL, "xsd:long");
-	case SOAP_TYPE_float:
-		return soap_in_float(soap, NULL, NULL, "xsd:float");
-	case SOAP_TYPE_double:
-		return soap_in_double(soap, NULL, NULL, "xsd:double");
-	case SOAP_TYPE_time:
-		return soap_in_time(soap, NULL, NULL, "xsd:dateTime");
-	case SOAP_TYPE_ns1__datasetInclude:
-		return soap_in_ns1__datasetInclude(soap, NULL, NULL, "ns1:datasetInclude");
-	case SOAP_TYPE_ns1__elementType:
-		return soap_in_ns1__elementType(soap, NULL, NULL, "ns1:elementType");
-	case SOAP_TYPE_ns1__logicalOperator:
-		return soap_in_ns1__logicalOperator(soap, NULL, NULL, "ns1:logicalOperator");
-	case SOAP_TYPE_ns1__investigationInclude:
-		return soap_in_ns1__investigationInclude(soap, NULL, NULL, "ns1:investigationInclude");
-	case SOAP_TYPE_ns1__keywordType:
-		return soap_in_ns1__keywordType(soap, NULL, NULL, "ns1:keywordType");
-	case SOAP_TYPE_ns1__parameterType:
-		return soap_in_ns1__parameterType(soap, NULL, NULL, "ns1:parameterType");
-	case SOAP_TYPE_ns1__comparisonOperator:
-		return soap_in_ns1__comparisonOperator(soap, NULL, NULL, "ns1:comparisonOperator");
-	case SOAP_TYPE_ns1__datafileInclude:
-		return soap_in_ns1__datafileInclude(soap, NULL, NULL, "ns1:datafileInclude");
-	case SOAP_TYPE_ns1__parameterValueType:
-		return soap_in_ns1__parameterValueType(soap, NULL, NULL, "ns1:parameterValueType");
-	case SOAP_TYPE_bool:
-		return soap_in_bool(soap, NULL, NULL, "xsd:boolean");
-	case SOAP_TYPE_ns1__datasetInclude_:
-		return soap_in_ns1__datasetInclude_(soap, NULL, NULL, "ns1:datasetInclude");
-	case SOAP_TYPE_ns1__elementType_:
-		return soap_in_ns1__elementType_(soap, NULL, NULL, "ns1:elementType");
-	case SOAP_TYPE_ns1__logicalOperator_:
-		return soap_in_ns1__logicalOperator_(soap, NULL, NULL, "ns1:logicalOperator");
-	case SOAP_TYPE_ns1__investigationInclude_:
-		return soap_in_ns1__investigationInclude_(soap, NULL, NULL, "ns1:investigationInclude");
-	case SOAP_TYPE_ns1__keywordType_:
-		return soap_in_ns1__keywordType_(soap, NULL, NULL, "ns1:keywordType");
-	case SOAP_TYPE_ns1__parameterType_:
-		return soap_in_ns1__parameterType_(soap, NULL, NULL, "ns1:parameterType");
-	case SOAP_TYPE_ns1__comparisonOperator_:
-		return soap_in_ns1__comparisonOperator_(soap, NULL, NULL, "ns1:comparisonOperator");
-	case SOAP_TYPE_ns1__datafileInclude_:
-		return soap_in_ns1__datafileInclude_(soap, NULL, NULL, "ns1:datafileInclude");
-	case SOAP_TYPE_ns1__parameterValueType_:
-		return soap_in_ns1__parameterValueType_(soap, NULL, NULL, "ns1:parameterValueType");
-	case SOAP_TYPE_ns1__getDatasetsResponse:
-		return soap_in_ns1__getDatasetsResponse(soap, NULL, NULL, "ns1:getDatasetsResponse");
-	case SOAP_TYPE_ns1__getDatasets:
-		return soap_in_ns1__getDatasets(soap, NULL, NULL, "ns1:getDatasets");
-	case SOAP_TYPE_ns1__listParametersResponse:
-		return soap_in_ns1__listParametersResponse(soap, NULL, NULL, "ns1:listParametersResponse");
-	case SOAP_TYPE_ns1__listParameters:
-		return soap_in_ns1__listParameters(soap, NULL, NULL, "ns1:listParameters");
-	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
-		return soap_in_ns1__modifyDataFileParameterResponse(soap, NULL, NULL, "ns1:modifyDataFileParameterResponse");
-	case SOAP_TYPE_ns1__modifyDataFileParameter:
-		return soap_in_ns1__modifyDataFileParameter(soap, NULL, NULL, "ns1:modifyDataFileParameter");
-	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
-		return soap_in_ns1__deleteSampleParameterResponse(soap, NULL, NULL, "ns1:deleteSampleParameterResponse");
-	case SOAP_TYPE_ns1__deleteSampleParameter:
-		return soap_in_ns1__deleteSampleParameter(soap, NULL, NULL, "ns1:deleteSampleParameter");
-	case SOAP_TYPE_ns1__addDataFileParameterResponse:
-		return soap_in_ns1__addDataFileParameterResponse(soap, NULL, NULL, "ns1:addDataFileParameterResponse");
-	case SOAP_TYPE_ns1__addDataFileParameter:
-		return soap_in_ns1__addDataFileParameter(soap, NULL, NULL, "ns1:addDataFileParameter");
-	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
-		return soap_in_ns1__searchDatasetsBySampleResponse(soap, NULL, NULL, "ns1:searchDatasetsBySampleResponse");
-	case SOAP_TYPE_ns1__searchDatasetsBySample:
-		return soap_in_ns1__searchDatasetsBySample(soap, NULL, NULL, "ns1:searchDatasetsBySample");
-	case SOAP_TYPE_ns1__createInvestigationResponse:
-		return soap_in_ns1__createInvestigationResponse(soap, NULL, NULL, "ns1:createInvestigationResponse");
-	case SOAP_TYPE_ns1__createInvestigation:
-		return soap_in_ns1__createInvestigation(soap, NULL, NULL, "ns1:createInvestigation");
-	case SOAP_TYPE_ns1__addPublicationResponse:
-		return soap_in_ns1__addPublicationResponse(soap, NULL, NULL, "ns1:addPublicationResponse");
-	case SOAP_TYPE_ns1__addPublication:
-		return soap_in_ns1__addPublication(soap, NULL, NULL, "ns1:addPublication");
-	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
-		return soap_in_ns1__deleteDataFileParameterResponse(soap, NULL, NULL, "ns1:deleteDataFileParameterResponse");
-	case SOAP_TYPE_ns1__deleteDataFileParameter:
-		return soap_in_ns1__deleteDataFileParameter(soap, NULL, NULL, "ns1:deleteDataFileParameter");
-	case SOAP_TYPE_ns1__getInvestigationResponse:
-		return soap_in_ns1__getInvestigationResponse(soap, NULL, NULL, "ns1:getInvestigationResponse");
-	case SOAP_TYPE_ns1__getInvestigation:
-		return soap_in_ns1__getInvestigation(soap, NULL, NULL, "ns1:getInvestigation");
-	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
-		return soap_in_ns1__getInvestigationIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationIncludesResponse");
-	case SOAP_TYPE_ns1__getInvestigationIncludes:
-		return soap_in_ns1__getInvestigationIncludes(soap, NULL, NULL, "ns1:getInvestigationIncludes");
-	case SOAP_TYPE_ns1__modifyDataFileResponse:
-		return soap_in_ns1__modifyDataFileResponse(soap, NULL, NULL, "ns1:modifyDataFileResponse");
-	case SOAP_TYPE_ns1__modifyDataFile:
-		return soap_in_ns1__modifyDataFile(soap, NULL, NULL, "ns1:modifyDataFile");
-	case SOAP_TYPE_ns1__getDatafileResponse:
-		return soap_in_ns1__getDatafileResponse(soap, NULL, NULL, "ns1:getDatafileResponse");
-	case SOAP_TYPE_ns1__getDatafile:
-		return soap_in_ns1__getDatafile(soap, NULL, NULL, "ns1:getDatafile");
-	case SOAP_TYPE_ns1__ICATAPIException:
-		return soap_in_ns1__ICATAPIException(soap, NULL, NULL, "ns1:ICATAPIException");
-	case SOAP_TYPE_ns1__ingestMetadataResponse:
-		return soap_in_ns1__ingestMetadataResponse(soap, NULL, NULL, "ns1:ingestMetadataResponse");
-	case SOAP_TYPE_ns1__ingestMetadata:
-		return soap_in_ns1__ingestMetadata(soap, NULL, NULL, "ns1:ingestMetadata");
-	case SOAP_TYPE_ns1__listRolesResponse:
-		return soap_in_ns1__listRolesResponse(soap, NULL, NULL, "ns1:listRolesResponse");
-	case SOAP_TYPE_ns1__listRoles:
-		return soap_in_ns1__listRoles(soap, NULL, NULL, "ns1:listRoles");
-	case SOAP_TYPE_ns1__getDatasetResponse:
-		return soap_in_ns1__getDatasetResponse(soap, NULL, NULL, "ns1:getDatasetResponse");
-	case SOAP_TYPE_ns1__getDataset:
-		return soap_in_ns1__getDataset(soap, NULL, NULL, "ns1:getDataset");
-	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
-		return soap_in_ns1__getDatasetIncludesResponse(soap, NULL, NULL, "ns1:getDatasetIncludesResponse");
-	case SOAP_TYPE_ns1__getDatasetIncludes:
-		return soap_in_ns1__getDatasetIncludes(soap, NULL, NULL, "ns1:getDatasetIncludes");
-	case SOAP_TYPE_ns1__updateAuthorisationResponse:
-		return soap_in_ns1__updateAuthorisationResponse(soap, NULL, NULL, "ns1:updateAuthorisationResponse");
-	case SOAP_TYPE_ns1__updateAuthorisation:
-		return soap_in_ns1__updateAuthorisation(soap, NULL, NULL, "ns1:updateAuthorisation");
-	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
-		return soap_in_ns1__deleteAuthorisationResponse(soap, NULL, NULL, "ns1:deleteAuthorisationResponse");
-	case SOAP_TYPE_ns1__deleteAuthorisation:
-		return soap_in_ns1__deleteAuthorisation(soap, NULL, NULL, "ns1:deleteAuthorisation");
-	case SOAP_TYPE_ns1__deletePublicationResponse:
-		return soap_in_ns1__deletePublicationResponse(soap, NULL, NULL, "ns1:deletePublicationResponse");
-	case SOAP_TYPE_ns1__deletePublication:
-		return soap_in_ns1__deletePublication(soap, NULL, NULL, "ns1:deletePublication");
-	case SOAP_TYPE_ns1__loginResponse:
-		return soap_in_ns1__loginResponse(soap, NULL, NULL, "ns1:loginResponse");
-	case SOAP_TYPE_ns1__login:
-		return soap_in_ns1__login(soap, NULL, NULL, "ns1:login");
-	case SOAP_TYPE_ns1__loginLifetimeResponse:
-		return soap_in_ns1__loginLifetimeResponse(soap, NULL, NULL, "ns1:loginLifetimeResponse");
-	case SOAP_TYPE_ns1__loginLifetime:
-		return soap_in_ns1__loginLifetime(soap, NULL, NULL, "ns1:loginLifetime");
-	case SOAP_TYPE_ns1__addSampleResponse:
-		return soap_in_ns1__addSampleResponse(soap, NULL, NULL, "ns1:addSampleResponse");
-	case SOAP_TYPE_ns1__addSample:
-		return soap_in_ns1__addSample(soap, NULL, NULL, "ns1:addSample");
-	case SOAP_TYPE_ns1__addAuthorisationResponse:
-		return soap_in_ns1__addAuthorisationResponse(soap, NULL, NULL, "ns1:addAuthorisationResponse");
-	case SOAP_TYPE_ns1__addAuthorisation:
-		return soap_in_ns1__addAuthorisation(soap, NULL, NULL, "ns1:addAuthorisation");
-	case SOAP_TYPE_ns1__addDataSetParameterResponse:
-		return soap_in_ns1__addDataSetParameterResponse(soap, NULL, NULL, "ns1:addDataSetParameterResponse");
-	case SOAP_TYPE_ns1__addDataSetParameter:
-		return soap_in_ns1__addDataSetParameter(soap, NULL, NULL, "ns1:addDataSetParameter");
-	case SOAP_TYPE_ns1__createDataFilesResponse:
-		return soap_in_ns1__createDataFilesResponse(soap, NULL, NULL, "ns1:createDataFilesResponse");
-	case SOAP_TYPE_ns1__createDataFiles:
-		return soap_in_ns1__createDataFiles(soap, NULL, NULL, "ns1:createDataFiles");
-	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
-		return soap_in_ns1__modifyInvestigatorResponse(soap, NULL, NULL, "ns1:modifyInvestigatorResponse");
-	case SOAP_TYPE_ns1__modifyInvestigator:
-		return soap_in_ns1__modifyInvestigator(soap, NULL, NULL, "ns1:modifyInvestigator");
-	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
-		return soap_in_ns1__searchByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorResponse");
-	case SOAP_TYPE_ns1__searchByParameterComparator:
-		return soap_in_ns1__searchByParameterComparator(soap, NULL, NULL, "ns1:searchByParameterComparator");
-	case SOAP_TYPE_ns1__modifySampleParameterResponse:
-		return soap_in_ns1__modifySampleParameterResponse(soap, NULL, NULL, "ns1:modifySampleParameterResponse");
-	case SOAP_TYPE_ns1__modifySampleParameter:
-		return soap_in_ns1__modifySampleParameter(soap, NULL, NULL, "ns1:modifySampleParameter");
-	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
-		return soap_in_ns1__listDatafileFormatsResponse(soap, NULL, NULL, "ns1:listDatafileFormatsResponse");
-	case SOAP_TYPE_ns1__listDatafileFormats:
-		return soap_in_ns1__listDatafileFormats(soap, NULL, NULL, "ns1:listDatafileFormats");
-	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
-		return soap_in_ns1__searchByAdvancedPaginationResponse(soap, NULL, NULL, "ns1:searchByAdvancedPaginationResponse");
-	case SOAP_TYPE_ns1__searchByAdvancedPagination:
-		return soap_in_ns1__searchByAdvancedPagination(soap, NULL, NULL, "ns1:searchByAdvancedPagination");
-	case SOAP_TYPE_ns1__searchByAdvancedResponse:
-		return soap_in_ns1__searchByAdvancedResponse(soap, NULL, NULL, "ns1:searchByAdvancedResponse");
-	case SOAP_TYPE_ns1__advancedSearchDetails:
-		return soap_in_ns1__advancedSearchDetails(soap, NULL, NULL, "ns1:advancedSearchDetails");
-	case SOAP_TYPE_ns1__searchByAdvanced:
-		return soap_in_ns1__searchByAdvanced(soap, NULL, NULL, "ns1:searchByAdvanced");
-	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
-		return soap_in_ns1__searchByRunNumberPaginationResponse(soap, NULL, NULL, "ns1:searchByRunNumberPaginationResponse");
-	case SOAP_TYPE_ns1__searchByRunNumberPagination:
-		return soap_in_ns1__searchByRunNumberPagination(soap, NULL, NULL, "ns1:searchByRunNumberPagination");
-	case SOAP_TYPE_ns1__searchByRunNumberResponse:
-		return soap_in_ns1__searchByRunNumberResponse(soap, NULL, NULL, "ns1:searchByRunNumberResponse");
-	case SOAP_TYPE_ns1__searchByRunNumber:
-		return soap_in_ns1__searchByRunNumber(soap, NULL, NULL, "ns1:searchByRunNumber");
-	case SOAP_TYPE_ns1__addDataSetParametersResponse:
-		return soap_in_ns1__addDataSetParametersResponse(soap, NULL, NULL, "ns1:addDataSetParametersResponse");
-	case SOAP_TYPE_ns1__addDataSetParameters:
-		return soap_in_ns1__addDataSetParameters(soap, NULL, NULL, "ns1:addDataSetParameters");
-	case SOAP_TYPE_ns1__deleteKeywordResponse:
-		return soap_in_ns1__deleteKeywordResponse(soap, NULL, NULL, "ns1:deleteKeywordResponse");
-	case SOAP_TYPE_ns1__deleteKeyword:
-		return soap_in_ns1__deleteKeyword(soap, NULL, NULL, "ns1:deleteKeyword");
-	case SOAP_TYPE_ns1__deleteSampleResponse:
-		return soap_in_ns1__deleteSampleResponse(soap, NULL, NULL, "ns1:deleteSampleResponse");
-	case SOAP_TYPE_ns1__deleteSample:
-		return soap_in_ns1__deleteSample(soap, NULL, NULL, "ns1:deleteSample");
-	case SOAP_TYPE_ns1__listDatasetStatusResponse:
-		return soap_in_ns1__listDatasetStatusResponse(soap, NULL, NULL, "ns1:listDatasetStatusResponse");
-	case SOAP_TYPE_ns1__listDatasetStatus:
-		return soap_in_ns1__listDatasetStatus(soap, NULL, NULL, "ns1:listDatasetStatus");
-	case SOAP_TYPE_ns1__modifyInvestigationResponse:
-		return soap_in_ns1__modifyInvestigationResponse(soap, NULL, NULL, "ns1:modifyInvestigationResponse");
-	case SOAP_TYPE_ns1__modifyInvestigation:
-		return soap_in_ns1__modifyInvestigation(soap, NULL, NULL, "ns1:modifyInvestigation");
-	case SOAP_TYPE_ns1__addKeywordResponse:
-		return soap_in_ns1__addKeywordResponse(soap, NULL, NULL, "ns1:addKeywordResponse");
-	case SOAP_TYPE_ns1__addKeyword:
-		return soap_in_ns1__addKeyword(soap, NULL, NULL, "ns1:addKeyword");
-	case SOAP_TYPE_ns1__icatAuthorisation:
-		return soap_in_ns1__icatAuthorisation(soap, NULL, NULL, "ns1:icatAuthorisation");
-	case SOAP_TYPE_ns1__getAuthorisationsResponse:
-		return soap_in_ns1__getAuthorisationsResponse(soap, NULL, NULL, "ns1:getAuthorisationsResponse");
-	case SOAP_TYPE_ns1__getAuthorisations:
-		return soap_in_ns1__getAuthorisations(soap, NULL, NULL, "ns1:getAuthorisations");
-	case SOAP_TYPE_ns1__removeDataSetResponse:
-		return soap_in_ns1__removeDataSetResponse(soap, NULL, NULL, "ns1:removeDataSetResponse");
-	case SOAP_TYPE_ns1__removeDataSet:
-		return soap_in_ns1__removeDataSet(soap, NULL, NULL, "ns1:removeDataSet");
-	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
-		return soap_in_ns1__modifyDataSetParameterResponse(soap, NULL, NULL, "ns1:modifyDataSetParameterResponse");
-	case SOAP_TYPE_ns1__modifyDataSetParameter:
-		return soap_in_ns1__modifyDataSetParameter(soap, NULL, NULL, "ns1:modifyDataSetParameter");
-	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
-		return soap_in_ns1__listInvestigationTypesResponse(soap, NULL, NULL, "ns1:listInvestigationTypesResponse");
-	case SOAP_TYPE_ns1__listInvestigationTypes:
-		return soap_in_ns1__listInvestigationTypes(soap, NULL, NULL, "ns1:listInvestigationTypes");
-	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
-		return soap_in_ns1__getKeywordsForUserTypeResponse(soap, NULL, NULL, "ns1:getKeywordsForUserTypeResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUserType:
-		return soap_in_ns1__getKeywordsForUserType(soap, NULL, NULL, "ns1:getKeywordsForUserType");
-	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
-		return soap_in_ns1__getKeywordsForUserMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserMaxResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUserMax:
-		return soap_in_ns1__getKeywordsForUserMax(soap, NULL, NULL, "ns1:getKeywordsForUserMax");
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
-		return soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMaxResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
-		return soap_in_ns1__getKeywordsForUserStartWithMax(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMax");
-	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
-		return soap_in_ns1__getKeywordsForUserResponse(soap, NULL, NULL, "ns1:getKeywordsForUserResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUser:
-		return soap_in_ns1__getKeywordsForUser(soap, NULL, NULL, "ns1:getKeywordsForUser");
-	case SOAP_TYPE_ns1__downloadDatafileResponse:
-		return soap_in_ns1__downloadDatafileResponse(soap, NULL, NULL, "ns1:downloadDatafileResponse");
-	case SOAP_TYPE_ns1__downloadDatafile:
-		return soap_in_ns1__downloadDatafile(soap, NULL, NULL, "ns1:downloadDatafile");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
-		return soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorsResponse");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
-		return soap_in_ns1__searchDatasetsByParameterComparators(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparators");
-	case SOAP_TYPE_ns1__setDataSetSampleResponse:
-		return soap_in_ns1__setDataSetSampleResponse(soap, NULL, NULL, "ns1:setDataSetSampleResponse");
-	case SOAP_TYPE_ns1__setDataSetSample:
-		return soap_in_ns1__setDataSetSample(soap, NULL, NULL, "ns1:setDataSetSample");
-	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
-		return soap_in_ns1__deleteDataSetParameterResponse(soap, NULL, NULL, "ns1:deleteDataSetParameterResponse");
-	case SOAP_TYPE_ns1__deleteDataSetParameter:
-		return soap_in_ns1__deleteDataSetParameter(soap, NULL, NULL, "ns1:deleteDataSetParameter");
-	case SOAP_TYPE_ns1__removeSampleParameterResponse:
-		return soap_in_ns1__removeSampleParameterResponse(soap, NULL, NULL, "ns1:removeSampleParameterResponse");
-	case SOAP_TYPE_ns1__removeSampleParameter:
-		return soap_in_ns1__removeSampleParameter(soap, NULL, NULL, "ns1:removeSampleParameter");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
-		return soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorResponse");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
-		return soap_in_ns1__searchDatasetsByParameterComparator(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparator");
-	case SOAP_TYPE_ns1__createDataSetResponse:
-		return soap_in_ns1__createDataSetResponse(soap, NULL, NULL, "ns1:createDataSetResponse");
-	case SOAP_TYPE_ns1__createDataSet:
-		return soap_in_ns1__createDataSet(soap, NULL, NULL, "ns1:createDataSet");
-	case SOAP_TYPE_ns1__addInvestigatorResponse:
-		return soap_in_ns1__addInvestigatorResponse(soap, NULL, NULL, "ns1:addInvestigatorResponse");
-	case SOAP_TYPE_ns1__addInvestigator:
-		return soap_in_ns1__addInvestigator(soap, NULL, NULL, "ns1:addInvestigator");
-	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
-		return soap_in_ns1__deleteInvestigatorResponse(soap, NULL, NULL, "ns1:deleteInvestigatorResponse");
-	case SOAP_TYPE_ns1__deleteInvestigator:
-		return soap_in_ns1__deleteInvestigator(soap, NULL, NULL, "ns1:deleteInvestigator");
-	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
-		return soap_in_ns1__getICATAPIVersionResponse(soap, NULL, NULL, "ns1:getICATAPIVersionResponse");
-	case SOAP_TYPE_ns1__getICATAPIVersion:
-		return soap_in_ns1__getICATAPIVersion(soap, NULL, NULL, "ns1:getICATAPIVersion");
-	case SOAP_TYPE_ns1__getDatafilesResponse:
-		return soap_in_ns1__getDatafilesResponse(soap, NULL, NULL, "ns1:getDatafilesResponse");
-	case SOAP_TYPE_ns1__getDatafiles:
-		return soap_in_ns1__getDatafiles(soap, NULL, NULL, "ns1:getDatafiles");
-	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
-		return soap_in_ns1__searchByParameterOperatorResponse(soap, NULL, NULL, "ns1:searchByParameterOperatorResponse");
-	case SOAP_TYPE_ns1__parameterLogicalCondition:
-		return soap_in_ns1__parameterLogicalCondition(soap, NULL, NULL, "ns1:parameterLogicalCondition");
-	case SOAP_TYPE_ns1__searchByParameterOperator:
-		return soap_in_ns1__searchByParameterOperator(soap, NULL, NULL, "ns1:searchByParameterOperator");
-	case SOAP_TYPE_ns1__isSessionValidResponse:
-		return soap_in_ns1__isSessionValidResponse(soap, NULL, NULL, "ns1:isSessionValidResponse");
-	case SOAP_TYPE_ns1__isSessionValid:
-		return soap_in_ns1__isSessionValid(soap, NULL, NULL, "ns1:isSessionValid");
-	case SOAP_TYPE_ns1__deleteDataSetResponse:
-		return soap_in_ns1__deleteDataSetResponse(soap, NULL, NULL, "ns1:deleteDataSetResponse");
-	case SOAP_TYPE_ns1__deleteDataSet:
-		return soap_in_ns1__deleteDataSet(soap, NULL, NULL, "ns1:deleteDataSet");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
-		return soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorResponse");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
-		return soap_in_ns1__searchDatafilesByParameterComparator(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparator");
-	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
-		return soap_in_ns1__getInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationsIncludesResponse");
-	case SOAP_TYPE_ns1__getInvestigationsIncludes:
-		return soap_in_ns1__getInvestigationsIncludes(soap, NULL, NULL, "ns1:getInvestigationsIncludes");
-	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
-		return soap_in_ns1__removeDataFileParameterResponse(soap, NULL, NULL, "ns1:removeDataFileParameterResponse");
-	case SOAP_TYPE_ns1__removeDataFileParameter:
-		return soap_in_ns1__removeDataFileParameter(soap, NULL, NULL, "ns1:removeDataFileParameter");
-	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
-		return soap_in_ns1__searchByUserIDPaginationResponse(soap, NULL, NULL, "ns1:searchByUserIDPaginationResponse");
-	case SOAP_TYPE_ns1__searchByUserIDPagination:
-		return soap_in_ns1__searchByUserIDPagination(soap, NULL, NULL, "ns1:searchByUserIDPagination");
-	case SOAP_TYPE_ns1__searchByUserIDResponse:
-		return soap_in_ns1__searchByUserIDResponse(soap, NULL, NULL, "ns1:searchByUserIDResponse");
-	case SOAP_TYPE_ns1__searchByUserID:
-		return soap_in_ns1__searchByUserID(soap, NULL, NULL, "ns1:searchByUserID");
-	case SOAP_TYPE_ns1__modifyPublicationResponse:
-		return soap_in_ns1__modifyPublicationResponse(soap, NULL, NULL, "ns1:modifyPublicationResponse");
-	case SOAP_TYPE_ns1__modifyPublication:
-		return soap_in_ns1__modifyPublication(soap, NULL, NULL, "ns1:modifyPublication");
-	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
-		return soap_in_ns1__removeDataSetParameterResponse(soap, NULL, NULL, "ns1:removeDataSetParameterResponse");
-	case SOAP_TYPE_ns1__removeDataSetParameter:
-		return soap_in_ns1__removeDataSetParameter(soap, NULL, NULL, "ns1:removeDataSetParameter");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
-		return soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPaginationResponse");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
-		return soap_in_ns1__getMyInvestigationsIncludesPagination(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPagination");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
-		return soap_in_ns1__getMyInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesResponse");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
-		return soap_in_ns1__getMyInvestigationsIncludes(soap, NULL, NULL, "ns1:getMyInvestigationsIncludes");
-	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
-		return soap_in_ns1__getMyInvestigationsResponse(soap, NULL, NULL, "ns1:getMyInvestigationsResponse");
-	case SOAP_TYPE_ns1__getMyInvestigations:
-		return soap_in_ns1__getMyInvestigations(soap, NULL, NULL, "ns1:getMyInvestigations");
-	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
-		return soap_in_ns1__searchByKeywordsAllResponse(soap, NULL, NULL, "ns1:searchByKeywordsAllResponse");
-	case SOAP_TYPE_ns1__keywordDetails:
-		return soap_in_ns1__keywordDetails(soap, NULL, NULL, "ns1:keywordDetails");
-	case SOAP_TYPE_ns1__searchByKeywordsAll:
-		return soap_in_ns1__searchByKeywordsAll(soap, NULL, NULL, "ns1:searchByKeywordsAll");
-	case SOAP_TYPE_ns1__searchByKeywordsResponse:
-		return soap_in_ns1__searchByKeywordsResponse(soap, NULL, NULL, "ns1:searchByKeywordsResponse");
-	case SOAP_TYPE_ns1__searchByKeywords:
-		return soap_in_ns1__searchByKeywords(soap, NULL, NULL, "ns1:searchByKeywords");
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
-		return soap_in_ns1__checkDatasetDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatasetDownloadAccessResponse");
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
-		return soap_in_ns1__checkDatasetDownloadAccess(soap, NULL, NULL, "ns1:checkDatasetDownloadAccess");
-	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
-		return soap_in_ns1__searchByUserSurnamePaginationResponse(soap, NULL, NULL, "ns1:searchByUserSurnamePaginationResponse");
-	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
-		return soap_in_ns1__searchByUserSurnamePagination(soap, NULL, NULL, "ns1:searchByUserSurnamePagination");
-	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
-		return soap_in_ns1__searchByUserSurnameResponse(soap, NULL, NULL, "ns1:searchByUserSurnameResponse");
-	case SOAP_TYPE_ns1__searchByUserSurname:
-		return soap_in_ns1__searchByUserSurname(soap, NULL, NULL, "ns1:searchByUserSurname");
-	case SOAP_TYPE_ns1__deleteDataFileResponse:
-		return soap_in_ns1__deleteDataFileResponse(soap, NULL, NULL, "ns1:deleteDataFileResponse");
-	case SOAP_TYPE_ns1__deleteDataFile:
-		return soap_in_ns1__deleteDataFile(soap, NULL, NULL, "ns1:deleteDataFile");
-	case SOAP_TYPE_ns1__downloadInfo:
-		return soap_in_ns1__downloadInfo(soap, NULL, NULL, "ns1:downloadInfo");
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
-		return soap_in_ns1__checkDatafileDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatafileDownloadAccessResponse");
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
-		return soap_in_ns1__checkDatafileDownloadAccess(soap, NULL, NULL, "ns1:checkDatafileDownloadAccess");
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
-		return soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserIdResponse");
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
-		return soap_in_ns1__getFacilityUserByFacilityUserId(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserId");
-	case SOAP_TYPE_ns1__addSampleParameterResponse:
-		return soap_in_ns1__addSampleParameterResponse(soap, NULL, NULL, "ns1:addSampleParameterResponse");
-	case SOAP_TYPE_ns1__addSampleParameter:
-		return soap_in_ns1__addSampleParameter(soap, NULL, NULL, "ns1:addSampleParameter");
-	case SOAP_TYPE_ns1__modifyDataSetResponse:
-		return soap_in_ns1__modifyDataSetResponse(soap, NULL, NULL, "ns1:modifyDataSetResponse");
-	case SOAP_TYPE_ns1__modifyDataSet:
-		return soap_in_ns1__modifyDataSet(soap, NULL, NULL, "ns1:modifyDataSet");
-	case SOAP_TYPE_ns1__downloadDatafilesResponse:
-		return soap_in_ns1__downloadDatafilesResponse(soap, NULL, NULL, "ns1:downloadDatafilesResponse");
-	case SOAP_TYPE_ns1__downloadDatafiles:
-		return soap_in_ns1__downloadDatafiles(soap, NULL, NULL, "ns1:downloadDatafiles");
-	case SOAP_TYPE_ns1__NoSuchUserException:
-		return soap_in_ns1__NoSuchUserException(soap, NULL, NULL, "ns1:NoSuchUserException");
-	case SOAP_TYPE_ns1__userDetails:
-		return soap_in_ns1__userDetails(soap, NULL, NULL, "ns1:userDetails");
-	case SOAP_TYPE_ns1__getUserDetailsResponse:
-		return soap_in_ns1__getUserDetailsResponse(soap, NULL, NULL, "ns1:getUserDetailsResponse");
-	case SOAP_TYPE_ns1__getUserDetails:
-		return soap_in_ns1__getUserDetails(soap, NULL, NULL, "ns1:getUserDetails");
-	case SOAP_TYPE_ns1__getAllKeywordsResponse:
-		return soap_in_ns1__getAllKeywordsResponse(soap, NULL, NULL, "ns1:getAllKeywordsResponse");
-	case SOAP_TYPE_ns1__getAllKeywords:
-		return soap_in_ns1__getAllKeywords(soap, NULL, NULL, "ns1:getAllKeywords");
-	case SOAP_TYPE_ns1__removePublicationResponse:
-		return soap_in_ns1__removePublicationResponse(soap, NULL, NULL, "ns1:removePublicationResponse");
-	case SOAP_TYPE_ns1__removePublication:
-		return soap_in_ns1__removePublication(soap, NULL, NULL, "ns1:removePublication");
-	case SOAP_TYPE_ns1__createDataSetsResponse:
-		return soap_in_ns1__createDataSetsResponse(soap, NULL, NULL, "ns1:createDataSetsResponse");
-	case SOAP_TYPE_ns1__createDataSets:
-		return soap_in_ns1__createDataSets(soap, NULL, NULL, "ns1:createDataSets");
-	case SOAP_TYPE_ns1__deleteInvestigationResponse:
-		return soap_in_ns1__deleteInvestigationResponse(soap, NULL, NULL, "ns1:deleteInvestigationResponse");
-	case SOAP_TYPE_ns1__deleteInvestigation:
-		return soap_in_ns1__deleteInvestigation(soap, NULL, NULL, "ns1:deleteInvestigation");
-	case SOAP_TYPE_ns1__removeKeywordResponse:
-		return soap_in_ns1__removeKeywordResponse(soap, NULL, NULL, "ns1:removeKeywordResponse");
-	case SOAP_TYPE_ns1__removeKeyword:
-		return soap_in_ns1__removeKeyword(soap, NULL, NULL, "ns1:removeKeyword");
-	case SOAP_TYPE_ns1__removeInvestigatorResponse:
-		return soap_in_ns1__removeInvestigatorResponse(soap, NULL, NULL, "ns1:removeInvestigatorResponse");
-	case SOAP_TYPE_ns1__removeInvestigator:
-		return soap_in_ns1__removeInvestigator(soap, NULL, NULL, "ns1:removeInvestigator");
-	case SOAP_TYPE_ns1__removeInvestigationResponse:
-		return soap_in_ns1__removeInvestigationResponse(soap, NULL, NULL, "ns1:removeInvestigationResponse");
-	case SOAP_TYPE_ns1__removeInvestigation:
-		return soap_in_ns1__removeInvestigation(soap, NULL, NULL, "ns1:removeInvestigation");
-	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
-		return soap_in_ns1__getFacilityUserByFederalIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFederalIdResponse");
-	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
-		return soap_in_ns1__getFacilityUserByFederalId(soap, NULL, NULL, "ns1:getFacilityUserByFederalId");
-	case SOAP_TYPE_ns1__downloadDatasetResponse:
-		return soap_in_ns1__downloadDatasetResponse(soap, NULL, NULL, "ns1:downloadDatasetResponse");
-	case SOAP_TYPE_ns1__downloadDataset:
-		return soap_in_ns1__downloadDataset(soap, NULL, NULL, "ns1:downloadDataset");
-	case SOAP_TYPE_ns1__logoutResponse:
-		return soap_in_ns1__logoutResponse(soap, NULL, NULL, "ns1:logoutResponse");
-	case SOAP_TYPE_ns1__logout:
-		return soap_in_ns1__logout(soap, NULL, NULL, "ns1:logout");
-	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
-		return soap_in_ns1__listFacilityCyclesResponse(soap, NULL, NULL, "ns1:listFacilityCyclesResponse");
-	case SOAP_TYPE_ns1__listFacilityCycles:
-		return soap_in_ns1__listFacilityCycles(soap, NULL, NULL, "ns1:listFacilityCycles");
-	case SOAP_TYPE_ns1__addDataFileParametersResponse:
-		return soap_in_ns1__addDataFileParametersResponse(soap, NULL, NULL, "ns1:addDataFileParametersResponse");
-	case SOAP_TYPE_ns1__addDataFileParameters:
-		return soap_in_ns1__addDataFileParameters(soap, NULL, NULL, "ns1:addDataFileParameters");
-	case SOAP_TYPE_ns1__removeAuthorisationResponse:
-		return soap_in_ns1__removeAuthorisationResponse(soap, NULL, NULL, "ns1:removeAuthorisationResponse");
-	case SOAP_TYPE_ns1__removeAuthorisation:
-		return soap_in_ns1__removeAuthorisation(soap, NULL, NULL, "ns1:removeAuthorisation");
-	case SOAP_TYPE_ns1__removeDataFileResponse:
-		return soap_in_ns1__removeDataFileResponse(soap, NULL, NULL, "ns1:removeDataFileResponse");
-	case SOAP_TYPE_ns1__removeDataFile:
-		return soap_in_ns1__removeDataFile(soap, NULL, NULL, "ns1:removeDataFile");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
-		return soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorsResponse");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
-		return soap_in_ns1__searchDatafilesByParameterComparators(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparators");
-	case SOAP_TYPE_ns1__ParameterSearchException:
-		return soap_in_ns1__ParameterSearchException(soap, NULL, NULL, "ns1:ParameterSearchException");
-	case SOAP_TYPE_ns1__shiftPK:
-		return soap_in_ns1__shiftPK(soap, NULL, NULL, "ns1:shiftPK");
-	case SOAP_TYPE_ns1__shift:
-		return soap_in_ns1__shift(soap, NULL, NULL, "ns1:shift");
-	case SOAP_TYPE_ns1__publication:
-		return soap_in_ns1__publication(soap, NULL, NULL, "ns1:publication");
-	case SOAP_TYPE_ns1__keywordPK:
-		return soap_in_ns1__keywordPK(soap, NULL, NULL, "ns1:keywordPK");
-	case SOAP_TYPE_ns1__keyword:
-		return soap_in_ns1__keyword(soap, NULL, NULL, "ns1:keyword");
-	case SOAP_TYPE_ns1__investigatorPK:
-		return soap_in_ns1__investigatorPK(soap, NULL, NULL, "ns1:investigatorPK");
-	case SOAP_TYPE_ns1__facilityUser:
-		return soap_in_ns1__facilityUser(soap, NULL, NULL, "ns1:facilityUser");
-	case SOAP_TYPE_ns1__investigator:
-		return soap_in_ns1__investigator(soap, NULL, NULL, "ns1:investigator");
-	case SOAP_TYPE_ns1__facilityCycle:
-		return soap_in_ns1__facilityCycle(soap, NULL, NULL, "ns1:facilityCycle");
-	case SOAP_TYPE_ns1__datasetParameterPK:
-		return soap_in_ns1__datasetParameterPK(soap, NULL, NULL, "ns1:datasetParameterPK");
-	case SOAP_TYPE_ns1__datasetParameter:
-		return soap_in_ns1__datasetParameter(soap, NULL, NULL, "ns1:datasetParameter");
-	case SOAP_TYPE_ns1__dataset:
-		return soap_in_ns1__dataset(soap, NULL, NULL, "ns1:dataset");
-	case SOAP_TYPE_ns1__investigation:
-		return soap_in_ns1__investigation(soap, NULL, NULL, "ns1:investigation");
-	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
-		return soap_in_ns1__searchByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorsResponse");
-	case SOAP_TYPE_ns1__parameterPK:
-		return soap_in_ns1__parameterPK(soap, NULL, NULL, "ns1:parameterPK");
-	case SOAP_TYPE_ns1__parameter:
-		return soap_in_ns1__parameter(soap, NULL, NULL, "ns1:parameter");
-	case SOAP_TYPE_ns1__parameterValued:
-		return soap_in_ns1__parameterValued(soap, NULL, NULL, "ns1:parameterValued");
-	case SOAP_TYPE_ns1__parameterCondition:
-		return soap_in_ns1__parameterCondition(soap, NULL, NULL, "ns1:parameterCondition");
-	case SOAP_TYPE_ns1__parameterComparisonCondition:
-		return soap_in_ns1__parameterComparisonCondition(soap, NULL, NULL, "ns1:parameterComparisonCondition");
-	case SOAP_TYPE_ns1__searchByParameterComparators:
-		return soap_in_ns1__searchByParameterComparators(soap, NULL, NULL, "ns1:searchByParameterComparators");
-	case SOAP_TYPE_ns1__modifySampleResponse:
-		return soap_in_ns1__modifySampleResponse(soap, NULL, NULL, "ns1:modifySampleResponse");
-	case SOAP_TYPE_ns1__modifySample:
-		return soap_in_ns1__modifySample(soap, NULL, NULL, "ns1:modifySample");
-	case SOAP_TYPE_ns1__ValidationException:
-		return soap_in_ns1__ValidationException(soap, NULL, NULL, "ns1:ValidationException");
-	case SOAP_TYPE_ns1__createDataFileResponse:
-		return soap_in_ns1__createDataFileResponse(soap, NULL, NULL, "ns1:createDataFileResponse");
-	case SOAP_TYPE_ns1__relatedDatafilesPK:
-		return soap_in_ns1__relatedDatafilesPK(soap, NULL, NULL, "ns1:relatedDatafilesPK");
-	case SOAP_TYPE_ns1__relatedDatafiles:
-		return soap_in_ns1__relatedDatafiles(soap, NULL, NULL, "ns1:relatedDatafiles");
-	case SOAP_TYPE_ns1__datafileParameterPK:
-		return soap_in_ns1__datafileParameterPK(soap, NULL, NULL, "ns1:datafileParameterPK");
-	case SOAP_TYPE_ns1__datafileParameter:
-		return soap_in_ns1__datafileParameter(soap, NULL, NULL, "ns1:datafileParameter");
-	case SOAP_TYPE_ns1__datafileFormatPK:
-		return soap_in_ns1__datafileFormatPK(soap, NULL, NULL, "ns1:datafileFormatPK");
-	case SOAP_TYPE_ns1__datafileFormat:
-		return soap_in_ns1__datafileFormat(soap, NULL, NULL, "ns1:datafileFormat");
-	case SOAP_TYPE_ns1__datafile:
-		return soap_in_ns1__datafile(soap, NULL, NULL, "ns1:datafile");
-	case SOAP_TYPE_ns1__createDataFile:
-		return soap_in_ns1__createDataFile(soap, NULL, NULL, "ns1:createDataFile");
-	case SOAP_TYPE_ns1__listInstrumentsResponse:
-		return soap_in_ns1__listInstrumentsResponse(soap, NULL, NULL, "ns1:listInstrumentsResponse");
-	case SOAP_TYPE_ns1__listInstruments:
-		return soap_in_ns1__listInstruments(soap, NULL, NULL, "ns1:listInstruments");
-	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
-		return soap_in_ns1__NoSuchObjectFoundException(soap, NULL, NULL, "ns1:NoSuchObjectFoundException");
-	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
-		return soap_in_ns1__InsufficientPrivilegesException(soap, NULL, NULL, "ns1:InsufficientPrivilegesException");
-	case SOAP_TYPE_ns1__removeSampleResponse:
-		return soap_in_ns1__removeSampleResponse(soap, NULL, NULL, "ns1:removeSampleResponse");
-	case SOAP_TYPE_ns1__removeSample:
-		return soap_in_ns1__removeSample(soap, NULL, NULL, "ns1:removeSample");
-	case SOAP_TYPE_ns1__icatRole:
-		return soap_in_ns1__icatRole(soap, NULL, NULL, "ns1:icatRole");
-	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
-		return soap_in_ns1__entityPrimaryKeyBaseBean(soap, NULL, NULL, "ns1:entityPrimaryKeyBaseBean");
-	case SOAP_TYPE_ns1__sampleParameterPK:
-		return soap_in_ns1__sampleParameterPK(soap, NULL, NULL, "ns1:sampleParameterPK");
-	case SOAP_TYPE_ns1__sampleParameter:
-		return soap_in_ns1__sampleParameter(soap, NULL, NULL, "ns1:sampleParameter");
-	case SOAP_TYPE_ns1__entityBaseBean:
-		return soap_in_ns1__entityBaseBean(soap, NULL, NULL, "ns1:entityBaseBean");
-	case SOAP_TYPE_ns1__sample:
-		return soap_in_ns1__sample(soap, NULL, NULL, "ns1:sample");
-	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
-		return soap_in_ns1__searchSamplesBySampleNameResponse(soap, NULL, NULL, "ns1:searchSamplesBySampleNameResponse");
-	case SOAP_TYPE_ns1__searchSamplesBySampleName:
-		return soap_in_ns1__searchSamplesBySampleName(soap, NULL, NULL, "ns1:searchSamplesBySampleName");
-	case SOAP_TYPE_ns1__SessionException:
-		return soap_in_ns1__SessionException(soap, NULL, NULL, "ns1:SessionException");
-	case SOAP_TYPE_ns1__listDatasetTypesResponse:
-		return soap_in_ns1__listDatasetTypesResponse(soap, NULL, NULL, "ns1:listDatasetTypesResponse");
-	case SOAP_TYPE_ns1__listDatasetTypes:
-		return soap_in_ns1__listDatasetTypes(soap, NULL, NULL, "ns1:listDatasetTypes");
-	case SOAP_TYPE_std__string:
-		return soap_in_std__string(soap, NULL, NULL, "xsd:string");
-	case SOAP_TYPE_xsd__string:
-		return soap_in_xsd__string(soap, NULL, NULL, "xsd:string");
-	case SOAP_TYPE_xsd__long:
-		return soap_in_xsd__long(soap, NULL, NULL, "xsd:long");
-	case SOAP_TYPE_xsd__int:
-		return soap_in_xsd__int(soap, NULL, NULL, "xsd:int");
-	case SOAP_TYPE_xsd__float:
-		return soap_in_xsd__float(soap, NULL, NULL, "xsd:float");
-	case SOAP_TYPE_xsd__double:
-		return soap_in_xsd__double(soap, NULL, NULL, "xsd:double");
-	case SOAP_TYPE_xsd__dateTime:
-		return soap_in_xsd__dateTime(soap, NULL, NULL, "xsd:dateTime");
-	case SOAP_TYPE_xsd__boolean:
-		return soap_in_xsd__boolean(soap, NULL, NULL, "xsd:boolean");
-	case SOAP_TYPE_xsd__anyType:
-		return soap_in_xsd__anyType(soap, NULL, NULL, "xsd:anyType");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse:
-		return soap_in_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorsResponse");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators:
-		return soap_in_PointerTons1__searchDatafilesByParameterComparators(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparators");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse:
-		return soap_in_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorResponse");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator:
-		return soap_in_PointerTons1__searchDatafilesByParameterComparator(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparator");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse:
-		return soap_in_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorsResponse");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators:
-		return soap_in_PointerTons1__searchDatasetsByParameterComparators(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparators");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse:
-		return soap_in_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorResponse");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator:
-		return soap_in_PointerTons1__searchDatasetsByParameterComparator(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparator");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse:
-		return soap_in_PointerTons1__searchByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorsResponse");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparators:
-		return soap_in_PointerTons1__searchByParameterComparators(soap, NULL, NULL, "ns1:searchByParameterComparators");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse:
-		return soap_in_PointerTons1__searchByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorResponse");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparator:
-		return soap_in_PointerTons1__searchByParameterComparator(soap, NULL, NULL, "ns1:searchByParameterComparator");
-	case SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse:
-		return soap_in_PointerTons1__searchByParameterOperatorResponse(soap, NULL, NULL, "ns1:searchByParameterOperatorResponse");
-	case SOAP_TYPE_PointerTons1__searchByParameterOperator:
-		return soap_in_PointerTons1__searchByParameterOperator(soap, NULL, NULL, "ns1:searchByParameterOperator");
-	case SOAP_TYPE_PointerTons1__isSessionValidResponse:
-		return soap_in_PointerTons1__isSessionValidResponse(soap, NULL, NULL, "ns1:isSessionValidResponse");
-	case SOAP_TYPE_PointerTons1__isSessionValid:
-		return soap_in_PointerTons1__isSessionValid(soap, NULL, NULL, "ns1:isSessionValid");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse:
-		return soap_in_PointerTons1__getFacilityUserByFederalIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFederalIdResponse");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalId:
-		return soap_in_PointerTons1__getFacilityUserByFederalId(soap, NULL, NULL, "ns1:getFacilityUserByFederalId");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse:
-		return soap_in_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserIdResponse");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId:
-		return soap_in_PointerTons1__getFacilityUserByFacilityUserId(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserId");
-	case SOAP_TYPE_PointerTons1__getICATAPIVersionResponse:
-		return soap_in_PointerTons1__getICATAPIVersionResponse(soap, NULL, NULL, "ns1:getICATAPIVersionResponse");
-	case SOAP_TYPE_PointerTons1__getICATAPIVersion:
-		return soap_in_PointerTons1__getICATAPIVersion(soap, NULL, NULL, "ns1:getICATAPIVersion");
-	case SOAP_TYPE_PointerTons1__ingestMetadataResponse:
-		return soap_in_PointerTons1__ingestMetadataResponse(soap, NULL, NULL, "ns1:ingestMetadataResponse");
-	case SOAP_TYPE_PointerTons1__ingestMetadata:
-		return soap_in_PointerTons1__ingestMetadata(soap, NULL, NULL, "ns1:ingestMetadata");
-	case SOAP_TYPE_PointerTons1__removeDataSetParameterResponse:
-		return soap_in_PointerTons1__removeDataSetParameterResponse(soap, NULL, NULL, "ns1:removeDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__removeDataSetParameter:
-		return soap_in_PointerTons1__removeDataSetParameter(soap, NULL, NULL, "ns1:removeDataSetParameter");
-	case SOAP_TYPE_PointerTons1__removeDataSetResponse:
-		return soap_in_PointerTons1__removeDataSetResponse(soap, NULL, NULL, "ns1:removeDataSetResponse");
-	case SOAP_TYPE_PointerTons1__removeDataSet:
-		return soap_in_PointerTons1__removeDataSet(soap, NULL, NULL, "ns1:removeDataSet");
-	case SOAP_TYPE_PointerTons1__addDataSetParametersResponse:
-		return soap_in_PointerTons1__addDataSetParametersResponse(soap, NULL, NULL, "ns1:addDataSetParametersResponse");
-	case SOAP_TYPE_PointerTons1__addDataSetParameters:
-		return soap_in_PointerTons1__addDataSetParameters(soap, NULL, NULL, "ns1:addDataSetParameters");
-	case SOAP_TYPE_PointerTons1__addDataSetParameterResponse:
-		return soap_in_PointerTons1__addDataSetParameterResponse(soap, NULL, NULL, "ns1:addDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__addDataSetParameter:
-		return soap_in_PointerTons1__addDataSetParameter(soap, NULL, NULL, "ns1:addDataSetParameter");
-	case SOAP_TYPE_PointerTons1__setDataSetSampleResponse:
-		return soap_in_PointerTons1__setDataSetSampleResponse(soap, NULL, NULL, "ns1:setDataSetSampleResponse");
-	case SOAP_TYPE_PointerTons1__setDataSetSample:
-		return soap_in_PointerTons1__setDataSetSample(soap, NULL, NULL, "ns1:setDataSetSample");
-	case SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse:
-		return soap_in_PointerTons1__modifyDataSetParameterResponse(soap, NULL, NULL, "ns1:modifyDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataSetParameter:
-		return soap_in_PointerTons1__modifyDataSetParameter(soap, NULL, NULL, "ns1:modifyDataSetParameter");
-	case SOAP_TYPE_PointerTons1__modifyDataSetResponse:
-		return soap_in_PointerTons1__modifyDataSetResponse(soap, NULL, NULL, "ns1:modifyDataSetResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataSet:
-		return soap_in_PointerTons1__modifyDataSet(soap, NULL, NULL, "ns1:modifyDataSet");
-	case SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse:
-		return soap_in_PointerTons1__deleteDataSetParameterResponse(soap, NULL, NULL, "ns1:deleteDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataSetParameter:
-		return soap_in_PointerTons1__deleteDataSetParameter(soap, NULL, NULL, "ns1:deleteDataSetParameter");
-	case SOAP_TYPE_PointerTons1__deleteDataSetResponse:
-		return soap_in_PointerTons1__deleteDataSetResponse(soap, NULL, NULL, "ns1:deleteDataSetResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataSet:
-		return soap_in_PointerTons1__deleteDataSet(soap, NULL, NULL, "ns1:deleteDataSet");
-	case SOAP_TYPE_PointerTons1__createDataSetsResponse:
-		return soap_in_PointerTons1__createDataSetsResponse(soap, NULL, NULL, "ns1:createDataSetsResponse");
-	case SOAP_TYPE_PointerTons1__createDataSets:
-		return soap_in_PointerTons1__createDataSets(soap, NULL, NULL, "ns1:createDataSets");
-	case SOAP_TYPE_PointerTons1__createDataSetResponse:
-		return soap_in_PointerTons1__createDataSetResponse(soap, NULL, NULL, "ns1:createDataSetResponse");
-	case SOAP_TYPE_PointerTons1__createDataSet:
-		return soap_in_PointerTons1__createDataSet(soap, NULL, NULL, "ns1:createDataSet");
-	case SOAP_TYPE_PointerTons1__getDatasetsResponse:
-		return soap_in_PointerTons1__getDatasetsResponse(soap, NULL, NULL, "ns1:getDatasetsResponse");
-	case SOAP_TYPE_PointerTons1__getDatasets:
-		return soap_in_PointerTons1__getDatasets(soap, NULL, NULL, "ns1:getDatasets");
-	case SOAP_TYPE_PointerTons1__listDatafileFormatsResponse:
-		return soap_in_PointerTons1__listDatafileFormatsResponse(soap, NULL, NULL, "ns1:listDatafileFormatsResponse");
-	case SOAP_TYPE_PointerTons1__listDatafileFormats:
-		return soap_in_PointerTons1__listDatafileFormats(soap, NULL, NULL, "ns1:listDatafileFormats");
-	case SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse:
-		return soap_in_PointerTons1__searchByRunNumberPaginationResponse(soap, NULL, NULL, "ns1:searchByRunNumberPaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByRunNumberPagination:
-		return soap_in_PointerTons1__searchByRunNumberPagination(soap, NULL, NULL, "ns1:searchByRunNumberPagination");
-	case SOAP_TYPE_PointerTons1__searchByRunNumberResponse:
-		return soap_in_PointerTons1__searchByRunNumberResponse(soap, NULL, NULL, "ns1:searchByRunNumberResponse");
-	case SOAP_TYPE_PointerTons1__searchByRunNumber:
-		return soap_in_PointerTons1__searchByRunNumber(soap, NULL, NULL, "ns1:searchByRunNumber");
-	case SOAP_TYPE_PointerTons1__listDatasetStatusResponse:
-		return soap_in_PointerTons1__listDatasetStatusResponse(soap, NULL, NULL, "ns1:listDatasetStatusResponse");
-	case SOAP_TYPE_PointerTons1__listDatasetStatus:
-		return soap_in_PointerTons1__listDatasetStatus(soap, NULL, NULL, "ns1:listDatasetStatus");
-	case SOAP_TYPE_PointerTons1__listDatasetTypesResponse:
-		return soap_in_PointerTons1__listDatasetTypesResponse(soap, NULL, NULL, "ns1:listDatasetTypesResponse");
-	case SOAP_TYPE_PointerTons1__listDatasetTypes:
-		return soap_in_PointerTons1__listDatasetTypes(soap, NULL, NULL, "ns1:listDatasetTypes");
-	case SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse:
-		return soap_in_PointerTons1__searchDatasetsBySampleResponse(soap, NULL, NULL, "ns1:searchDatasetsBySampleResponse");
-	case SOAP_TYPE_PointerTons1__searchDatasetsBySample:
-		return soap_in_PointerTons1__searchDatasetsBySample(soap, NULL, NULL, "ns1:searchDatasetsBySample");
-	case SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse:
-		return soap_in_PointerTons1__searchSamplesBySampleNameResponse(soap, NULL, NULL, "ns1:searchSamplesBySampleNameResponse");
-	case SOAP_TYPE_PointerTons1__searchSamplesBySampleName:
-		return soap_in_PointerTons1__searchSamplesBySampleName(soap, NULL, NULL, "ns1:searchSamplesBySampleName");
-	case SOAP_TYPE_PointerTons1__listInvestigationTypesResponse:
-		return soap_in_PointerTons1__listInvestigationTypesResponse(soap, NULL, NULL, "ns1:listInvestigationTypesResponse");
-	case SOAP_TYPE_PointerTons1__listInvestigationTypes:
-		return soap_in_PointerTons1__listInvestigationTypes(soap, NULL, NULL, "ns1:listInvestigationTypes");
-	case SOAP_TYPE_PointerTons1__listFacilityCyclesResponse:
-		return soap_in_PointerTons1__listFacilityCyclesResponse(soap, NULL, NULL, "ns1:listFacilityCyclesResponse");
-	case SOAP_TYPE_PointerTons1__listFacilityCycles:
-		return soap_in_PointerTons1__listFacilityCycles(soap, NULL, NULL, "ns1:listFacilityCycles");
-	case SOAP_TYPE_PointerTons1__listParametersResponse:
-		return soap_in_PointerTons1__listParametersResponse(soap, NULL, NULL, "ns1:listParametersResponse");
-	case SOAP_TYPE_PointerTons1__listParameters:
-		return soap_in_PointerTons1__listParameters(soap, NULL, NULL, "ns1:listParameters");
-	case SOAP_TYPE_PointerTons1__listRolesResponse:
-		return soap_in_PointerTons1__listRolesResponse(soap, NULL, NULL, "ns1:listRolesResponse");
-	case SOAP_TYPE_PointerTons1__listRoles:
-		return soap_in_PointerTons1__listRoles(soap, NULL, NULL, "ns1:listRoles");
-	case SOAP_TYPE_PointerTons1__listInstrumentsResponse:
-		return soap_in_PointerTons1__listInstrumentsResponse(soap, NULL, NULL, "ns1:listInstrumentsResponse");
-	case SOAP_TYPE_PointerTons1__listInstruments:
-		return soap_in_PointerTons1__listInstruments(soap, NULL, NULL, "ns1:listInstruments");
-	case SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse:
-		return soap_in_PointerTons1__searchByUserSurnamePaginationResponse(soap, NULL, NULL, "ns1:searchByUserSurnamePaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserSurnamePagination:
-		return soap_in_PointerTons1__searchByUserSurnamePagination(soap, NULL, NULL, "ns1:searchByUserSurnamePagination");
-	case SOAP_TYPE_PointerTons1__searchByUserSurnameResponse:
-		return soap_in_PointerTons1__searchByUserSurnameResponse(soap, NULL, NULL, "ns1:searchByUserSurnameResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserSurname:
-		return soap_in_PointerTons1__searchByUserSurname(soap, NULL, NULL, "ns1:searchByUserSurname");
-	case SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse:
-		return soap_in_PointerTons1__searchByUserIDPaginationResponse(soap, NULL, NULL, "ns1:searchByUserIDPaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserIDPagination:
-		return soap_in_PointerTons1__searchByUserIDPagination(soap, NULL, NULL, "ns1:searchByUserIDPagination");
-	case SOAP_TYPE_PointerTons1__searchByUserIDResponse:
-		return soap_in_PointerTons1__searchByUserIDResponse(soap, NULL, NULL, "ns1:searchByUserIDResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserID:
-		return soap_in_PointerTons1__searchByUserID(soap, NULL, NULL, "ns1:searchByUserID");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse:
-		return soap_in_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPaginationResponse");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination:
-		return soap_in_PointerTons1__getMyInvestigationsIncludesPagination(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPagination");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse:
-		return soap_in_PointerTons1__getMyInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes:
-		return soap_in_PointerTons1__getMyInvestigationsIncludes(soap, NULL, NULL, "ns1:getMyInvestigationsIncludes");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsResponse:
-		return soap_in_PointerTons1__getMyInvestigationsResponse(soap, NULL, NULL, "ns1:getMyInvestigationsResponse");
-	case SOAP_TYPE_PointerTons1__getMyInvestigations:
-		return soap_in_PointerTons1__getMyInvestigations(soap, NULL, NULL, "ns1:getMyInvestigations");
-	case SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse:
-		return soap_in_PointerTons1__searchByKeywordsAllResponse(soap, NULL, NULL, "ns1:searchByKeywordsAllResponse");
-	case SOAP_TYPE_PointerTons1__searchByKeywordsAll:
-		return soap_in_PointerTons1__searchByKeywordsAll(soap, NULL, NULL, "ns1:searchByKeywordsAll");
-	case SOAP_TYPE_PointerTons1__searchByKeywordsResponse:
-		return soap_in_PointerTons1__searchByKeywordsResponse(soap, NULL, NULL, "ns1:searchByKeywordsResponse");
-	case SOAP_TYPE_PointerTons1__searchByKeywords:
-		return soap_in_PointerTons1__searchByKeywords(soap, NULL, NULL, "ns1:searchByKeywords");
-	case SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse:
-		return soap_in_PointerTons1__searchByAdvancedPaginationResponse(soap, NULL, NULL, "ns1:searchByAdvancedPaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByAdvancedPagination:
-		return soap_in_PointerTons1__searchByAdvancedPagination(soap, NULL, NULL, "ns1:searchByAdvancedPagination");
-	case SOAP_TYPE_PointerTons1__searchByAdvancedResponse:
-		return soap_in_PointerTons1__searchByAdvancedResponse(soap, NULL, NULL, "ns1:searchByAdvancedResponse");
-	case SOAP_TYPE_PointerTons1__searchByAdvanced:
-		return soap_in_PointerTons1__searchByAdvanced(soap, NULL, NULL, "ns1:searchByAdvanced");
-	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse:
-		return soap_in_PointerTons1__checkDatasetDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatasetDownloadAccessResponse");
-	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess:
-		return soap_in_PointerTons1__checkDatasetDownloadAccess(soap, NULL, NULL, "ns1:checkDatasetDownloadAccess");
-	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse:
-		return soap_in_PointerTons1__checkDatafileDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatafileDownloadAccessResponse");
-	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess:
-		return soap_in_PointerTons1__checkDatafileDownloadAccess(soap, NULL, NULL, "ns1:checkDatafileDownloadAccess");
-	case SOAP_TYPE_PointerTons1__downloadDatasetResponse:
-		return soap_in_PointerTons1__downloadDatasetResponse(soap, NULL, NULL, "ns1:downloadDatasetResponse");
-	case SOAP_TYPE_PointerTons1__downloadDataset:
-		return soap_in_PointerTons1__downloadDataset(soap, NULL, NULL, "ns1:downloadDataset");
-	case SOAP_TYPE_PointerTons1__downloadDatafilesResponse:
-		return soap_in_PointerTons1__downloadDatafilesResponse(soap, NULL, NULL, "ns1:downloadDatafilesResponse");
-	case SOAP_TYPE_PointerTons1__downloadDatafiles:
-		return soap_in_PointerTons1__downloadDatafiles(soap, NULL, NULL, "ns1:downloadDatafiles");
-	case SOAP_TYPE_PointerTons1__downloadDatafileResponse:
-		return soap_in_PointerTons1__downloadDatafileResponse(soap, NULL, NULL, "ns1:downloadDatafileResponse");
-	case SOAP_TYPE_PointerTons1__downloadDatafile:
-		return soap_in_PointerTons1__downloadDatafile(soap, NULL, NULL, "ns1:downloadDatafile");
-	case SOAP_TYPE_PointerTons1__getAllKeywordsResponse:
-		return soap_in_PointerTons1__getAllKeywordsResponse(soap, NULL, NULL, "ns1:getAllKeywordsResponse");
-	case SOAP_TYPE_PointerTons1__getAllKeywords:
-		return soap_in_PointerTons1__getAllKeywords(soap, NULL, NULL, "ns1:getAllKeywords");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse:
-		return soap_in_PointerTons1__getKeywordsForUserTypeResponse(soap, NULL, NULL, "ns1:getKeywordsForUserTypeResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserType:
-		return soap_in_PointerTons1__getKeywordsForUserType(soap, NULL, NULL, "ns1:getKeywordsForUserType");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse:
-		return soap_in_PointerTons1__getKeywordsForUserMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserMaxResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserMax:
-		return soap_in_PointerTons1__getKeywordsForUserMax(soap, NULL, NULL, "ns1:getKeywordsForUserMax");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse:
-		return soap_in_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMaxResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax:
-		return soap_in_PointerTons1__getKeywordsForUserStartWithMax(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMax");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserResponse:
-		return soap_in_PointerTons1__getKeywordsForUserResponse(soap, NULL, NULL, "ns1:getKeywordsForUserResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUser:
-		return soap_in_PointerTons1__getKeywordsForUser(soap, NULL, NULL, "ns1:getKeywordsForUser");
-	case SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse:
-		return soap_in_PointerTons1__deleteDataFileParameterResponse(soap, NULL, NULL, "ns1:deleteDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataFileParameter:
-		return soap_in_PointerTons1__deleteDataFileParameter(soap, NULL, NULL, "ns1:deleteDataFileParameter");
-	case SOAP_TYPE_PointerTons1__removeDataFileParameterResponse:
-		return soap_in_PointerTons1__removeDataFileParameterResponse(soap, NULL, NULL, "ns1:removeDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__removeDataFileParameter:
-		return soap_in_PointerTons1__removeDataFileParameter(soap, NULL, NULL, "ns1:removeDataFileParameter");
-	case SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse:
-		return soap_in_PointerTons1__modifyDataFileParameterResponse(soap, NULL, NULL, "ns1:modifyDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataFileParameter:
-		return soap_in_PointerTons1__modifyDataFileParameter(soap, NULL, NULL, "ns1:modifyDataFileParameter");
-	case SOAP_TYPE_PointerTons1__addDataFileParametersResponse:
-		return soap_in_PointerTons1__addDataFileParametersResponse(soap, NULL, NULL, "ns1:addDataFileParametersResponse");
-	case SOAP_TYPE_PointerTons1__addDataFileParameters:
-		return soap_in_PointerTons1__addDataFileParameters(soap, NULL, NULL, "ns1:addDataFileParameters");
-	case SOAP_TYPE_PointerTons1__modifyDataFileResponse:
-		return soap_in_PointerTons1__modifyDataFileResponse(soap, NULL, NULL, "ns1:modifyDataFileResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataFile:
-		return soap_in_PointerTons1__modifyDataFile(soap, NULL, NULL, "ns1:modifyDataFile");
-	case SOAP_TYPE_PointerTons1__removeDataFileResponse:
-		return soap_in_PointerTons1__removeDataFileResponse(soap, NULL, NULL, "ns1:removeDataFileResponse");
-	case SOAP_TYPE_PointerTons1__removeDataFile:
-		return soap_in_PointerTons1__removeDataFile(soap, NULL, NULL, "ns1:removeDataFile");
-	case SOAP_TYPE_PointerTons1__deleteDataFileResponse:
-		return soap_in_PointerTons1__deleteDataFileResponse(soap, NULL, NULL, "ns1:deleteDataFileResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataFile:
-		return soap_in_PointerTons1__deleteDataFile(soap, NULL, NULL, "ns1:deleteDataFile");
-	case SOAP_TYPE_PointerTons1__createDataFilesResponse:
-		return soap_in_PointerTons1__createDataFilesResponse(soap, NULL, NULL, "ns1:createDataFilesResponse");
-	case SOAP_TYPE_PointerTons1__createDataFiles:
-		return soap_in_PointerTons1__createDataFiles(soap, NULL, NULL, "ns1:createDataFiles");
-	case SOAP_TYPE_PointerTons1__createDataFileResponse:
-		return soap_in_PointerTons1__createDataFileResponse(soap, NULL, NULL, "ns1:createDataFileResponse");
-	case SOAP_TYPE_PointerTons1__createDataFile:
-		return soap_in_PointerTons1__createDataFile(soap, NULL, NULL, "ns1:createDataFile");
-	case SOAP_TYPE_PointerTons1__getDatafilesResponse:
-		return soap_in_PointerTons1__getDatafilesResponse(soap, NULL, NULL, "ns1:getDatafilesResponse");
-	case SOAP_TYPE_PointerTons1__getDatafiles:
-		return soap_in_PointerTons1__getDatafiles(soap, NULL, NULL, "ns1:getDatafiles");
-	case SOAP_TYPE_PointerTons1__getUserDetailsResponse:
-		return soap_in_PointerTons1__getUserDetailsResponse(soap, NULL, NULL, "ns1:getUserDetailsResponse");
-	case SOAP_TYPE_PointerTons1__getUserDetails:
-		return soap_in_PointerTons1__getUserDetails(soap, NULL, NULL, "ns1:getUserDetails");
-	case SOAP_TYPE_PointerTons1__updateAuthorisationResponse:
-		return soap_in_PointerTons1__updateAuthorisationResponse(soap, NULL, NULL, "ns1:updateAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__updateAuthorisation:
-		return soap_in_PointerTons1__updateAuthorisation(soap, NULL, NULL, "ns1:updateAuthorisation");
-	case SOAP_TYPE_PointerTons1__removeAuthorisationResponse:
-		return soap_in_PointerTons1__removeAuthorisationResponse(soap, NULL, NULL, "ns1:removeAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__removeAuthorisation:
-		return soap_in_PointerTons1__removeAuthorisation(soap, NULL, NULL, "ns1:removeAuthorisation");
-	case SOAP_TYPE_PointerTons1__deleteAuthorisationResponse:
-		return soap_in_PointerTons1__deleteAuthorisationResponse(soap, NULL, NULL, "ns1:deleteAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__deleteAuthorisation:
-		return soap_in_PointerTons1__deleteAuthorisation(soap, NULL, NULL, "ns1:deleteAuthorisation");
-	case SOAP_TYPE_PointerTons1__addAuthorisationResponse:
-		return soap_in_PointerTons1__addAuthorisationResponse(soap, NULL, NULL, "ns1:addAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__addAuthorisation:
-		return soap_in_PointerTons1__addAuthorisation(soap, NULL, NULL, "ns1:addAuthorisation");
-	case SOAP_TYPE_PointerTons1__getAuthorisationsResponse:
-		return soap_in_PointerTons1__getAuthorisationsResponse(soap, NULL, NULL, "ns1:getAuthorisationsResponse");
-	case SOAP_TYPE_PointerTons1__getAuthorisations:
-		return soap_in_PointerTons1__getAuthorisations(soap, NULL, NULL, "ns1:getAuthorisations");
-	case SOAP_TYPE_PointerTons1__modifySampleParameterResponse:
-		return soap_in_PointerTons1__modifySampleParameterResponse(soap, NULL, NULL, "ns1:modifySampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__modifySampleParameter:
-		return soap_in_PointerTons1__modifySampleParameter(soap, NULL, NULL, "ns1:modifySampleParameter");
-	case SOAP_TYPE_PointerTons1__deleteSampleParameterResponse:
-		return soap_in_PointerTons1__deleteSampleParameterResponse(soap, NULL, NULL, "ns1:deleteSampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__deleteSampleParameter:
-		return soap_in_PointerTons1__deleteSampleParameter(soap, NULL, NULL, "ns1:deleteSampleParameter");
-	case SOAP_TYPE_PointerTons1__removeSampleParameterResponse:
-		return soap_in_PointerTons1__removeSampleParameterResponse(soap, NULL, NULL, "ns1:removeSampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__removeSampleParameter:
-		return soap_in_PointerTons1__removeSampleParameter(soap, NULL, NULL, "ns1:removeSampleParameter");
-	case SOAP_TYPE_PointerTons1__modifySampleResponse:
-		return soap_in_PointerTons1__modifySampleResponse(soap, NULL, NULL, "ns1:modifySampleResponse");
-	case SOAP_TYPE_PointerTons1__modifySample:
-		return soap_in_PointerTons1__modifySample(soap, NULL, NULL, "ns1:modifySample");
-	case SOAP_TYPE_PointerTons1__deleteSampleResponse:
-		return soap_in_PointerTons1__deleteSampleResponse(soap, NULL, NULL, "ns1:deleteSampleResponse");
-	case SOAP_TYPE_PointerTons1__deleteSample:
-		return soap_in_PointerTons1__deleteSample(soap, NULL, NULL, "ns1:deleteSample");
-	case SOAP_TYPE_PointerTons1__removeSampleResponse:
-		return soap_in_PointerTons1__removeSampleResponse(soap, NULL, NULL, "ns1:removeSampleResponse");
-	case SOAP_TYPE_PointerTons1__removeSample:
-		return soap_in_PointerTons1__removeSample(soap, NULL, NULL, "ns1:removeSample");
-	case SOAP_TYPE_PointerTons1__deleteInvestigatorResponse:
-		return soap_in_PointerTons1__deleteInvestigatorResponse(soap, NULL, NULL, "ns1:deleteInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__deleteInvestigator:
-		return soap_in_PointerTons1__deleteInvestigator(soap, NULL, NULL, "ns1:deleteInvestigator");
-	case SOAP_TYPE_PointerTons1__modifyInvestigatorResponse:
-		return soap_in_PointerTons1__modifyInvestigatorResponse(soap, NULL, NULL, "ns1:modifyInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__modifyInvestigator:
-		return soap_in_PointerTons1__modifyInvestigator(soap, NULL, NULL, "ns1:modifyInvestigator");
-	case SOAP_TYPE_PointerTons1__removeInvestigatorResponse:
-		return soap_in_PointerTons1__removeInvestigatorResponse(soap, NULL, NULL, "ns1:removeInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__removeInvestigator:
-		return soap_in_PointerTons1__removeInvestigator(soap, NULL, NULL, "ns1:removeInvestigator");
-	case SOAP_TYPE_PointerTons1__modifyPublicationResponse:
-		return soap_in_PointerTons1__modifyPublicationResponse(soap, NULL, NULL, "ns1:modifyPublicationResponse");
-	case SOAP_TYPE_PointerTons1__modifyPublication:
-		return soap_in_PointerTons1__modifyPublication(soap, NULL, NULL, "ns1:modifyPublication");
-	case SOAP_TYPE_PointerTons1__deletePublicationResponse:
-		return soap_in_PointerTons1__deletePublicationResponse(soap, NULL, NULL, "ns1:deletePublicationResponse");
-	case SOAP_TYPE_PointerTons1__deletePublication:
-		return soap_in_PointerTons1__deletePublication(soap, NULL, NULL, "ns1:deletePublication");
-	case SOAP_TYPE_PointerTons1__removePublicationResponse:
-		return soap_in_PointerTons1__removePublicationResponse(soap, NULL, NULL, "ns1:removePublicationResponse");
-	case SOAP_TYPE_PointerTons1__removePublication:
-		return soap_in_PointerTons1__removePublication(soap, NULL, NULL, "ns1:removePublication");
-	case SOAP_TYPE_PointerTons1__deleteKeywordResponse:
-		return soap_in_PointerTons1__deleteKeywordResponse(soap, NULL, NULL, "ns1:deleteKeywordResponse");
-	case SOAP_TYPE_PointerTons1__deleteKeyword:
-		return soap_in_PointerTons1__deleteKeyword(soap, NULL, NULL, "ns1:deleteKeyword");
-	case SOAP_TYPE_PointerTons1__removeKeywordResponse:
-		return soap_in_PointerTons1__removeKeywordResponse(soap, NULL, NULL, "ns1:removeKeywordResponse");
-	case SOAP_TYPE_PointerTons1__removeKeyword:
-		return soap_in_PointerTons1__removeKeyword(soap, NULL, NULL, "ns1:removeKeyword");
-	case SOAP_TYPE_PointerTons1__modifyInvestigationResponse:
-		return soap_in_PointerTons1__modifyInvestigationResponse(soap, NULL, NULL, "ns1:modifyInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__modifyInvestigation:
-		return soap_in_PointerTons1__modifyInvestigation(soap, NULL, NULL, "ns1:modifyInvestigation");
-	case SOAP_TYPE_PointerTons1__deleteInvestigationResponse:
-		return soap_in_PointerTons1__deleteInvestigationResponse(soap, NULL, NULL, "ns1:deleteInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__deleteInvestigation:
-		return soap_in_PointerTons1__deleteInvestigation(soap, NULL, NULL, "ns1:deleteInvestigation");
-	case SOAP_TYPE_PointerTons1__removeInvestigationResponse:
-		return soap_in_PointerTons1__removeInvestigationResponse(soap, NULL, NULL, "ns1:removeInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__removeInvestigation:
-		return soap_in_PointerTons1__removeInvestigation(soap, NULL, NULL, "ns1:removeInvestigation");
-	case SOAP_TYPE_PointerTons1__createInvestigationResponse:
-		return soap_in_PointerTons1__createInvestigationResponse(soap, NULL, NULL, "ns1:createInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__createInvestigation:
-		return soap_in_PointerTons1__createInvestigation(soap, NULL, NULL, "ns1:createInvestigation");
-	case SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse:
-		return soap_in_PointerTons1__getInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationsIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getInvestigationsIncludes:
-		return soap_in_PointerTons1__getInvestigationsIncludes(soap, NULL, NULL, "ns1:getInvestigationsIncludes");
-	case SOAP_TYPE_PointerTons1__addDataFileParameterResponse:
-		return soap_in_PointerTons1__addDataFileParameterResponse(soap, NULL, NULL, "ns1:addDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__addDataFileParameter:
-		return soap_in_PointerTons1__addDataFileParameter(soap, NULL, NULL, "ns1:addDataFileParameter");
-	case SOAP_TYPE_PointerTons1__getDatafileResponse:
-		return soap_in_PointerTons1__getDatafileResponse(soap, NULL, NULL, "ns1:getDatafileResponse");
-	case SOAP_TYPE_PointerTons1__getDatafile:
-		return soap_in_PointerTons1__getDatafile(soap, NULL, NULL, "ns1:getDatafile");
-	case SOAP_TYPE_PointerTons1__getDatasetIncludesResponse:
-		return soap_in_PointerTons1__getDatasetIncludesResponse(soap, NULL, NULL, "ns1:getDatasetIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getDatasetIncludes:
-		return soap_in_PointerTons1__getDatasetIncludes(soap, NULL, NULL, "ns1:getDatasetIncludes");
-	case SOAP_TYPE_PointerTons1__getDatasetResponse:
-		return soap_in_PointerTons1__getDatasetResponse(soap, NULL, NULL, "ns1:getDatasetResponse");
-	case SOAP_TYPE_PointerTons1__getDataset:
-		return soap_in_PointerTons1__getDataset(soap, NULL, NULL, "ns1:getDataset");
-	case SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse:
-		return soap_in_PointerTons1__getInvestigationIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getInvestigationIncludes:
-		return soap_in_PointerTons1__getInvestigationIncludes(soap, NULL, NULL, "ns1:getInvestigationIncludes");
-	case SOAP_TYPE_PointerTons1__getInvestigationResponse:
-		return soap_in_PointerTons1__getInvestigationResponse(soap, NULL, NULL, "ns1:getInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__getInvestigation:
-		return soap_in_PointerTons1__getInvestigation(soap, NULL, NULL, "ns1:getInvestigation");
-	case SOAP_TYPE_PointerTons1__addInvestigatorResponse:
-		return soap_in_PointerTons1__addInvestigatorResponse(soap, NULL, NULL, "ns1:addInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__addInvestigator:
-		return soap_in_PointerTons1__addInvestigator(soap, NULL, NULL, "ns1:addInvestigator");
-	case SOAP_TYPE_PointerTons1__addKeywordResponse:
-		return soap_in_PointerTons1__addKeywordResponse(soap, NULL, NULL, "ns1:addKeywordResponse");
-	case SOAP_TYPE_PointerTons1__addKeyword:
-		return soap_in_PointerTons1__addKeyword(soap, NULL, NULL, "ns1:addKeyword");
-	case SOAP_TYPE_PointerTons1__addPublicationResponse:
-		return soap_in_PointerTons1__addPublicationResponse(soap, NULL, NULL, "ns1:addPublicationResponse");
-	case SOAP_TYPE_PointerTons1__addPublication:
-		return soap_in_PointerTons1__addPublication(soap, NULL, NULL, "ns1:addPublication");
-	case SOAP_TYPE_PointerTons1__addSampleParameterResponse:
-		return soap_in_PointerTons1__addSampleParameterResponse(soap, NULL, NULL, "ns1:addSampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__addSampleParameter:
-		return soap_in_PointerTons1__addSampleParameter(soap, NULL, NULL, "ns1:addSampleParameter");
-	case SOAP_TYPE_PointerTons1__logoutResponse:
-		return soap_in_PointerTons1__logoutResponse(soap, NULL, NULL, "ns1:logoutResponse");
-	case SOAP_TYPE_PointerTons1__logout:
-		return soap_in_PointerTons1__logout(soap, NULL, NULL, "ns1:logout");
-	case SOAP_TYPE_PointerTons1__addSampleResponse:
-		return soap_in_PointerTons1__addSampleResponse(soap, NULL, NULL, "ns1:addSampleResponse");
-	case SOAP_TYPE_PointerTons1__addSample:
-		return soap_in_PointerTons1__addSample(soap, NULL, NULL, "ns1:addSample");
-	case SOAP_TYPE_PointerTons1__loginLifetimeResponse:
-		return soap_in_PointerTons1__loginLifetimeResponse(soap, NULL, NULL, "ns1:loginLifetimeResponse");
-	case SOAP_TYPE_PointerTons1__loginLifetime:
-		return soap_in_PointerTons1__loginLifetime(soap, NULL, NULL, "ns1:loginLifetime");
-	case SOAP_TYPE_PointerTons1__loginResponse:
-		return soap_in_PointerTons1__loginResponse(soap, NULL, NULL, "ns1:loginResponse");
-	case SOAP_TYPE_PointerTons1__login:
-		return soap_in_PointerTons1__login(soap, NULL, NULL, "ns1:login");
-	case SOAP_TYPE_PointerTons1__ValidationException:
-		return soap_in_PointerTons1__ValidationException(soap, NULL, NULL, "ns1:ValidationException");
-	case SOAP_TYPE_PointerTons1__SessionException:
-		return soap_in_PointerTons1__SessionException(soap, NULL, NULL, "ns1:SessionException");
-	case SOAP_TYPE_PointerTons1__ParameterSearchException:
-		return soap_in_PointerTons1__ParameterSearchException(soap, NULL, NULL, "ns1:ParameterSearchException");
-	case SOAP_TYPE_PointerTons1__NoSuchUserException:
-		return soap_in_PointerTons1__NoSuchUserException(soap, NULL, NULL, "ns1:NoSuchUserException");
-	case SOAP_TYPE_PointerTons1__NoSuchObjectFoundException:
-		return soap_in_PointerTons1__NoSuchObjectFoundException(soap, NULL, NULL, "ns1:NoSuchObjectFoundException");
-	case SOAP_TYPE_PointerTons1__InsufficientPrivilegesException:
-		return soap_in_PointerTons1__InsufficientPrivilegesException(soap, NULL, NULL, "ns1:InsufficientPrivilegesException");
-	case SOAP_TYPE_PointerTons1__ICATAPIException:
-		return soap_in_PointerTons1__ICATAPIException(soap, NULL, NULL, "ns1:ICATAPIException");
-	case SOAP_TYPE_PointerTons1__logicalOperator:
-		return soap_in_PointerTons1__logicalOperator(soap, NULL, NULL, "ns1:logicalOperator");
-	case SOAP_TYPE_PointerTons1__parameterCondition:
-		return soap_in_PointerTons1__parameterCondition(soap, NULL, NULL, "ns1:parameterCondition");
-	case SOAP_TYPE_PointerTons1__shiftPK:
-		return soap_in_PointerTons1__shiftPK(soap, NULL, NULL, "ns1:shiftPK");
-	case SOAP_TYPE_PointerTons1__shift:
-		return soap_in_PointerTons1__shift(soap, NULL, NULL, "ns1:shift");
-	case SOAP_TYPE_PointerTons1__parameterPK:
-		return soap_in_PointerTons1__parameterPK(soap, NULL, NULL, "ns1:parameterPK");
-	case SOAP_TYPE_PointerTons1__parameterValued:
-		return soap_in_PointerTons1__parameterValued(soap, NULL, NULL, "ns1:parameterValued");
-	case SOAP_TYPE_PointerTons1__comparisonOperator:
-		return soap_in_PointerTons1__comparisonOperator(soap, NULL, NULL, "ns1:comparisonOperator");
-	case SOAP_TYPE_PointerTons1__relatedDatafilesPK:
-		return soap_in_PointerTons1__relatedDatafilesPK(soap, NULL, NULL, "ns1:relatedDatafilesPK");
-	case SOAP_TYPE_PointerTons1__datafileFormatPK:
-		return soap_in_PointerTons1__datafileFormatPK(soap, NULL, NULL, "ns1:datafileFormatPK");
-	case SOAP_TYPE_PointerTons1__relatedDatafiles:
-		return soap_in_PointerTons1__relatedDatafiles(soap, NULL, NULL, "ns1:relatedDatafiles");
-	case SOAP_TYPE_PointerTons1__datafileInclude:
-		return soap_in_PointerTons1__datafileInclude(soap, NULL, NULL, "ns1:datafileInclude");
-	case SOAP_TYPE_PointerTons1__parameterValueType:
-		return soap_in_PointerTons1__parameterValueType(soap, NULL, NULL, "ns1:parameterValueType");
-	case SOAP_TYPE_PointerToint:
-		return soap_in_PointerToint(soap, NULL, NULL, "xsd:int");
-	case SOAP_TYPE_PointerTons1__datasetInclude:
-		return soap_in_PointerTons1__datasetInclude(soap, NULL, NULL, "ns1:datasetInclude");
-	case SOAP_TYPE_PointerTons1__datafileFormat:
-		return soap_in_PointerTons1__datafileFormat(soap, NULL, NULL, "ns1:datafileFormat");
-	case SOAP_TYPE_PointerTodouble:
-		return soap_in_PointerTodouble(soap, NULL, NULL, "xsd:double");
-	case SOAP_TYPE_PointerTotime:
-		return soap_in_PointerTotime(soap, NULL, NULL, "xsd:dateTime");
-	case SOAP_TYPE_PointerTons1__advancedSearchDetails:
-		return soap_in_PointerTons1__advancedSearchDetails(soap, NULL, NULL, "ns1:advancedSearchDetails");
-	case SOAP_TYPE_PointerTons1__keyword:
-		return soap_in_PointerTons1__keyword(soap, NULL, NULL, "ns1:keyword");
-	case SOAP_TYPE_PointerTons1__icatAuthorisation:
-		return soap_in_PointerTons1__icatAuthorisation(soap, NULL, NULL, "ns1:icatAuthorisation");
-	case SOAP_TYPE_PointerTons1__elementType:
-		return soap_in_PointerTons1__elementType(soap, NULL, NULL, "ns1:elementType");
-	case SOAP_TYPE_PointerTons1__datasetParameter:
-		return soap_in_PointerTons1__datasetParameter(soap, NULL, NULL, "ns1:datasetParameter");
-	case SOAP_TYPE_PointerTons1__sampleParameterPK:
-		return soap_in_PointerTons1__sampleParameterPK(soap, NULL, NULL, "ns1:sampleParameterPK");
-	case SOAP_TYPE_PointerTons1__investigator:
-		return soap_in_PointerTons1__investigator(soap, NULL, NULL, "ns1:investigator");
-	case SOAP_TYPE_PointerTons1__parameterLogicalCondition:
-		return soap_in_PointerTons1__parameterLogicalCondition(soap, NULL, NULL, "ns1:parameterLogicalCondition");
-	case SOAP_TYPE_PointerTons1__datafileParameterPK:
-		return soap_in_PointerTons1__datafileParameterPK(soap, NULL, NULL, "ns1:datafileParameterPK");
-	case SOAP_TYPE_PointerTons1__publication:
-		return soap_in_PointerTons1__publication(soap, NULL, NULL, "ns1:publication");
-	case SOAP_TYPE_PointerTons1__datasetParameterPK:
-		return soap_in_PointerTons1__datasetParameterPK(soap, NULL, NULL, "ns1:datasetParameterPK");
-	case SOAP_TYPE_PointerTons1__investigationInclude:
-		return soap_in_PointerTons1__investigationInclude(soap, NULL, NULL, "ns1:investigationInclude");
-	case SOAP_TYPE_PointerTons1__keywordDetails:
-		return soap_in_PointerTons1__keywordDetails(soap, NULL, NULL, "ns1:keywordDetails");
-	case SOAP_TYPE_PointerToxsd__anyType:
-		return soap_in_PointerToxsd__anyType(soap, NULL, NULL, "xsd:anyType");
-	case SOAP_TYPE_PointerTons1__downloadInfo:
-		return soap_in_PointerTons1__downloadInfo(soap, NULL, NULL, "ns1:downloadInfo");
-	case SOAP_TYPE_PointerTons1__sampleParameter:
-		return soap_in_PointerTons1__sampleParameter(soap, NULL, NULL, "ns1:sampleParameter");
-	case SOAP_TYPE_PointerTons1__userDetails:
-		return soap_in_PointerTons1__userDetails(soap, NULL, NULL, "ns1:userDetails");
-	case SOAP_TYPE_PointerTons1__keywordType:
-		return soap_in_PointerTons1__keywordType(soap, NULL, NULL, "ns1:keywordType");
-	case SOAP_TYPE_PointerTons1__dataset:
-		return soap_in_PointerTons1__dataset(soap, NULL, NULL, "ns1:dataset");
-	case SOAP_TYPE_PointerTons1__keywordPK:
-		return soap_in_PointerTons1__keywordPK(soap, NULL, NULL, "ns1:keywordPK");
-	case SOAP_TYPE_PointerTons1__investigatorPK:
-		return soap_in_PointerTons1__investigatorPK(soap, NULL, NULL, "ns1:investigatorPK");
-	case SOAP_TYPE_PointerTons1__facilityUser:
-		return soap_in_PointerTons1__facilityUser(soap, NULL, NULL, "ns1:facilityUser");
-	case SOAP_TYPE_PointerTons1__facilityCycle:
-		return soap_in_PointerTons1__facilityCycle(soap, NULL, NULL, "ns1:facilityCycle");
-	case SOAP_TYPE_PointerTons1__datafileParameter:
-		return soap_in_PointerTons1__datafileParameter(soap, NULL, NULL, "ns1:datafileParameter");
-	case SOAP_TYPE_PointerTons1__investigation:
-		return soap_in_PointerTons1__investigation(soap, NULL, NULL, "ns1:investigation");
-	case SOAP_TYPE_PointerTons1__parameterType:
-		return soap_in_PointerTons1__parameterType(soap, NULL, NULL, "ns1:parameterType");
-	case SOAP_TYPE_PointerTons1__parameter:
-		return soap_in_PointerTons1__parameter(soap, NULL, NULL, "ns1:parameter");
-	case SOAP_TYPE_PointerTons1__parameterComparisonCondition:
-		return soap_in_PointerTons1__parameterComparisonCondition(soap, NULL, NULL, "ns1:parameterComparisonCondition");
-	case SOAP_TYPE_PointerTons1__datafile:
-		return soap_in_PointerTons1__datafile(soap, NULL, NULL, "ns1:datafile");
-	case SOAP_TYPE_PointerToLONG64:
-		return soap_in_PointerToLONG64(soap, NULL, NULL, "xsd:long");
-	case SOAP_TYPE_PointerTons1__icatRole:
-		return soap_in_PointerTons1__icatRole(soap, NULL, NULL, "ns1:icatRole");
-	case SOAP_TYPE_PointerTons1__sample:
-		return soap_in_PointerTons1__sample(soap, NULL, NULL, "ns1:sample");
-	case SOAP_TYPE_PointerTostd__string:
-		return soap_in_PointerTostd__string(soap, NULL, NULL, "xsd:string");
-	case SOAP_TYPE__QName:
-	{	char **s;
-		s = soap_in__QName(soap, NULL, NULL, "xsd:QName");
-		return s ? *s : NULL;
-	}
-	case SOAP_TYPE_string:
-	{	char **s;
-		s = soap_in_string(soap, NULL, NULL, "xsd:string");
-		return s ? *s : NULL;
-	}
-	default:
-	{	const char *t = soap->type;
-		if (!*t)
-			t = soap->tag;
-		if (!soap_match_tag(soap, t, "ns1:datasetInclude"))
-		{	*type = SOAP_TYPE_ns1__datasetInclude_;
-			return soap_in_ns1__datasetInclude_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:elementType"))
-		{	*type = SOAP_TYPE_ns1__elementType_;
-			return soap_in_ns1__elementType_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:logicalOperator"))
-		{	*type = SOAP_TYPE_ns1__logicalOperator_;
-			return soap_in_ns1__logicalOperator_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:investigationInclude"))
-		{	*type = SOAP_TYPE_ns1__investigationInclude_;
-			return soap_in_ns1__investigationInclude_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:keywordType"))
-		{	*type = SOAP_TYPE_ns1__keywordType_;
-			return soap_in_ns1__keywordType_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterType"))
-		{	*type = SOAP_TYPE_ns1__parameterType_;
-			return soap_in_ns1__parameterType_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:comparisonOperator"))
-		{	*type = SOAP_TYPE_ns1__comparisonOperator_;
-			return soap_in_ns1__comparisonOperator_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafileInclude"))
-		{	*type = SOAP_TYPE_ns1__datafileInclude_;
-			return soap_in_ns1__datafileInclude_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterValueType"))
-		{	*type = SOAP_TYPE_ns1__parameterValueType_;
-			return soap_in_ns1__parameterValueType_(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatasetsResponse"))
-		{	*type = SOAP_TYPE_ns1__getDatasetsResponse;
-			return soap_in_ns1__getDatasetsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatasets"))
-		{	*type = SOAP_TYPE_ns1__getDatasets;
-			return soap_in_ns1__getDatasets(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listParametersResponse"))
-		{	*type = SOAP_TYPE_ns1__listParametersResponse;
-			return soap_in_ns1__listParametersResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listParameters"))
-		{	*type = SOAP_TYPE_ns1__listParameters;
-			return soap_in_ns1__listParameters(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataFileParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyDataFileParameterResponse;
-			return soap_in_ns1__modifyDataFileParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataFileParameter"))
-		{	*type = SOAP_TYPE_ns1__modifyDataFileParameter;
-			return soap_in_ns1__modifyDataFileParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteSampleParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteSampleParameterResponse;
-			return soap_in_ns1__deleteSampleParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteSampleParameter"))
-		{	*type = SOAP_TYPE_ns1__deleteSampleParameter;
-			return soap_in_ns1__deleteSampleParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataFileParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__addDataFileParameterResponse;
-			return soap_in_ns1__addDataFileParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataFileParameter"))
-		{	*type = SOAP_TYPE_ns1__addDataFileParameter;
-			return soap_in_ns1__addDataFileParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatasetsBySampleResponse"))
-		{	*type = SOAP_TYPE_ns1__searchDatasetsBySampleResponse;
-			return soap_in_ns1__searchDatasetsBySampleResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatasetsBySample"))
-		{	*type = SOAP_TYPE_ns1__searchDatasetsBySample;
-			return soap_in_ns1__searchDatasetsBySample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createInvestigationResponse"))
-		{	*type = SOAP_TYPE_ns1__createInvestigationResponse;
-			return soap_in_ns1__createInvestigationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createInvestigation"))
-		{	*type = SOAP_TYPE_ns1__createInvestigation;
-			return soap_in_ns1__createInvestigation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addPublicationResponse"))
-		{	*type = SOAP_TYPE_ns1__addPublicationResponse;
-			return soap_in_ns1__addPublicationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addPublication"))
-		{	*type = SOAP_TYPE_ns1__addPublication;
-			return soap_in_ns1__addPublication(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataFileParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteDataFileParameterResponse;
-			return soap_in_ns1__deleteDataFileParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataFileParameter"))
-		{	*type = SOAP_TYPE_ns1__deleteDataFileParameter;
-			return soap_in_ns1__deleteDataFileParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getInvestigationResponse"))
-		{	*type = SOAP_TYPE_ns1__getInvestigationResponse;
-			return soap_in_ns1__getInvestigationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getInvestigation"))
-		{	*type = SOAP_TYPE_ns1__getInvestigation;
-			return soap_in_ns1__getInvestigation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getInvestigationIncludesResponse"))
-		{	*type = SOAP_TYPE_ns1__getInvestigationIncludesResponse;
-			return soap_in_ns1__getInvestigationIncludesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getInvestigationIncludes"))
-		{	*type = SOAP_TYPE_ns1__getInvestigationIncludes;
-			return soap_in_ns1__getInvestigationIncludes(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataFileResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyDataFileResponse;
-			return soap_in_ns1__modifyDataFileResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataFile"))
-		{	*type = SOAP_TYPE_ns1__modifyDataFile;
-			return soap_in_ns1__modifyDataFile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatafileResponse"))
-		{	*type = SOAP_TYPE_ns1__getDatafileResponse;
-			return soap_in_ns1__getDatafileResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatafile"))
-		{	*type = SOAP_TYPE_ns1__getDatafile;
-			return soap_in_ns1__getDatafile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:ICATAPIException"))
-		{	*type = SOAP_TYPE_ns1__ICATAPIException;
-			return soap_in_ns1__ICATAPIException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:ingestMetadataResponse"))
-		{	*type = SOAP_TYPE_ns1__ingestMetadataResponse;
-			return soap_in_ns1__ingestMetadataResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:ingestMetadata"))
-		{	*type = SOAP_TYPE_ns1__ingestMetadata;
-			return soap_in_ns1__ingestMetadata(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listRolesResponse"))
-		{	*type = SOAP_TYPE_ns1__listRolesResponse;
-			return soap_in_ns1__listRolesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listRoles"))
-		{	*type = SOAP_TYPE_ns1__listRoles;
-			return soap_in_ns1__listRoles(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatasetResponse"))
-		{	*type = SOAP_TYPE_ns1__getDatasetResponse;
-			return soap_in_ns1__getDatasetResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDataset"))
-		{	*type = SOAP_TYPE_ns1__getDataset;
-			return soap_in_ns1__getDataset(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatasetIncludesResponse"))
-		{	*type = SOAP_TYPE_ns1__getDatasetIncludesResponse;
-			return soap_in_ns1__getDatasetIncludesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatasetIncludes"))
-		{	*type = SOAP_TYPE_ns1__getDatasetIncludes;
-			return soap_in_ns1__getDatasetIncludes(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:updateAuthorisationResponse"))
-		{	*type = SOAP_TYPE_ns1__updateAuthorisationResponse;
-			return soap_in_ns1__updateAuthorisationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:updateAuthorisation"))
-		{	*type = SOAP_TYPE_ns1__updateAuthorisation;
-			return soap_in_ns1__updateAuthorisation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteAuthorisationResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteAuthorisationResponse;
-			return soap_in_ns1__deleteAuthorisationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteAuthorisation"))
-		{	*type = SOAP_TYPE_ns1__deleteAuthorisation;
-			return soap_in_ns1__deleteAuthorisation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deletePublicationResponse"))
-		{	*type = SOAP_TYPE_ns1__deletePublicationResponse;
-			return soap_in_ns1__deletePublicationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deletePublication"))
-		{	*type = SOAP_TYPE_ns1__deletePublication;
-			return soap_in_ns1__deletePublication(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:loginResponse"))
-		{	*type = SOAP_TYPE_ns1__loginResponse;
-			return soap_in_ns1__loginResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:login"))
-		{	*type = SOAP_TYPE_ns1__login;
-			return soap_in_ns1__login(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:loginLifetimeResponse"))
-		{	*type = SOAP_TYPE_ns1__loginLifetimeResponse;
-			return soap_in_ns1__loginLifetimeResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:loginLifetime"))
-		{	*type = SOAP_TYPE_ns1__loginLifetime;
-			return soap_in_ns1__loginLifetime(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addSampleResponse"))
-		{	*type = SOAP_TYPE_ns1__addSampleResponse;
-			return soap_in_ns1__addSampleResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addSample"))
-		{	*type = SOAP_TYPE_ns1__addSample;
-			return soap_in_ns1__addSample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addAuthorisationResponse"))
-		{	*type = SOAP_TYPE_ns1__addAuthorisationResponse;
-			return soap_in_ns1__addAuthorisationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addAuthorisation"))
-		{	*type = SOAP_TYPE_ns1__addAuthorisation;
-			return soap_in_ns1__addAuthorisation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataSetParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__addDataSetParameterResponse;
-			return soap_in_ns1__addDataSetParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataSetParameter"))
-		{	*type = SOAP_TYPE_ns1__addDataSetParameter;
-			return soap_in_ns1__addDataSetParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataFilesResponse"))
-		{	*type = SOAP_TYPE_ns1__createDataFilesResponse;
-			return soap_in_ns1__createDataFilesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataFiles"))
-		{	*type = SOAP_TYPE_ns1__createDataFiles;
-			return soap_in_ns1__createDataFiles(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyInvestigatorResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyInvestigatorResponse;
-			return soap_in_ns1__modifyInvestigatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyInvestigator"))
-		{	*type = SOAP_TYPE_ns1__modifyInvestigator;
-			return soap_in_ns1__modifyInvestigator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparatorResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByParameterComparatorResponse;
-			return soap_in_ns1__searchByParameterComparatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparator"))
-		{	*type = SOAP_TYPE_ns1__searchByParameterComparator;
-			return soap_in_ns1__searchByParameterComparator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifySampleParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__modifySampleParameterResponse;
-			return soap_in_ns1__modifySampleParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifySampleParameter"))
-		{	*type = SOAP_TYPE_ns1__modifySampleParameter;
-			return soap_in_ns1__modifySampleParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listDatafileFormatsResponse"))
-		{	*type = SOAP_TYPE_ns1__listDatafileFormatsResponse;
-			return soap_in_ns1__listDatafileFormatsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listDatafileFormats"))
-		{	*type = SOAP_TYPE_ns1__listDatafileFormats;
-			return soap_in_ns1__listDatafileFormats(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByAdvancedPaginationResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByAdvancedPaginationResponse;
-			return soap_in_ns1__searchByAdvancedPaginationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByAdvancedPagination"))
-		{	*type = SOAP_TYPE_ns1__searchByAdvancedPagination;
-			return soap_in_ns1__searchByAdvancedPagination(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByAdvancedResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByAdvancedResponse;
-			return soap_in_ns1__searchByAdvancedResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:advancedSearchDetails"))
-		{	*type = SOAP_TYPE_ns1__advancedSearchDetails;
-			return soap_in_ns1__advancedSearchDetails(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByAdvanced"))
-		{	*type = SOAP_TYPE_ns1__searchByAdvanced;
-			return soap_in_ns1__searchByAdvanced(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByRunNumberPaginationResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByRunNumberPaginationResponse;
-			return soap_in_ns1__searchByRunNumberPaginationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByRunNumberPagination"))
-		{	*type = SOAP_TYPE_ns1__searchByRunNumberPagination;
-			return soap_in_ns1__searchByRunNumberPagination(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByRunNumberResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByRunNumberResponse;
-			return soap_in_ns1__searchByRunNumberResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByRunNumber"))
-		{	*type = SOAP_TYPE_ns1__searchByRunNumber;
-			return soap_in_ns1__searchByRunNumber(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataSetParametersResponse"))
-		{	*type = SOAP_TYPE_ns1__addDataSetParametersResponse;
-			return soap_in_ns1__addDataSetParametersResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataSetParameters"))
-		{	*type = SOAP_TYPE_ns1__addDataSetParameters;
-			return soap_in_ns1__addDataSetParameters(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteKeywordResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteKeywordResponse;
-			return soap_in_ns1__deleteKeywordResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteKeyword"))
-		{	*type = SOAP_TYPE_ns1__deleteKeyword;
-			return soap_in_ns1__deleteKeyword(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteSampleResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteSampleResponse;
-			return soap_in_ns1__deleteSampleResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteSample"))
-		{	*type = SOAP_TYPE_ns1__deleteSample;
-			return soap_in_ns1__deleteSample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listDatasetStatusResponse"))
-		{	*type = SOAP_TYPE_ns1__listDatasetStatusResponse;
-			return soap_in_ns1__listDatasetStatusResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listDatasetStatus"))
-		{	*type = SOAP_TYPE_ns1__listDatasetStatus;
-			return soap_in_ns1__listDatasetStatus(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyInvestigationResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyInvestigationResponse;
-			return soap_in_ns1__modifyInvestigationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyInvestigation"))
-		{	*type = SOAP_TYPE_ns1__modifyInvestigation;
-			return soap_in_ns1__modifyInvestigation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addKeywordResponse"))
-		{	*type = SOAP_TYPE_ns1__addKeywordResponse;
-			return soap_in_ns1__addKeywordResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addKeyword"))
-		{	*type = SOAP_TYPE_ns1__addKeyword;
-			return soap_in_ns1__addKeyword(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:icatAuthorisation"))
-		{	*type = SOAP_TYPE_ns1__icatAuthorisation;
-			return soap_in_ns1__icatAuthorisation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getAuthorisationsResponse"))
-		{	*type = SOAP_TYPE_ns1__getAuthorisationsResponse;
-			return soap_in_ns1__getAuthorisationsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getAuthorisations"))
-		{	*type = SOAP_TYPE_ns1__getAuthorisations;
-			return soap_in_ns1__getAuthorisations(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataSetResponse"))
-		{	*type = SOAP_TYPE_ns1__removeDataSetResponse;
-			return soap_in_ns1__removeDataSetResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataSet"))
-		{	*type = SOAP_TYPE_ns1__removeDataSet;
-			return soap_in_ns1__removeDataSet(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataSetParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyDataSetParameterResponse;
-			return soap_in_ns1__modifyDataSetParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataSetParameter"))
-		{	*type = SOAP_TYPE_ns1__modifyDataSetParameter;
-			return soap_in_ns1__modifyDataSetParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listInvestigationTypesResponse"))
-		{	*type = SOAP_TYPE_ns1__listInvestigationTypesResponse;
-			return soap_in_ns1__listInvestigationTypesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listInvestigationTypes"))
-		{	*type = SOAP_TYPE_ns1__listInvestigationTypes;
-			return soap_in_ns1__listInvestigationTypes(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserTypeResponse"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserTypeResponse;
-			return soap_in_ns1__getKeywordsForUserTypeResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserType"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserType;
-			return soap_in_ns1__getKeywordsForUserType(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserMaxResponse"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserMaxResponse;
-			return soap_in_ns1__getKeywordsForUserMaxResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserMax"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserMax;
-			return soap_in_ns1__getKeywordsForUserMax(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserStartWithMaxResponse"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse;
-			return soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserStartWithMax"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMax;
-			return soap_in_ns1__getKeywordsForUserStartWithMax(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserResponse"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUserResponse;
-			return soap_in_ns1__getKeywordsForUserResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUser"))
-		{	*type = SOAP_TYPE_ns1__getKeywordsForUser;
-			return soap_in_ns1__getKeywordsForUser(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadDatafileResponse"))
-		{	*type = SOAP_TYPE_ns1__downloadDatafileResponse;
-			return soap_in_ns1__downloadDatafileResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadDatafile"))
-		{	*type = SOAP_TYPE_ns1__downloadDatafile;
-			return soap_in_ns1__downloadDatafile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparatorsResponse"))
-		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse;
-			return soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparators"))
-		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparators;
-			return soap_in_ns1__searchDatasetsByParameterComparators(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:setDataSetSampleResponse"))
-		{	*type = SOAP_TYPE_ns1__setDataSetSampleResponse;
-			return soap_in_ns1__setDataSetSampleResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:setDataSetSample"))
-		{	*type = SOAP_TYPE_ns1__setDataSetSample;
-			return soap_in_ns1__setDataSetSample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataSetParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteDataSetParameterResponse;
-			return soap_in_ns1__deleteDataSetParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataSetParameter"))
-		{	*type = SOAP_TYPE_ns1__deleteDataSetParameter;
-			return soap_in_ns1__deleteDataSetParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeSampleParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__removeSampleParameterResponse;
-			return soap_in_ns1__removeSampleParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeSampleParameter"))
-		{	*type = SOAP_TYPE_ns1__removeSampleParameter;
-			return soap_in_ns1__removeSampleParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparatorResponse"))
-		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse;
-			return soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparator"))
-		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparator;
-			return soap_in_ns1__searchDatasetsByParameterComparator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataSetResponse"))
-		{	*type = SOAP_TYPE_ns1__createDataSetResponse;
-			return soap_in_ns1__createDataSetResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataSet"))
-		{	*type = SOAP_TYPE_ns1__createDataSet;
-			return soap_in_ns1__createDataSet(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addInvestigatorResponse"))
-		{	*type = SOAP_TYPE_ns1__addInvestigatorResponse;
-			return soap_in_ns1__addInvestigatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addInvestigator"))
-		{	*type = SOAP_TYPE_ns1__addInvestigator;
-			return soap_in_ns1__addInvestigator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteInvestigatorResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteInvestigatorResponse;
-			return soap_in_ns1__deleteInvestigatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteInvestigator"))
-		{	*type = SOAP_TYPE_ns1__deleteInvestigator;
-			return soap_in_ns1__deleteInvestigator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getICATAPIVersionResponse"))
-		{	*type = SOAP_TYPE_ns1__getICATAPIVersionResponse;
-			return soap_in_ns1__getICATAPIVersionResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getICATAPIVersion"))
-		{	*type = SOAP_TYPE_ns1__getICATAPIVersion;
-			return soap_in_ns1__getICATAPIVersion(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatafilesResponse"))
-		{	*type = SOAP_TYPE_ns1__getDatafilesResponse;
-			return soap_in_ns1__getDatafilesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getDatafiles"))
-		{	*type = SOAP_TYPE_ns1__getDatafiles;
-			return soap_in_ns1__getDatafiles(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByParameterOperatorResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByParameterOperatorResponse;
-			return soap_in_ns1__searchByParameterOperatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterLogicalCondition"))
-		{	*type = SOAP_TYPE_ns1__parameterLogicalCondition;
-			return soap_in_ns1__parameterLogicalCondition(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByParameterOperator"))
-		{	*type = SOAP_TYPE_ns1__searchByParameterOperator;
-			return soap_in_ns1__searchByParameterOperator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:isSessionValidResponse"))
-		{	*type = SOAP_TYPE_ns1__isSessionValidResponse;
-			return soap_in_ns1__isSessionValidResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:isSessionValid"))
-		{	*type = SOAP_TYPE_ns1__isSessionValid;
-			return soap_in_ns1__isSessionValid(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataSetResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteDataSetResponse;
-			return soap_in_ns1__deleteDataSetResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataSet"))
-		{	*type = SOAP_TYPE_ns1__deleteDataSet;
-			return soap_in_ns1__deleteDataSet(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparatorResponse"))
-		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse;
-			return soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparator"))
-		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparator;
-			return soap_in_ns1__searchDatafilesByParameterComparator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getInvestigationsIncludesResponse"))
-		{	*type = SOAP_TYPE_ns1__getInvestigationsIncludesResponse;
-			return soap_in_ns1__getInvestigationsIncludesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getInvestigationsIncludes"))
-		{	*type = SOAP_TYPE_ns1__getInvestigationsIncludes;
-			return soap_in_ns1__getInvestigationsIncludes(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataFileParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__removeDataFileParameterResponse;
-			return soap_in_ns1__removeDataFileParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataFileParameter"))
-		{	*type = SOAP_TYPE_ns1__removeDataFileParameter;
-			return soap_in_ns1__removeDataFileParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserIDPaginationResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByUserIDPaginationResponse;
-			return soap_in_ns1__searchByUserIDPaginationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserIDPagination"))
-		{	*type = SOAP_TYPE_ns1__searchByUserIDPagination;
-			return soap_in_ns1__searchByUserIDPagination(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserIDResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByUserIDResponse;
-			return soap_in_ns1__searchByUserIDResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserID"))
-		{	*type = SOAP_TYPE_ns1__searchByUserID;
-			return soap_in_ns1__searchByUserID(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyPublicationResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyPublicationResponse;
-			return soap_in_ns1__modifyPublicationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyPublication"))
-		{	*type = SOAP_TYPE_ns1__modifyPublication;
-			return soap_in_ns1__modifyPublication(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataSetParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__removeDataSetParameterResponse;
-			return soap_in_ns1__removeDataSetParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataSetParameter"))
-		{	*type = SOAP_TYPE_ns1__removeDataSetParameter;
-			return soap_in_ns1__removeDataSetParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludesPaginationResponse"))
-		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse;
-			return soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludesPagination"))
-		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination;
-			return soap_in_ns1__getMyInvestigationsIncludesPagination(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludesResponse"))
-		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse;
-			return soap_in_ns1__getMyInvestigationsIncludesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludes"))
-		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludes;
-			return soap_in_ns1__getMyInvestigationsIncludes(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsResponse"))
-		{	*type = SOAP_TYPE_ns1__getMyInvestigationsResponse;
-			return soap_in_ns1__getMyInvestigationsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getMyInvestigations"))
-		{	*type = SOAP_TYPE_ns1__getMyInvestigations;
-			return soap_in_ns1__getMyInvestigations(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByKeywordsAllResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByKeywordsAllResponse;
-			return soap_in_ns1__searchByKeywordsAllResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:keywordDetails"))
-		{	*type = SOAP_TYPE_ns1__keywordDetails;
-			return soap_in_ns1__keywordDetails(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByKeywordsAll"))
-		{	*type = SOAP_TYPE_ns1__searchByKeywordsAll;
-			return soap_in_ns1__searchByKeywordsAll(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByKeywordsResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByKeywordsResponse;
-			return soap_in_ns1__searchByKeywordsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByKeywords"))
-		{	*type = SOAP_TYPE_ns1__searchByKeywords;
-			return soap_in_ns1__searchByKeywords(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:checkDatasetDownloadAccessResponse"))
-		{	*type = SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse;
-			return soap_in_ns1__checkDatasetDownloadAccessResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:checkDatasetDownloadAccess"))
-		{	*type = SOAP_TYPE_ns1__checkDatasetDownloadAccess;
-			return soap_in_ns1__checkDatasetDownloadAccess(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserSurnamePaginationResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse;
-			return soap_in_ns1__searchByUserSurnamePaginationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserSurnamePagination"))
-		{	*type = SOAP_TYPE_ns1__searchByUserSurnamePagination;
-			return soap_in_ns1__searchByUserSurnamePagination(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserSurnameResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByUserSurnameResponse;
-			return soap_in_ns1__searchByUserSurnameResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByUserSurname"))
-		{	*type = SOAP_TYPE_ns1__searchByUserSurname;
-			return soap_in_ns1__searchByUserSurname(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataFileResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteDataFileResponse;
-			return soap_in_ns1__deleteDataFileResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteDataFile"))
-		{	*type = SOAP_TYPE_ns1__deleteDataFile;
-			return soap_in_ns1__deleteDataFile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadInfo"))
-		{	*type = SOAP_TYPE_ns1__downloadInfo;
-			return soap_in_ns1__downloadInfo(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:checkDatafileDownloadAccessResponse"))
-		{	*type = SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse;
-			return soap_in_ns1__checkDatafileDownloadAccessResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:checkDatafileDownloadAccess"))
-		{	*type = SOAP_TYPE_ns1__checkDatafileDownloadAccess;
-			return soap_in_ns1__checkDatafileDownloadAccess(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFacilityUserIdResponse"))
-		{	*type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse;
-			return soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFacilityUserId"))
-		{	*type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserId;
-			return soap_in_ns1__getFacilityUserByFacilityUserId(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addSampleParameterResponse"))
-		{	*type = SOAP_TYPE_ns1__addSampleParameterResponse;
-			return soap_in_ns1__addSampleParameterResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addSampleParameter"))
-		{	*type = SOAP_TYPE_ns1__addSampleParameter;
-			return soap_in_ns1__addSampleParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataSetResponse"))
-		{	*type = SOAP_TYPE_ns1__modifyDataSetResponse;
-			return soap_in_ns1__modifyDataSetResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifyDataSet"))
-		{	*type = SOAP_TYPE_ns1__modifyDataSet;
-			return soap_in_ns1__modifyDataSet(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadDatafilesResponse"))
-		{	*type = SOAP_TYPE_ns1__downloadDatafilesResponse;
-			return soap_in_ns1__downloadDatafilesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadDatafiles"))
-		{	*type = SOAP_TYPE_ns1__downloadDatafiles;
-			return soap_in_ns1__downloadDatafiles(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:NoSuchUserException"))
-		{	*type = SOAP_TYPE_ns1__NoSuchUserException;
-			return soap_in_ns1__NoSuchUserException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:userDetails"))
-		{	*type = SOAP_TYPE_ns1__userDetails;
-			return soap_in_ns1__userDetails(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getUserDetailsResponse"))
-		{	*type = SOAP_TYPE_ns1__getUserDetailsResponse;
-			return soap_in_ns1__getUserDetailsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getUserDetails"))
-		{	*type = SOAP_TYPE_ns1__getUserDetails;
-			return soap_in_ns1__getUserDetails(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getAllKeywordsResponse"))
-		{	*type = SOAP_TYPE_ns1__getAllKeywordsResponse;
-			return soap_in_ns1__getAllKeywordsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getAllKeywords"))
-		{	*type = SOAP_TYPE_ns1__getAllKeywords;
-			return soap_in_ns1__getAllKeywords(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removePublicationResponse"))
-		{	*type = SOAP_TYPE_ns1__removePublicationResponse;
-			return soap_in_ns1__removePublicationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removePublication"))
-		{	*type = SOAP_TYPE_ns1__removePublication;
-			return soap_in_ns1__removePublication(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataSetsResponse"))
-		{	*type = SOAP_TYPE_ns1__createDataSetsResponse;
-			return soap_in_ns1__createDataSetsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataSets"))
-		{	*type = SOAP_TYPE_ns1__createDataSets;
-			return soap_in_ns1__createDataSets(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteInvestigationResponse"))
-		{	*type = SOAP_TYPE_ns1__deleteInvestigationResponse;
-			return soap_in_ns1__deleteInvestigationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:deleteInvestigation"))
-		{	*type = SOAP_TYPE_ns1__deleteInvestigation;
-			return soap_in_ns1__deleteInvestigation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeKeywordResponse"))
-		{	*type = SOAP_TYPE_ns1__removeKeywordResponse;
-			return soap_in_ns1__removeKeywordResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeKeyword"))
-		{	*type = SOAP_TYPE_ns1__removeKeyword;
-			return soap_in_ns1__removeKeyword(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeInvestigatorResponse"))
-		{	*type = SOAP_TYPE_ns1__removeInvestigatorResponse;
-			return soap_in_ns1__removeInvestigatorResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeInvestigator"))
-		{	*type = SOAP_TYPE_ns1__removeInvestigator;
-			return soap_in_ns1__removeInvestigator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeInvestigationResponse"))
-		{	*type = SOAP_TYPE_ns1__removeInvestigationResponse;
-			return soap_in_ns1__removeInvestigationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeInvestigation"))
-		{	*type = SOAP_TYPE_ns1__removeInvestigation;
-			return soap_in_ns1__removeInvestigation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFederalIdResponse"))
-		{	*type = SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse;
-			return soap_in_ns1__getFacilityUserByFederalIdResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFederalId"))
-		{	*type = SOAP_TYPE_ns1__getFacilityUserByFederalId;
-			return soap_in_ns1__getFacilityUserByFederalId(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadDatasetResponse"))
-		{	*type = SOAP_TYPE_ns1__downloadDatasetResponse;
-			return soap_in_ns1__downloadDatasetResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:downloadDataset"))
-		{	*type = SOAP_TYPE_ns1__downloadDataset;
-			return soap_in_ns1__downloadDataset(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:logoutResponse"))
-		{	*type = SOAP_TYPE_ns1__logoutResponse;
-			return soap_in_ns1__logoutResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:logout"))
-		{	*type = SOAP_TYPE_ns1__logout;
-			return soap_in_ns1__logout(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listFacilityCyclesResponse"))
-		{	*type = SOAP_TYPE_ns1__listFacilityCyclesResponse;
-			return soap_in_ns1__listFacilityCyclesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listFacilityCycles"))
-		{	*type = SOAP_TYPE_ns1__listFacilityCycles;
-			return soap_in_ns1__listFacilityCycles(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataFileParametersResponse"))
-		{	*type = SOAP_TYPE_ns1__addDataFileParametersResponse;
-			return soap_in_ns1__addDataFileParametersResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:addDataFileParameters"))
-		{	*type = SOAP_TYPE_ns1__addDataFileParameters;
-			return soap_in_ns1__addDataFileParameters(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeAuthorisationResponse"))
-		{	*type = SOAP_TYPE_ns1__removeAuthorisationResponse;
-			return soap_in_ns1__removeAuthorisationResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeAuthorisation"))
-		{	*type = SOAP_TYPE_ns1__removeAuthorisation;
-			return soap_in_ns1__removeAuthorisation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataFileResponse"))
-		{	*type = SOAP_TYPE_ns1__removeDataFileResponse;
-			return soap_in_ns1__removeDataFileResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeDataFile"))
-		{	*type = SOAP_TYPE_ns1__removeDataFile;
-			return soap_in_ns1__removeDataFile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparatorsResponse"))
-		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse;
-			return soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparators"))
-		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparators;
-			return soap_in_ns1__searchDatafilesByParameterComparators(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:ParameterSearchException"))
-		{	*type = SOAP_TYPE_ns1__ParameterSearchException;
-			return soap_in_ns1__ParameterSearchException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:shiftPK"))
-		{	*type = SOAP_TYPE_ns1__shiftPK;
-			return soap_in_ns1__shiftPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:shift"))
-		{	*type = SOAP_TYPE_ns1__shift;
-			return soap_in_ns1__shift(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:publication"))
-		{	*type = SOAP_TYPE_ns1__publication;
-			return soap_in_ns1__publication(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:keywordPK"))
-		{	*type = SOAP_TYPE_ns1__keywordPK;
-			return soap_in_ns1__keywordPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:keyword"))
-		{	*type = SOAP_TYPE_ns1__keyword;
-			return soap_in_ns1__keyword(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:investigatorPK"))
-		{	*type = SOAP_TYPE_ns1__investigatorPK;
-			return soap_in_ns1__investigatorPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:facilityUser"))
-		{	*type = SOAP_TYPE_ns1__facilityUser;
-			return soap_in_ns1__facilityUser(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:investigator"))
-		{	*type = SOAP_TYPE_ns1__investigator;
-			return soap_in_ns1__investigator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:facilityCycle"))
-		{	*type = SOAP_TYPE_ns1__facilityCycle;
-			return soap_in_ns1__facilityCycle(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datasetParameterPK"))
-		{	*type = SOAP_TYPE_ns1__datasetParameterPK;
-			return soap_in_ns1__datasetParameterPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datasetParameter"))
-		{	*type = SOAP_TYPE_ns1__datasetParameter;
-			return soap_in_ns1__datasetParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:dataset"))
-		{	*type = SOAP_TYPE_ns1__dataset;
-			return soap_in_ns1__dataset(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:investigation"))
-		{	*type = SOAP_TYPE_ns1__investigation;
-			return soap_in_ns1__investigation(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparatorsResponse"))
-		{	*type = SOAP_TYPE_ns1__searchByParameterComparatorsResponse;
-			return soap_in_ns1__searchByParameterComparatorsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterPK"))
-		{	*type = SOAP_TYPE_ns1__parameterPK;
-			return soap_in_ns1__parameterPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameter"))
-		{	*type = SOAP_TYPE_ns1__parameter;
-			return soap_in_ns1__parameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterValued"))
-		{	*type = SOAP_TYPE_ns1__parameterValued;
-			return soap_in_ns1__parameterValued(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterCondition"))
-		{	*type = SOAP_TYPE_ns1__parameterCondition;
-			return soap_in_ns1__parameterCondition(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterComparisonCondition"))
-		{	*type = SOAP_TYPE_ns1__parameterComparisonCondition;
-			return soap_in_ns1__parameterComparisonCondition(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparators"))
-		{	*type = SOAP_TYPE_ns1__searchByParameterComparators;
-			return soap_in_ns1__searchByParameterComparators(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifySampleResponse"))
-		{	*type = SOAP_TYPE_ns1__modifySampleResponse;
-			return soap_in_ns1__modifySampleResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:modifySample"))
-		{	*type = SOAP_TYPE_ns1__modifySample;
-			return soap_in_ns1__modifySample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:ValidationException"))
-		{	*type = SOAP_TYPE_ns1__ValidationException;
-			return soap_in_ns1__ValidationException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataFileResponse"))
-		{	*type = SOAP_TYPE_ns1__createDataFileResponse;
-			return soap_in_ns1__createDataFileResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:relatedDatafilesPK"))
-		{	*type = SOAP_TYPE_ns1__relatedDatafilesPK;
-			return soap_in_ns1__relatedDatafilesPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:relatedDatafiles"))
-		{	*type = SOAP_TYPE_ns1__relatedDatafiles;
-			return soap_in_ns1__relatedDatafiles(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafileParameterPK"))
-		{	*type = SOAP_TYPE_ns1__datafileParameterPK;
-			return soap_in_ns1__datafileParameterPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafileParameter"))
-		{	*type = SOAP_TYPE_ns1__datafileParameter;
-			return soap_in_ns1__datafileParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafileFormatPK"))
-		{	*type = SOAP_TYPE_ns1__datafileFormatPK;
-			return soap_in_ns1__datafileFormatPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafileFormat"))
-		{	*type = SOAP_TYPE_ns1__datafileFormat;
-			return soap_in_ns1__datafileFormat(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafile"))
-		{	*type = SOAP_TYPE_ns1__datafile;
-			return soap_in_ns1__datafile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:createDataFile"))
-		{	*type = SOAP_TYPE_ns1__createDataFile;
-			return soap_in_ns1__createDataFile(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listInstrumentsResponse"))
-		{	*type = SOAP_TYPE_ns1__listInstrumentsResponse;
-			return soap_in_ns1__listInstrumentsResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listInstruments"))
-		{	*type = SOAP_TYPE_ns1__listInstruments;
-			return soap_in_ns1__listInstruments(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:NoSuchObjectFoundException"))
-		{	*type = SOAP_TYPE_ns1__NoSuchObjectFoundException;
-			return soap_in_ns1__NoSuchObjectFoundException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:InsufficientPrivilegesException"))
-		{	*type = SOAP_TYPE_ns1__InsufficientPrivilegesException;
-			return soap_in_ns1__InsufficientPrivilegesException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeSampleResponse"))
-		{	*type = SOAP_TYPE_ns1__removeSampleResponse;
-			return soap_in_ns1__removeSampleResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:removeSample"))
-		{	*type = SOAP_TYPE_ns1__removeSample;
-			return soap_in_ns1__removeSample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:icatRole"))
-		{	*type = SOAP_TYPE_ns1__icatRole;
-			return soap_in_ns1__icatRole(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:entityPrimaryKeyBaseBean"))
-		{	*type = SOAP_TYPE_ns1__entityPrimaryKeyBaseBean;
-			return soap_in_ns1__entityPrimaryKeyBaseBean(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:sampleParameterPK"))
-		{	*type = SOAP_TYPE_ns1__sampleParameterPK;
-			return soap_in_ns1__sampleParameterPK(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:sampleParameter"))
-		{	*type = SOAP_TYPE_ns1__sampleParameter;
-			return soap_in_ns1__sampleParameter(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:entityBaseBean"))
-		{	*type = SOAP_TYPE_ns1__entityBaseBean;
-			return soap_in_ns1__entityBaseBean(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:sample"))
-		{	*type = SOAP_TYPE_ns1__sample;
-			return soap_in_ns1__sample(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchSamplesBySampleNameResponse"))
-		{	*type = SOAP_TYPE_ns1__searchSamplesBySampleNameResponse;
-			return soap_in_ns1__searchSamplesBySampleNameResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:searchSamplesBySampleName"))
-		{	*type = SOAP_TYPE_ns1__searchSamplesBySampleName;
-			return soap_in_ns1__searchSamplesBySampleName(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:SessionException"))
-		{	*type = SOAP_TYPE_ns1__SessionException;
-			return soap_in_ns1__SessionException(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listDatasetTypesResponse"))
-		{	*type = SOAP_TYPE_ns1__listDatasetTypesResponse;
-			return soap_in_ns1__listDatasetTypesResponse(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:listDatasetTypes"))
-		{	*type = SOAP_TYPE_ns1__listDatasetTypes;
-			return soap_in_ns1__listDatasetTypes(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:string"))
-		{	*type = SOAP_TYPE_std__string;
-			return soap_in_std__string(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:string"))
-		{	*type = SOAP_TYPE_xsd__string;
-			return soap_in_xsd__string(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:long"))
-		{	*type = SOAP_TYPE_xsd__long;
-			return soap_in_xsd__long(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:int"))
-		{	*type = SOAP_TYPE_xsd__int;
-			return soap_in_xsd__int(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:float"))
-		{	*type = SOAP_TYPE_xsd__float;
-			return soap_in_xsd__float(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:double"))
-		{	*type = SOAP_TYPE_xsd__double;
-			return soap_in_xsd__double(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:dateTime"))
-		{	*type = SOAP_TYPE_xsd__dateTime;
-			return soap_in_xsd__dateTime(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:boolean"))
-		{	*type = SOAP_TYPE_xsd__boolean;
-			return soap_in_xsd__boolean(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:anyType"))
-		{	*type = SOAP_TYPE_xsd__anyType;
-			return soap_in_xsd__anyType(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:byte"))
-		{	*type = SOAP_TYPE_byte;
-			return soap_in_byte(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:int"))
-		{	*type = SOAP_TYPE_int;
-			return soap_in_int(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:long"))
-		{	*type = SOAP_TYPE_LONG64;
-			return soap_in_LONG64(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:float"))
-		{	*type = SOAP_TYPE_float;
-			return soap_in_float(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:double"))
-		{	*type = SOAP_TYPE_double;
-			return soap_in_double(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:dateTime"))
-		{	*type = SOAP_TYPE_time;
-			return soap_in_time(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datasetInclude"))
-		{	*type = SOAP_TYPE_ns1__datasetInclude;
-			return soap_in_ns1__datasetInclude(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:elementType"))
-		{	*type = SOAP_TYPE_ns1__elementType;
-			return soap_in_ns1__elementType(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:logicalOperator"))
-		{	*type = SOAP_TYPE_ns1__logicalOperator;
-			return soap_in_ns1__logicalOperator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:investigationInclude"))
-		{	*type = SOAP_TYPE_ns1__investigationInclude;
-			return soap_in_ns1__investigationInclude(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:keywordType"))
-		{	*type = SOAP_TYPE_ns1__keywordType;
-			return soap_in_ns1__keywordType(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterType"))
-		{	*type = SOAP_TYPE_ns1__parameterType;
-			return soap_in_ns1__parameterType(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:comparisonOperator"))
-		{	*type = SOAP_TYPE_ns1__comparisonOperator;
-			return soap_in_ns1__comparisonOperator(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:datafileInclude"))
-		{	*type = SOAP_TYPE_ns1__datafileInclude;
-			return soap_in_ns1__datafileInclude(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "ns1:parameterValueType"))
-		{	*type = SOAP_TYPE_ns1__parameterValueType;
-			return soap_in_ns1__parameterValueType(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:boolean"))
-		{	*type = SOAP_TYPE_bool;
-			return soap_in_bool(soap, NULL, NULL, NULL);
-		}
-		if (!soap_match_tag(soap, t, "xsd:QName"))
-		{	char **s;
-			*type = SOAP_TYPE__QName;
-			s = soap_in__QName(soap, NULL, NULL, NULL);
-			return s ? *s : NULL;
-		}
-		if (!soap_match_tag(soap, t, "xsd:string"))
-		{	char **s;
-			*type = SOAP_TYPE_string;
-			s = soap_in_string(soap, NULL, NULL, NULL);
-			return s ? *s : NULL;
-		}
-		t = soap->tag;
-	}
-	}
-	soap->error = SOAP_TAG_MISMATCH;
-	return NULL;
-}
-
-#ifdef __cplusplus
-}
-#endif
-#endif
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap)
-{
-	if (!soap_peek_element(soap))
-	{	int t;
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Unexpected element '%s' in input (level=%u, %d)\n", soap->tag, soap->level, soap->body));
-		if (soap->mustUnderstand && !soap->other)
-			return soap->error = SOAP_MUSTUNDERSTAND;
-		if (((soap->mode & SOAP_XML_STRICT) && soap->part != SOAP_IN_HEADER) || !soap_match_tag(soap, soap->tag, "SOAP-ENV:"))
-		{	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "REJECTING element '%s'\n", soap->tag));
-			return soap->error = SOAP_TAG_MISMATCH;
-		}
-		if (!*soap->id || !soap_getelement(soap, &t))
-		{	soap->peeked = 0;
-			if (soap->fignore)
-				soap->error = soap->fignore(soap, soap->tag);
-			else
-				soap->error = SOAP_OK;
-			DBGLOG(TEST, if (!soap->error) SOAP_MESSAGE(fdebug, "IGNORING element '%s'\n", soap->tag));
-			if (!soap->error && soap->body)
-			{	soap->level++;
-				while (!soap_ignore_element(soap))
-					;
-				if (soap->error == SOAP_NO_TAG)
-					soap->error = soap_element_end_in(soap, NULL);
-			}
-		}
-	}
-	return soap->error;
-}
-
-#ifndef WITH_NOIDREF
-SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap *soap)
-{
-	int i;
-	struct soap_plist *pp;
-	if (soap->version == 1 && soap->encodingStyle && !(soap->mode & (SOAP_XML_TREE | SOAP_XML_GRAPH)))
-		for (i = 0; i < SOAP_PTRHASH; i++)
-			for (pp = soap->pht[i]; pp; pp = pp->next)
-				if (pp->mark1 == 2 || pp->mark2 == 2)
-					if (soap_putelement(soap, pp->ptr, "id", pp->id, pp->type))
-						return soap->error;
-	return SOAP_OK;
-}
-#endif
-
-#ifndef WITH_NOIDREF
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type)
-{
-	switch (type)
-	{
-	case SOAP_TYPE_byte:
-		return soap_out_byte(soap, tag, id, (const char *)ptr, "xsd:byte");
-	case SOAP_TYPE_int:
-		return soap_out_int(soap, tag, id, (const int *)ptr, "xsd:int");
-	case SOAP_TYPE_LONG64:
-		return soap_out_LONG64(soap, tag, id, (const LONG64 *)ptr, "xsd:long");
-	case SOAP_TYPE_float:
-		return soap_out_float(soap, tag, id, (const float *)ptr, "xsd:float");
-	case SOAP_TYPE_double:
-		return soap_out_double(soap, tag, id, (const double *)ptr, "xsd:double");
-	case SOAP_TYPE_time:
-		return soap_out_time(soap, tag, id, (const time_t *)ptr, "xsd:dateTime");
-	case SOAP_TYPE_ns1__datasetInclude:
-		return soap_out_ns1__datasetInclude(soap, tag, id, (const enum ns1__datasetInclude *)ptr, "ns1:datasetInclude");
-	case SOAP_TYPE_ns1__elementType:
-		return soap_out_ns1__elementType(soap, tag, id, (const enum ns1__elementType *)ptr, "ns1:elementType");
-	case SOAP_TYPE_ns1__logicalOperator:
-		return soap_out_ns1__logicalOperator(soap, tag, id, (const enum ns1__logicalOperator *)ptr, "ns1:logicalOperator");
-	case SOAP_TYPE_ns1__investigationInclude:
-		return soap_out_ns1__investigationInclude(soap, tag, id, (const enum ns1__investigationInclude *)ptr, "ns1:investigationInclude");
-	case SOAP_TYPE_ns1__keywordType:
-		return soap_out_ns1__keywordType(soap, tag, id, (const enum ns1__keywordType *)ptr, "ns1:keywordType");
-	case SOAP_TYPE_ns1__parameterType:
-		return soap_out_ns1__parameterType(soap, tag, id, (const enum ns1__parameterType *)ptr, "ns1:parameterType");
-	case SOAP_TYPE_ns1__comparisonOperator:
-		return soap_out_ns1__comparisonOperator(soap, tag, id, (const enum ns1__comparisonOperator *)ptr, "ns1:comparisonOperator");
-	case SOAP_TYPE_ns1__datafileInclude:
-		return soap_out_ns1__datafileInclude(soap, tag, id, (const enum ns1__datafileInclude *)ptr, "ns1:datafileInclude");
-	case SOAP_TYPE_ns1__parameterValueType:
-		return soap_out_ns1__parameterValueType(soap, tag, id, (const enum ns1__parameterValueType *)ptr, "ns1:parameterValueType");
-	case SOAP_TYPE_bool:
-		return soap_out_bool(soap, tag, id, (const bool *)ptr, "xsd:boolean");
-	case SOAP_TYPE_ns1__datasetInclude_:
-		return ((ns1__datasetInclude_ *)ptr)->soap_out(soap, tag, id, "ns1:datasetInclude");
-	case SOAP_TYPE_ns1__elementType_:
-		return ((ns1__elementType_ *)ptr)->soap_out(soap, tag, id, "ns1:elementType");
-	case SOAP_TYPE_ns1__logicalOperator_:
-		return ((ns1__logicalOperator_ *)ptr)->soap_out(soap, tag, id, "ns1:logicalOperator");
-	case SOAP_TYPE_ns1__investigationInclude_:
-		return ((ns1__investigationInclude_ *)ptr)->soap_out(soap, tag, id, "ns1:investigationInclude");
-	case SOAP_TYPE_ns1__keywordType_:
-		return ((ns1__keywordType_ *)ptr)->soap_out(soap, tag, id, "ns1:keywordType");
-	case SOAP_TYPE_ns1__parameterType_:
-		return ((ns1__parameterType_ *)ptr)->soap_out(soap, tag, id, "ns1:parameterType");
-	case SOAP_TYPE_ns1__comparisonOperator_:
-		return ((ns1__comparisonOperator_ *)ptr)->soap_out(soap, tag, id, "ns1:comparisonOperator");
-	case SOAP_TYPE_ns1__datafileInclude_:
-		return ((ns1__datafileInclude_ *)ptr)->soap_out(soap, tag, id, "ns1:datafileInclude");
-	case SOAP_TYPE_ns1__parameterValueType_:
-		return ((ns1__parameterValueType_ *)ptr)->soap_out(soap, tag, id, "ns1:parameterValueType");
-	case SOAP_TYPE_ns1__getDatasetsResponse:
-		return ((ns1__getDatasetsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetsResponse");
-	case SOAP_TYPE_ns1__getDatasets:
-		return ((ns1__getDatasets *)ptr)->soap_out(soap, tag, id, "ns1:getDatasets");
-	case SOAP_TYPE_ns1__listParametersResponse:
-		return ((ns1__listParametersResponse *)ptr)->soap_out(soap, tag, id, "ns1:listParametersResponse");
-	case SOAP_TYPE_ns1__listParameters:
-		return ((ns1__listParameters *)ptr)->soap_out(soap, tag, id, "ns1:listParameters");
-	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
-		return ((ns1__modifyDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFileParameterResponse");
-	case SOAP_TYPE_ns1__modifyDataFileParameter:
-		return ((ns1__modifyDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFileParameter");
-	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
-		return ((ns1__deleteSampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteSampleParameterResponse");
-	case SOAP_TYPE_ns1__deleteSampleParameter:
-		return ((ns1__deleteSampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:deleteSampleParameter");
-	case SOAP_TYPE_ns1__addDataFileParameterResponse:
-		return ((ns1__addDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParameterResponse");
-	case SOAP_TYPE_ns1__addDataFileParameter:
-		return ((ns1__addDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParameter");
-	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
-		return ((ns1__searchDatasetsBySampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsBySampleResponse");
-	case SOAP_TYPE_ns1__searchDatasetsBySample:
-		return ((ns1__searchDatasetsBySample *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsBySample");
-	case SOAP_TYPE_ns1__createInvestigationResponse:
-		return ((ns1__createInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:createInvestigationResponse");
-	case SOAP_TYPE_ns1__createInvestigation:
-		return ((ns1__createInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:createInvestigation");
-	case SOAP_TYPE_ns1__addPublicationResponse:
-		return ((ns1__addPublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:addPublicationResponse");
-	case SOAP_TYPE_ns1__addPublication:
-		return ((ns1__addPublication *)ptr)->soap_out(soap, tag, id, "ns1:addPublication");
-	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
-		return ((ns1__deleteDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFileParameterResponse");
-	case SOAP_TYPE_ns1__deleteDataFileParameter:
-		return ((ns1__deleteDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFileParameter");
-	case SOAP_TYPE_ns1__getInvestigationResponse:
-		return ((ns1__getInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationResponse");
-	case SOAP_TYPE_ns1__getInvestigation:
-		return ((ns1__getInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigation");
-	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
-		return ((ns1__getInvestigationIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationIncludesResponse");
-	case SOAP_TYPE_ns1__getInvestigationIncludes:
-		return ((ns1__getInvestigationIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationIncludes");
-	case SOAP_TYPE_ns1__modifyDataFileResponse:
-		return ((ns1__modifyDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFileResponse");
-	case SOAP_TYPE_ns1__modifyDataFile:
-		return ((ns1__modifyDataFile *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFile");
-	case SOAP_TYPE_ns1__getDatafileResponse:
-		return ((ns1__getDatafileResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatafileResponse");
-	case SOAP_TYPE_ns1__getDatafile:
-		return ((ns1__getDatafile *)ptr)->soap_out(soap, tag, id, "ns1:getDatafile");
-	case SOAP_TYPE_ns1__ICATAPIException:
-		return ((ns1__ICATAPIException *)ptr)->soap_out(soap, tag, id, "ns1:ICATAPIException");
-	case SOAP_TYPE_ns1__ingestMetadataResponse:
-		return ((ns1__ingestMetadataResponse *)ptr)->soap_out(soap, tag, id, "ns1:ingestMetadataResponse");
-	case SOAP_TYPE_ns1__ingestMetadata:
-		return ((ns1__ingestMetadata *)ptr)->soap_out(soap, tag, id, "ns1:ingestMetadata");
-	case SOAP_TYPE_ns1__listRolesResponse:
-		return ((ns1__listRolesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listRolesResponse");
-	case SOAP_TYPE_ns1__listRoles:
-		return ((ns1__listRoles *)ptr)->soap_out(soap, tag, id, "ns1:listRoles");
-	case SOAP_TYPE_ns1__getDatasetResponse:
-		return ((ns1__getDatasetResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetResponse");
-	case SOAP_TYPE_ns1__getDataset:
-		return ((ns1__getDataset *)ptr)->soap_out(soap, tag, id, "ns1:getDataset");
-	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
-		return ((ns1__getDatasetIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetIncludesResponse");
-	case SOAP_TYPE_ns1__getDatasetIncludes:
-		return ((ns1__getDatasetIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetIncludes");
-	case SOAP_TYPE_ns1__updateAuthorisationResponse:
-		return ((ns1__updateAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:updateAuthorisationResponse");
-	case SOAP_TYPE_ns1__updateAuthorisation:
-		return ((ns1__updateAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:updateAuthorisation");
-	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
-		return ((ns1__deleteAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteAuthorisationResponse");
-	case SOAP_TYPE_ns1__deleteAuthorisation:
-		return ((ns1__deleteAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:deleteAuthorisation");
-	case SOAP_TYPE_ns1__deletePublicationResponse:
-		return ((ns1__deletePublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:deletePublicationResponse");
-	case SOAP_TYPE_ns1__deletePublication:
-		return ((ns1__deletePublication *)ptr)->soap_out(soap, tag, id, "ns1:deletePublication");
-	case SOAP_TYPE_ns1__loginResponse:
-		return ((ns1__loginResponse *)ptr)->soap_out(soap, tag, id, "ns1:loginResponse");
-	case SOAP_TYPE_ns1__login:
-		return ((ns1__login *)ptr)->soap_out(soap, tag, id, "ns1:login");
-	case SOAP_TYPE_ns1__loginLifetimeResponse:
-		return ((ns1__loginLifetimeResponse *)ptr)->soap_out(soap, tag, id, "ns1:loginLifetimeResponse");
-	case SOAP_TYPE_ns1__loginLifetime:
-		return ((ns1__loginLifetime *)ptr)->soap_out(soap, tag, id, "ns1:loginLifetime");
-	case SOAP_TYPE_ns1__addSampleResponse:
-		return ((ns1__addSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:addSampleResponse");
-	case SOAP_TYPE_ns1__addSample:
-		return ((ns1__addSample *)ptr)->soap_out(soap, tag, id, "ns1:addSample");
-	case SOAP_TYPE_ns1__addAuthorisationResponse:
-		return ((ns1__addAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:addAuthorisationResponse");
-	case SOAP_TYPE_ns1__addAuthorisation:
-		return ((ns1__addAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:addAuthorisation");
-	case SOAP_TYPE_ns1__addDataSetParameterResponse:
-		return ((ns1__addDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParameterResponse");
-	case SOAP_TYPE_ns1__addDataSetParameter:
-		return ((ns1__addDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParameter");
-	case SOAP_TYPE_ns1__createDataFilesResponse:
-		return ((ns1__createDataFilesResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataFilesResponse");
-	case SOAP_TYPE_ns1__createDataFiles:
-		return ((ns1__createDataFiles *)ptr)->soap_out(soap, tag, id, "ns1:createDataFiles");
-	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
-		return ((ns1__modifyInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigatorResponse");
-	case SOAP_TYPE_ns1__modifyInvestigator:
-		return ((ns1__modifyInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigator");
-	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
-		return ((ns1__searchByParameterComparatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparatorResponse");
-	case SOAP_TYPE_ns1__searchByParameterComparator:
-		return ((ns1__searchByParameterComparator *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparator");
-	case SOAP_TYPE_ns1__modifySampleParameterResponse:
-		return ((ns1__modifySampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifySampleParameterResponse");
-	case SOAP_TYPE_ns1__modifySampleParameter:
-		return ((ns1__modifySampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:modifySampleParameter");
-	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
-		return ((ns1__listDatafileFormatsResponse *)ptr)->soap_out(soap, tag, id, "ns1:listDatafileFormatsResponse");
-	case SOAP_TYPE_ns1__listDatafileFormats:
-		return ((ns1__listDatafileFormats *)ptr)->soap_out(soap, tag, id, "ns1:listDatafileFormats");
-	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
-		return ((ns1__searchByAdvancedPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvancedPaginationResponse");
-	case SOAP_TYPE_ns1__searchByAdvancedPagination:
-		return ((ns1__searchByAdvancedPagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvancedPagination");
-	case SOAP_TYPE_ns1__searchByAdvancedResponse:
-		return ((ns1__searchByAdvancedResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvancedResponse");
-	case SOAP_TYPE_ns1__advancedSearchDetails:
-		return ((ns1__advancedSearchDetails *)ptr)->soap_out(soap, tag, id, "ns1:advancedSearchDetails");
-	case SOAP_TYPE_ns1__searchByAdvanced:
-		return ((ns1__searchByAdvanced *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvanced");
-	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
-		return ((ns1__searchByRunNumberPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumberPaginationResponse");
-	case SOAP_TYPE_ns1__searchByRunNumberPagination:
-		return ((ns1__searchByRunNumberPagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumberPagination");
-	case SOAP_TYPE_ns1__searchByRunNumberResponse:
-		return ((ns1__searchByRunNumberResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumberResponse");
-	case SOAP_TYPE_ns1__searchByRunNumber:
-		return ((ns1__searchByRunNumber *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumber");
-	case SOAP_TYPE_ns1__addDataSetParametersResponse:
-		return ((ns1__addDataSetParametersResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParametersResponse");
-	case SOAP_TYPE_ns1__addDataSetParameters:
-		return ((ns1__addDataSetParameters *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParameters");
-	case SOAP_TYPE_ns1__deleteKeywordResponse:
-		return ((ns1__deleteKeywordResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteKeywordResponse");
-	case SOAP_TYPE_ns1__deleteKeyword:
-		return ((ns1__deleteKeyword *)ptr)->soap_out(soap, tag, id, "ns1:deleteKeyword");
-	case SOAP_TYPE_ns1__deleteSampleResponse:
-		return ((ns1__deleteSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteSampleResponse");
-	case SOAP_TYPE_ns1__deleteSample:
-		return ((ns1__deleteSample *)ptr)->soap_out(soap, tag, id, "ns1:deleteSample");
-	case SOAP_TYPE_ns1__listDatasetStatusResponse:
-		return ((ns1__listDatasetStatusResponse *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetStatusResponse");
-	case SOAP_TYPE_ns1__listDatasetStatus:
-		return ((ns1__listDatasetStatus *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetStatus");
-	case SOAP_TYPE_ns1__modifyInvestigationResponse:
-		return ((ns1__modifyInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigationResponse");
-	case SOAP_TYPE_ns1__modifyInvestigation:
-		return ((ns1__modifyInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigation");
-	case SOAP_TYPE_ns1__addKeywordResponse:
-		return ((ns1__addKeywordResponse *)ptr)->soap_out(soap, tag, id, "ns1:addKeywordResponse");
-	case SOAP_TYPE_ns1__addKeyword:
-		return ((ns1__addKeyword *)ptr)->soap_out(soap, tag, id, "ns1:addKeyword");
-	case SOAP_TYPE_ns1__icatAuthorisation:
-		return ((ns1__icatAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:icatAuthorisation");
-	case SOAP_TYPE_ns1__getAuthorisationsResponse:
-		return ((ns1__getAuthorisationsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getAuthorisationsResponse");
-	case SOAP_TYPE_ns1__getAuthorisations:
-		return ((ns1__getAuthorisations *)ptr)->soap_out(soap, tag, id, "ns1:getAuthorisations");
-	case SOAP_TYPE_ns1__removeDataSetResponse:
-		return ((ns1__removeDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSetResponse");
-	case SOAP_TYPE_ns1__removeDataSet:
-		return ((ns1__removeDataSet *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSet");
-	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
-		return ((ns1__modifyDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSetParameterResponse");
-	case SOAP_TYPE_ns1__modifyDataSetParameter:
-		return ((ns1__modifyDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSetParameter");
-	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
-		return ((ns1__listInvestigationTypesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listInvestigationTypesResponse");
-	case SOAP_TYPE_ns1__listInvestigationTypes:
-		return ((ns1__listInvestigationTypes *)ptr)->soap_out(soap, tag, id, "ns1:listInvestigationTypes");
-	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
-		return ((ns1__getKeywordsForUserTypeResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserTypeResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUserType:
-		return ((ns1__getKeywordsForUserType *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserType");
-	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
-		return ((ns1__getKeywordsForUserMaxResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserMaxResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUserMax:
-		return ((ns1__getKeywordsForUserMax *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserMax");
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
-		return ((ns1__getKeywordsForUserStartWithMaxResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserStartWithMaxResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
-		return ((ns1__getKeywordsForUserStartWithMax *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserStartWithMax");
-	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
-		return ((ns1__getKeywordsForUserResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserResponse");
-	case SOAP_TYPE_ns1__getKeywordsForUser:
-		return ((ns1__getKeywordsForUser *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUser");
-	case SOAP_TYPE_ns1__downloadDatafileResponse:
-		return ((ns1__downloadDatafileResponse *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafileResponse");
-	case SOAP_TYPE_ns1__downloadDatafile:
-		return ((ns1__downloadDatafile *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafile");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
-		return ((ns1__searchDatasetsByParameterComparatorsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparatorsResponse");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
-		return ((ns1__searchDatasetsByParameterComparators *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparators");
-	case SOAP_TYPE_ns1__setDataSetSampleResponse:
-		return ((ns1__setDataSetSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:setDataSetSampleResponse");
-	case SOAP_TYPE_ns1__setDataSetSample:
-		return ((ns1__setDataSetSample *)ptr)->soap_out(soap, tag, id, "ns1:setDataSetSample");
-	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
-		return ((ns1__deleteDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSetParameterResponse");
-	case SOAP_TYPE_ns1__deleteDataSetParameter:
-		return ((ns1__deleteDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSetParameter");
-	case SOAP_TYPE_ns1__removeSampleParameterResponse:
-		return ((ns1__removeSampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeSampleParameterResponse");
-	case SOAP_TYPE_ns1__removeSampleParameter:
-		return ((ns1__removeSampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:removeSampleParameter");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
-		return ((ns1__searchDatasetsByParameterComparatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparatorResponse");
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
-		return ((ns1__searchDatasetsByParameterComparator *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparator");
-	case SOAP_TYPE_ns1__createDataSetResponse:
-		return ((ns1__createDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataSetResponse");
-	case SOAP_TYPE_ns1__createDataSet:
-		return ((ns1__createDataSet *)ptr)->soap_out(soap, tag, id, "ns1:createDataSet");
-	case SOAP_TYPE_ns1__addInvestigatorResponse:
-		return ((ns1__addInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:addInvestigatorResponse");
-	case SOAP_TYPE_ns1__addInvestigator:
-		return ((ns1__addInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:addInvestigator");
-	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
-		return ((ns1__deleteInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigatorResponse");
-	case SOAP_TYPE_ns1__deleteInvestigator:
-		return ((ns1__deleteInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigator");
-	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
-		return ((ns1__getICATAPIVersionResponse *)ptr)->soap_out(soap, tag, id, "ns1:getICATAPIVersionResponse");
-	case SOAP_TYPE_ns1__getICATAPIVersion:
-		return ((ns1__getICATAPIVersion *)ptr)->soap_out(soap, tag, id, "ns1:getICATAPIVersion");
-	case SOAP_TYPE_ns1__getDatafilesResponse:
-		return ((ns1__getDatafilesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatafilesResponse");
-	case SOAP_TYPE_ns1__getDatafiles:
-		return ((ns1__getDatafiles *)ptr)->soap_out(soap, tag, id, "ns1:getDatafiles");
-	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
-		return ((ns1__searchByParameterOperatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterOperatorResponse");
-	case SOAP_TYPE_ns1__parameterLogicalCondition:
-		return ((ns1__parameterLogicalCondition *)ptr)->soap_out(soap, tag, id, "ns1:parameterLogicalCondition");
-	case SOAP_TYPE_ns1__searchByParameterOperator:
-		return ((ns1__searchByParameterOperator *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterOperator");
-	case SOAP_TYPE_ns1__isSessionValidResponse:
-		return ((ns1__isSessionValidResponse *)ptr)->soap_out(soap, tag, id, "ns1:isSessionValidResponse");
-	case SOAP_TYPE_ns1__isSessionValid:
-		return ((ns1__isSessionValid *)ptr)->soap_out(soap, tag, id, "ns1:isSessionValid");
-	case SOAP_TYPE_ns1__deleteDataSetResponse:
-		return ((ns1__deleteDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSetResponse");
-	case SOAP_TYPE_ns1__deleteDataSet:
-		return ((ns1__deleteDataSet *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSet");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
-		return ((ns1__searchDatafilesByParameterComparatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparatorResponse");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
-		return ((ns1__searchDatafilesByParameterComparator *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparator");
-	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
-		return ((ns1__getInvestigationsIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationsIncludesResponse");
-	case SOAP_TYPE_ns1__getInvestigationsIncludes:
-		return ((ns1__getInvestigationsIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationsIncludes");
-	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
-		return ((ns1__removeDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFileParameterResponse");
-	case SOAP_TYPE_ns1__removeDataFileParameter:
-		return ((ns1__removeDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFileParameter");
-	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
-		return ((ns1__searchByUserIDPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserIDPaginationResponse");
-	case SOAP_TYPE_ns1__searchByUserIDPagination:
-		return ((ns1__searchByUserIDPagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserIDPagination");
-	case SOAP_TYPE_ns1__searchByUserIDResponse:
-		return ((ns1__searchByUserIDResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserIDResponse");
-	case SOAP_TYPE_ns1__searchByUserID:
-		return ((ns1__searchByUserID *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserID");
-	case SOAP_TYPE_ns1__modifyPublicationResponse:
-		return ((ns1__modifyPublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyPublicationResponse");
-	case SOAP_TYPE_ns1__modifyPublication:
-		return ((ns1__modifyPublication *)ptr)->soap_out(soap, tag, id, "ns1:modifyPublication");
-	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
-		return ((ns1__removeDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSetParameterResponse");
-	case SOAP_TYPE_ns1__removeDataSetParameter:
-		return ((ns1__removeDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSetParameter");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
-		return ((ns1__getMyInvestigationsIncludesPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludesPaginationResponse");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
-		return ((ns1__getMyInvestigationsIncludesPagination *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludesPagination");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
-		return ((ns1__getMyInvestigationsIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludesResponse");
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
-		return ((ns1__getMyInvestigationsIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludes");
-	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
-		return ((ns1__getMyInvestigationsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsResponse");
-	case SOAP_TYPE_ns1__getMyInvestigations:
-		return ((ns1__getMyInvestigations *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigations");
-	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
-		return ((ns1__searchByKeywordsAllResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywordsAllResponse");
-	case SOAP_TYPE_ns1__keywordDetails:
-		return ((ns1__keywordDetails *)ptr)->soap_out(soap, tag, id, "ns1:keywordDetails");
-	case SOAP_TYPE_ns1__searchByKeywordsAll:
-		return ((ns1__searchByKeywordsAll *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywordsAll");
-	case SOAP_TYPE_ns1__searchByKeywordsResponse:
-		return ((ns1__searchByKeywordsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywordsResponse");
-	case SOAP_TYPE_ns1__searchByKeywords:
-		return ((ns1__searchByKeywords *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywords");
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
-		return ((ns1__checkDatasetDownloadAccessResponse *)ptr)->soap_out(soap, tag, id, "ns1:checkDatasetDownloadAccessResponse");
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
-		return ((ns1__checkDatasetDownloadAccess *)ptr)->soap_out(soap, tag, id, "ns1:checkDatasetDownloadAccess");
-	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
-		return ((ns1__searchByUserSurnamePaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurnamePaginationResponse");
-	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
-		return ((ns1__searchByUserSurnamePagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurnamePagination");
-	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
-		return ((ns1__searchByUserSurnameResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurnameResponse");
-	case SOAP_TYPE_ns1__searchByUserSurname:
-		return ((ns1__searchByUserSurname *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurname");
-	case SOAP_TYPE_ns1__deleteDataFileResponse:
-		return ((ns1__deleteDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFileResponse");
-	case SOAP_TYPE_ns1__deleteDataFile:
-		return ((ns1__deleteDataFile *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFile");
-	case SOAP_TYPE_ns1__downloadInfo:
-		return ((ns1__downloadInfo *)ptr)->soap_out(soap, tag, id, "ns1:downloadInfo");
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
-		return ((ns1__checkDatafileDownloadAccessResponse *)ptr)->soap_out(soap, tag, id, "ns1:checkDatafileDownloadAccessResponse");
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
-		return ((ns1__checkDatafileDownloadAccess *)ptr)->soap_out(soap, tag, id, "ns1:checkDatafileDownloadAccess");
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
-		return ((ns1__getFacilityUserByFacilityUserIdResponse *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFacilityUserIdResponse");
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
-		return ((ns1__getFacilityUserByFacilityUserId *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFacilityUserId");
-	case SOAP_TYPE_ns1__addSampleParameterResponse:
-		return ((ns1__addSampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:addSampleParameterResponse");
-	case SOAP_TYPE_ns1__addSampleParameter:
-		return ((ns1__addSampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:addSampleParameter");
-	case SOAP_TYPE_ns1__modifyDataSetResponse:
-		return ((ns1__modifyDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSetResponse");
-	case SOAP_TYPE_ns1__modifyDataSet:
-		return ((ns1__modifyDataSet *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSet");
-	case SOAP_TYPE_ns1__downloadDatafilesResponse:
-		return ((ns1__downloadDatafilesResponse *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafilesResponse");
-	case SOAP_TYPE_ns1__downloadDatafiles:
-		return ((ns1__downloadDatafiles *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafiles");
-	case SOAP_TYPE_ns1__NoSuchUserException:
-		return ((ns1__NoSuchUserException *)ptr)->soap_out(soap, tag, id, "ns1:NoSuchUserException");
-	case SOAP_TYPE_ns1__userDetails:
-		return ((ns1__userDetails *)ptr)->soap_out(soap, tag, id, "ns1:userDetails");
-	case SOAP_TYPE_ns1__getUserDetailsResponse:
-		return ((ns1__getUserDetailsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getUserDetailsResponse");
-	case SOAP_TYPE_ns1__getUserDetails:
-		return ((ns1__getUserDetails *)ptr)->soap_out(soap, tag, id, "ns1:getUserDetails");
-	case SOAP_TYPE_ns1__getAllKeywordsResponse:
-		return ((ns1__getAllKeywordsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getAllKeywordsResponse");
-	case SOAP_TYPE_ns1__getAllKeywords:
-		return ((ns1__getAllKeywords *)ptr)->soap_out(soap, tag, id, "ns1:getAllKeywords");
-	case SOAP_TYPE_ns1__removePublicationResponse:
-		return ((ns1__removePublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:removePublicationResponse");
-	case SOAP_TYPE_ns1__removePublication:
-		return ((ns1__removePublication *)ptr)->soap_out(soap, tag, id, "ns1:removePublication");
-	case SOAP_TYPE_ns1__createDataSetsResponse:
-		return ((ns1__createDataSetsResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataSetsResponse");
-	case SOAP_TYPE_ns1__createDataSets:
-		return ((ns1__createDataSets *)ptr)->soap_out(soap, tag, id, "ns1:createDataSets");
-	case SOAP_TYPE_ns1__deleteInvestigationResponse:
-		return ((ns1__deleteInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigationResponse");
-	case SOAP_TYPE_ns1__deleteInvestigation:
-		return ((ns1__deleteInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigation");
-	case SOAP_TYPE_ns1__removeKeywordResponse:
-		return ((ns1__removeKeywordResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeKeywordResponse");
-	case SOAP_TYPE_ns1__removeKeyword:
-		return ((ns1__removeKeyword *)ptr)->soap_out(soap, tag, id, "ns1:removeKeyword");
-	case SOAP_TYPE_ns1__removeInvestigatorResponse:
-		return ((ns1__removeInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigatorResponse");
-	case SOAP_TYPE_ns1__removeInvestigator:
-		return ((ns1__removeInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigator");
-	case SOAP_TYPE_ns1__removeInvestigationResponse:
-		return ((ns1__removeInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigationResponse");
-	case SOAP_TYPE_ns1__removeInvestigation:
-		return ((ns1__removeInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigation");
-	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
-		return ((ns1__getFacilityUserByFederalIdResponse *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFederalIdResponse");
-	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
-		return ((ns1__getFacilityUserByFederalId *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFederalId");
-	case SOAP_TYPE_ns1__downloadDatasetResponse:
-		return ((ns1__downloadDatasetResponse *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatasetResponse");
-	case SOAP_TYPE_ns1__downloadDataset:
-		return ((ns1__downloadDataset *)ptr)->soap_out(soap, tag, id, "ns1:downloadDataset");
-	case SOAP_TYPE_ns1__logoutResponse:
-		return ((ns1__logoutResponse *)ptr)->soap_out(soap, tag, id, "ns1:logoutResponse");
-	case SOAP_TYPE_ns1__logout:
-		return ((ns1__logout *)ptr)->soap_out(soap, tag, id, "ns1:logout");
-	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
-		return ((ns1__listFacilityCyclesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listFacilityCyclesResponse");
-	case SOAP_TYPE_ns1__listFacilityCycles:
-		return ((ns1__listFacilityCycles *)ptr)->soap_out(soap, tag, id, "ns1:listFacilityCycles");
-	case SOAP_TYPE_ns1__addDataFileParametersResponse:
-		return ((ns1__addDataFileParametersResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParametersResponse");
-	case SOAP_TYPE_ns1__addDataFileParameters:
-		return ((ns1__addDataFileParameters *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParameters");
-	case SOAP_TYPE_ns1__removeAuthorisationResponse:
-		return ((ns1__removeAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeAuthorisationResponse");
-	case SOAP_TYPE_ns1__removeAuthorisation:
-		return ((ns1__removeAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:removeAuthorisation");
-	case SOAP_TYPE_ns1__removeDataFileResponse:
-		return ((ns1__removeDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFileResponse");
-	case SOAP_TYPE_ns1__removeDataFile:
-		return ((ns1__removeDataFile *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFile");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
-		return ((ns1__searchDatafilesByParameterComparatorsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparatorsResponse");
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
-		return ((ns1__searchDatafilesByParameterComparators *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparators");
-	case SOAP_TYPE_ns1__ParameterSearchException:
-		return ((ns1__ParameterSearchException *)ptr)->soap_out(soap, tag, id, "ns1:ParameterSearchException");
-	case SOAP_TYPE_ns1__shiftPK:
-		return ((ns1__shiftPK *)ptr)->soap_out(soap, tag, id, "ns1:shiftPK");
-	case SOAP_TYPE_ns1__shift:
-		return ((ns1__shift *)ptr)->soap_out(soap, tag, id, "ns1:shift");
-	case SOAP_TYPE_ns1__publication:
-		return ((ns1__publication *)ptr)->soap_out(soap, tag, id, "ns1:publication");
-	case SOAP_TYPE_ns1__keywordPK:
-		return ((ns1__keywordPK *)ptr)->soap_out(soap, tag, id, "ns1:keywordPK");
-	case SOAP_TYPE_ns1__keyword:
-		return ((ns1__keyword *)ptr)->soap_out(soap, tag, id, "ns1:keyword");
-	case SOAP_TYPE_ns1__investigatorPK:
-		return ((ns1__investigatorPK *)ptr)->soap_out(soap, tag, id, "ns1:investigatorPK");
-	case SOAP_TYPE_ns1__facilityUser:
-		return ((ns1__facilityUser *)ptr)->soap_out(soap, tag, id, "ns1:facilityUser");
-	case SOAP_TYPE_ns1__investigator:
-		return ((ns1__investigator *)ptr)->soap_out(soap, tag, id, "ns1:investigator");
-	case SOAP_TYPE_ns1__facilityCycle:
-		return ((ns1__facilityCycle *)ptr)->soap_out(soap, tag, id, "ns1:facilityCycle");
-	case SOAP_TYPE_ns1__datasetParameterPK:
-		return ((ns1__datasetParameterPK *)ptr)->soap_out(soap, tag, id, "ns1:datasetParameterPK");
-	case SOAP_TYPE_ns1__datasetParameter:
-		return ((ns1__datasetParameter *)ptr)->soap_out(soap, tag, id, "ns1:datasetParameter");
-	case SOAP_TYPE_ns1__dataset:
-		return ((ns1__dataset *)ptr)->soap_out(soap, tag, id, "ns1:dataset");
-	case SOAP_TYPE_ns1__investigation:
-		return ((ns1__investigation *)ptr)->soap_out(soap, tag, id, "ns1:investigation");
-	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
-		return ((ns1__searchByParameterComparatorsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparatorsResponse");
-	case SOAP_TYPE_ns1__parameterPK:
-		return ((ns1__parameterPK *)ptr)->soap_out(soap, tag, id, "ns1:parameterPK");
-	case SOAP_TYPE_ns1__parameter:
-		return ((ns1__parameter *)ptr)->soap_out(soap, tag, id, "ns1:parameter");
-	case SOAP_TYPE_ns1__parameterValued:
-		return ((ns1__parameterValued *)ptr)->soap_out(soap, tag, id, "ns1:parameterValued");
-	case SOAP_TYPE_ns1__parameterCondition:
-		return ((ns1__parameterCondition *)ptr)->soap_out(soap, tag, id, "ns1:parameterCondition");
-	case SOAP_TYPE_ns1__parameterComparisonCondition:
-		return ((ns1__parameterComparisonCondition *)ptr)->soap_out(soap, tag, id, "ns1:parameterComparisonCondition");
-	case SOAP_TYPE_ns1__searchByParameterComparators:
-		return ((ns1__searchByParameterComparators *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparators");
-	case SOAP_TYPE_ns1__modifySampleResponse:
-		return ((ns1__modifySampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifySampleResponse");
-	case SOAP_TYPE_ns1__modifySample:
-		return ((ns1__modifySample *)ptr)->soap_out(soap, tag, id, "ns1:modifySample");
-	case SOAP_TYPE_ns1__ValidationException:
-		return ((ns1__ValidationException *)ptr)->soap_out(soap, tag, id, "ns1:ValidationException");
-	case SOAP_TYPE_ns1__createDataFileResponse:
-		return ((ns1__createDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataFileResponse");
-	case SOAP_TYPE_ns1__relatedDatafilesPK:
-		return ((ns1__relatedDatafilesPK *)ptr)->soap_out(soap, tag, id, "ns1:relatedDatafilesPK");
-	case SOAP_TYPE_ns1__relatedDatafiles:
-		return ((ns1__relatedDatafiles *)ptr)->soap_out(soap, tag, id, "ns1:relatedDatafiles");
-	case SOAP_TYPE_ns1__datafileParameterPK:
-		return ((ns1__datafileParameterPK *)ptr)->soap_out(soap, tag, id, "ns1:datafileParameterPK");
-	case SOAP_TYPE_ns1__datafileParameter:
-		return ((ns1__datafileParameter *)ptr)->soap_out(soap, tag, id, "ns1:datafileParameter");
-	case SOAP_TYPE_ns1__datafileFormatPK:
-		return ((ns1__datafileFormatPK *)ptr)->soap_out(soap, tag, id, "ns1:datafileFormatPK");
-	case SOAP_TYPE_ns1__datafileFormat:
-		return ((ns1__datafileFormat *)ptr)->soap_out(soap, tag, id, "ns1:datafileFormat");
-	case SOAP_TYPE_ns1__datafile:
-		return ((ns1__datafile *)ptr)->soap_out(soap, tag, id, "ns1:datafile");
-	case SOAP_TYPE_ns1__createDataFile:
-		return ((ns1__createDataFile *)ptr)->soap_out(soap, tag, id, "ns1:createDataFile");
-	case SOAP_TYPE_ns1__listInstrumentsResponse:
-		return ((ns1__listInstrumentsResponse *)ptr)->soap_out(soap, tag, id, "ns1:listInstrumentsResponse");
-	case SOAP_TYPE_ns1__listInstruments:
-		return ((ns1__listInstruments *)ptr)->soap_out(soap, tag, id, "ns1:listInstruments");
-	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
-		return ((ns1__NoSuchObjectFoundException *)ptr)->soap_out(soap, tag, id, "ns1:NoSuchObjectFoundException");
-	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
-		return ((ns1__InsufficientPrivilegesException *)ptr)->soap_out(soap, tag, id, "ns1:InsufficientPrivilegesException");
-	case SOAP_TYPE_ns1__removeSampleResponse:
-		return ((ns1__removeSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeSampleResponse");
-	case SOAP_TYPE_ns1__removeSample:
-		return ((ns1__removeSample *)ptr)->soap_out(soap, tag, id, "ns1:removeSample");
-	case SOAP_TYPE_ns1__icatRole:
-		return ((ns1__icatRole *)ptr)->soap_out(soap, tag, id, "ns1:icatRole");
-	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
-		return ((ns1__entityPrimaryKeyBaseBean *)ptr)->soap_out(soap, tag, id, "ns1:entityPrimaryKeyBaseBean");
-	case SOAP_TYPE_ns1__sampleParameterPK:
-		return ((ns1__sampleParameterPK *)ptr)->soap_out(soap, tag, id, "ns1:sampleParameterPK");
-	case SOAP_TYPE_ns1__sampleParameter:
-		return ((ns1__sampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:sampleParameter");
-	case SOAP_TYPE_ns1__entityBaseBean:
-		return ((ns1__entityBaseBean *)ptr)->soap_out(soap, tag, id, "ns1:entityBaseBean");
-	case SOAP_TYPE_ns1__sample:
-		return ((ns1__sample *)ptr)->soap_out(soap, tag, id, "ns1:sample");
-	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
-		return ((ns1__searchSamplesBySampleNameResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchSamplesBySampleNameResponse");
-	case SOAP_TYPE_ns1__searchSamplesBySampleName:
-		return ((ns1__searchSamplesBySampleName *)ptr)->soap_out(soap, tag, id, "ns1:searchSamplesBySampleName");
-	case SOAP_TYPE_ns1__SessionException:
-		return ((ns1__SessionException *)ptr)->soap_out(soap, tag, id, "ns1:SessionException");
-	case SOAP_TYPE_ns1__listDatasetTypesResponse:
-		return ((ns1__listDatasetTypesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetTypesResponse");
-	case SOAP_TYPE_ns1__listDatasetTypes:
-		return ((ns1__listDatasetTypes *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetTypes");
-	case SOAP_TYPE_std__string:
-		return soap_out_std__string(soap, tag, id, (const std::string *)ptr, "xsd:string");
-	case SOAP_TYPE_xsd__string:
-		return ((xsd__string *)ptr)->soap_out(soap, tag, id, "xsd:string");
-	case SOAP_TYPE_xsd__long:
-		return ((xsd__long *)ptr)->soap_out(soap, tag, id, "xsd:long");
-	case SOAP_TYPE_xsd__int:
-		return ((xsd__int *)ptr)->soap_out(soap, tag, id, "xsd:int");
-	case SOAP_TYPE_xsd__float:
-		return ((xsd__float *)ptr)->soap_out(soap, tag, id, "xsd:float");
-	case SOAP_TYPE_xsd__double:
-		return ((xsd__double *)ptr)->soap_out(soap, tag, id, "xsd:double");
-	case SOAP_TYPE_xsd__dateTime:
-		return ((xsd__dateTime *)ptr)->soap_out(soap, tag, id, "xsd:dateTime");
-	case SOAP_TYPE_xsd__boolean:
-		return ((xsd__boolean *)ptr)->soap_out(soap, tag, id, "xsd:boolean");
-	case SOAP_TYPE_xsd__anyType:
-		return ((xsd__anyType *)ptr)->soap_out(soap, tag, id, "xsd:anyType");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse:
-		return soap_out_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, tag, id, (ns1__searchDatafilesByParameterComparatorsResponse *const*)ptr, "ns1:searchDatafilesByParameterComparatorsResponse");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators:
-		return soap_out_PointerTons1__searchDatafilesByParameterComparators(soap, tag, id, (ns1__searchDatafilesByParameterComparators *const*)ptr, "ns1:searchDatafilesByParameterComparators");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse:
-		return soap_out_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, tag, id, (ns1__searchDatafilesByParameterComparatorResponse *const*)ptr, "ns1:searchDatafilesByParameterComparatorResponse");
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator:
-		return soap_out_PointerTons1__searchDatafilesByParameterComparator(soap, tag, id, (ns1__searchDatafilesByParameterComparator *const*)ptr, "ns1:searchDatafilesByParameterComparator");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse:
-		return soap_out_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, tag, id, (ns1__searchDatasetsByParameterComparatorsResponse *const*)ptr, "ns1:searchDatasetsByParameterComparatorsResponse");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators:
-		return soap_out_PointerTons1__searchDatasetsByParameterComparators(soap, tag, id, (ns1__searchDatasetsByParameterComparators *const*)ptr, "ns1:searchDatasetsByParameterComparators");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse:
-		return soap_out_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, tag, id, (ns1__searchDatasetsByParameterComparatorResponse *const*)ptr, "ns1:searchDatasetsByParameterComparatorResponse");
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator:
-		return soap_out_PointerTons1__searchDatasetsByParameterComparator(soap, tag, id, (ns1__searchDatasetsByParameterComparator *const*)ptr, "ns1:searchDatasetsByParameterComparator");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse:
-		return soap_out_PointerTons1__searchByParameterComparatorsResponse(soap, tag, id, (ns1__searchByParameterComparatorsResponse *const*)ptr, "ns1:searchByParameterComparatorsResponse");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparators:
-		return soap_out_PointerTons1__searchByParameterComparators(soap, tag, id, (ns1__searchByParameterComparators *const*)ptr, "ns1:searchByParameterComparators");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse:
-		return soap_out_PointerTons1__searchByParameterComparatorResponse(soap, tag, id, (ns1__searchByParameterComparatorResponse *const*)ptr, "ns1:searchByParameterComparatorResponse");
-	case SOAP_TYPE_PointerTons1__searchByParameterComparator:
-		return soap_out_PointerTons1__searchByParameterComparator(soap, tag, id, (ns1__searchByParameterComparator *const*)ptr, "ns1:searchByParameterComparator");
-	case SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse:
-		return soap_out_PointerTons1__searchByParameterOperatorResponse(soap, tag, id, (ns1__searchByParameterOperatorResponse *const*)ptr, "ns1:searchByParameterOperatorResponse");
-	case SOAP_TYPE_PointerTons1__searchByParameterOperator:
-		return soap_out_PointerTons1__searchByParameterOperator(soap, tag, id, (ns1__searchByParameterOperator *const*)ptr, "ns1:searchByParameterOperator");
-	case SOAP_TYPE_PointerTons1__isSessionValidResponse:
-		return soap_out_PointerTons1__isSessionValidResponse(soap, tag, id, (ns1__isSessionValidResponse *const*)ptr, "ns1:isSessionValidResponse");
-	case SOAP_TYPE_PointerTons1__isSessionValid:
-		return soap_out_PointerTons1__isSessionValid(soap, tag, id, (ns1__isSessionValid *const*)ptr, "ns1:isSessionValid");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse:
-		return soap_out_PointerTons1__getFacilityUserByFederalIdResponse(soap, tag, id, (ns1__getFacilityUserByFederalIdResponse *const*)ptr, "ns1:getFacilityUserByFederalIdResponse");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalId:
-		return soap_out_PointerTons1__getFacilityUserByFederalId(soap, tag, id, (ns1__getFacilityUserByFederalId *const*)ptr, "ns1:getFacilityUserByFederalId");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse:
-		return soap_out_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, tag, id, (ns1__getFacilityUserByFacilityUserIdResponse *const*)ptr, "ns1:getFacilityUserByFacilityUserIdResponse");
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId:
-		return soap_out_PointerTons1__getFacilityUserByFacilityUserId(soap, tag, id, (ns1__getFacilityUserByFacilityUserId *const*)ptr, "ns1:getFacilityUserByFacilityUserId");
-	case SOAP_TYPE_PointerTons1__getICATAPIVersionResponse:
-		return soap_out_PointerTons1__getICATAPIVersionResponse(soap, tag, id, (ns1__getICATAPIVersionResponse *const*)ptr, "ns1:getICATAPIVersionResponse");
-	case SOAP_TYPE_PointerTons1__getICATAPIVersion:
-		return soap_out_PointerTons1__getICATAPIVersion(soap, tag, id, (ns1__getICATAPIVersion *const*)ptr, "ns1:getICATAPIVersion");
-	case SOAP_TYPE_PointerTons1__ingestMetadataResponse:
-		return soap_out_PointerTons1__ingestMetadataResponse(soap, tag, id, (ns1__ingestMetadataResponse *const*)ptr, "ns1:ingestMetadataResponse");
-	case SOAP_TYPE_PointerTons1__ingestMetadata:
-		return soap_out_PointerTons1__ingestMetadata(soap, tag, id, (ns1__ingestMetadata *const*)ptr, "ns1:ingestMetadata");
-	case SOAP_TYPE_PointerTons1__removeDataSetParameterResponse:
-		return soap_out_PointerTons1__removeDataSetParameterResponse(soap, tag, id, (ns1__removeDataSetParameterResponse *const*)ptr, "ns1:removeDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__removeDataSetParameter:
-		return soap_out_PointerTons1__removeDataSetParameter(soap, tag, id, (ns1__removeDataSetParameter *const*)ptr, "ns1:removeDataSetParameter");
-	case SOAP_TYPE_PointerTons1__removeDataSetResponse:
-		return soap_out_PointerTons1__removeDataSetResponse(soap, tag, id, (ns1__removeDataSetResponse *const*)ptr, "ns1:removeDataSetResponse");
-	case SOAP_TYPE_PointerTons1__removeDataSet:
-		return soap_out_PointerTons1__removeDataSet(soap, tag, id, (ns1__removeDataSet *const*)ptr, "ns1:removeDataSet");
-	case SOAP_TYPE_PointerTons1__addDataSetParametersResponse:
-		return soap_out_PointerTons1__addDataSetParametersResponse(soap, tag, id, (ns1__addDataSetParametersResponse *const*)ptr, "ns1:addDataSetParametersResponse");
-	case SOAP_TYPE_PointerTons1__addDataSetParameters:
-		return soap_out_PointerTons1__addDataSetParameters(soap, tag, id, (ns1__addDataSetParameters *const*)ptr, "ns1:addDataSetParameters");
-	case SOAP_TYPE_PointerTons1__addDataSetParameterResponse:
-		return soap_out_PointerTons1__addDataSetParameterResponse(soap, tag, id, (ns1__addDataSetParameterResponse *const*)ptr, "ns1:addDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__addDataSetParameter:
-		return soap_out_PointerTons1__addDataSetParameter(soap, tag, id, (ns1__addDataSetParameter *const*)ptr, "ns1:addDataSetParameter");
-	case SOAP_TYPE_PointerTons1__setDataSetSampleResponse:
-		return soap_out_PointerTons1__setDataSetSampleResponse(soap, tag, id, (ns1__setDataSetSampleResponse *const*)ptr, "ns1:setDataSetSampleResponse");
-	case SOAP_TYPE_PointerTons1__setDataSetSample:
-		return soap_out_PointerTons1__setDataSetSample(soap, tag, id, (ns1__setDataSetSample *const*)ptr, "ns1:setDataSetSample");
-	case SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse:
-		return soap_out_PointerTons1__modifyDataSetParameterResponse(soap, tag, id, (ns1__modifyDataSetParameterResponse *const*)ptr, "ns1:modifyDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataSetParameter:
-		return soap_out_PointerTons1__modifyDataSetParameter(soap, tag, id, (ns1__modifyDataSetParameter *const*)ptr, "ns1:modifyDataSetParameter");
-	case SOAP_TYPE_PointerTons1__modifyDataSetResponse:
-		return soap_out_PointerTons1__modifyDataSetResponse(soap, tag, id, (ns1__modifyDataSetResponse *const*)ptr, "ns1:modifyDataSetResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataSet:
-		return soap_out_PointerTons1__modifyDataSet(soap, tag, id, (ns1__modifyDataSet *const*)ptr, "ns1:modifyDataSet");
-	case SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse:
-		return soap_out_PointerTons1__deleteDataSetParameterResponse(soap, tag, id, (ns1__deleteDataSetParameterResponse *const*)ptr, "ns1:deleteDataSetParameterResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataSetParameter:
-		return soap_out_PointerTons1__deleteDataSetParameter(soap, tag, id, (ns1__deleteDataSetParameter *const*)ptr, "ns1:deleteDataSetParameter");
-	case SOAP_TYPE_PointerTons1__deleteDataSetResponse:
-		return soap_out_PointerTons1__deleteDataSetResponse(soap, tag, id, (ns1__deleteDataSetResponse *const*)ptr, "ns1:deleteDataSetResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataSet:
-		return soap_out_PointerTons1__deleteDataSet(soap, tag, id, (ns1__deleteDataSet *const*)ptr, "ns1:deleteDataSet");
-	case SOAP_TYPE_PointerTons1__createDataSetsResponse:
-		return soap_out_PointerTons1__createDataSetsResponse(soap, tag, id, (ns1__createDataSetsResponse *const*)ptr, "ns1:createDataSetsResponse");
-	case SOAP_TYPE_PointerTons1__createDataSets:
-		return soap_out_PointerTons1__createDataSets(soap, tag, id, (ns1__createDataSets *const*)ptr, "ns1:createDataSets");
-	case SOAP_TYPE_PointerTons1__createDataSetResponse:
-		return soap_out_PointerTons1__createDataSetResponse(soap, tag, id, (ns1__createDataSetResponse *const*)ptr, "ns1:createDataSetResponse");
-	case SOAP_TYPE_PointerTons1__createDataSet:
-		return soap_out_PointerTons1__createDataSet(soap, tag, id, (ns1__createDataSet *const*)ptr, "ns1:createDataSet");
-	case SOAP_TYPE_PointerTons1__getDatasetsResponse:
-		return soap_out_PointerTons1__getDatasetsResponse(soap, tag, id, (ns1__getDatasetsResponse *const*)ptr, "ns1:getDatasetsResponse");
-	case SOAP_TYPE_PointerTons1__getDatasets:
-		return soap_out_PointerTons1__getDatasets(soap, tag, id, (ns1__getDatasets *const*)ptr, "ns1:getDatasets");
-	case SOAP_TYPE_PointerTons1__listDatafileFormatsResponse:
-		return soap_out_PointerTons1__listDatafileFormatsResponse(soap, tag, id, (ns1__listDatafileFormatsResponse *const*)ptr, "ns1:listDatafileFormatsResponse");
-	case SOAP_TYPE_PointerTons1__listDatafileFormats:
-		return soap_out_PointerTons1__listDatafileFormats(soap, tag, id, (ns1__listDatafileFormats *const*)ptr, "ns1:listDatafileFormats");
-	case SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse:
-		return soap_out_PointerTons1__searchByRunNumberPaginationResponse(soap, tag, id, (ns1__searchByRunNumberPaginationResponse *const*)ptr, "ns1:searchByRunNumberPaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByRunNumberPagination:
-		return soap_out_PointerTons1__searchByRunNumberPagination(soap, tag, id, (ns1__searchByRunNumberPagination *const*)ptr, "ns1:searchByRunNumberPagination");
-	case SOAP_TYPE_PointerTons1__searchByRunNumberResponse:
-		return soap_out_PointerTons1__searchByRunNumberResponse(soap, tag, id, (ns1__searchByRunNumberResponse *const*)ptr, "ns1:searchByRunNumberResponse");
-	case SOAP_TYPE_PointerTons1__searchByRunNumber:
-		return soap_out_PointerTons1__searchByRunNumber(soap, tag, id, (ns1__searchByRunNumber *const*)ptr, "ns1:searchByRunNumber");
-	case SOAP_TYPE_PointerTons1__listDatasetStatusResponse:
-		return soap_out_PointerTons1__listDatasetStatusResponse(soap, tag, id, (ns1__listDatasetStatusResponse *const*)ptr, "ns1:listDatasetStatusResponse");
-	case SOAP_TYPE_PointerTons1__listDatasetStatus:
-		return soap_out_PointerTons1__listDatasetStatus(soap, tag, id, (ns1__listDatasetStatus *const*)ptr, "ns1:listDatasetStatus");
-	case SOAP_TYPE_PointerTons1__listDatasetTypesResponse:
-		return soap_out_PointerTons1__listDatasetTypesResponse(soap, tag, id, (ns1__listDatasetTypesResponse *const*)ptr, "ns1:listDatasetTypesResponse");
-	case SOAP_TYPE_PointerTons1__listDatasetTypes:
-		return soap_out_PointerTons1__listDatasetTypes(soap, tag, id, (ns1__listDatasetTypes *const*)ptr, "ns1:listDatasetTypes");
-	case SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse:
-		return soap_out_PointerTons1__searchDatasetsBySampleResponse(soap, tag, id, (ns1__searchDatasetsBySampleResponse *const*)ptr, "ns1:searchDatasetsBySampleResponse");
-	case SOAP_TYPE_PointerTons1__searchDatasetsBySample:
-		return soap_out_PointerTons1__searchDatasetsBySample(soap, tag, id, (ns1__searchDatasetsBySample *const*)ptr, "ns1:searchDatasetsBySample");
-	case SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse:
-		return soap_out_PointerTons1__searchSamplesBySampleNameResponse(soap, tag, id, (ns1__searchSamplesBySampleNameResponse *const*)ptr, "ns1:searchSamplesBySampleNameResponse");
-	case SOAP_TYPE_PointerTons1__searchSamplesBySampleName:
-		return soap_out_PointerTons1__searchSamplesBySampleName(soap, tag, id, (ns1__searchSamplesBySampleName *const*)ptr, "ns1:searchSamplesBySampleName");
-	case SOAP_TYPE_PointerTons1__listInvestigationTypesResponse:
-		return soap_out_PointerTons1__listInvestigationTypesResponse(soap, tag, id, (ns1__listInvestigationTypesResponse *const*)ptr, "ns1:listInvestigationTypesResponse");
-	case SOAP_TYPE_PointerTons1__listInvestigationTypes:
-		return soap_out_PointerTons1__listInvestigationTypes(soap, tag, id, (ns1__listInvestigationTypes *const*)ptr, "ns1:listInvestigationTypes");
-	case SOAP_TYPE_PointerTons1__listFacilityCyclesResponse:
-		return soap_out_PointerTons1__listFacilityCyclesResponse(soap, tag, id, (ns1__listFacilityCyclesResponse *const*)ptr, "ns1:listFacilityCyclesResponse");
-	case SOAP_TYPE_PointerTons1__listFacilityCycles:
-		return soap_out_PointerTons1__listFacilityCycles(soap, tag, id, (ns1__listFacilityCycles *const*)ptr, "ns1:listFacilityCycles");
-	case SOAP_TYPE_PointerTons1__listParametersResponse:
-		return soap_out_PointerTons1__listParametersResponse(soap, tag, id, (ns1__listParametersResponse *const*)ptr, "ns1:listParametersResponse");
-	case SOAP_TYPE_PointerTons1__listParameters:
-		return soap_out_PointerTons1__listParameters(soap, tag, id, (ns1__listParameters *const*)ptr, "ns1:listParameters");
-	case SOAP_TYPE_PointerTons1__listRolesResponse:
-		return soap_out_PointerTons1__listRolesResponse(soap, tag, id, (ns1__listRolesResponse *const*)ptr, "ns1:listRolesResponse");
-	case SOAP_TYPE_PointerTons1__listRoles:
-		return soap_out_PointerTons1__listRoles(soap, tag, id, (ns1__listRoles *const*)ptr, "ns1:listRoles");
-	case SOAP_TYPE_PointerTons1__listInstrumentsResponse:
-		return soap_out_PointerTons1__listInstrumentsResponse(soap, tag, id, (ns1__listInstrumentsResponse *const*)ptr, "ns1:listInstrumentsResponse");
-	case SOAP_TYPE_PointerTons1__listInstruments:
-		return soap_out_PointerTons1__listInstruments(soap, tag, id, (ns1__listInstruments *const*)ptr, "ns1:listInstruments");
-	case SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse:
-		return soap_out_PointerTons1__searchByUserSurnamePaginationResponse(soap, tag, id, (ns1__searchByUserSurnamePaginationResponse *const*)ptr, "ns1:searchByUserSurnamePaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserSurnamePagination:
-		return soap_out_PointerTons1__searchByUserSurnamePagination(soap, tag, id, (ns1__searchByUserSurnamePagination *const*)ptr, "ns1:searchByUserSurnamePagination");
-	case SOAP_TYPE_PointerTons1__searchByUserSurnameResponse:
-		return soap_out_PointerTons1__searchByUserSurnameResponse(soap, tag, id, (ns1__searchByUserSurnameResponse *const*)ptr, "ns1:searchByUserSurnameResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserSurname:
-		return soap_out_PointerTons1__searchByUserSurname(soap, tag, id, (ns1__searchByUserSurname *const*)ptr, "ns1:searchByUserSurname");
-	case SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse:
-		return soap_out_PointerTons1__searchByUserIDPaginationResponse(soap, tag, id, (ns1__searchByUserIDPaginationResponse *const*)ptr, "ns1:searchByUserIDPaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserIDPagination:
-		return soap_out_PointerTons1__searchByUserIDPagination(soap, tag, id, (ns1__searchByUserIDPagination *const*)ptr, "ns1:searchByUserIDPagination");
-	case SOAP_TYPE_PointerTons1__searchByUserIDResponse:
-		return soap_out_PointerTons1__searchByUserIDResponse(soap, tag, id, (ns1__searchByUserIDResponse *const*)ptr, "ns1:searchByUserIDResponse");
-	case SOAP_TYPE_PointerTons1__searchByUserID:
-		return soap_out_PointerTons1__searchByUserID(soap, tag, id, (ns1__searchByUserID *const*)ptr, "ns1:searchByUserID");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse:
-		return soap_out_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, tag, id, (ns1__getMyInvestigationsIncludesPaginationResponse *const*)ptr, "ns1:getMyInvestigationsIncludesPaginationResponse");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination:
-		return soap_out_PointerTons1__getMyInvestigationsIncludesPagination(soap, tag, id, (ns1__getMyInvestigationsIncludesPagination *const*)ptr, "ns1:getMyInvestigationsIncludesPagination");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse:
-		return soap_out_PointerTons1__getMyInvestigationsIncludesResponse(soap, tag, id, (ns1__getMyInvestigationsIncludesResponse *const*)ptr, "ns1:getMyInvestigationsIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes:
-		return soap_out_PointerTons1__getMyInvestigationsIncludes(soap, tag, id, (ns1__getMyInvestigationsIncludes *const*)ptr, "ns1:getMyInvestigationsIncludes");
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsResponse:
-		return soap_out_PointerTons1__getMyInvestigationsResponse(soap, tag, id, (ns1__getMyInvestigationsResponse *const*)ptr, "ns1:getMyInvestigationsResponse");
-	case SOAP_TYPE_PointerTons1__getMyInvestigations:
-		return soap_out_PointerTons1__getMyInvestigations(soap, tag, id, (ns1__getMyInvestigations *const*)ptr, "ns1:getMyInvestigations");
-	case SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse:
-		return soap_out_PointerTons1__searchByKeywordsAllResponse(soap, tag, id, (ns1__searchByKeywordsAllResponse *const*)ptr, "ns1:searchByKeywordsAllResponse");
-	case SOAP_TYPE_PointerTons1__searchByKeywordsAll:
-		return soap_out_PointerTons1__searchByKeywordsAll(soap, tag, id, (ns1__searchByKeywordsAll *const*)ptr, "ns1:searchByKeywordsAll");
-	case SOAP_TYPE_PointerTons1__searchByKeywordsResponse:
-		return soap_out_PointerTons1__searchByKeywordsResponse(soap, tag, id, (ns1__searchByKeywordsResponse *const*)ptr, "ns1:searchByKeywordsResponse");
-	case SOAP_TYPE_PointerTons1__searchByKeywords:
-		return soap_out_PointerTons1__searchByKeywords(soap, tag, id, (ns1__searchByKeywords *const*)ptr, "ns1:searchByKeywords");
-	case SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse:
-		return soap_out_PointerTons1__searchByAdvancedPaginationResponse(soap, tag, id, (ns1__searchByAdvancedPaginationResponse *const*)ptr, "ns1:searchByAdvancedPaginationResponse");
-	case SOAP_TYPE_PointerTons1__searchByAdvancedPagination:
-		return soap_out_PointerTons1__searchByAdvancedPagination(soap, tag, id, (ns1__searchByAdvancedPagination *const*)ptr, "ns1:searchByAdvancedPagination");
-	case SOAP_TYPE_PointerTons1__searchByAdvancedResponse:
-		return soap_out_PointerTons1__searchByAdvancedResponse(soap, tag, id, (ns1__searchByAdvancedResponse *const*)ptr, "ns1:searchByAdvancedResponse");
-	case SOAP_TYPE_PointerTons1__searchByAdvanced:
-		return soap_out_PointerTons1__searchByAdvanced(soap, tag, id, (ns1__searchByAdvanced *const*)ptr, "ns1:searchByAdvanced");
-	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse:
-		return soap_out_PointerTons1__checkDatasetDownloadAccessResponse(soap, tag, id, (ns1__checkDatasetDownloadAccessResponse *const*)ptr, "ns1:checkDatasetDownloadAccessResponse");
-	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess:
-		return soap_out_PointerTons1__checkDatasetDownloadAccess(soap, tag, id, (ns1__checkDatasetDownloadAccess *const*)ptr, "ns1:checkDatasetDownloadAccess");
-	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse:
-		return soap_out_PointerTons1__checkDatafileDownloadAccessResponse(soap, tag, id, (ns1__checkDatafileDownloadAccessResponse *const*)ptr, "ns1:checkDatafileDownloadAccessResponse");
-	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess:
-		return soap_out_PointerTons1__checkDatafileDownloadAccess(soap, tag, id, (ns1__checkDatafileDownloadAccess *const*)ptr, "ns1:checkDatafileDownloadAccess");
-	case SOAP_TYPE_PointerTons1__downloadDatasetResponse:
-		return soap_out_PointerTons1__downloadDatasetResponse(soap, tag, id, (ns1__downloadDatasetResponse *const*)ptr, "ns1:downloadDatasetResponse");
-	case SOAP_TYPE_PointerTons1__downloadDataset:
-		return soap_out_PointerTons1__downloadDataset(soap, tag, id, (ns1__downloadDataset *const*)ptr, "ns1:downloadDataset");
-	case SOAP_TYPE_PointerTons1__downloadDatafilesResponse:
-		return soap_out_PointerTons1__downloadDatafilesResponse(soap, tag, id, (ns1__downloadDatafilesResponse *const*)ptr, "ns1:downloadDatafilesResponse");
-	case SOAP_TYPE_PointerTons1__downloadDatafiles:
-		return soap_out_PointerTons1__downloadDatafiles(soap, tag, id, (ns1__downloadDatafiles *const*)ptr, "ns1:downloadDatafiles");
-	case SOAP_TYPE_PointerTons1__downloadDatafileResponse:
-		return soap_out_PointerTons1__downloadDatafileResponse(soap, tag, id, (ns1__downloadDatafileResponse *const*)ptr, "ns1:downloadDatafileResponse");
-	case SOAP_TYPE_PointerTons1__downloadDatafile:
-		return soap_out_PointerTons1__downloadDatafile(soap, tag, id, (ns1__downloadDatafile *const*)ptr, "ns1:downloadDatafile");
-	case SOAP_TYPE_PointerTons1__getAllKeywordsResponse:
-		return soap_out_PointerTons1__getAllKeywordsResponse(soap, tag, id, (ns1__getAllKeywordsResponse *const*)ptr, "ns1:getAllKeywordsResponse");
-	case SOAP_TYPE_PointerTons1__getAllKeywords:
-		return soap_out_PointerTons1__getAllKeywords(soap, tag, id, (ns1__getAllKeywords *const*)ptr, "ns1:getAllKeywords");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse:
-		return soap_out_PointerTons1__getKeywordsForUserTypeResponse(soap, tag, id, (ns1__getKeywordsForUserTypeResponse *const*)ptr, "ns1:getKeywordsForUserTypeResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserType:
-		return soap_out_PointerTons1__getKeywordsForUserType(soap, tag, id, (ns1__getKeywordsForUserType *const*)ptr, "ns1:getKeywordsForUserType");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse:
-		return soap_out_PointerTons1__getKeywordsForUserMaxResponse(soap, tag, id, (ns1__getKeywordsForUserMaxResponse *const*)ptr, "ns1:getKeywordsForUserMaxResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserMax:
-		return soap_out_PointerTons1__getKeywordsForUserMax(soap, tag, id, (ns1__getKeywordsForUserMax *const*)ptr, "ns1:getKeywordsForUserMax");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse:
-		return soap_out_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, tag, id, (ns1__getKeywordsForUserStartWithMaxResponse *const*)ptr, "ns1:getKeywordsForUserStartWithMaxResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax:
-		return soap_out_PointerTons1__getKeywordsForUserStartWithMax(soap, tag, id, (ns1__getKeywordsForUserStartWithMax *const*)ptr, "ns1:getKeywordsForUserStartWithMax");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserResponse:
-		return soap_out_PointerTons1__getKeywordsForUserResponse(soap, tag, id, (ns1__getKeywordsForUserResponse *const*)ptr, "ns1:getKeywordsForUserResponse");
-	case SOAP_TYPE_PointerTons1__getKeywordsForUser:
-		return soap_out_PointerTons1__getKeywordsForUser(soap, tag, id, (ns1__getKeywordsForUser *const*)ptr, "ns1:getKeywordsForUser");
-	case SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse:
-		return soap_out_PointerTons1__deleteDataFileParameterResponse(soap, tag, id, (ns1__deleteDataFileParameterResponse *const*)ptr, "ns1:deleteDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataFileParameter:
-		return soap_out_PointerTons1__deleteDataFileParameter(soap, tag, id, (ns1__deleteDataFileParameter *const*)ptr, "ns1:deleteDataFileParameter");
-	case SOAP_TYPE_PointerTons1__removeDataFileParameterResponse:
-		return soap_out_PointerTons1__removeDataFileParameterResponse(soap, tag, id, (ns1__removeDataFileParameterResponse *const*)ptr, "ns1:removeDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__removeDataFileParameter:
-		return soap_out_PointerTons1__removeDataFileParameter(soap, tag, id, (ns1__removeDataFileParameter *const*)ptr, "ns1:removeDataFileParameter");
-	case SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse:
-		return soap_out_PointerTons1__modifyDataFileParameterResponse(soap, tag, id, (ns1__modifyDataFileParameterResponse *const*)ptr, "ns1:modifyDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataFileParameter:
-		return soap_out_PointerTons1__modifyDataFileParameter(soap, tag, id, (ns1__modifyDataFileParameter *const*)ptr, "ns1:modifyDataFileParameter");
-	case SOAP_TYPE_PointerTons1__addDataFileParametersResponse:
-		return soap_out_PointerTons1__addDataFileParametersResponse(soap, tag, id, (ns1__addDataFileParametersResponse *const*)ptr, "ns1:addDataFileParametersResponse");
-	case SOAP_TYPE_PointerTons1__addDataFileParameters:
-		return soap_out_PointerTons1__addDataFileParameters(soap, tag, id, (ns1__addDataFileParameters *const*)ptr, "ns1:addDataFileParameters");
-	case SOAP_TYPE_PointerTons1__modifyDataFileResponse:
-		return soap_out_PointerTons1__modifyDataFileResponse(soap, tag, id, (ns1__modifyDataFileResponse *const*)ptr, "ns1:modifyDataFileResponse");
-	case SOAP_TYPE_PointerTons1__modifyDataFile:
-		return soap_out_PointerTons1__modifyDataFile(soap, tag, id, (ns1__modifyDataFile *const*)ptr, "ns1:modifyDataFile");
-	case SOAP_TYPE_PointerTons1__removeDataFileResponse:
-		return soap_out_PointerTons1__removeDataFileResponse(soap, tag, id, (ns1__removeDataFileResponse *const*)ptr, "ns1:removeDataFileResponse");
-	case SOAP_TYPE_PointerTons1__removeDataFile:
-		return soap_out_PointerTons1__removeDataFile(soap, tag, id, (ns1__removeDataFile *const*)ptr, "ns1:removeDataFile");
-	case SOAP_TYPE_PointerTons1__deleteDataFileResponse:
-		return soap_out_PointerTons1__deleteDataFileResponse(soap, tag, id, (ns1__deleteDataFileResponse *const*)ptr, "ns1:deleteDataFileResponse");
-	case SOAP_TYPE_PointerTons1__deleteDataFile:
-		return soap_out_PointerTons1__deleteDataFile(soap, tag, id, (ns1__deleteDataFile *const*)ptr, "ns1:deleteDataFile");
-	case SOAP_TYPE_PointerTons1__createDataFilesResponse:
-		return soap_out_PointerTons1__createDataFilesResponse(soap, tag, id, (ns1__createDataFilesResponse *const*)ptr, "ns1:createDataFilesResponse");
-	case SOAP_TYPE_PointerTons1__createDataFiles:
-		return soap_out_PointerTons1__createDataFiles(soap, tag, id, (ns1__createDataFiles *const*)ptr, "ns1:createDataFiles");
-	case SOAP_TYPE_PointerTons1__createDataFileResponse:
-		return soap_out_PointerTons1__createDataFileResponse(soap, tag, id, (ns1__createDataFileResponse *const*)ptr, "ns1:createDataFileResponse");
-	case SOAP_TYPE_PointerTons1__createDataFile:
-		return soap_out_PointerTons1__createDataFile(soap, tag, id, (ns1__createDataFile *const*)ptr, "ns1:createDataFile");
-	case SOAP_TYPE_PointerTons1__getDatafilesResponse:
-		return soap_out_PointerTons1__getDatafilesResponse(soap, tag, id, (ns1__getDatafilesResponse *const*)ptr, "ns1:getDatafilesResponse");
-	case SOAP_TYPE_PointerTons1__getDatafiles:
-		return soap_out_PointerTons1__getDatafiles(soap, tag, id, (ns1__getDatafiles *const*)ptr, "ns1:getDatafiles");
-	case SOAP_TYPE_PointerTons1__getUserDetailsResponse:
-		return soap_out_PointerTons1__getUserDetailsResponse(soap, tag, id, (ns1__getUserDetailsResponse *const*)ptr, "ns1:getUserDetailsResponse");
-	case SOAP_TYPE_PointerTons1__getUserDetails:
-		return soap_out_PointerTons1__getUserDetails(soap, tag, id, (ns1__getUserDetails *const*)ptr, "ns1:getUserDetails");
-	case SOAP_TYPE_PointerTons1__updateAuthorisationResponse:
-		return soap_out_PointerTons1__updateAuthorisationResponse(soap, tag, id, (ns1__updateAuthorisationResponse *const*)ptr, "ns1:updateAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__updateAuthorisation:
-		return soap_out_PointerTons1__updateAuthorisation(soap, tag, id, (ns1__updateAuthorisation *const*)ptr, "ns1:updateAuthorisation");
-	case SOAP_TYPE_PointerTons1__removeAuthorisationResponse:
-		return soap_out_PointerTons1__removeAuthorisationResponse(soap, tag, id, (ns1__removeAuthorisationResponse *const*)ptr, "ns1:removeAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__removeAuthorisation:
-		return soap_out_PointerTons1__removeAuthorisation(soap, tag, id, (ns1__removeAuthorisation *const*)ptr, "ns1:removeAuthorisation");
-	case SOAP_TYPE_PointerTons1__deleteAuthorisationResponse:
-		return soap_out_PointerTons1__deleteAuthorisationResponse(soap, tag, id, (ns1__deleteAuthorisationResponse *const*)ptr, "ns1:deleteAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__deleteAuthorisation:
-		return soap_out_PointerTons1__deleteAuthorisation(soap, tag, id, (ns1__deleteAuthorisation *const*)ptr, "ns1:deleteAuthorisation");
-	case SOAP_TYPE_PointerTons1__addAuthorisationResponse:
-		return soap_out_PointerTons1__addAuthorisationResponse(soap, tag, id, (ns1__addAuthorisationResponse *const*)ptr, "ns1:addAuthorisationResponse");
-	case SOAP_TYPE_PointerTons1__addAuthorisation:
-		return soap_out_PointerTons1__addAuthorisation(soap, tag, id, (ns1__addAuthorisation *const*)ptr, "ns1:addAuthorisation");
-	case SOAP_TYPE_PointerTons1__getAuthorisationsResponse:
-		return soap_out_PointerTons1__getAuthorisationsResponse(soap, tag, id, (ns1__getAuthorisationsResponse *const*)ptr, "ns1:getAuthorisationsResponse");
-	case SOAP_TYPE_PointerTons1__getAuthorisations:
-		return soap_out_PointerTons1__getAuthorisations(soap, tag, id, (ns1__getAuthorisations *const*)ptr, "ns1:getAuthorisations");
-	case SOAP_TYPE_PointerTons1__modifySampleParameterResponse:
-		return soap_out_PointerTons1__modifySampleParameterResponse(soap, tag, id, (ns1__modifySampleParameterResponse *const*)ptr, "ns1:modifySampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__modifySampleParameter:
-		return soap_out_PointerTons1__modifySampleParameter(soap, tag, id, (ns1__modifySampleParameter *const*)ptr, "ns1:modifySampleParameter");
-	case SOAP_TYPE_PointerTons1__deleteSampleParameterResponse:
-		return soap_out_PointerTons1__deleteSampleParameterResponse(soap, tag, id, (ns1__deleteSampleParameterResponse *const*)ptr, "ns1:deleteSampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__deleteSampleParameter:
-		return soap_out_PointerTons1__deleteSampleParameter(soap, tag, id, (ns1__deleteSampleParameter *const*)ptr, "ns1:deleteSampleParameter");
-	case SOAP_TYPE_PointerTons1__removeSampleParameterResponse:
-		return soap_out_PointerTons1__removeSampleParameterResponse(soap, tag, id, (ns1__removeSampleParameterResponse *const*)ptr, "ns1:removeSampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__removeSampleParameter:
-		return soap_out_PointerTons1__removeSampleParameter(soap, tag, id, (ns1__removeSampleParameter *const*)ptr, "ns1:removeSampleParameter");
-	case SOAP_TYPE_PointerTons1__modifySampleResponse:
-		return soap_out_PointerTons1__modifySampleResponse(soap, tag, id, (ns1__modifySampleResponse *const*)ptr, "ns1:modifySampleResponse");
-	case SOAP_TYPE_PointerTons1__modifySample:
-		return soap_out_PointerTons1__modifySample(soap, tag, id, (ns1__modifySample *const*)ptr, "ns1:modifySample");
-	case SOAP_TYPE_PointerTons1__deleteSampleResponse:
-		return soap_out_PointerTons1__deleteSampleResponse(soap, tag, id, (ns1__deleteSampleResponse *const*)ptr, "ns1:deleteSampleResponse");
-	case SOAP_TYPE_PointerTons1__deleteSample:
-		return soap_out_PointerTons1__deleteSample(soap, tag, id, (ns1__deleteSample *const*)ptr, "ns1:deleteSample");
-	case SOAP_TYPE_PointerTons1__removeSampleResponse:
-		return soap_out_PointerTons1__removeSampleResponse(soap, tag, id, (ns1__removeSampleResponse *const*)ptr, "ns1:removeSampleResponse");
-	case SOAP_TYPE_PointerTons1__removeSample:
-		return soap_out_PointerTons1__removeSample(soap, tag, id, (ns1__removeSample *const*)ptr, "ns1:removeSample");
-	case SOAP_TYPE_PointerTons1__deleteInvestigatorResponse:
-		return soap_out_PointerTons1__deleteInvestigatorResponse(soap, tag, id, (ns1__deleteInvestigatorResponse *const*)ptr, "ns1:deleteInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__deleteInvestigator:
-		return soap_out_PointerTons1__deleteInvestigator(soap, tag, id, (ns1__deleteInvestigator *const*)ptr, "ns1:deleteInvestigator");
-	case SOAP_TYPE_PointerTons1__modifyInvestigatorResponse:
-		return soap_out_PointerTons1__modifyInvestigatorResponse(soap, tag, id, (ns1__modifyInvestigatorResponse *const*)ptr, "ns1:modifyInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__modifyInvestigator:
-		return soap_out_PointerTons1__modifyInvestigator(soap, tag, id, (ns1__modifyInvestigator *const*)ptr, "ns1:modifyInvestigator");
-	case SOAP_TYPE_PointerTons1__removeInvestigatorResponse:
-		return soap_out_PointerTons1__removeInvestigatorResponse(soap, tag, id, (ns1__removeInvestigatorResponse *const*)ptr, "ns1:removeInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__removeInvestigator:
-		return soap_out_PointerTons1__removeInvestigator(soap, tag, id, (ns1__removeInvestigator *const*)ptr, "ns1:removeInvestigator");
-	case SOAP_TYPE_PointerTons1__modifyPublicationResponse:
-		return soap_out_PointerTons1__modifyPublicationResponse(soap, tag, id, (ns1__modifyPublicationResponse *const*)ptr, "ns1:modifyPublicationResponse");
-	case SOAP_TYPE_PointerTons1__modifyPublication:
-		return soap_out_PointerTons1__modifyPublication(soap, tag, id, (ns1__modifyPublication *const*)ptr, "ns1:modifyPublication");
-	case SOAP_TYPE_PointerTons1__deletePublicationResponse:
-		return soap_out_PointerTons1__deletePublicationResponse(soap, tag, id, (ns1__deletePublicationResponse *const*)ptr, "ns1:deletePublicationResponse");
-	case SOAP_TYPE_PointerTons1__deletePublication:
-		return soap_out_PointerTons1__deletePublication(soap, tag, id, (ns1__deletePublication *const*)ptr, "ns1:deletePublication");
-	case SOAP_TYPE_PointerTons1__removePublicationResponse:
-		return soap_out_PointerTons1__removePublicationResponse(soap, tag, id, (ns1__removePublicationResponse *const*)ptr, "ns1:removePublicationResponse");
-	case SOAP_TYPE_PointerTons1__removePublication:
-		return soap_out_PointerTons1__removePublication(soap, tag, id, (ns1__removePublication *const*)ptr, "ns1:removePublication");
-	case SOAP_TYPE_PointerTons1__deleteKeywordResponse:
-		return soap_out_PointerTons1__deleteKeywordResponse(soap, tag, id, (ns1__deleteKeywordResponse *const*)ptr, "ns1:deleteKeywordResponse");
-	case SOAP_TYPE_PointerTons1__deleteKeyword:
-		return soap_out_PointerTons1__deleteKeyword(soap, tag, id, (ns1__deleteKeyword *const*)ptr, "ns1:deleteKeyword");
-	case SOAP_TYPE_PointerTons1__removeKeywordResponse:
-		return soap_out_PointerTons1__removeKeywordResponse(soap, tag, id, (ns1__removeKeywordResponse *const*)ptr, "ns1:removeKeywordResponse");
-	case SOAP_TYPE_PointerTons1__removeKeyword:
-		return soap_out_PointerTons1__removeKeyword(soap, tag, id, (ns1__removeKeyword *const*)ptr, "ns1:removeKeyword");
-	case SOAP_TYPE_PointerTons1__modifyInvestigationResponse:
-		return soap_out_PointerTons1__modifyInvestigationResponse(soap, tag, id, (ns1__modifyInvestigationResponse *const*)ptr, "ns1:modifyInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__modifyInvestigation:
-		return soap_out_PointerTons1__modifyInvestigation(soap, tag, id, (ns1__modifyInvestigation *const*)ptr, "ns1:modifyInvestigation");
-	case SOAP_TYPE_PointerTons1__deleteInvestigationResponse:
-		return soap_out_PointerTons1__deleteInvestigationResponse(soap, tag, id, (ns1__deleteInvestigationResponse *const*)ptr, "ns1:deleteInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__deleteInvestigation:
-		return soap_out_PointerTons1__deleteInvestigation(soap, tag, id, (ns1__deleteInvestigation *const*)ptr, "ns1:deleteInvestigation");
-	case SOAP_TYPE_PointerTons1__removeInvestigationResponse:
-		return soap_out_PointerTons1__removeInvestigationResponse(soap, tag, id, (ns1__removeInvestigationResponse *const*)ptr, "ns1:removeInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__removeInvestigation:
-		return soap_out_PointerTons1__removeInvestigation(soap, tag, id, (ns1__removeInvestigation *const*)ptr, "ns1:removeInvestigation");
-	case SOAP_TYPE_PointerTons1__createInvestigationResponse:
-		return soap_out_PointerTons1__createInvestigationResponse(soap, tag, id, (ns1__createInvestigationResponse *const*)ptr, "ns1:createInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__createInvestigation:
-		return soap_out_PointerTons1__createInvestigation(soap, tag, id, (ns1__createInvestigation *const*)ptr, "ns1:createInvestigation");
-	case SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse:
-		return soap_out_PointerTons1__getInvestigationsIncludesResponse(soap, tag, id, (ns1__getInvestigationsIncludesResponse *const*)ptr, "ns1:getInvestigationsIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getInvestigationsIncludes:
-		return soap_out_PointerTons1__getInvestigationsIncludes(soap, tag, id, (ns1__getInvestigationsIncludes *const*)ptr, "ns1:getInvestigationsIncludes");
-	case SOAP_TYPE_PointerTons1__addDataFileParameterResponse:
-		return soap_out_PointerTons1__addDataFileParameterResponse(soap, tag, id, (ns1__addDataFileParameterResponse *const*)ptr, "ns1:addDataFileParameterResponse");
-	case SOAP_TYPE_PointerTons1__addDataFileParameter:
-		return soap_out_PointerTons1__addDataFileParameter(soap, tag, id, (ns1__addDataFileParameter *const*)ptr, "ns1:addDataFileParameter");
-	case SOAP_TYPE_PointerTons1__getDatafileResponse:
-		return soap_out_PointerTons1__getDatafileResponse(soap, tag, id, (ns1__getDatafileResponse *const*)ptr, "ns1:getDatafileResponse");
-	case SOAP_TYPE_PointerTons1__getDatafile:
-		return soap_out_PointerTons1__getDatafile(soap, tag, id, (ns1__getDatafile *const*)ptr, "ns1:getDatafile");
-	case SOAP_TYPE_PointerTons1__getDatasetIncludesResponse:
-		return soap_out_PointerTons1__getDatasetIncludesResponse(soap, tag, id, (ns1__getDatasetIncludesResponse *const*)ptr, "ns1:getDatasetIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getDatasetIncludes:
-		return soap_out_PointerTons1__getDatasetIncludes(soap, tag, id, (ns1__getDatasetIncludes *const*)ptr, "ns1:getDatasetIncludes");
-	case SOAP_TYPE_PointerTons1__getDatasetResponse:
-		return soap_out_PointerTons1__getDatasetResponse(soap, tag, id, (ns1__getDatasetResponse *const*)ptr, "ns1:getDatasetResponse");
-	case SOAP_TYPE_PointerTons1__getDataset:
-		return soap_out_PointerTons1__getDataset(soap, tag, id, (ns1__getDataset *const*)ptr, "ns1:getDataset");
-	case SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse:
-		return soap_out_PointerTons1__getInvestigationIncludesResponse(soap, tag, id, (ns1__getInvestigationIncludesResponse *const*)ptr, "ns1:getInvestigationIncludesResponse");
-	case SOAP_TYPE_PointerTons1__getInvestigationIncludes:
-		return soap_out_PointerTons1__getInvestigationIncludes(soap, tag, id, (ns1__getInvestigationIncludes *const*)ptr, "ns1:getInvestigationIncludes");
-	case SOAP_TYPE_PointerTons1__getInvestigationResponse:
-		return soap_out_PointerTons1__getInvestigationResponse(soap, tag, id, (ns1__getInvestigationResponse *const*)ptr, "ns1:getInvestigationResponse");
-	case SOAP_TYPE_PointerTons1__getInvestigation:
-		return soap_out_PointerTons1__getInvestigation(soap, tag, id, (ns1__getInvestigation *const*)ptr, "ns1:getInvestigation");
-	case SOAP_TYPE_PointerTons1__addInvestigatorResponse:
-		return soap_out_PointerTons1__addInvestigatorResponse(soap, tag, id, (ns1__addInvestigatorResponse *const*)ptr, "ns1:addInvestigatorResponse");
-	case SOAP_TYPE_PointerTons1__addInvestigator:
-		return soap_out_PointerTons1__addInvestigator(soap, tag, id, (ns1__addInvestigator *const*)ptr, "ns1:addInvestigator");
-	case SOAP_TYPE_PointerTons1__addKeywordResponse:
-		return soap_out_PointerTons1__addKeywordResponse(soap, tag, id, (ns1__addKeywordResponse *const*)ptr, "ns1:addKeywordResponse");
-	case SOAP_TYPE_PointerTons1__addKeyword:
-		return soap_out_PointerTons1__addKeyword(soap, tag, id, (ns1__addKeyword *const*)ptr, "ns1:addKeyword");
-	case SOAP_TYPE_PointerTons1__addPublicationResponse:
-		return soap_out_PointerTons1__addPublicationResponse(soap, tag, id, (ns1__addPublicationResponse *const*)ptr, "ns1:addPublicationResponse");
-	case SOAP_TYPE_PointerTons1__addPublication:
-		return soap_out_PointerTons1__addPublication(soap, tag, id, (ns1__addPublication *const*)ptr, "ns1:addPublication");
-	case SOAP_TYPE_PointerTons1__addSampleParameterResponse:
-		return soap_out_PointerTons1__addSampleParameterResponse(soap, tag, id, (ns1__addSampleParameterResponse *const*)ptr, "ns1:addSampleParameterResponse");
-	case SOAP_TYPE_PointerTons1__addSampleParameter:
-		return soap_out_PointerTons1__addSampleParameter(soap, tag, id, (ns1__addSampleParameter *const*)ptr, "ns1:addSampleParameter");
-	case SOAP_TYPE_PointerTons1__logoutResponse:
-		return soap_out_PointerTons1__logoutResponse(soap, tag, id, (ns1__logoutResponse *const*)ptr, "ns1:logoutResponse");
-	case SOAP_TYPE_PointerTons1__logout:
-		return soap_out_PointerTons1__logout(soap, tag, id, (ns1__logout *const*)ptr, "ns1:logout");
-	case SOAP_TYPE_PointerTons1__addSampleResponse:
-		return soap_out_PointerTons1__addSampleResponse(soap, tag, id, (ns1__addSampleResponse *const*)ptr, "ns1:addSampleResponse");
-	case SOAP_TYPE_PointerTons1__addSample:
-		return soap_out_PointerTons1__addSample(soap, tag, id, (ns1__addSample *const*)ptr, "ns1:addSample");
-	case SOAP_TYPE_PointerTons1__loginLifetimeResponse:
-		return soap_out_PointerTons1__loginLifetimeResponse(soap, tag, id, (ns1__loginLifetimeResponse *const*)ptr, "ns1:loginLifetimeResponse");
-	case SOAP_TYPE_PointerTons1__loginLifetime:
-		return soap_out_PointerTons1__loginLifetime(soap, tag, id, (ns1__loginLifetime *const*)ptr, "ns1:loginLifetime");
-	case SOAP_TYPE_PointerTons1__loginResponse:
-		return soap_out_PointerTons1__loginResponse(soap, tag, id, (ns1__loginResponse *const*)ptr, "ns1:loginResponse");
-	case SOAP_TYPE_PointerTons1__login:
-		return soap_out_PointerTons1__login(soap, tag, id, (ns1__login *const*)ptr, "ns1:login");
-	case SOAP_TYPE_PointerTons1__ValidationException:
-		return soap_out_PointerTons1__ValidationException(soap, tag, id, (ns1__ValidationException *const*)ptr, "ns1:ValidationException");
-	case SOAP_TYPE_PointerTons1__SessionException:
-		return soap_out_PointerTons1__SessionException(soap, tag, id, (ns1__SessionException *const*)ptr, "ns1:SessionException");
-	case SOAP_TYPE_PointerTons1__ParameterSearchException:
-		return soap_out_PointerTons1__ParameterSearchException(soap, tag, id, (ns1__ParameterSearchException *const*)ptr, "ns1:ParameterSearchException");
-	case SOAP_TYPE_PointerTons1__NoSuchUserException:
-		return soap_out_PointerTons1__NoSuchUserException(soap, tag, id, (ns1__NoSuchUserException *const*)ptr, "ns1:NoSuchUserException");
-	case SOAP_TYPE_PointerTons1__NoSuchObjectFoundException:
-		return soap_out_PointerTons1__NoSuchObjectFoundException(soap, tag, id, (ns1__NoSuchObjectFoundException *const*)ptr, "ns1:NoSuchObjectFoundException");
-	case SOAP_TYPE_PointerTons1__InsufficientPrivilegesException:
-		return soap_out_PointerTons1__InsufficientPrivilegesException(soap, tag, id, (ns1__InsufficientPrivilegesException *const*)ptr, "ns1:InsufficientPrivilegesException");
-	case SOAP_TYPE_PointerTons1__ICATAPIException:
-		return soap_out_PointerTons1__ICATAPIException(soap, tag, id, (ns1__ICATAPIException *const*)ptr, "ns1:ICATAPIException");
-	case SOAP_TYPE_PointerTons1__logicalOperator:
-		return soap_out_PointerTons1__logicalOperator(soap, tag, id, (enum ns1__logicalOperator *const*)ptr, "ns1:logicalOperator");
-	case SOAP_TYPE_PointerTons1__parameterCondition:
-		return soap_out_PointerTons1__parameterCondition(soap, tag, id, (ns1__parameterCondition *const*)ptr, "ns1:parameterCondition");
-	case SOAP_TYPE_PointerTons1__shiftPK:
-		return soap_out_PointerTons1__shiftPK(soap, tag, id, (ns1__shiftPK *const*)ptr, "ns1:shiftPK");
-	case SOAP_TYPE_PointerTons1__shift:
-		return soap_out_PointerTons1__shift(soap, tag, id, (ns1__shift *const*)ptr, "ns1:shift");
-	case SOAP_TYPE_PointerTons1__parameterPK:
-		return soap_out_PointerTons1__parameterPK(soap, tag, id, (ns1__parameterPK *const*)ptr, "ns1:parameterPK");
-	case SOAP_TYPE_PointerTons1__parameterValued:
-		return soap_out_PointerTons1__parameterValued(soap, tag, id, (ns1__parameterValued *const*)ptr, "ns1:parameterValued");
-	case SOAP_TYPE_PointerTons1__comparisonOperator:
-		return soap_out_PointerTons1__comparisonOperator(soap, tag, id, (enum ns1__comparisonOperator *const*)ptr, "ns1:comparisonOperator");
-	case SOAP_TYPE_PointerTons1__relatedDatafilesPK:
-		return soap_out_PointerTons1__relatedDatafilesPK(soap, tag, id, (ns1__relatedDatafilesPK *const*)ptr, "ns1:relatedDatafilesPK");
-	case SOAP_TYPE_PointerTons1__datafileFormatPK:
-		return soap_out_PointerTons1__datafileFormatPK(soap, tag, id, (ns1__datafileFormatPK *const*)ptr, "ns1:datafileFormatPK");
-	case SOAP_TYPE_PointerTons1__relatedDatafiles:
-		return soap_out_PointerTons1__relatedDatafiles(soap, tag, id, (ns1__relatedDatafiles *const*)ptr, "ns1:relatedDatafiles");
-	case SOAP_TYPE_PointerTons1__datafileInclude:
-		return soap_out_PointerTons1__datafileInclude(soap, tag, id, (enum ns1__datafileInclude *const*)ptr, "ns1:datafileInclude");
-	case SOAP_TYPE_PointerTons1__parameterValueType:
-		return soap_out_PointerTons1__parameterValueType(soap, tag, id, (enum ns1__parameterValueType *const*)ptr, "ns1:parameterValueType");
-	case SOAP_TYPE_PointerToint:
-		return soap_out_PointerToint(soap, tag, id, (int *const*)ptr, "xsd:int");
-	case SOAP_TYPE_PointerTons1__datasetInclude:
-		return soap_out_PointerTons1__datasetInclude(soap, tag, id, (enum ns1__datasetInclude *const*)ptr, "ns1:datasetInclude");
-	case SOAP_TYPE_PointerTons1__datafileFormat:
-		return soap_out_PointerTons1__datafileFormat(soap, tag, id, (ns1__datafileFormat *const*)ptr, "ns1:datafileFormat");
-	case SOAP_TYPE_PointerTodouble:
-		return soap_out_PointerTodouble(soap, tag, id, (double *const*)ptr, "xsd:double");
-	case SOAP_TYPE_PointerTotime:
-		return soap_out_PointerTotime(soap, tag, id, (time_t *const*)ptr, "xsd:dateTime");
-	case SOAP_TYPE_PointerTons1__advancedSearchDetails:
-		return soap_out_PointerTons1__advancedSearchDetails(soap, tag, id, (ns1__advancedSearchDetails *const*)ptr, "ns1:advancedSearchDetails");
-	case SOAP_TYPE_PointerTons1__keyword:
-		return soap_out_PointerTons1__keyword(soap, tag, id, (ns1__keyword *const*)ptr, "ns1:keyword");
-	case SOAP_TYPE_PointerTons1__icatAuthorisation:
-		return soap_out_PointerTons1__icatAuthorisation(soap, tag, id, (ns1__icatAuthorisation *const*)ptr, "ns1:icatAuthorisation");
-	case SOAP_TYPE_PointerTons1__elementType:
-		return soap_out_PointerTons1__elementType(soap, tag, id, (enum ns1__elementType *const*)ptr, "ns1:elementType");
-	case SOAP_TYPE_PointerTons1__datasetParameter:
-		return soap_out_PointerTons1__datasetParameter(soap, tag, id, (ns1__datasetParameter *const*)ptr, "ns1:datasetParameter");
-	case SOAP_TYPE_PointerTons1__sampleParameterPK:
-		return soap_out_PointerTons1__sampleParameterPK(soap, tag, id, (ns1__sampleParameterPK *const*)ptr, "ns1:sampleParameterPK");
-	case SOAP_TYPE_PointerTons1__investigator:
-		return soap_out_PointerTons1__investigator(soap, tag, id, (ns1__investigator *const*)ptr, "ns1:investigator");
-	case SOAP_TYPE_PointerTons1__parameterLogicalCondition:
-		return soap_out_PointerTons1__parameterLogicalCondition(soap, tag, id, (ns1__parameterLogicalCondition *const*)ptr, "ns1:parameterLogicalCondition");
-	case SOAP_TYPE_PointerTons1__datafileParameterPK:
-		return soap_out_PointerTons1__datafileParameterPK(soap, tag, id, (ns1__datafileParameterPK *const*)ptr, "ns1:datafileParameterPK");
-	case SOAP_TYPE_PointerTons1__publication:
-		return soap_out_PointerTons1__publication(soap, tag, id, (ns1__publication *const*)ptr, "ns1:publication");
-	case SOAP_TYPE_PointerTons1__datasetParameterPK:
-		return soap_out_PointerTons1__datasetParameterPK(soap, tag, id, (ns1__datasetParameterPK *const*)ptr, "ns1:datasetParameterPK");
-	case SOAP_TYPE_PointerTons1__investigationInclude:
-		return soap_out_PointerTons1__investigationInclude(soap, tag, id, (enum ns1__investigationInclude *const*)ptr, "ns1:investigationInclude");
-	case SOAP_TYPE_PointerTons1__keywordDetails:
-		return soap_out_PointerTons1__keywordDetails(soap, tag, id, (ns1__keywordDetails *const*)ptr, "ns1:keywordDetails");
-	case SOAP_TYPE_PointerToxsd__anyType:
-		return soap_out_PointerToxsd__anyType(soap, tag, id, (xsd__anyType *const*)ptr, "xsd:anyType");
-	case SOAP_TYPE_PointerTons1__downloadInfo:
-		return soap_out_PointerTons1__downloadInfo(soap, tag, id, (ns1__downloadInfo *const*)ptr, "ns1:downloadInfo");
-	case SOAP_TYPE_PointerTons1__sampleParameter:
-		return soap_out_PointerTons1__sampleParameter(soap, tag, id, (ns1__sampleParameter *const*)ptr, "ns1:sampleParameter");
-	case SOAP_TYPE_PointerTons1__userDetails:
-		return soap_out_PointerTons1__userDetails(soap, tag, id, (ns1__userDetails *const*)ptr, "ns1:userDetails");
-	case SOAP_TYPE_PointerTons1__keywordType:
-		return soap_out_PointerTons1__keywordType(soap, tag, id, (enum ns1__keywordType *const*)ptr, "ns1:keywordType");
-	case SOAP_TYPE_PointerTons1__dataset:
-		return soap_out_PointerTons1__dataset(soap, tag, id, (ns1__dataset *const*)ptr, "ns1:dataset");
-	case SOAP_TYPE_PointerTons1__keywordPK:
-		return soap_out_PointerTons1__keywordPK(soap, tag, id, (ns1__keywordPK *const*)ptr, "ns1:keywordPK");
-	case SOAP_TYPE_PointerTons1__investigatorPK:
-		return soap_out_PointerTons1__investigatorPK(soap, tag, id, (ns1__investigatorPK *const*)ptr, "ns1:investigatorPK");
-	case SOAP_TYPE_PointerTons1__facilityUser:
-		return soap_out_PointerTons1__facilityUser(soap, tag, id, (ns1__facilityUser *const*)ptr, "ns1:facilityUser");
-	case SOAP_TYPE_PointerTons1__facilityCycle:
-		return soap_out_PointerTons1__facilityCycle(soap, tag, id, (ns1__facilityCycle *const*)ptr, "ns1:facilityCycle");
-	case SOAP_TYPE_PointerTons1__datafileParameter:
-		return soap_out_PointerTons1__datafileParameter(soap, tag, id, (ns1__datafileParameter *const*)ptr, "ns1:datafileParameter");
-	case SOAP_TYPE_PointerTons1__investigation:
-		return soap_out_PointerTons1__investigation(soap, tag, id, (ns1__investigation *const*)ptr, "ns1:investigation");
-	case SOAP_TYPE_PointerTons1__parameterType:
-		return soap_out_PointerTons1__parameterType(soap, tag, id, (enum ns1__parameterType *const*)ptr, "ns1:parameterType");
-	case SOAP_TYPE_PointerTons1__parameter:
-		return soap_out_PointerTons1__parameter(soap, tag, id, (ns1__parameter *const*)ptr, "ns1:parameter");
-	case SOAP_TYPE_PointerTons1__parameterComparisonCondition:
-		return soap_out_PointerTons1__parameterComparisonCondition(soap, tag, id, (ns1__parameterComparisonCondition *const*)ptr, "ns1:parameterComparisonCondition");
-	case SOAP_TYPE_PointerTons1__datafile:
-		return soap_out_PointerTons1__datafile(soap, tag, id, (ns1__datafile *const*)ptr, "ns1:datafile");
-	case SOAP_TYPE_PointerToLONG64:
-		return soap_out_PointerToLONG64(soap, tag, id, (LONG64 *const*)ptr, "xsd:long");
-	case SOAP_TYPE_PointerTons1__icatRole:
-		return soap_out_PointerTons1__icatRole(soap, tag, id, (ns1__icatRole *const*)ptr, "ns1:icatRole");
-	case SOAP_TYPE_PointerTons1__sample:
-		return soap_out_PointerTons1__sample(soap, tag, id, (ns1__sample *const*)ptr, "ns1:sample");
-	case SOAP_TYPE_PointerTostd__string:
-		return soap_out_PointerTostd__string(soap, tag, id, (std::string *const*)ptr, "xsd:string");
-	case SOAP_TYPE__QName:
-		return soap_out_string(soap, tag, id, (char*const*)&ptr, "xsd:QName");
-	case SOAP_TYPE_string:
-		return soap_out_string(soap, tag, id, (char*const*)&ptr, "xsd:string");
-	}
-	return SOAP_OK;
-}
-
-#ifdef __cplusplus
-}
-#endif
-#endif
-
-#ifndef WITH_NOIDREF
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type)
-{
-	(void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */
-	switch (type)
-	{
-	case SOAP_TYPE_ns1__datasetInclude_:
-		((ns1__datasetInclude_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__elementType_:
-		((ns1__elementType_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__logicalOperator_:
-		((ns1__logicalOperator_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__investigationInclude_:
-		((ns1__investigationInclude_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__keywordType_:
-		((ns1__keywordType_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterType_:
-		((ns1__parameterType_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__comparisonOperator_:
-		((ns1__comparisonOperator_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datafileInclude_:
-		((ns1__datafileInclude_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterValueType_:
-		((ns1__parameterValueType_ *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatasetsResponse:
-		((ns1__getDatasetsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatasets:
-		((ns1__getDatasets *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listParametersResponse:
-		((ns1__listParametersResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listParameters:
-		((ns1__listParameters *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
-		((ns1__modifyDataFileParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFileParameter:
-		((ns1__modifyDataFileParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
-		((ns1__deleteSampleParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteSampleParameter:
-		((ns1__deleteSampleParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParameterResponse:
-		((ns1__addDataFileParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParameter:
-		((ns1__addDataFileParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
-		((ns1__searchDatasetsBySampleResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsBySample:
-		((ns1__searchDatasetsBySample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createInvestigationResponse:
-		((ns1__createInvestigationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createInvestigation:
-		((ns1__createInvestigation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addPublicationResponse:
-		((ns1__addPublicationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addPublication:
-		((ns1__addPublication *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
-		((ns1__deleteDataFileParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFileParameter:
-		((ns1__deleteDataFileParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationResponse:
-		((ns1__getInvestigationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getInvestigation:
-		((ns1__getInvestigation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
-		((ns1__getInvestigationIncludesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationIncludes:
-		((ns1__getInvestigationIncludes *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFileResponse:
-		((ns1__modifyDataFileResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFile:
-		((ns1__modifyDataFile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatafileResponse:
-		((ns1__getDatafileResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatafile:
-		((ns1__getDatafile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__ICATAPIException:
-		((ns1__ICATAPIException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__ingestMetadataResponse:
-		((ns1__ingestMetadataResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__ingestMetadata:
-		((ns1__ingestMetadata *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listRolesResponse:
-		((ns1__listRolesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listRoles:
-		((ns1__listRoles *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatasetResponse:
-		((ns1__getDatasetResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDataset:
-		((ns1__getDataset *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
-		((ns1__getDatasetIncludesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatasetIncludes:
-		((ns1__getDatasetIncludes *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__updateAuthorisationResponse:
-		((ns1__updateAuthorisationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__updateAuthorisation:
-		((ns1__updateAuthorisation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
-		((ns1__deleteAuthorisationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteAuthorisation:
-		((ns1__deleteAuthorisation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deletePublicationResponse:
-		((ns1__deletePublicationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deletePublication:
-		((ns1__deletePublication *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__loginResponse:
-		((ns1__loginResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__login:
-		((ns1__login *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__loginLifetimeResponse:
-		((ns1__loginLifetimeResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__loginLifetime:
-		((ns1__loginLifetime *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addSampleResponse:
-		((ns1__addSampleResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addSample:
-		((ns1__addSample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addAuthorisationResponse:
-		((ns1__addAuthorisationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addAuthorisation:
-		((ns1__addAuthorisation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParameterResponse:
-		((ns1__addDataSetParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParameter:
-		((ns1__addDataSetParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataFilesResponse:
-		((ns1__createDataFilesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataFiles:
-		((ns1__createDataFiles *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
-		((ns1__modifyInvestigatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigator:
-		((ns1__modifyInvestigator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
-		((ns1__searchByParameterComparatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparator:
-		((ns1__searchByParameterComparator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifySampleParameterResponse:
-		((ns1__modifySampleParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifySampleParameter:
-		((ns1__modifySampleParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
-		((ns1__listDatafileFormatsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listDatafileFormats:
-		((ns1__listDatafileFormats *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
-		((ns1__searchByAdvancedPaginationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvancedPagination:
-		((ns1__searchByAdvancedPagination *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvancedResponse:
-		((ns1__searchByAdvancedResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__advancedSearchDetails:
-		((ns1__advancedSearchDetails *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvanced:
-		((ns1__searchByAdvanced *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
-		((ns1__searchByRunNumberPaginationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumberPagination:
-		((ns1__searchByRunNumberPagination *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumberResponse:
-		((ns1__searchByRunNumberResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumber:
-		((ns1__searchByRunNumber *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParametersResponse:
-		((ns1__addDataSetParametersResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParameters:
-		((ns1__addDataSetParameters *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteKeywordResponse:
-		((ns1__deleteKeywordResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteKeyword:
-		((ns1__deleteKeyword *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteSampleResponse:
-		((ns1__deleteSampleResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteSample:
-		((ns1__deleteSample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listDatasetStatusResponse:
-		((ns1__listDatasetStatusResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listDatasetStatus:
-		((ns1__listDatasetStatus *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigationResponse:
-		((ns1__modifyInvestigationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigation:
-		((ns1__modifyInvestigation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addKeywordResponse:
-		((ns1__addKeywordResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addKeyword:
-		((ns1__addKeyword *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__icatAuthorisation:
-		((ns1__icatAuthorisation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getAuthorisationsResponse:
-		((ns1__getAuthorisationsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getAuthorisations:
-		((ns1__getAuthorisations *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataSetResponse:
-		((ns1__removeDataSetResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataSet:
-		((ns1__removeDataSet *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
-		((ns1__modifyDataSetParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSetParameter:
-		((ns1__modifyDataSetParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
-		((ns1__listInvestigationTypesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listInvestigationTypes:
-		((ns1__listInvestigationTypes *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
-		((ns1__getKeywordsForUserTypeResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserType:
-		((ns1__getKeywordsForUserType *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
-		((ns1__getKeywordsForUserMaxResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserMax:
-		((ns1__getKeywordsForUserMax *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
-		((ns1__getKeywordsForUserStartWithMaxResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
-		((ns1__getKeywordsForUserStartWithMax *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
-		((ns1__getKeywordsForUserResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUser:
-		((ns1__getKeywordsForUser *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafileResponse:
-		((ns1__downloadDatafileResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafile:
-		((ns1__downloadDatafile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
-		((ns1__searchDatasetsByParameterComparatorsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
-		((ns1__searchDatasetsByParameterComparators *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__setDataSetSampleResponse:
-		((ns1__setDataSetSampleResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__setDataSetSample:
-		((ns1__setDataSetSample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
-		((ns1__deleteDataSetParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSetParameter:
-		((ns1__deleteDataSetParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeSampleParameterResponse:
-		((ns1__removeSampleParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeSampleParameter:
-		((ns1__removeSampleParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
-		((ns1__searchDatasetsByParameterComparatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
-		((ns1__searchDatasetsByParameterComparator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataSetResponse:
-		((ns1__createDataSetResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataSet:
-		((ns1__createDataSet *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addInvestigatorResponse:
-		((ns1__addInvestigatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addInvestigator:
-		((ns1__addInvestigator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
-		((ns1__deleteInvestigatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigator:
-		((ns1__deleteInvestigator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
-		((ns1__getICATAPIVersionResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getICATAPIVersion:
-		((ns1__getICATAPIVersion *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatafilesResponse:
-		((ns1__getDatafilesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getDatafiles:
-		((ns1__getDatafiles *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
-		((ns1__searchByParameterOperatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterLogicalCondition:
-		((ns1__parameterLogicalCondition *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterOperator:
-		((ns1__searchByParameterOperator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__isSessionValidResponse:
-		((ns1__isSessionValidResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__isSessionValid:
-		((ns1__isSessionValid *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSetResponse:
-		((ns1__deleteDataSetResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSet:
-		((ns1__deleteDataSet *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
-		((ns1__searchDatafilesByParameterComparatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
-		((ns1__searchDatafilesByParameterComparator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
-		((ns1__getInvestigationsIncludesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationsIncludes:
-		((ns1__getInvestigationsIncludes *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
-		((ns1__removeDataFileParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataFileParameter:
-		((ns1__removeDataFileParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
-		((ns1__searchByUserIDPaginationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserIDPagination:
-		((ns1__searchByUserIDPagination *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserIDResponse:
-		((ns1__searchByUserIDResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserID:
-		((ns1__searchByUserID *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyPublicationResponse:
-		((ns1__modifyPublicationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyPublication:
-		((ns1__modifyPublication *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
-		((ns1__removeDataSetParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataSetParameter:
-		((ns1__removeDataSetParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
-		((ns1__getMyInvestigationsIncludesPaginationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
-		((ns1__getMyInvestigationsIncludesPagination *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
-		((ns1__getMyInvestigationsIncludesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
-		((ns1__getMyInvestigationsIncludes *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
-		((ns1__getMyInvestigationsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigations:
-		((ns1__getMyInvestigations *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
-		((ns1__searchByKeywordsAllResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__keywordDetails:
-		((ns1__keywordDetails *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywordsAll:
-		((ns1__searchByKeywordsAll *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywordsResponse:
-		((ns1__searchByKeywordsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywords:
-		((ns1__searchByKeywords *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
-		((ns1__checkDatasetDownloadAccessResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
-		((ns1__checkDatasetDownloadAccess *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
-		((ns1__searchByUserSurnamePaginationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
-		((ns1__searchByUserSurnamePagination *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
-		((ns1__searchByUserSurnameResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurname:
-		((ns1__searchByUserSurname *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFileResponse:
-		((ns1__deleteDataFileResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFile:
-		((ns1__deleteDataFile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadInfo:
-		((ns1__downloadInfo *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
-		((ns1__checkDatafileDownloadAccessResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
-		((ns1__checkDatafileDownloadAccess *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
-		((ns1__getFacilityUserByFacilityUserIdResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
-		((ns1__getFacilityUserByFacilityUserId *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addSampleParameterResponse:
-		((ns1__addSampleParameterResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addSampleParameter:
-		((ns1__addSampleParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSetResponse:
-		((ns1__modifyDataSetResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSet:
-		((ns1__modifyDataSet *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafilesResponse:
-		((ns1__downloadDatafilesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafiles:
-		((ns1__downloadDatafiles *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__NoSuchUserException:
-		((ns1__NoSuchUserException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__userDetails:
-		((ns1__userDetails *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getUserDetailsResponse:
-		((ns1__getUserDetailsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getUserDetails:
-		((ns1__getUserDetails *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getAllKeywordsResponse:
-		((ns1__getAllKeywordsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getAllKeywords:
-		((ns1__getAllKeywords *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removePublicationResponse:
-		((ns1__removePublicationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removePublication:
-		((ns1__removePublication *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataSetsResponse:
-		((ns1__createDataSetsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataSets:
-		((ns1__createDataSets *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigationResponse:
-		((ns1__deleteInvestigationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigation:
-		((ns1__deleteInvestigation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeKeywordResponse:
-		((ns1__removeKeywordResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeKeyword:
-		((ns1__removeKeyword *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigatorResponse:
-		((ns1__removeInvestigatorResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigator:
-		((ns1__removeInvestigator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigationResponse:
-		((ns1__removeInvestigationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigation:
-		((ns1__removeInvestigation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
-		((ns1__getFacilityUserByFederalIdResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
-		((ns1__getFacilityUserByFederalId *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadDatasetResponse:
-		((ns1__downloadDatasetResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__downloadDataset:
-		((ns1__downloadDataset *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__logoutResponse:
-		((ns1__logoutResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__logout:
-		((ns1__logout *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
-		((ns1__listFacilityCyclesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listFacilityCycles:
-		((ns1__listFacilityCycles *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParametersResponse:
-		((ns1__addDataFileParametersResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParameters:
-		((ns1__addDataFileParameters *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeAuthorisationResponse:
-		((ns1__removeAuthorisationResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeAuthorisation:
-		((ns1__removeAuthorisation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataFileResponse:
-		((ns1__removeDataFileResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeDataFile:
-		((ns1__removeDataFile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
-		((ns1__searchDatafilesByParameterComparatorsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
-		((ns1__searchDatafilesByParameterComparators *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__ParameterSearchException:
-		((ns1__ParameterSearchException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__shiftPK:
-		((ns1__shiftPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__shift:
-		((ns1__shift *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__publication:
-		((ns1__publication *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__keywordPK:
-		((ns1__keywordPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__keyword:
-		((ns1__keyword *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__investigatorPK:
-		((ns1__investigatorPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__facilityUser:
-		((ns1__facilityUser *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__investigator:
-		((ns1__investigator *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__facilityCycle:
-		((ns1__facilityCycle *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datasetParameterPK:
-		((ns1__datasetParameterPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datasetParameter:
-		((ns1__datasetParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__dataset:
-		((ns1__dataset *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__investigation:
-		((ns1__investigation *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
-		((ns1__searchByParameterComparatorsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterPK:
-		((ns1__parameterPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameter:
-		((ns1__parameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterValued:
-		((ns1__parameterValued *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterCondition:
-		((ns1__parameterCondition *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__parameterComparisonCondition:
-		((ns1__parameterComparisonCondition *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparators:
-		((ns1__searchByParameterComparators *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifySampleResponse:
-		((ns1__modifySampleResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__modifySample:
-		((ns1__modifySample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__ValidationException:
-		((ns1__ValidationException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataFileResponse:
-		((ns1__createDataFileResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__relatedDatafilesPK:
-		((ns1__relatedDatafilesPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__relatedDatafiles:
-		((ns1__relatedDatafiles *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datafileParameterPK:
-		((ns1__datafileParameterPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datafileParameter:
-		((ns1__datafileParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datafileFormatPK:
-		((ns1__datafileFormatPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datafileFormat:
-		((ns1__datafileFormat *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__datafile:
-		((ns1__datafile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__createDataFile:
-		((ns1__createDataFile *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listInstrumentsResponse:
-		((ns1__listInstrumentsResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listInstruments:
-		((ns1__listInstruments *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
-		((ns1__NoSuchObjectFoundException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
-		((ns1__InsufficientPrivilegesException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeSampleResponse:
-		((ns1__removeSampleResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__removeSample:
-		((ns1__removeSample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__icatRole:
-		((ns1__icatRole *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
-		((ns1__entityPrimaryKeyBaseBean *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__sampleParameterPK:
-		((ns1__sampleParameterPK *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__sampleParameter:
-		((ns1__sampleParameter *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__entityBaseBean:
-		((ns1__entityBaseBean *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__sample:
-		((ns1__sample *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
-		((ns1__searchSamplesBySampleNameResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__searchSamplesBySampleName:
-		((ns1__searchSamplesBySampleName *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__SessionException:
-		((ns1__SessionException *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listDatasetTypesResponse:
-		((ns1__listDatasetTypesResponse *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_ns1__listDatasetTypes:
-		((ns1__listDatasetTypes *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_std__string:
-		soap_serialize_std__string(soap, (const std::string *)ptr);
-		break;
-	case SOAP_TYPE_xsd__string:
-		((xsd__string *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__long:
-		((xsd__long *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__int:
-		((xsd__int *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__float:
-		((xsd__float *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__double:
-		((xsd__double *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__dateTime:
-		((xsd__dateTime *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__boolean:
-		((xsd__boolean *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE_xsd__anyType:
-		((xsd__anyType *)ptr)->soap_serialize(soap);
-		break;
-	case SOAP_TYPE___ns1__searchDatafilesByParameterComparators:
-		soap_serialize___ns1__searchDatafilesByParameterComparators(soap, (const struct __ns1__searchDatafilesByParameterComparators *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatafilesByParameterComparator:
-		soap_serialize___ns1__searchDatafilesByParameterComparator(soap, (const struct __ns1__searchDatafilesByParameterComparator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatasetsByParameterComparators:
-		soap_serialize___ns1__searchDatasetsByParameterComparators(soap, (const struct __ns1__searchDatasetsByParameterComparators *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatasetsByParameterComparator:
-		soap_serialize___ns1__searchDatasetsByParameterComparator(soap, (const struct __ns1__searchDatasetsByParameterComparator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByParameterComparators:
-		soap_serialize___ns1__searchByParameterComparators(soap, (const struct __ns1__searchByParameterComparators *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByParameterComparator:
-		soap_serialize___ns1__searchByParameterComparator(soap, (const struct __ns1__searchByParameterComparator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByParameterOperator:
-		soap_serialize___ns1__searchByParameterOperator(soap, (const struct __ns1__searchByParameterOperator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__isSessionValid:
-		soap_serialize___ns1__isSessionValid(soap, (const struct __ns1__isSessionValid *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getFacilityUserByFederalId:
-		soap_serialize___ns1__getFacilityUserByFederalId(soap, (const struct __ns1__getFacilityUserByFederalId *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getFacilityUserByFacilityUserId:
-		soap_serialize___ns1__getFacilityUserByFacilityUserId(soap, (const struct __ns1__getFacilityUserByFacilityUserId *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getICATAPIVersion:
-		soap_serialize___ns1__getICATAPIVersion(soap, (const struct __ns1__getICATAPIVersion *)ptr);
-		break;
-	case SOAP_TYPE___ns1__ingestMetadata:
-		soap_serialize___ns1__ingestMetadata(soap, (const struct __ns1__ingestMetadata *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSetParameter:
-		soap_serialize___ns1__removeDataSetParameter(soap, (const struct __ns1__removeDataSetParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSetParameterResponse:
-		soap_serialize___ns1__removeDataSetParameterResponse(soap, (const struct __ns1__removeDataSetParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSet:
-		soap_serialize___ns1__removeDataSet(soap, (const struct __ns1__removeDataSet *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSetResponse:
-		soap_serialize___ns1__removeDataSetResponse(soap, (const struct __ns1__removeDataSetResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataSetParameters:
-		soap_serialize___ns1__addDataSetParameters(soap, (const struct __ns1__addDataSetParameters *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataSetParameter:
-		soap_serialize___ns1__addDataSetParameter(soap, (const struct __ns1__addDataSetParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__setDataSetSample:
-		soap_serialize___ns1__setDataSetSample(soap, (const struct __ns1__setDataSetSample *)ptr);
-		break;
-	case SOAP_TYPE___ns1__setDataSetSampleResponse:
-		soap_serialize___ns1__setDataSetSampleResponse(soap, (const struct __ns1__setDataSetSampleResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSetParameter:
-		soap_serialize___ns1__modifyDataSetParameter(soap, (const struct __ns1__modifyDataSetParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSetParameterResponse:
-		soap_serialize___ns1__modifyDataSetParameterResponse(soap, (const struct __ns1__modifyDataSetParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSet:
-		soap_serialize___ns1__modifyDataSet(soap, (const struct __ns1__modifyDataSet *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSetResponse:
-		soap_serialize___ns1__modifyDataSetResponse(soap, (const struct __ns1__modifyDataSetResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSetParameter:
-		soap_serialize___ns1__deleteDataSetParameter(soap, (const struct __ns1__deleteDataSetParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSetParameterResponse:
-		soap_serialize___ns1__deleteDataSetParameterResponse(soap, (const struct __ns1__deleteDataSetParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSet:
-		soap_serialize___ns1__deleteDataSet(soap, (const struct __ns1__deleteDataSet *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSetResponse:
-		soap_serialize___ns1__deleteDataSetResponse(soap, (const struct __ns1__deleteDataSetResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataSets:
-		soap_serialize___ns1__createDataSets(soap, (const struct __ns1__createDataSets *)ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataSet:
-		soap_serialize___ns1__createDataSet(soap, (const struct __ns1__createDataSet *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatasets:
-		soap_serialize___ns1__getDatasets(soap, (const struct __ns1__getDatasets *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listDatafileFormats:
-		soap_serialize___ns1__listDatafileFormats(soap, (const struct __ns1__listDatafileFormats *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByRunNumberPagination:
-		soap_serialize___ns1__searchByRunNumberPagination(soap, (const struct __ns1__searchByRunNumberPagination *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByRunNumber:
-		soap_serialize___ns1__searchByRunNumber(soap, (const struct __ns1__searchByRunNumber *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listDatasetStatus:
-		soap_serialize___ns1__listDatasetStatus(soap, (const struct __ns1__listDatasetStatus *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listDatasetTypes:
-		soap_serialize___ns1__listDatasetTypes(soap, (const struct __ns1__listDatasetTypes *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatasetsBySample:
-		soap_serialize___ns1__searchDatasetsBySample(soap, (const struct __ns1__searchDatasetsBySample *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchSamplesBySampleName:
-		soap_serialize___ns1__searchSamplesBySampleName(soap, (const struct __ns1__searchSamplesBySampleName *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listInvestigationTypes:
-		soap_serialize___ns1__listInvestigationTypes(soap, (const struct __ns1__listInvestigationTypes *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listFacilityCycles:
-		soap_serialize___ns1__listFacilityCycles(soap, (const struct __ns1__listFacilityCycles *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listParameters:
-		soap_serialize___ns1__listParameters(soap, (const struct __ns1__listParameters *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listRoles:
-		soap_serialize___ns1__listRoles(soap, (const struct __ns1__listRoles *)ptr);
-		break;
-	case SOAP_TYPE___ns1__listInstruments:
-		soap_serialize___ns1__listInstruments(soap, (const struct __ns1__listInstruments *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserSurnamePagination:
-		soap_serialize___ns1__searchByUserSurnamePagination(soap, (const struct __ns1__searchByUserSurnamePagination *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserSurname:
-		soap_serialize___ns1__searchByUserSurname(soap, (const struct __ns1__searchByUserSurname *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserIDPagination:
-		soap_serialize___ns1__searchByUserIDPagination(soap, (const struct __ns1__searchByUserIDPagination *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserID:
-		soap_serialize___ns1__searchByUserID(soap, (const struct __ns1__searchByUserID *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination:
-		soap_serialize___ns1__getMyInvestigationsIncludesPagination(soap, (const struct __ns1__getMyInvestigationsIncludesPagination *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getMyInvestigationsIncludes:
-		soap_serialize___ns1__getMyInvestigationsIncludes(soap, (const struct __ns1__getMyInvestigationsIncludes *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getMyInvestigations:
-		soap_serialize___ns1__getMyInvestigations(soap, (const struct __ns1__getMyInvestigations *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByKeywordsAll:
-		soap_serialize___ns1__searchByKeywordsAll(soap, (const struct __ns1__searchByKeywordsAll *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByKeywords:
-		soap_serialize___ns1__searchByKeywords(soap, (const struct __ns1__searchByKeywords *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByAdvancedPagination:
-		soap_serialize___ns1__searchByAdvancedPagination(soap, (const struct __ns1__searchByAdvancedPagination *)ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByAdvanced:
-		soap_serialize___ns1__searchByAdvanced(soap, (const struct __ns1__searchByAdvanced *)ptr);
-		break;
-	case SOAP_TYPE___ns1__checkDatasetDownloadAccess:
-		soap_serialize___ns1__checkDatasetDownloadAccess(soap, (const struct __ns1__checkDatasetDownloadAccess *)ptr);
-		break;
-	case SOAP_TYPE___ns1__checkDatafileDownloadAccess:
-		soap_serialize___ns1__checkDatafileDownloadAccess(soap, (const struct __ns1__checkDatafileDownloadAccess *)ptr);
-		break;
-	case SOAP_TYPE___ns1__downloadDataset:
-		soap_serialize___ns1__downloadDataset(soap, (const struct __ns1__downloadDataset *)ptr);
-		break;
-	case SOAP_TYPE___ns1__downloadDatafiles:
-		soap_serialize___ns1__downloadDatafiles(soap, (const struct __ns1__downloadDatafiles *)ptr);
-		break;
-	case SOAP_TYPE___ns1__downloadDatafile:
-		soap_serialize___ns1__downloadDatafile(soap, (const struct __ns1__downloadDatafile *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getAllKeywords:
-		soap_serialize___ns1__getAllKeywords(soap, (const struct __ns1__getAllKeywords *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUserType:
-		soap_serialize___ns1__getKeywordsForUserType(soap, (const struct __ns1__getKeywordsForUserType *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUserMax:
-		soap_serialize___ns1__getKeywordsForUserMax(soap, (const struct __ns1__getKeywordsForUserMax *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUserStartWithMax:
-		soap_serialize___ns1__getKeywordsForUserStartWithMax(soap, (const struct __ns1__getKeywordsForUserStartWithMax *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUser:
-		soap_serialize___ns1__getKeywordsForUser(soap, (const struct __ns1__getKeywordsForUser *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFileParameter:
-		soap_serialize___ns1__deleteDataFileParameter(soap, (const struct __ns1__deleteDataFileParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFileParameterResponse:
-		soap_serialize___ns1__deleteDataFileParameterResponse(soap, (const struct __ns1__deleteDataFileParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFileParameter:
-		soap_serialize___ns1__removeDataFileParameter(soap, (const struct __ns1__removeDataFileParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFileParameterResponse:
-		soap_serialize___ns1__removeDataFileParameterResponse(soap, (const struct __ns1__removeDataFileParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFileParameter:
-		soap_serialize___ns1__modifyDataFileParameter(soap, (const struct __ns1__modifyDataFileParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFileParameterResponse:
-		soap_serialize___ns1__modifyDataFileParameterResponse(soap, (const struct __ns1__modifyDataFileParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataFileParameters:
-		soap_serialize___ns1__addDataFileParameters(soap, (const struct __ns1__addDataFileParameters *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFile:
-		soap_serialize___ns1__modifyDataFile(soap, (const struct __ns1__modifyDataFile *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFileResponse:
-		soap_serialize___ns1__modifyDataFileResponse(soap, (const struct __ns1__modifyDataFileResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFile:
-		soap_serialize___ns1__removeDataFile(soap, (const struct __ns1__removeDataFile *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFileResponse:
-		soap_serialize___ns1__removeDataFileResponse(soap, (const struct __ns1__removeDataFileResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFile:
-		soap_serialize___ns1__deleteDataFile(soap, (const struct __ns1__deleteDataFile *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFileResponse:
-		soap_serialize___ns1__deleteDataFileResponse(soap, (const struct __ns1__deleteDataFileResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataFiles:
-		soap_serialize___ns1__createDataFiles(soap, (const struct __ns1__createDataFiles *)ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataFile:
-		soap_serialize___ns1__createDataFile(soap, (const struct __ns1__createDataFile *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatafiles:
-		soap_serialize___ns1__getDatafiles(soap, (const struct __ns1__getDatafiles *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getUserDetails:
-		soap_serialize___ns1__getUserDetails(soap, (const struct __ns1__getUserDetails *)ptr);
-		break;
-	case SOAP_TYPE___ns1__updateAuthorisation:
-		soap_serialize___ns1__updateAuthorisation(soap, (const struct __ns1__updateAuthorisation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__updateAuthorisationResponse:
-		soap_serialize___ns1__updateAuthorisationResponse(soap, (const struct __ns1__updateAuthorisationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeAuthorisation:
-		soap_serialize___ns1__removeAuthorisation(soap, (const struct __ns1__removeAuthorisation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeAuthorisationResponse:
-		soap_serialize___ns1__removeAuthorisationResponse(soap, (const struct __ns1__removeAuthorisationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteAuthorisation:
-		soap_serialize___ns1__deleteAuthorisation(soap, (const struct __ns1__deleteAuthorisation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteAuthorisationResponse:
-		soap_serialize___ns1__deleteAuthorisationResponse(soap, (const struct __ns1__deleteAuthorisationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addAuthorisation:
-		soap_serialize___ns1__addAuthorisation(soap, (const struct __ns1__addAuthorisation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getAuthorisations:
-		soap_serialize___ns1__getAuthorisations(soap, (const struct __ns1__getAuthorisations *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySampleParameter:
-		soap_serialize___ns1__modifySampleParameter(soap, (const struct __ns1__modifySampleParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySampleParameterResponse:
-		soap_serialize___ns1__modifySampleParameterResponse(soap, (const struct __ns1__modifySampleParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSampleParameter:
-		soap_serialize___ns1__deleteSampleParameter(soap, (const struct __ns1__deleteSampleParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSampleParameterResponse:
-		soap_serialize___ns1__deleteSampleParameterResponse(soap, (const struct __ns1__deleteSampleParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSampleParameter:
-		soap_serialize___ns1__removeSampleParameter(soap, (const struct __ns1__removeSampleParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSampleParameterResponse:
-		soap_serialize___ns1__removeSampleParameterResponse(soap, (const struct __ns1__removeSampleParameterResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySample:
-		soap_serialize___ns1__modifySample(soap, (const struct __ns1__modifySample *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySampleResponse:
-		soap_serialize___ns1__modifySampleResponse(soap, (const struct __ns1__modifySampleResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSample:
-		soap_serialize___ns1__deleteSample(soap, (const struct __ns1__deleteSample *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSampleResponse:
-		soap_serialize___ns1__deleteSampleResponse(soap, (const struct __ns1__deleteSampleResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSample:
-		soap_serialize___ns1__removeSample(soap, (const struct __ns1__removeSample *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSampleResponse:
-		soap_serialize___ns1__removeSampleResponse(soap, (const struct __ns1__removeSampleResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigator:
-		soap_serialize___ns1__deleteInvestigator(soap, (const struct __ns1__deleteInvestigator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigatorResponse:
-		soap_serialize___ns1__deleteInvestigatorResponse(soap, (const struct __ns1__deleteInvestigatorResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigator:
-		soap_serialize___ns1__modifyInvestigator(soap, (const struct __ns1__modifyInvestigator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigatorResponse:
-		soap_serialize___ns1__modifyInvestigatorResponse(soap, (const struct __ns1__modifyInvestigatorResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigator:
-		soap_serialize___ns1__removeInvestigator(soap, (const struct __ns1__removeInvestigator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigatorResponse:
-		soap_serialize___ns1__removeInvestigatorResponse(soap, (const struct __ns1__removeInvestigatorResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyPublication:
-		soap_serialize___ns1__modifyPublication(soap, (const struct __ns1__modifyPublication *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyPublicationResponse:
-		soap_serialize___ns1__modifyPublicationResponse(soap, (const struct __ns1__modifyPublicationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deletePublication:
-		soap_serialize___ns1__deletePublication(soap, (const struct __ns1__deletePublication *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deletePublicationResponse:
-		soap_serialize___ns1__deletePublicationResponse(soap, (const struct __ns1__deletePublicationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removePublication:
-		soap_serialize___ns1__removePublication(soap, (const struct __ns1__removePublication *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removePublicationResponse:
-		soap_serialize___ns1__removePublicationResponse(soap, (const struct __ns1__removePublicationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteKeyword:
-		soap_serialize___ns1__deleteKeyword(soap, (const struct __ns1__deleteKeyword *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteKeywordResponse:
-		soap_serialize___ns1__deleteKeywordResponse(soap, (const struct __ns1__deleteKeywordResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeKeyword:
-		soap_serialize___ns1__removeKeyword(soap, (const struct __ns1__removeKeyword *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeKeywordResponse:
-		soap_serialize___ns1__removeKeywordResponse(soap, (const struct __ns1__removeKeywordResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigation:
-		soap_serialize___ns1__modifyInvestigation(soap, (const struct __ns1__modifyInvestigation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigationResponse:
-		soap_serialize___ns1__modifyInvestigationResponse(soap, (const struct __ns1__modifyInvestigationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigation:
-		soap_serialize___ns1__deleteInvestigation(soap, (const struct __ns1__deleteInvestigation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigationResponse:
-		soap_serialize___ns1__deleteInvestigationResponse(soap, (const struct __ns1__deleteInvestigationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigation:
-		soap_serialize___ns1__removeInvestigation(soap, (const struct __ns1__removeInvestigation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigationResponse:
-		soap_serialize___ns1__removeInvestigationResponse(soap, (const struct __ns1__removeInvestigationResponse *)ptr);
-		break;
-	case SOAP_TYPE___ns1__createInvestigation:
-		soap_serialize___ns1__createInvestigation(soap, (const struct __ns1__createInvestigation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getInvestigationsIncludes:
-		soap_serialize___ns1__getInvestigationsIncludes(soap, (const struct __ns1__getInvestigationsIncludes *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataFileParameter:
-		soap_serialize___ns1__addDataFileParameter(soap, (const struct __ns1__addDataFileParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatafile:
-		soap_serialize___ns1__getDatafile(soap, (const struct __ns1__getDatafile *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatasetIncludes:
-		soap_serialize___ns1__getDatasetIncludes(soap, (const struct __ns1__getDatasetIncludes *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getDataset:
-		soap_serialize___ns1__getDataset(soap, (const struct __ns1__getDataset *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getInvestigationIncludes:
-		soap_serialize___ns1__getInvestigationIncludes(soap, (const struct __ns1__getInvestigationIncludes *)ptr);
-		break;
-	case SOAP_TYPE___ns1__getInvestigation:
-		soap_serialize___ns1__getInvestigation(soap, (const struct __ns1__getInvestigation *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addInvestigator:
-		soap_serialize___ns1__addInvestigator(soap, (const struct __ns1__addInvestigator *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addKeyword:
-		soap_serialize___ns1__addKeyword(soap, (const struct __ns1__addKeyword *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addPublication:
-		soap_serialize___ns1__addPublication(soap, (const struct __ns1__addPublication *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addSampleParameter:
-		soap_serialize___ns1__addSampleParameter(soap, (const struct __ns1__addSampleParameter *)ptr);
-		break;
-	case SOAP_TYPE___ns1__logout:
-		soap_serialize___ns1__logout(soap, (const struct __ns1__logout *)ptr);
-		break;
-	case SOAP_TYPE___ns1__addSample:
-		soap_serialize___ns1__addSample(soap, (const struct __ns1__addSample *)ptr);
-		break;
-	case SOAP_TYPE___ns1__loginLifetime:
-		soap_serialize___ns1__loginLifetime(soap, (const struct __ns1__loginLifetime *)ptr);
-		break;
-	case SOAP_TYPE___ns1__login:
-		soap_serialize___ns1__login(soap, (const struct __ns1__login *)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse:
-		soap_serialize_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, (ns1__searchDatafilesByParameterComparatorsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators:
-		soap_serialize_PointerTons1__searchDatafilesByParameterComparators(soap, (ns1__searchDatafilesByParameterComparators *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse:
-		soap_serialize_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, (ns1__searchDatafilesByParameterComparatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator:
-		soap_serialize_PointerTons1__searchDatafilesByParameterComparator(soap, (ns1__searchDatafilesByParameterComparator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse:
-		soap_serialize_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, (ns1__searchDatasetsByParameterComparatorsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators:
-		soap_serialize_PointerTons1__searchDatasetsByParameterComparators(soap, (ns1__searchDatasetsByParameterComparators *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse:
-		soap_serialize_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, (ns1__searchDatasetsByParameterComparatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator:
-		soap_serialize_PointerTons1__searchDatasetsByParameterComparator(soap, (ns1__searchDatasetsByParameterComparator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse:
-		soap_serialize_PointerTons1__searchByParameterComparatorsResponse(soap, (ns1__searchByParameterComparatorsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByParameterComparators:
-		soap_serialize_PointerTons1__searchByParameterComparators(soap, (ns1__searchByParameterComparators *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse:
-		soap_serialize_PointerTons1__searchByParameterComparatorResponse(soap, (ns1__searchByParameterComparatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByParameterComparator:
-		soap_serialize_PointerTons1__searchByParameterComparator(soap, (ns1__searchByParameterComparator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse:
-		soap_serialize_PointerTons1__searchByParameterOperatorResponse(soap, (ns1__searchByParameterOperatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByParameterOperator:
-		soap_serialize_PointerTons1__searchByParameterOperator(soap, (ns1__searchByParameterOperator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__isSessionValidResponse:
-		soap_serialize_PointerTons1__isSessionValidResponse(soap, (ns1__isSessionValidResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__isSessionValid:
-		soap_serialize_PointerTons1__isSessionValid(soap, (ns1__isSessionValid *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse:
-		soap_serialize_PointerTons1__getFacilityUserByFederalIdResponse(soap, (ns1__getFacilityUserByFederalIdResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalId:
-		soap_serialize_PointerTons1__getFacilityUserByFederalId(soap, (ns1__getFacilityUserByFederalId *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse:
-		soap_serialize_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, (ns1__getFacilityUserByFacilityUserIdResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId:
-		soap_serialize_PointerTons1__getFacilityUserByFacilityUserId(soap, (ns1__getFacilityUserByFacilityUserId *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getICATAPIVersionResponse:
-		soap_serialize_PointerTons1__getICATAPIVersionResponse(soap, (ns1__getICATAPIVersionResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getICATAPIVersion:
-		soap_serialize_PointerTons1__getICATAPIVersion(soap, (ns1__getICATAPIVersion *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__ingestMetadataResponse:
-		soap_serialize_PointerTons1__ingestMetadataResponse(soap, (ns1__ingestMetadataResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__ingestMetadata:
-		soap_serialize_PointerTons1__ingestMetadata(soap, (ns1__ingestMetadata *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataSetParameterResponse:
-		soap_serialize_PointerTons1__removeDataSetParameterResponse(soap, (ns1__removeDataSetParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataSetParameter:
-		soap_serialize_PointerTons1__removeDataSetParameter(soap, (ns1__removeDataSetParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataSetResponse:
-		soap_serialize_PointerTons1__removeDataSetResponse(soap, (ns1__removeDataSetResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataSet:
-		soap_serialize_PointerTons1__removeDataSet(soap, (ns1__removeDataSet *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataSetParametersResponse:
-		soap_serialize_PointerTons1__addDataSetParametersResponse(soap, (ns1__addDataSetParametersResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataSetParameters:
-		soap_serialize_PointerTons1__addDataSetParameters(soap, (ns1__addDataSetParameters *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataSetParameterResponse:
-		soap_serialize_PointerTons1__addDataSetParameterResponse(soap, (ns1__addDataSetParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataSetParameter:
-		soap_serialize_PointerTons1__addDataSetParameter(soap, (ns1__addDataSetParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__setDataSetSampleResponse:
-		soap_serialize_PointerTons1__setDataSetSampleResponse(soap, (ns1__setDataSetSampleResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__setDataSetSample:
-		soap_serialize_PointerTons1__setDataSetSample(soap, (ns1__setDataSetSample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse:
-		soap_serialize_PointerTons1__modifyDataSetParameterResponse(soap, (ns1__modifyDataSetParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataSetParameter:
-		soap_serialize_PointerTons1__modifyDataSetParameter(soap, (ns1__modifyDataSetParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataSetResponse:
-		soap_serialize_PointerTons1__modifyDataSetResponse(soap, (ns1__modifyDataSetResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataSet:
-		soap_serialize_PointerTons1__modifyDataSet(soap, (ns1__modifyDataSet *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse:
-		soap_serialize_PointerTons1__deleteDataSetParameterResponse(soap, (ns1__deleteDataSetParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataSetParameter:
-		soap_serialize_PointerTons1__deleteDataSetParameter(soap, (ns1__deleteDataSetParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataSetResponse:
-		soap_serialize_PointerTons1__deleteDataSetResponse(soap, (ns1__deleteDataSetResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataSet:
-		soap_serialize_PointerTons1__deleteDataSet(soap, (ns1__deleteDataSet *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataSetsResponse:
-		soap_serialize_PointerTons1__createDataSetsResponse(soap, (ns1__createDataSetsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataSets:
-		soap_serialize_PointerTons1__createDataSets(soap, (ns1__createDataSets *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataSetResponse:
-		soap_serialize_PointerTons1__createDataSetResponse(soap, (ns1__createDataSetResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataSet:
-		soap_serialize_PointerTons1__createDataSet(soap, (ns1__createDataSet *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatasetsResponse:
-		soap_serialize_PointerTons1__getDatasetsResponse(soap, (ns1__getDatasetsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatasets:
-		soap_serialize_PointerTons1__getDatasets(soap, (ns1__getDatasets *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listDatafileFormatsResponse:
-		soap_serialize_PointerTons1__listDatafileFormatsResponse(soap, (ns1__listDatafileFormatsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listDatafileFormats:
-		soap_serialize_PointerTons1__listDatafileFormats(soap, (ns1__listDatafileFormats *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse:
-		soap_serialize_PointerTons1__searchByRunNumberPaginationResponse(soap, (ns1__searchByRunNumberPaginationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByRunNumberPagination:
-		soap_serialize_PointerTons1__searchByRunNumberPagination(soap, (ns1__searchByRunNumberPagination *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByRunNumberResponse:
-		soap_serialize_PointerTons1__searchByRunNumberResponse(soap, (ns1__searchByRunNumberResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByRunNumber:
-		soap_serialize_PointerTons1__searchByRunNumber(soap, (ns1__searchByRunNumber *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listDatasetStatusResponse:
-		soap_serialize_PointerTons1__listDatasetStatusResponse(soap, (ns1__listDatasetStatusResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listDatasetStatus:
-		soap_serialize_PointerTons1__listDatasetStatus(soap, (ns1__listDatasetStatus *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listDatasetTypesResponse:
-		soap_serialize_PointerTons1__listDatasetTypesResponse(soap, (ns1__listDatasetTypesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listDatasetTypes:
-		soap_serialize_PointerTons1__listDatasetTypes(soap, (ns1__listDatasetTypes *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse:
-		soap_serialize_PointerTons1__searchDatasetsBySampleResponse(soap, (ns1__searchDatasetsBySampleResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchDatasetsBySample:
-		soap_serialize_PointerTons1__searchDatasetsBySample(soap, (ns1__searchDatasetsBySample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse:
-		soap_serialize_PointerTons1__searchSamplesBySampleNameResponse(soap, (ns1__searchSamplesBySampleNameResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchSamplesBySampleName:
-		soap_serialize_PointerTons1__searchSamplesBySampleName(soap, (ns1__searchSamplesBySampleName *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listInvestigationTypesResponse:
-		soap_serialize_PointerTons1__listInvestigationTypesResponse(soap, (ns1__listInvestigationTypesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listInvestigationTypes:
-		soap_serialize_PointerTons1__listInvestigationTypes(soap, (ns1__listInvestigationTypes *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listFacilityCyclesResponse:
-		soap_serialize_PointerTons1__listFacilityCyclesResponse(soap, (ns1__listFacilityCyclesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listFacilityCycles:
-		soap_serialize_PointerTons1__listFacilityCycles(soap, (ns1__listFacilityCycles *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listParametersResponse:
-		soap_serialize_PointerTons1__listParametersResponse(soap, (ns1__listParametersResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listParameters:
-		soap_serialize_PointerTons1__listParameters(soap, (ns1__listParameters *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listRolesResponse:
-		soap_serialize_PointerTons1__listRolesResponse(soap, (ns1__listRolesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listRoles:
-		soap_serialize_PointerTons1__listRoles(soap, (ns1__listRoles *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listInstrumentsResponse:
-		soap_serialize_PointerTons1__listInstrumentsResponse(soap, (ns1__listInstrumentsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__listInstruments:
-		soap_serialize_PointerTons1__listInstruments(soap, (ns1__listInstruments *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse:
-		soap_serialize_PointerTons1__searchByUserSurnamePaginationResponse(soap, (ns1__searchByUserSurnamePaginationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserSurnamePagination:
-		soap_serialize_PointerTons1__searchByUserSurnamePagination(soap, (ns1__searchByUserSurnamePagination *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserSurnameResponse:
-		soap_serialize_PointerTons1__searchByUserSurnameResponse(soap, (ns1__searchByUserSurnameResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserSurname:
-		soap_serialize_PointerTons1__searchByUserSurname(soap, (ns1__searchByUserSurname *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse:
-		soap_serialize_PointerTons1__searchByUserIDPaginationResponse(soap, (ns1__searchByUserIDPaginationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserIDPagination:
-		soap_serialize_PointerTons1__searchByUserIDPagination(soap, (ns1__searchByUserIDPagination *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserIDResponse:
-		soap_serialize_PointerTons1__searchByUserIDResponse(soap, (ns1__searchByUserIDResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByUserID:
-		soap_serialize_PointerTons1__searchByUserID(soap, (ns1__searchByUserID *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse:
-		soap_serialize_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, (ns1__getMyInvestigationsIncludesPaginationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination:
-		soap_serialize_PointerTons1__getMyInvestigationsIncludesPagination(soap, (ns1__getMyInvestigationsIncludesPagination *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse:
-		soap_serialize_PointerTons1__getMyInvestigationsIncludesResponse(soap, (ns1__getMyInvestigationsIncludesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes:
-		soap_serialize_PointerTons1__getMyInvestigationsIncludes(soap, (ns1__getMyInvestigationsIncludes *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getMyInvestigationsResponse:
-		soap_serialize_PointerTons1__getMyInvestigationsResponse(soap, (ns1__getMyInvestigationsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getMyInvestigations:
-		soap_serialize_PointerTons1__getMyInvestigations(soap, (ns1__getMyInvestigations *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse:
-		soap_serialize_PointerTons1__searchByKeywordsAllResponse(soap, (ns1__searchByKeywordsAllResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByKeywordsAll:
-		soap_serialize_PointerTons1__searchByKeywordsAll(soap, (ns1__searchByKeywordsAll *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByKeywordsResponse:
-		soap_serialize_PointerTons1__searchByKeywordsResponse(soap, (ns1__searchByKeywordsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByKeywords:
-		soap_serialize_PointerTons1__searchByKeywords(soap, (ns1__searchByKeywords *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse:
-		soap_serialize_PointerTons1__searchByAdvancedPaginationResponse(soap, (ns1__searchByAdvancedPaginationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByAdvancedPagination:
-		soap_serialize_PointerTons1__searchByAdvancedPagination(soap, (ns1__searchByAdvancedPagination *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByAdvancedResponse:
-		soap_serialize_PointerTons1__searchByAdvancedResponse(soap, (ns1__searchByAdvancedResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__searchByAdvanced:
-		soap_serialize_PointerTons1__searchByAdvanced(soap, (ns1__searchByAdvanced *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse:
-		soap_serialize_PointerTons1__checkDatasetDownloadAccessResponse(soap, (ns1__checkDatasetDownloadAccessResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess:
-		soap_serialize_PointerTons1__checkDatasetDownloadAccess(soap, (ns1__checkDatasetDownloadAccess *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse:
-		soap_serialize_PointerTons1__checkDatafileDownloadAccessResponse(soap, (ns1__checkDatafileDownloadAccessResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess:
-		soap_serialize_PointerTons1__checkDatafileDownloadAccess(soap, (ns1__checkDatafileDownloadAccess *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadDatasetResponse:
-		soap_serialize_PointerTons1__downloadDatasetResponse(soap, (ns1__downloadDatasetResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadDataset:
-		soap_serialize_PointerTons1__downloadDataset(soap, (ns1__downloadDataset *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadDatafilesResponse:
-		soap_serialize_PointerTons1__downloadDatafilesResponse(soap, (ns1__downloadDatafilesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadDatafiles:
-		soap_serialize_PointerTons1__downloadDatafiles(soap, (ns1__downloadDatafiles *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadDatafileResponse:
-		soap_serialize_PointerTons1__downloadDatafileResponse(soap, (ns1__downloadDatafileResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadDatafile:
-		soap_serialize_PointerTons1__downloadDatafile(soap, (ns1__downloadDatafile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getAllKeywordsResponse:
-		soap_serialize_PointerTons1__getAllKeywordsResponse(soap, (ns1__getAllKeywordsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getAllKeywords:
-		soap_serialize_PointerTons1__getAllKeywords(soap, (ns1__getAllKeywords *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse:
-		soap_serialize_PointerTons1__getKeywordsForUserTypeResponse(soap, (ns1__getKeywordsForUserTypeResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserType:
-		soap_serialize_PointerTons1__getKeywordsForUserType(soap, (ns1__getKeywordsForUserType *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse:
-		soap_serialize_PointerTons1__getKeywordsForUserMaxResponse(soap, (ns1__getKeywordsForUserMaxResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserMax:
-		soap_serialize_PointerTons1__getKeywordsForUserMax(soap, (ns1__getKeywordsForUserMax *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse:
-		soap_serialize_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, (ns1__getKeywordsForUserStartWithMaxResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax:
-		soap_serialize_PointerTons1__getKeywordsForUserStartWithMax(soap, (ns1__getKeywordsForUserStartWithMax *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUserResponse:
-		soap_serialize_PointerTons1__getKeywordsForUserResponse(soap, (ns1__getKeywordsForUserResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getKeywordsForUser:
-		soap_serialize_PointerTons1__getKeywordsForUser(soap, (ns1__getKeywordsForUser *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse:
-		soap_serialize_PointerTons1__deleteDataFileParameterResponse(soap, (ns1__deleteDataFileParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataFileParameter:
-		soap_serialize_PointerTons1__deleteDataFileParameter(soap, (ns1__deleteDataFileParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataFileParameterResponse:
-		soap_serialize_PointerTons1__removeDataFileParameterResponse(soap, (ns1__removeDataFileParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataFileParameter:
-		soap_serialize_PointerTons1__removeDataFileParameter(soap, (ns1__removeDataFileParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse:
-		soap_serialize_PointerTons1__modifyDataFileParameterResponse(soap, (ns1__modifyDataFileParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataFileParameter:
-		soap_serialize_PointerTons1__modifyDataFileParameter(soap, (ns1__modifyDataFileParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataFileParametersResponse:
-		soap_serialize_PointerTons1__addDataFileParametersResponse(soap, (ns1__addDataFileParametersResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataFileParameters:
-		soap_serialize_PointerTons1__addDataFileParameters(soap, (ns1__addDataFileParameters *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataFileResponse:
-		soap_serialize_PointerTons1__modifyDataFileResponse(soap, (ns1__modifyDataFileResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyDataFile:
-		soap_serialize_PointerTons1__modifyDataFile(soap, (ns1__modifyDataFile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataFileResponse:
-		soap_serialize_PointerTons1__removeDataFileResponse(soap, (ns1__removeDataFileResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeDataFile:
-		soap_serialize_PointerTons1__removeDataFile(soap, (ns1__removeDataFile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataFileResponse:
-		soap_serialize_PointerTons1__deleteDataFileResponse(soap, (ns1__deleteDataFileResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteDataFile:
-		soap_serialize_PointerTons1__deleteDataFile(soap, (ns1__deleteDataFile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataFilesResponse:
-		soap_serialize_PointerTons1__createDataFilesResponse(soap, (ns1__createDataFilesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataFiles:
-		soap_serialize_PointerTons1__createDataFiles(soap, (ns1__createDataFiles *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataFileResponse:
-		soap_serialize_PointerTons1__createDataFileResponse(soap, (ns1__createDataFileResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createDataFile:
-		soap_serialize_PointerTons1__createDataFile(soap, (ns1__createDataFile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatafilesResponse:
-		soap_serialize_PointerTons1__getDatafilesResponse(soap, (ns1__getDatafilesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatafiles:
-		soap_serialize_PointerTons1__getDatafiles(soap, (ns1__getDatafiles *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getUserDetailsResponse:
-		soap_serialize_PointerTons1__getUserDetailsResponse(soap, (ns1__getUserDetailsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getUserDetails:
-		soap_serialize_PointerTons1__getUserDetails(soap, (ns1__getUserDetails *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__updateAuthorisationResponse:
-		soap_serialize_PointerTons1__updateAuthorisationResponse(soap, (ns1__updateAuthorisationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__updateAuthorisation:
-		soap_serialize_PointerTons1__updateAuthorisation(soap, (ns1__updateAuthorisation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeAuthorisationResponse:
-		soap_serialize_PointerTons1__removeAuthorisationResponse(soap, (ns1__removeAuthorisationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeAuthorisation:
-		soap_serialize_PointerTons1__removeAuthorisation(soap, (ns1__removeAuthorisation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteAuthorisationResponse:
-		soap_serialize_PointerTons1__deleteAuthorisationResponse(soap, (ns1__deleteAuthorisationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteAuthorisation:
-		soap_serialize_PointerTons1__deleteAuthorisation(soap, (ns1__deleteAuthorisation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addAuthorisationResponse:
-		soap_serialize_PointerTons1__addAuthorisationResponse(soap, (ns1__addAuthorisationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addAuthorisation:
-		soap_serialize_PointerTons1__addAuthorisation(soap, (ns1__addAuthorisation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getAuthorisationsResponse:
-		soap_serialize_PointerTons1__getAuthorisationsResponse(soap, (ns1__getAuthorisationsResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getAuthorisations:
-		soap_serialize_PointerTons1__getAuthorisations(soap, (ns1__getAuthorisations *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifySampleParameterResponse:
-		soap_serialize_PointerTons1__modifySampleParameterResponse(soap, (ns1__modifySampleParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifySampleParameter:
-		soap_serialize_PointerTons1__modifySampleParameter(soap, (ns1__modifySampleParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteSampleParameterResponse:
-		soap_serialize_PointerTons1__deleteSampleParameterResponse(soap, (ns1__deleteSampleParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteSampleParameter:
-		soap_serialize_PointerTons1__deleteSampleParameter(soap, (ns1__deleteSampleParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeSampleParameterResponse:
-		soap_serialize_PointerTons1__removeSampleParameterResponse(soap, (ns1__removeSampleParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeSampleParameter:
-		soap_serialize_PointerTons1__removeSampleParameter(soap, (ns1__removeSampleParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifySampleResponse:
-		soap_serialize_PointerTons1__modifySampleResponse(soap, (ns1__modifySampleResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifySample:
-		soap_serialize_PointerTons1__modifySample(soap, (ns1__modifySample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteSampleResponse:
-		soap_serialize_PointerTons1__deleteSampleResponse(soap, (ns1__deleteSampleResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteSample:
-		soap_serialize_PointerTons1__deleteSample(soap, (ns1__deleteSample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeSampleResponse:
-		soap_serialize_PointerTons1__removeSampleResponse(soap, (ns1__removeSampleResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeSample:
-		soap_serialize_PointerTons1__removeSample(soap, (ns1__removeSample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteInvestigatorResponse:
-		soap_serialize_PointerTons1__deleteInvestigatorResponse(soap, (ns1__deleteInvestigatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteInvestigator:
-		soap_serialize_PointerTons1__deleteInvestigator(soap, (ns1__deleteInvestigator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyInvestigatorResponse:
-		soap_serialize_PointerTons1__modifyInvestigatorResponse(soap, (ns1__modifyInvestigatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyInvestigator:
-		soap_serialize_PointerTons1__modifyInvestigator(soap, (ns1__modifyInvestigator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeInvestigatorResponse:
-		soap_serialize_PointerTons1__removeInvestigatorResponse(soap, (ns1__removeInvestigatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeInvestigator:
-		soap_serialize_PointerTons1__removeInvestigator(soap, (ns1__removeInvestigator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyPublicationResponse:
-		soap_serialize_PointerTons1__modifyPublicationResponse(soap, (ns1__modifyPublicationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyPublication:
-		soap_serialize_PointerTons1__modifyPublication(soap, (ns1__modifyPublication *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deletePublicationResponse:
-		soap_serialize_PointerTons1__deletePublicationResponse(soap, (ns1__deletePublicationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deletePublication:
-		soap_serialize_PointerTons1__deletePublication(soap, (ns1__deletePublication *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removePublicationResponse:
-		soap_serialize_PointerTons1__removePublicationResponse(soap, (ns1__removePublicationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removePublication:
-		soap_serialize_PointerTons1__removePublication(soap, (ns1__removePublication *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteKeywordResponse:
-		soap_serialize_PointerTons1__deleteKeywordResponse(soap, (ns1__deleteKeywordResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteKeyword:
-		soap_serialize_PointerTons1__deleteKeyword(soap, (ns1__deleteKeyword *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeKeywordResponse:
-		soap_serialize_PointerTons1__removeKeywordResponse(soap, (ns1__removeKeywordResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeKeyword:
-		soap_serialize_PointerTons1__removeKeyword(soap, (ns1__removeKeyword *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyInvestigationResponse:
-		soap_serialize_PointerTons1__modifyInvestigationResponse(soap, (ns1__modifyInvestigationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__modifyInvestigation:
-		soap_serialize_PointerTons1__modifyInvestigation(soap, (ns1__modifyInvestigation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteInvestigationResponse:
-		soap_serialize_PointerTons1__deleteInvestigationResponse(soap, (ns1__deleteInvestigationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__deleteInvestigation:
-		soap_serialize_PointerTons1__deleteInvestigation(soap, (ns1__deleteInvestigation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeInvestigationResponse:
-		soap_serialize_PointerTons1__removeInvestigationResponse(soap, (ns1__removeInvestigationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__removeInvestigation:
-		soap_serialize_PointerTons1__removeInvestigation(soap, (ns1__removeInvestigation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createInvestigationResponse:
-		soap_serialize_PointerTons1__createInvestigationResponse(soap, (ns1__createInvestigationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__createInvestigation:
-		soap_serialize_PointerTons1__createInvestigation(soap, (ns1__createInvestigation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse:
-		soap_serialize_PointerTons1__getInvestigationsIncludesResponse(soap, (ns1__getInvestigationsIncludesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getInvestigationsIncludes:
-		soap_serialize_PointerTons1__getInvestigationsIncludes(soap, (ns1__getInvestigationsIncludes *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataFileParameterResponse:
-		soap_serialize_PointerTons1__addDataFileParameterResponse(soap, (ns1__addDataFileParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addDataFileParameter:
-		soap_serialize_PointerTons1__addDataFileParameter(soap, (ns1__addDataFileParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatafileResponse:
-		soap_serialize_PointerTons1__getDatafileResponse(soap, (ns1__getDatafileResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatafile:
-		soap_serialize_PointerTons1__getDatafile(soap, (ns1__getDatafile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatasetIncludesResponse:
-		soap_serialize_PointerTons1__getDatasetIncludesResponse(soap, (ns1__getDatasetIncludesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatasetIncludes:
-		soap_serialize_PointerTons1__getDatasetIncludes(soap, (ns1__getDatasetIncludes *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDatasetResponse:
-		soap_serialize_PointerTons1__getDatasetResponse(soap, (ns1__getDatasetResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getDataset:
-		soap_serialize_PointerTons1__getDataset(soap, (ns1__getDataset *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse:
-		soap_serialize_PointerTons1__getInvestigationIncludesResponse(soap, (ns1__getInvestigationIncludesResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getInvestigationIncludes:
-		soap_serialize_PointerTons1__getInvestigationIncludes(soap, (ns1__getInvestigationIncludes *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getInvestigationResponse:
-		soap_serialize_PointerTons1__getInvestigationResponse(soap, (ns1__getInvestigationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__getInvestigation:
-		soap_serialize_PointerTons1__getInvestigation(soap, (ns1__getInvestigation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addInvestigatorResponse:
-		soap_serialize_PointerTons1__addInvestigatorResponse(soap, (ns1__addInvestigatorResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addInvestigator:
-		soap_serialize_PointerTons1__addInvestigator(soap, (ns1__addInvestigator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addKeywordResponse:
-		soap_serialize_PointerTons1__addKeywordResponse(soap, (ns1__addKeywordResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addKeyword:
-		soap_serialize_PointerTons1__addKeyword(soap, (ns1__addKeyword *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addPublicationResponse:
-		soap_serialize_PointerTons1__addPublicationResponse(soap, (ns1__addPublicationResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addPublication:
-		soap_serialize_PointerTons1__addPublication(soap, (ns1__addPublication *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addSampleParameterResponse:
-		soap_serialize_PointerTons1__addSampleParameterResponse(soap, (ns1__addSampleParameterResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addSampleParameter:
-		soap_serialize_PointerTons1__addSampleParameter(soap, (ns1__addSampleParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__logoutResponse:
-		soap_serialize_PointerTons1__logoutResponse(soap, (ns1__logoutResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__logout:
-		soap_serialize_PointerTons1__logout(soap, (ns1__logout *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addSampleResponse:
-		soap_serialize_PointerTons1__addSampleResponse(soap, (ns1__addSampleResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__addSample:
-		soap_serialize_PointerTons1__addSample(soap, (ns1__addSample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__loginLifetimeResponse:
-		soap_serialize_PointerTons1__loginLifetimeResponse(soap, (ns1__loginLifetimeResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__loginLifetime:
-		soap_serialize_PointerTons1__loginLifetime(soap, (ns1__loginLifetime *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__loginResponse:
-		soap_serialize_PointerTons1__loginResponse(soap, (ns1__loginResponse *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__login:
-		soap_serialize_PointerTons1__login(soap, (ns1__login *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__ValidationException:
-		soap_serialize_PointerTons1__ValidationException(soap, (ns1__ValidationException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__SessionException:
-		soap_serialize_PointerTons1__SessionException(soap, (ns1__SessionException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__ParameterSearchException:
-		soap_serialize_PointerTons1__ParameterSearchException(soap, (ns1__ParameterSearchException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__NoSuchUserException:
-		soap_serialize_PointerTons1__NoSuchUserException(soap, (ns1__NoSuchUserException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__NoSuchObjectFoundException:
-		soap_serialize_PointerTons1__NoSuchObjectFoundException(soap, (ns1__NoSuchObjectFoundException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__InsufficientPrivilegesException:
-		soap_serialize_PointerTons1__InsufficientPrivilegesException(soap, (ns1__InsufficientPrivilegesException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__ICATAPIException:
-		soap_serialize_PointerTons1__ICATAPIException(soap, (ns1__ICATAPIException *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__logicalOperator:
-		soap_serialize_PointerTons1__logicalOperator(soap, (enum ns1__logicalOperator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterCondition:
-		soap_serialize_PointerTons1__parameterCondition(soap, (ns1__parameterCondition *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__shiftPK:
-		soap_serialize_PointerTons1__shiftPK(soap, (ns1__shiftPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__shift:
-		soap_serialize_PointerTons1__shift(soap, (ns1__shift *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterPK:
-		soap_serialize_PointerTons1__parameterPK(soap, (ns1__parameterPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterValued:
-		soap_serialize_PointerTons1__parameterValued(soap, (ns1__parameterValued *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__comparisonOperator:
-		soap_serialize_PointerTons1__comparisonOperator(soap, (enum ns1__comparisonOperator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__relatedDatafilesPK:
-		soap_serialize_PointerTons1__relatedDatafilesPK(soap, (ns1__relatedDatafilesPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datafileFormatPK:
-		soap_serialize_PointerTons1__datafileFormatPK(soap, (ns1__datafileFormatPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__relatedDatafiles:
-		soap_serialize_PointerTons1__relatedDatafiles(soap, (ns1__relatedDatafiles *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datafileInclude:
-		soap_serialize_PointerTons1__datafileInclude(soap, (enum ns1__datafileInclude *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterValueType:
-		soap_serialize_PointerTons1__parameterValueType(soap, (enum ns1__parameterValueType *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerToint:
-		soap_serialize_PointerToint(soap, (int *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datasetInclude:
-		soap_serialize_PointerTons1__datasetInclude(soap, (enum ns1__datasetInclude *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datafileFormat:
-		soap_serialize_PointerTons1__datafileFormat(soap, (ns1__datafileFormat *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTodouble:
-		soap_serialize_PointerTodouble(soap, (double *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTotime:
-		soap_serialize_PointerTotime(soap, (time_t *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__advancedSearchDetails:
-		soap_serialize_PointerTons1__advancedSearchDetails(soap, (ns1__advancedSearchDetails *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__keyword:
-		soap_serialize_PointerTons1__keyword(soap, (ns1__keyword *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__icatAuthorisation:
-		soap_serialize_PointerTons1__icatAuthorisation(soap, (ns1__icatAuthorisation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__elementType:
-		soap_serialize_PointerTons1__elementType(soap, (enum ns1__elementType *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datasetParameter:
-		soap_serialize_PointerTons1__datasetParameter(soap, (ns1__datasetParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__sampleParameterPK:
-		soap_serialize_PointerTons1__sampleParameterPK(soap, (ns1__sampleParameterPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__investigator:
-		soap_serialize_PointerTons1__investigator(soap, (ns1__investigator *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterLogicalCondition:
-		soap_serialize_PointerTons1__parameterLogicalCondition(soap, (ns1__parameterLogicalCondition *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datafileParameterPK:
-		soap_serialize_PointerTons1__datafileParameterPK(soap, (ns1__datafileParameterPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__publication:
-		soap_serialize_PointerTons1__publication(soap, (ns1__publication *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datasetParameterPK:
-		soap_serialize_PointerTons1__datasetParameterPK(soap, (ns1__datasetParameterPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__investigationInclude:
-		soap_serialize_PointerTons1__investigationInclude(soap, (enum ns1__investigationInclude *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__keywordDetails:
-		soap_serialize_PointerTons1__keywordDetails(soap, (ns1__keywordDetails *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerToxsd__anyType:
-		soap_serialize_PointerToxsd__anyType(soap, (xsd__anyType *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__downloadInfo:
-		soap_serialize_PointerTons1__downloadInfo(soap, (ns1__downloadInfo *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__sampleParameter:
-		soap_serialize_PointerTons1__sampleParameter(soap, (ns1__sampleParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__userDetails:
-		soap_serialize_PointerTons1__userDetails(soap, (ns1__userDetails *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__keywordType:
-		soap_serialize_PointerTons1__keywordType(soap, (enum ns1__keywordType *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__dataset:
-		soap_serialize_PointerTons1__dataset(soap, (ns1__dataset *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__keywordPK:
-		soap_serialize_PointerTons1__keywordPK(soap, (ns1__keywordPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__investigatorPK:
-		soap_serialize_PointerTons1__investigatorPK(soap, (ns1__investigatorPK *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__facilityUser:
-		soap_serialize_PointerTons1__facilityUser(soap, (ns1__facilityUser *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__facilityCycle:
-		soap_serialize_PointerTons1__facilityCycle(soap, (ns1__facilityCycle *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datafileParameter:
-		soap_serialize_PointerTons1__datafileParameter(soap, (ns1__datafileParameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__investigation:
-		soap_serialize_PointerTons1__investigation(soap, (ns1__investigation *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterType:
-		soap_serialize_PointerTons1__parameterType(soap, (enum ns1__parameterType *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameter:
-		soap_serialize_PointerTons1__parameter(soap, (ns1__parameter *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__parameterComparisonCondition:
-		soap_serialize_PointerTons1__parameterComparisonCondition(soap, (ns1__parameterComparisonCondition *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__datafile:
-		soap_serialize_PointerTons1__datafile(soap, (ns1__datafile *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerToLONG64:
-		soap_serialize_PointerToLONG64(soap, (LONG64 *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__icatRole:
-		soap_serialize_PointerTons1__icatRole(soap, (ns1__icatRole *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTons1__sample:
-		soap_serialize_PointerTons1__sample(soap, (ns1__sample *const*)ptr);
-		break;
-	case SOAP_TYPE_PointerTostd__string:
-		soap_serialize_PointerTostd__string(soap, (std::string *const*)ptr);
-		break;
-	case SOAP_TYPE__QName:
-		soap_serialize_string(soap, (char*const*)&ptr);
-		break;
-	case SOAP_TYPE_string:
-		soap_serialize_string(soap, (char*const*)&ptr);
-		break;
-	}
-}
-
-#ifdef __cplusplus
-}
-#endif
-#endif
-
-SOAP_FMAC3 void * SOAP_FMAC4 soap_instantiate(struct soap *soap, int t, const char *type, const char *arrayType, size_t *n)
-{
-	switch (t)
-	{
-	case SOAP_TYPE_xsd__anyType:
-		return (void*)soap_instantiate_xsd__anyType(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__boolean:
-		return (void*)soap_instantiate_xsd__boolean(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__dateTime:
-		return (void*)soap_instantiate_xsd__dateTime(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__double:
-		return (void*)soap_instantiate_xsd__double(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__float:
-		return (void*)soap_instantiate_xsd__float(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__int:
-		return (void*)soap_instantiate_xsd__int(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__long:
-		return (void*)soap_instantiate_xsd__long(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__string:
-		return (void*)soap_instantiate_std__string(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_xsd__string:
-		return (void*)soap_instantiate_xsd__string(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterValueType_:
-		return (void*)soap_instantiate_ns1__parameterValueType_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datafileInclude_:
-		return (void*)soap_instantiate_ns1__datafileInclude_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__comparisonOperator_:
-		return (void*)soap_instantiate_ns1__comparisonOperator_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterType_:
-		return (void*)soap_instantiate_ns1__parameterType_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__keywordType_:
-		return (void*)soap_instantiate_ns1__keywordType_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__investigationInclude_:
-		return (void*)soap_instantiate_ns1__investigationInclude_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__logicalOperator_:
-		return (void*)soap_instantiate_ns1__logicalOperator_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__elementType_:
-		return (void*)soap_instantiate_ns1__elementType_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datasetInclude_:
-		return (void*)soap_instantiate_ns1__datasetInclude_(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listDatasetTypes:
-		return (void*)soap_instantiate_ns1__listDatasetTypes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listDatasetTypesResponse:
-		return (void*)soap_instantiate_ns1__listDatasetTypesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__SessionException:
-		return (void*)soap_instantiate_ns1__SessionException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchSamplesBySampleName:
-		return (void*)soap_instantiate_ns1__searchSamplesBySampleName(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
-		return (void*)soap_instantiate_ns1__searchSamplesBySampleNameResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__entityBaseBean:
-		return (void*)soap_instantiate_ns1__entityBaseBean(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
-		return (void*)soap_instantiate_ns1__entityPrimaryKeyBaseBean(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeSample:
-		return (void*)soap_instantiate_ns1__removeSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeSampleResponse:
-		return (void*)soap_instantiate_ns1__removeSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
-		return (void*)soap_instantiate_ns1__InsufficientPrivilegesException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
-		return (void*)soap_instantiate_ns1__NoSuchObjectFoundException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listInstruments:
-		return (void*)soap_instantiate_ns1__listInstruments(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listInstrumentsResponse:
-		return (void*)soap_instantiate_ns1__listInstrumentsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataFile:
-		return (void*)soap_instantiate_ns1__createDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataFileResponse:
-		return (void*)soap_instantiate_ns1__createDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__ValidationException:
-		return (void*)soap_instantiate_ns1__ValidationException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifySample:
-		return (void*)soap_instantiate_ns1__modifySample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifySampleResponse:
-		return (void*)soap_instantiate_ns1__modifySampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByParameterComparators:
-		return (void*)soap_instantiate_ns1__searchByParameterComparators(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterCondition:
-		return (void*)soap_instantiate_ns1__parameterCondition(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterValued:
-		return (void*)soap_instantiate_ns1__parameterValued(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
-		return (void*)soap_instantiate_ns1__searchByParameterComparatorsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__ParameterSearchException:
-		return (void*)soap_instantiate_ns1__ParameterSearchException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
-		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparators(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
-		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataFile:
-		return (void*)soap_instantiate_ns1__removeDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataFileResponse:
-		return (void*)soap_instantiate_ns1__removeDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeAuthorisation:
-		return (void*)soap_instantiate_ns1__removeAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeAuthorisationResponse:
-		return (void*)soap_instantiate_ns1__removeAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataFileParameters:
-		return (void*)soap_instantiate_ns1__addDataFileParameters(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataFileParametersResponse:
-		return (void*)soap_instantiate_ns1__addDataFileParametersResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listFacilityCycles:
-		return (void*)soap_instantiate_ns1__listFacilityCycles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
-		return (void*)soap_instantiate_ns1__listFacilityCyclesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__logout:
-		return (void*)soap_instantiate_ns1__logout(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__logoutResponse:
-		return (void*)soap_instantiate_ns1__logoutResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadDataset:
-		return (void*)soap_instantiate_ns1__downloadDataset(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadDatasetResponse:
-		return (void*)soap_instantiate_ns1__downloadDatasetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
-		return (void*)soap_instantiate_ns1__getFacilityUserByFederalId(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
-		return (void*)soap_instantiate_ns1__getFacilityUserByFederalIdResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeInvestigation:
-		return (void*)soap_instantiate_ns1__removeInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeInvestigationResponse:
-		return (void*)soap_instantiate_ns1__removeInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeInvestigator:
-		return (void*)soap_instantiate_ns1__removeInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeInvestigatorResponse:
-		return (void*)soap_instantiate_ns1__removeInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeKeyword:
-		return (void*)soap_instantiate_ns1__removeKeyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeKeywordResponse:
-		return (void*)soap_instantiate_ns1__removeKeywordResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteInvestigation:
-		return (void*)soap_instantiate_ns1__deleteInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteInvestigationResponse:
-		return (void*)soap_instantiate_ns1__deleteInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataSets:
-		return (void*)soap_instantiate_ns1__createDataSets(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataSetsResponse:
-		return (void*)soap_instantiate_ns1__createDataSetsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removePublication:
-		return (void*)soap_instantiate_ns1__removePublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removePublicationResponse:
-		return (void*)soap_instantiate_ns1__removePublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getAllKeywords:
-		return (void*)soap_instantiate_ns1__getAllKeywords(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getAllKeywordsResponse:
-		return (void*)soap_instantiate_ns1__getAllKeywordsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getUserDetails:
-		return (void*)soap_instantiate_ns1__getUserDetails(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getUserDetailsResponse:
-		return (void*)soap_instantiate_ns1__getUserDetailsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__userDetails:
-		return (void*)soap_instantiate_ns1__userDetails(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__NoSuchUserException:
-		return (void*)soap_instantiate_ns1__NoSuchUserException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadDatafiles:
-		return (void*)soap_instantiate_ns1__downloadDatafiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadDatafilesResponse:
-		return (void*)soap_instantiate_ns1__downloadDatafilesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataSet:
-		return (void*)soap_instantiate_ns1__modifyDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataSetResponse:
-		return (void*)soap_instantiate_ns1__modifyDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addSampleParameter:
-		return (void*)soap_instantiate_ns1__addSampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addSampleParameterResponse:
-		return (void*)soap_instantiate_ns1__addSampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
-		return (void*)soap_instantiate_ns1__getFacilityUserByFacilityUserId(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
-		return (void*)soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
-		return (void*)soap_instantiate_ns1__checkDatafileDownloadAccess(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
-		return (void*)soap_instantiate_ns1__checkDatafileDownloadAccessResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadInfo:
-		return (void*)soap_instantiate_ns1__downloadInfo(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataFile:
-		return (void*)soap_instantiate_ns1__deleteDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataFileResponse:
-		return (void*)soap_instantiate_ns1__deleteDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserSurname:
-		return (void*)soap_instantiate_ns1__searchByUserSurname(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
-		return (void*)soap_instantiate_ns1__searchByUserSurnameResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
-		return (void*)soap_instantiate_ns1__searchByUserSurnamePagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
-		return (void*)soap_instantiate_ns1__searchByUserSurnamePaginationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
-		return (void*)soap_instantiate_ns1__checkDatasetDownloadAccess(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
-		return (void*)soap_instantiate_ns1__checkDatasetDownloadAccessResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByKeywords:
-		return (void*)soap_instantiate_ns1__searchByKeywords(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByKeywordsResponse:
-		return (void*)soap_instantiate_ns1__searchByKeywordsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByKeywordsAll:
-		return (void*)soap_instantiate_ns1__searchByKeywordsAll(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__keywordDetails:
-		return (void*)soap_instantiate_ns1__keywordDetails(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
-		return (void*)soap_instantiate_ns1__searchByKeywordsAllResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getMyInvestigations:
-		return (void*)soap_instantiate_ns1__getMyInvestigations(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
-		return (void*)soap_instantiate_ns1__getMyInvestigationsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
-		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
-		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
-		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludesPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
-		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataSetParameter:
-		return (void*)soap_instantiate_ns1__removeDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
-		return (void*)soap_instantiate_ns1__removeDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyPublication:
-		return (void*)soap_instantiate_ns1__modifyPublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyPublicationResponse:
-		return (void*)soap_instantiate_ns1__modifyPublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserID:
-		return (void*)soap_instantiate_ns1__searchByUserID(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserIDResponse:
-		return (void*)soap_instantiate_ns1__searchByUserIDResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserIDPagination:
-		return (void*)soap_instantiate_ns1__searchByUserIDPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
-		return (void*)soap_instantiate_ns1__searchByUserIDPaginationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataFileParameter:
-		return (void*)soap_instantiate_ns1__removeDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
-		return (void*)soap_instantiate_ns1__removeDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getInvestigationsIncludes:
-		return (void*)soap_instantiate_ns1__getInvestigationsIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
-		return (void*)soap_instantiate_ns1__getInvestigationsIncludesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
-		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
-		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataSet:
-		return (void*)soap_instantiate_ns1__deleteDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataSetResponse:
-		return (void*)soap_instantiate_ns1__deleteDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__isSessionValid:
-		return (void*)soap_instantiate_ns1__isSessionValid(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__isSessionValidResponse:
-		return (void*)soap_instantiate_ns1__isSessionValidResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByParameterOperator:
-		return (void*)soap_instantiate_ns1__searchByParameterOperator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
-		return (void*)soap_instantiate_ns1__searchByParameterOperatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatafiles:
-		return (void*)soap_instantiate_ns1__getDatafiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatafilesResponse:
-		return (void*)soap_instantiate_ns1__getDatafilesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getICATAPIVersion:
-		return (void*)soap_instantiate_ns1__getICATAPIVersion(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
-		return (void*)soap_instantiate_ns1__getICATAPIVersionResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteInvestigator:
-		return (void*)soap_instantiate_ns1__deleteInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
-		return (void*)soap_instantiate_ns1__deleteInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addInvestigator:
-		return (void*)soap_instantiate_ns1__addInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addInvestigatorResponse:
-		return (void*)soap_instantiate_ns1__addInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataSet:
-		return (void*)soap_instantiate_ns1__createDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataSetResponse:
-		return (void*)soap_instantiate_ns1__createDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
-		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
-		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeSampleParameter:
-		return (void*)soap_instantiate_ns1__removeSampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeSampleParameterResponse:
-		return (void*)soap_instantiate_ns1__removeSampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataSetParameter:
-		return (void*)soap_instantiate_ns1__deleteDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
-		return (void*)soap_instantiate_ns1__deleteDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__setDataSetSample:
-		return (void*)soap_instantiate_ns1__setDataSetSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__setDataSetSampleResponse:
-		return (void*)soap_instantiate_ns1__setDataSetSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
-		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparators(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
-		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadDatafile:
-		return (void*)soap_instantiate_ns1__downloadDatafile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__downloadDatafileResponse:
-		return (void*)soap_instantiate_ns1__downloadDatafileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUser:
-		return (void*)soap_instantiate_ns1__getKeywordsForUser(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserStartWithMax(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserMax:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserMax(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserMaxResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserType:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserType(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
-		return (void*)soap_instantiate_ns1__getKeywordsForUserTypeResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listInvestigationTypes:
-		return (void*)soap_instantiate_ns1__listInvestigationTypes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
-		return (void*)soap_instantiate_ns1__listInvestigationTypesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataSetParameter:
-		return (void*)soap_instantiate_ns1__modifyDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
-		return (void*)soap_instantiate_ns1__modifyDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataSet:
-		return (void*)soap_instantiate_ns1__removeDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__removeDataSetResponse:
-		return (void*)soap_instantiate_ns1__removeDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getAuthorisations:
-		return (void*)soap_instantiate_ns1__getAuthorisations(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getAuthorisationsResponse:
-		return (void*)soap_instantiate_ns1__getAuthorisationsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addKeyword:
-		return (void*)soap_instantiate_ns1__addKeyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addKeywordResponse:
-		return (void*)soap_instantiate_ns1__addKeywordResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyInvestigation:
-		return (void*)soap_instantiate_ns1__modifyInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyInvestigationResponse:
-		return (void*)soap_instantiate_ns1__modifyInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listDatasetStatus:
-		return (void*)soap_instantiate_ns1__listDatasetStatus(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listDatasetStatusResponse:
-		return (void*)soap_instantiate_ns1__listDatasetStatusResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteSample:
-		return (void*)soap_instantiate_ns1__deleteSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteSampleResponse:
-		return (void*)soap_instantiate_ns1__deleteSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteKeyword:
-		return (void*)soap_instantiate_ns1__deleteKeyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteKeywordResponse:
-		return (void*)soap_instantiate_ns1__deleteKeywordResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataSetParameters:
-		return (void*)soap_instantiate_ns1__addDataSetParameters(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataSetParametersResponse:
-		return (void*)soap_instantiate_ns1__addDataSetParametersResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByRunNumber:
-		return (void*)soap_instantiate_ns1__searchByRunNumber(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByRunNumberResponse:
-		return (void*)soap_instantiate_ns1__searchByRunNumberResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByRunNumberPagination:
-		return (void*)soap_instantiate_ns1__searchByRunNumberPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
-		return (void*)soap_instantiate_ns1__searchByRunNumberPaginationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByAdvanced:
-		return (void*)soap_instantiate_ns1__searchByAdvanced(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__advancedSearchDetails:
-		return (void*)soap_instantiate_ns1__advancedSearchDetails(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByAdvancedResponse:
-		return (void*)soap_instantiate_ns1__searchByAdvancedResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByAdvancedPagination:
-		return (void*)soap_instantiate_ns1__searchByAdvancedPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
-		return (void*)soap_instantiate_ns1__searchByAdvancedPaginationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listDatafileFormats:
-		return (void*)soap_instantiate_ns1__listDatafileFormats(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
-		return (void*)soap_instantiate_ns1__listDatafileFormatsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifySampleParameter:
-		return (void*)soap_instantiate_ns1__modifySampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifySampleParameterResponse:
-		return (void*)soap_instantiate_ns1__modifySampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByParameterComparator:
-		return (void*)soap_instantiate_ns1__searchByParameterComparator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
-		return (void*)soap_instantiate_ns1__searchByParameterComparatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyInvestigator:
-		return (void*)soap_instantiate_ns1__modifyInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
-		return (void*)soap_instantiate_ns1__modifyInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataFiles:
-		return (void*)soap_instantiate_ns1__createDataFiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createDataFilesResponse:
-		return (void*)soap_instantiate_ns1__createDataFilesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataSetParameter:
-		return (void*)soap_instantiate_ns1__addDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataSetParameterResponse:
-		return (void*)soap_instantiate_ns1__addDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addAuthorisation:
-		return (void*)soap_instantiate_ns1__addAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addAuthorisationResponse:
-		return (void*)soap_instantiate_ns1__addAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addSample:
-		return (void*)soap_instantiate_ns1__addSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addSampleResponse:
-		return (void*)soap_instantiate_ns1__addSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__loginLifetime:
-		return (void*)soap_instantiate_ns1__loginLifetime(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__loginLifetimeResponse:
-		return (void*)soap_instantiate_ns1__loginLifetimeResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__login:
-		return (void*)soap_instantiate_ns1__login(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__loginResponse:
-		return (void*)soap_instantiate_ns1__loginResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deletePublication:
-		return (void*)soap_instantiate_ns1__deletePublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deletePublicationResponse:
-		return (void*)soap_instantiate_ns1__deletePublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteAuthorisation:
-		return (void*)soap_instantiate_ns1__deleteAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
-		return (void*)soap_instantiate_ns1__deleteAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__updateAuthorisation:
-		return (void*)soap_instantiate_ns1__updateAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__updateAuthorisationResponse:
-		return (void*)soap_instantiate_ns1__updateAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatasetIncludes:
-		return (void*)soap_instantiate_ns1__getDatasetIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
-		return (void*)soap_instantiate_ns1__getDatasetIncludesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDataset:
-		return (void*)soap_instantiate_ns1__getDataset(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatasetResponse:
-		return (void*)soap_instantiate_ns1__getDatasetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listRoles:
-		return (void*)soap_instantiate_ns1__listRoles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listRolesResponse:
-		return (void*)soap_instantiate_ns1__listRolesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__ingestMetadata:
-		return (void*)soap_instantiate_ns1__ingestMetadata(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__ingestMetadataResponse:
-		return (void*)soap_instantiate_ns1__ingestMetadataResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__ICATAPIException:
-		return (void*)soap_instantiate_ns1__ICATAPIException(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatafile:
-		return (void*)soap_instantiate_ns1__getDatafile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatafileResponse:
-		return (void*)soap_instantiate_ns1__getDatafileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataFile:
-		return (void*)soap_instantiate_ns1__modifyDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataFileResponse:
-		return (void*)soap_instantiate_ns1__modifyDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getInvestigationIncludes:
-		return (void*)soap_instantiate_ns1__getInvestigationIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
-		return (void*)soap_instantiate_ns1__getInvestigationIncludesResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getInvestigation:
-		return (void*)soap_instantiate_ns1__getInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getInvestigationResponse:
-		return (void*)soap_instantiate_ns1__getInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataFileParameter:
-		return (void*)soap_instantiate_ns1__deleteDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
-		return (void*)soap_instantiate_ns1__deleteDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addPublication:
-		return (void*)soap_instantiate_ns1__addPublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addPublicationResponse:
-		return (void*)soap_instantiate_ns1__addPublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createInvestigation:
-		return (void*)soap_instantiate_ns1__createInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__createInvestigationResponse:
-		return (void*)soap_instantiate_ns1__createInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatasetsBySample:
-		return (void*)soap_instantiate_ns1__searchDatasetsBySample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
-		return (void*)soap_instantiate_ns1__searchDatasetsBySampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataFileParameter:
-		return (void*)soap_instantiate_ns1__addDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__addDataFileParameterResponse:
-		return (void*)soap_instantiate_ns1__addDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteSampleParameter:
-		return (void*)soap_instantiate_ns1__deleteSampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
-		return (void*)soap_instantiate_ns1__deleteSampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataFileParameter:
-		return (void*)soap_instantiate_ns1__modifyDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
-		return (void*)soap_instantiate_ns1__modifyDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listParameters:
-		return (void*)soap_instantiate_ns1__listParameters(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__listParametersResponse:
-		return (void*)soap_instantiate_ns1__listParametersResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatasets:
-		return (void*)soap_instantiate_ns1__getDatasets(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__getDatasetsResponse:
-		return (void*)soap_instantiate_ns1__getDatasetsResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__sample:
-		return (void*)soap_instantiate_ns1__sample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__sampleParameter:
-		return (void*)soap_instantiate_ns1__sampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__sampleParameterPK:
-		return (void*)soap_instantiate_ns1__sampleParameterPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__icatRole:
-		return (void*)soap_instantiate_ns1__icatRole(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datafile:
-		return (void*)soap_instantiate_ns1__datafile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datafileFormat:
-		return (void*)soap_instantiate_ns1__datafileFormat(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datafileFormatPK:
-		return (void*)soap_instantiate_ns1__datafileFormatPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datafileParameter:
-		return (void*)soap_instantiate_ns1__datafileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datafileParameterPK:
-		return (void*)soap_instantiate_ns1__datafileParameterPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__relatedDatafiles:
-		return (void*)soap_instantiate_ns1__relatedDatafiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__relatedDatafilesPK:
-		return (void*)soap_instantiate_ns1__relatedDatafilesPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterComparisonCondition:
-		return (void*)soap_instantiate_ns1__parameterComparisonCondition(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameter:
-		return (void*)soap_instantiate_ns1__parameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterPK:
-		return (void*)soap_instantiate_ns1__parameterPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__investigation:
-		return (void*)soap_instantiate_ns1__investigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__dataset:
-		return (void*)soap_instantiate_ns1__dataset(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datasetParameter:
-		return (void*)soap_instantiate_ns1__datasetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__datasetParameterPK:
-		return (void*)soap_instantiate_ns1__datasetParameterPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__facilityCycle:
-		return (void*)soap_instantiate_ns1__facilityCycle(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__investigator:
-		return (void*)soap_instantiate_ns1__investigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__facilityUser:
-		return (void*)soap_instantiate_ns1__facilityUser(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__investigatorPK:
-		return (void*)soap_instantiate_ns1__investigatorPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__keyword:
-		return (void*)soap_instantiate_ns1__keyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__keywordPK:
-		return (void*)soap_instantiate_ns1__keywordPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__publication:
-		return (void*)soap_instantiate_ns1__publication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__shift:
-		return (void*)soap_instantiate_ns1__shift(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__shiftPK:
-		return (void*)soap_instantiate_ns1__shiftPK(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__parameterLogicalCondition:
-		return (void*)soap_instantiate_ns1__parameterLogicalCondition(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_ns1__icatAuthorisation:
-		return (void*)soap_instantiate_ns1__icatAuthorisation(soap, -1, type, arrayType, n);
-#ifndef WITH_NOGLOBAL
-	case SOAP_TYPE_SOAP_ENV__Detail:
-		return (void*)soap_instantiate_SOAP_ENV__Detail(soap, -1, type, arrayType, n);
-#endif
-	case SOAP_TYPE___ns1__login:
-		return (void*)soap_instantiate___ns1__login(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__loginLifetime:
-		return (void*)soap_instantiate___ns1__loginLifetime(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addSample:
-		return (void*)soap_instantiate___ns1__addSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__logout:
-		return (void*)soap_instantiate___ns1__logout(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addSampleParameter:
-		return (void*)soap_instantiate___ns1__addSampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addPublication:
-		return (void*)soap_instantiate___ns1__addPublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addKeyword:
-		return (void*)soap_instantiate___ns1__addKeyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addInvestigator:
-		return (void*)soap_instantiate___ns1__addInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getInvestigation:
-		return (void*)soap_instantiate___ns1__getInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getInvestigationIncludes:
-		return (void*)soap_instantiate___ns1__getInvestigationIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getDataset:
-		return (void*)soap_instantiate___ns1__getDataset(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getDatasetIncludes:
-		return (void*)soap_instantiate___ns1__getDatasetIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getDatafile:
-		return (void*)soap_instantiate___ns1__getDatafile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addDataFileParameter:
-		return (void*)soap_instantiate___ns1__addDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getInvestigationsIncludes:
-		return (void*)soap_instantiate___ns1__getInvestigationsIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__createInvestigation:
-		return (void*)soap_instantiate___ns1__createInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeInvestigationResponse:
-		return (void*)soap_instantiate___ns1__removeInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeInvestigation:
-		return (void*)soap_instantiate___ns1__removeInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteInvestigationResponse:
-		return (void*)soap_instantiate___ns1__deleteInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteInvestigation:
-		return (void*)soap_instantiate___ns1__deleteInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyInvestigationResponse:
-		return (void*)soap_instantiate___ns1__modifyInvestigationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyInvestigation:
-		return (void*)soap_instantiate___ns1__modifyInvestigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeKeywordResponse:
-		return (void*)soap_instantiate___ns1__removeKeywordResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeKeyword:
-		return (void*)soap_instantiate___ns1__removeKeyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteKeywordResponse:
-		return (void*)soap_instantiate___ns1__deleteKeywordResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteKeyword:
-		return (void*)soap_instantiate___ns1__deleteKeyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removePublicationResponse:
-		return (void*)soap_instantiate___ns1__removePublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removePublication:
-		return (void*)soap_instantiate___ns1__removePublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deletePublicationResponse:
-		return (void*)soap_instantiate___ns1__deletePublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deletePublication:
-		return (void*)soap_instantiate___ns1__deletePublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyPublicationResponse:
-		return (void*)soap_instantiate___ns1__modifyPublicationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyPublication:
-		return (void*)soap_instantiate___ns1__modifyPublication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeInvestigatorResponse:
-		return (void*)soap_instantiate___ns1__removeInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeInvestigator:
-		return (void*)soap_instantiate___ns1__removeInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyInvestigatorResponse:
-		return (void*)soap_instantiate___ns1__modifyInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyInvestigator:
-		return (void*)soap_instantiate___ns1__modifyInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteInvestigatorResponse:
-		return (void*)soap_instantiate___ns1__deleteInvestigatorResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteInvestigator:
-		return (void*)soap_instantiate___ns1__deleteInvestigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeSampleResponse:
-		return (void*)soap_instantiate___ns1__removeSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeSample:
-		return (void*)soap_instantiate___ns1__removeSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteSampleResponse:
-		return (void*)soap_instantiate___ns1__deleteSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteSample:
-		return (void*)soap_instantiate___ns1__deleteSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifySampleResponse:
-		return (void*)soap_instantiate___ns1__modifySampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifySample:
-		return (void*)soap_instantiate___ns1__modifySample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeSampleParameterResponse:
-		return (void*)soap_instantiate___ns1__removeSampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeSampleParameter:
-		return (void*)soap_instantiate___ns1__removeSampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteSampleParameterResponse:
-		return (void*)soap_instantiate___ns1__deleteSampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteSampleParameter:
-		return (void*)soap_instantiate___ns1__deleteSampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifySampleParameterResponse:
-		return (void*)soap_instantiate___ns1__modifySampleParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifySampleParameter:
-		return (void*)soap_instantiate___ns1__modifySampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getAuthorisations:
-		return (void*)soap_instantiate___ns1__getAuthorisations(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addAuthorisation:
-		return (void*)soap_instantiate___ns1__addAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteAuthorisationResponse:
-		return (void*)soap_instantiate___ns1__deleteAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteAuthorisation:
-		return (void*)soap_instantiate___ns1__deleteAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeAuthorisationResponse:
-		return (void*)soap_instantiate___ns1__removeAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeAuthorisation:
-		return (void*)soap_instantiate___ns1__removeAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__updateAuthorisationResponse:
-		return (void*)soap_instantiate___ns1__updateAuthorisationResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__updateAuthorisation:
-		return (void*)soap_instantiate___ns1__updateAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getUserDetails:
-		return (void*)soap_instantiate___ns1__getUserDetails(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getDatafiles:
-		return (void*)soap_instantiate___ns1__getDatafiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__createDataFile:
-		return (void*)soap_instantiate___ns1__createDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__createDataFiles:
-		return (void*)soap_instantiate___ns1__createDataFiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataFileResponse:
-		return (void*)soap_instantiate___ns1__deleteDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataFile:
-		return (void*)soap_instantiate___ns1__deleteDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataFileResponse:
-		return (void*)soap_instantiate___ns1__removeDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataFile:
-		return (void*)soap_instantiate___ns1__removeDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataFileResponse:
-		return (void*)soap_instantiate___ns1__modifyDataFileResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataFile:
-		return (void*)soap_instantiate___ns1__modifyDataFile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addDataFileParameters:
-		return (void*)soap_instantiate___ns1__addDataFileParameters(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataFileParameterResponse:
-		return (void*)soap_instantiate___ns1__modifyDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataFileParameter:
-		return (void*)soap_instantiate___ns1__modifyDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataFileParameterResponse:
-		return (void*)soap_instantiate___ns1__removeDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataFileParameter:
-		return (void*)soap_instantiate___ns1__removeDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataFileParameterResponse:
-		return (void*)soap_instantiate___ns1__deleteDataFileParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataFileParameter:
-		return (void*)soap_instantiate___ns1__deleteDataFileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getKeywordsForUser:
-		return (void*)soap_instantiate___ns1__getKeywordsForUser(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getKeywordsForUserStartWithMax:
-		return (void*)soap_instantiate___ns1__getKeywordsForUserStartWithMax(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getKeywordsForUserMax:
-		return (void*)soap_instantiate___ns1__getKeywordsForUserMax(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getKeywordsForUserType:
-		return (void*)soap_instantiate___ns1__getKeywordsForUserType(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getAllKeywords:
-		return (void*)soap_instantiate___ns1__getAllKeywords(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__downloadDatafile:
-		return (void*)soap_instantiate___ns1__downloadDatafile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__downloadDatafiles:
-		return (void*)soap_instantiate___ns1__downloadDatafiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__downloadDataset:
-		return (void*)soap_instantiate___ns1__downloadDataset(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__checkDatafileDownloadAccess:
-		return (void*)soap_instantiate___ns1__checkDatafileDownloadAccess(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__checkDatasetDownloadAccess:
-		return (void*)soap_instantiate___ns1__checkDatasetDownloadAccess(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByAdvanced:
-		return (void*)soap_instantiate___ns1__searchByAdvanced(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByAdvancedPagination:
-		return (void*)soap_instantiate___ns1__searchByAdvancedPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByKeywords:
-		return (void*)soap_instantiate___ns1__searchByKeywords(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByKeywordsAll:
-		return (void*)soap_instantiate___ns1__searchByKeywordsAll(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getMyInvestigations:
-		return (void*)soap_instantiate___ns1__getMyInvestigations(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getMyInvestigationsIncludes:
-		return (void*)soap_instantiate___ns1__getMyInvestigationsIncludes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination:
-		return (void*)soap_instantiate___ns1__getMyInvestigationsIncludesPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByUserID:
-		return (void*)soap_instantiate___ns1__searchByUserID(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByUserIDPagination:
-		return (void*)soap_instantiate___ns1__searchByUserIDPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByUserSurname:
-		return (void*)soap_instantiate___ns1__searchByUserSurname(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByUserSurnamePagination:
-		return (void*)soap_instantiate___ns1__searchByUserSurnamePagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listInstruments:
-		return (void*)soap_instantiate___ns1__listInstruments(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listRoles:
-		return (void*)soap_instantiate___ns1__listRoles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listParameters:
-		return (void*)soap_instantiate___ns1__listParameters(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listFacilityCycles:
-		return (void*)soap_instantiate___ns1__listFacilityCycles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listInvestigationTypes:
-		return (void*)soap_instantiate___ns1__listInvestigationTypes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchSamplesBySampleName:
-		return (void*)soap_instantiate___ns1__searchSamplesBySampleName(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchDatasetsBySample:
-		return (void*)soap_instantiate___ns1__searchDatasetsBySample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listDatasetTypes:
-		return (void*)soap_instantiate___ns1__listDatasetTypes(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listDatasetStatus:
-		return (void*)soap_instantiate___ns1__listDatasetStatus(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByRunNumber:
-		return (void*)soap_instantiate___ns1__searchByRunNumber(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByRunNumberPagination:
-		return (void*)soap_instantiate___ns1__searchByRunNumberPagination(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__listDatafileFormats:
-		return (void*)soap_instantiate___ns1__listDatafileFormats(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getDatasets:
-		return (void*)soap_instantiate___ns1__getDatasets(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__createDataSet:
-		return (void*)soap_instantiate___ns1__createDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__createDataSets:
-		return (void*)soap_instantiate___ns1__createDataSets(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataSetResponse:
-		return (void*)soap_instantiate___ns1__deleteDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataSet:
-		return (void*)soap_instantiate___ns1__deleteDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataSetParameterResponse:
-		return (void*)soap_instantiate___ns1__deleteDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__deleteDataSetParameter:
-		return (void*)soap_instantiate___ns1__deleteDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataSetResponse:
-		return (void*)soap_instantiate___ns1__modifyDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataSet:
-		return (void*)soap_instantiate___ns1__modifyDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataSetParameterResponse:
-		return (void*)soap_instantiate___ns1__modifyDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__modifyDataSetParameter:
-		return (void*)soap_instantiate___ns1__modifyDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__setDataSetSampleResponse:
-		return (void*)soap_instantiate___ns1__setDataSetSampleResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__setDataSetSample:
-		return (void*)soap_instantiate___ns1__setDataSetSample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addDataSetParameter:
-		return (void*)soap_instantiate___ns1__addDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__addDataSetParameters:
-		return (void*)soap_instantiate___ns1__addDataSetParameters(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataSetResponse:
-		return (void*)soap_instantiate___ns1__removeDataSetResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataSet:
-		return (void*)soap_instantiate___ns1__removeDataSet(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataSetParameterResponse:
-		return (void*)soap_instantiate___ns1__removeDataSetParameterResponse(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__removeDataSetParameter:
-		return (void*)soap_instantiate___ns1__removeDataSetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__ingestMetadata:
-		return (void*)soap_instantiate___ns1__ingestMetadata(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getICATAPIVersion:
-		return (void*)soap_instantiate___ns1__getICATAPIVersion(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getFacilityUserByFacilityUserId:
-		return (void*)soap_instantiate___ns1__getFacilityUserByFacilityUserId(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__getFacilityUserByFederalId:
-		return (void*)soap_instantiate___ns1__getFacilityUserByFederalId(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__isSessionValid:
-		return (void*)soap_instantiate___ns1__isSessionValid(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByParameterOperator:
-		return (void*)soap_instantiate___ns1__searchByParameterOperator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByParameterComparator:
-		return (void*)soap_instantiate___ns1__searchByParameterComparator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchByParameterComparators:
-		return (void*)soap_instantiate___ns1__searchByParameterComparators(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchDatasetsByParameterComparator:
-		return (void*)soap_instantiate___ns1__searchDatasetsByParameterComparator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchDatasetsByParameterComparators:
-		return (void*)soap_instantiate___ns1__searchDatasetsByParameterComparators(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchDatafilesByParameterComparator:
-		return (void*)soap_instantiate___ns1__searchDatafilesByParameterComparator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE___ns1__searchDatafilesByParameterComparators:
-		return (void*)soap_instantiate___ns1__searchDatafilesByParameterComparators(soap, -1, type, arrayType, n);
-#ifndef WITH_NOGLOBAL
-	case SOAP_TYPE_SOAP_ENV__Header:
-		return (void*)soap_instantiate_SOAP_ENV__Header(soap, -1, type, arrayType, n);
-#endif
-#ifndef WITH_NOGLOBAL
-	case SOAP_TYPE_SOAP_ENV__Code:
-		return (void*)soap_instantiate_SOAP_ENV__Code(soap, -1, type, arrayType, n);
-#endif
-#ifndef WITH_NOGLOBAL
-	case SOAP_TYPE_SOAP_ENV__Reason:
-		return (void*)soap_instantiate_SOAP_ENV__Reason(soap, -1, type, arrayType, n);
-#endif
-#ifndef WITH_NOGLOBAL
-	case SOAP_TYPE_SOAP_ENV__Fault:
-		return (void*)soap_instantiate_SOAP_ENV__Fault(soap, -1, type, arrayType, n);
-#endif
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__parameterCondition(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__shift(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__publication(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__keyword(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__investigator(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__sampleParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__parameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__icatRole(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datafileFormat(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datasetParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerToxsd__anyType(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfLONG64:
-		return (void*)soap_instantiate_std__vectorTemplateOfLONG64(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__dataset(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__facilityCycle(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datafileParameter(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datafile(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__investigation(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample:
-		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__sample(soap, -1, type, arrayType, n);
-	case SOAP_TYPE_std__vectorTemplateOfstd__string:
-		return (void*)soap_instantiate_std__vectorTemplateOfstd__string(soap, -1, type, arrayType, n);
-	}
-	return NULL;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_fdelete(struct soap_clist *p)
-{	switch (p->type)
-	{
-	case SOAP_TYPE_xsd__anyType:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__anyType*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__anyType*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__boolean:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__boolean*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__boolean*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__dateTime:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__dateTime*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__dateTime*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__double:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__double*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__double*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__float:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__float*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__float*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__int:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__int*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__int*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__long:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__long*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__long*)p->ptr);
-		break;
-	case SOAP_TYPE_std__string:
-		if (p->size < 0)
-			SOAP_DELETE((std::string*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::string*)p->ptr);
-		break;
-	case SOAP_TYPE_xsd__string:
-		if (p->size < 0)
-			SOAP_DELETE((xsd__string*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((xsd__string*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterValueType_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterValueType_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterValueType_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datafileInclude_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datafileInclude_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datafileInclude_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__comparisonOperator_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__comparisonOperator_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__comparisonOperator_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterType_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterType_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterType_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__keywordType_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__keywordType_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__keywordType_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__investigationInclude_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__investigationInclude_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__investigationInclude_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__logicalOperator_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__logicalOperator_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__logicalOperator_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__elementType_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__elementType_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__elementType_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datasetInclude_:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datasetInclude_*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datasetInclude_*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listDatasetTypes:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listDatasetTypes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listDatasetTypes*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listDatasetTypesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listDatasetTypesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listDatasetTypesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__SessionException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__SessionException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__SessionException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchSamplesBySampleName:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchSamplesBySampleName*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchSamplesBySampleName*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchSamplesBySampleNameResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchSamplesBySampleNameResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__entityBaseBean:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__entityBaseBean*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__entityBaseBean*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__entityPrimaryKeyBaseBean*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__entityPrimaryKeyBaseBean*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeSample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeSample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__InsufficientPrivilegesException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__InsufficientPrivilegesException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__NoSuchObjectFoundException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__NoSuchObjectFoundException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listInstruments:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listInstruments*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listInstruments*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listInstrumentsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listInstrumentsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listInstrumentsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__ValidationException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__ValidationException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__ValidationException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifySample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifySample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifySample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifySampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifySampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifySampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparators:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByParameterComparators*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByParameterComparators*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterCondition:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterCondition*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterCondition*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterValued:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterValued*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterValued*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByParameterComparatorsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByParameterComparatorsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__ParameterSearchException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__ParameterSearchException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__ParameterSearchException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatafilesByParameterComparators*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparators*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatafilesByParameterComparatorsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparatorsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParameters:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataFileParameters*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataFileParameters*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParametersResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataFileParametersResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataFileParametersResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listFacilityCycles:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listFacilityCycles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listFacilityCycles*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listFacilityCyclesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listFacilityCyclesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__logout:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__logout*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__logout*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__logoutResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__logoutResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__logoutResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadDataset:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadDataset*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadDataset*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadDatasetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadDatasetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadDatasetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getFacilityUserByFederalId*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFederalId*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getFacilityUserByFederalIdResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFederalIdResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeKeyword:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeKeyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeKeyword*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeKeywordResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeKeywordResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeKeywordResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataSets:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataSets*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataSets*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataSetsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataSetsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataSetsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removePublication:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removePublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removePublication*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removePublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removePublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removePublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getAllKeywords:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getAllKeywords*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getAllKeywords*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getAllKeywordsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getAllKeywordsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getAllKeywordsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getUserDetails:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getUserDetails*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getUserDetails*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getUserDetailsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getUserDetailsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getUserDetailsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__userDetails:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__userDetails*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__userDetails*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__NoSuchUserException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__NoSuchUserException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__NoSuchUserException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafiles:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadDatafiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadDatafiles*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafilesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadDatafilesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadDatafilesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addSampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addSampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addSampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addSampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addSampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addSampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getFacilityUserByFacilityUserId*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFacilityUserId*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getFacilityUserByFacilityUserIdResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFacilityUserIdResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__checkDatafileDownloadAccess*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__checkDatafileDownloadAccess*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__checkDatafileDownloadAccessResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__checkDatafileDownloadAccessResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadInfo:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadInfo*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadInfo*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurname:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserSurname*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserSurname*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserSurnameResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserSurnameResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserSurnamePagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserSurnamePagination*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserSurnamePaginationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserSurnamePaginationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__checkDatasetDownloadAccess*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__checkDatasetDownloadAccess*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__checkDatasetDownloadAccessResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__checkDatasetDownloadAccessResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywords:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByKeywords*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByKeywords*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywordsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByKeywordsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByKeywordsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywordsAll:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByKeywordsAll*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByKeywordsAll*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__keywordDetails:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__keywordDetails*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__keywordDetails*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByKeywordsAllResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByKeywordsAllResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigations:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getMyInvestigations*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getMyInvestigations*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getMyInvestigationsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getMyInvestigationsIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getMyInvestigationsIncludesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getMyInvestigationsIncludesPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludesPagination*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getMyInvestigationsIncludesPaginationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludesPaginationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyPublication:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyPublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyPublication*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyPublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyPublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyPublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserID:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserID*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserID*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserIDResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserIDResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserIDResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserIDPagination:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserIDPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserIDPagination*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByUserIDPaginationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByUserIDPaginationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationsIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getInvestigationsIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getInvestigationsIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getInvestigationsIncludesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getInvestigationsIncludesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatafilesByParameterComparator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatafilesByParameterComparatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__isSessionValid:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__isSessionValid*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__isSessionValid*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__isSessionValidResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__isSessionValidResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__isSessionValidResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterOperator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByParameterOperator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByParameterOperator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByParameterOperatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByParameterOperatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatafiles:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatafiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatafiles*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatafilesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatafilesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatafilesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getICATAPIVersion:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getICATAPIVersion*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getICATAPIVersion*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getICATAPIVersionResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getICATAPIVersionResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatasetsByParameterComparator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatasetsByParameterComparatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeSampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeSampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeSampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeSampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeSampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeSampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__setDataSetSample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__setDataSetSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__setDataSetSample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__setDataSetSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__setDataSetSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__setDataSetSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatasetsByParameterComparators*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparators*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatasetsByParameterComparatorsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparatorsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadDatafile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadDatafile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__downloadDatafileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__downloadDatafileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__downloadDatafileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUser:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUser*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUser*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserStartWithMax*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserStartWithMax*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserStartWithMaxResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserStartWithMaxResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserMax:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserMax*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserMax*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserMaxResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserMaxResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserType:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserType*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserType*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getKeywordsForUserTypeResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserTypeResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listInvestigationTypes:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listInvestigationTypes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listInvestigationTypes*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listInvestigationTypesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listInvestigationTypesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__removeDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__removeDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__removeDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getAuthorisations:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getAuthorisations*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getAuthorisations*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getAuthorisationsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getAuthorisationsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getAuthorisationsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addKeyword:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addKeyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addKeyword*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addKeywordResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addKeywordResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addKeywordResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listDatasetStatus:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listDatasetStatus*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listDatasetStatus*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listDatasetStatusResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listDatasetStatusResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listDatasetStatusResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteSample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteSample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteKeyword:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteKeyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteKeyword*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteKeywordResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteKeywordResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteKeywordResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParameters:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataSetParameters*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataSetParameters*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParametersResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataSetParametersResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataSetParametersResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumber:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByRunNumber*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByRunNumber*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumberResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByRunNumberResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByRunNumberResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumberPagination:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByRunNumberPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByRunNumberPagination*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByRunNumberPaginationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByRunNumberPaginationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvanced:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByAdvanced*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByAdvanced*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__advancedSearchDetails:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__advancedSearchDetails*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__advancedSearchDetails*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvancedResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByAdvancedResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByAdvancedResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvancedPagination:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByAdvancedPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByAdvancedPagination*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByAdvancedPaginationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByAdvancedPaginationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listDatafileFormats:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listDatafileFormats*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listDatafileFormats*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listDatafileFormatsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listDatafileFormatsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifySampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifySampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifySampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifySampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifySampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifySampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByParameterComparator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByParameterComparator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchByParameterComparatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchByParameterComparatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataFiles:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataFiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataFiles*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createDataFilesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createDataFilesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createDataFilesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addSample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addSample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__loginLifetime:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__loginLifetime*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__loginLifetime*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__loginLifetimeResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__loginLifetimeResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__loginLifetimeResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__login:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__login*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__login*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__loginResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__loginResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__loginResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deletePublication:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deletePublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deletePublication*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deletePublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deletePublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deletePublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__updateAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__updateAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__updateAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__updateAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__updateAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__updateAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatasetIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatasetIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatasetIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatasetIncludesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatasetIncludesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDataset:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDataset*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDataset*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatasetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatasetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatasetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listRoles:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listRoles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listRoles*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listRolesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listRolesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listRolesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__ingestMetadata:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__ingestMetadata*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__ingestMetadata*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__ingestMetadataResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__ingestMetadataResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__ingestMetadataResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__ICATAPIException:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__ICATAPIException*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__ICATAPIException*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatafile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatafile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatafile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatafileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatafileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatafileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getInvestigationIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getInvestigationIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getInvestigationIncludesResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getInvestigationIncludesResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addPublication:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addPublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addPublication*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addPublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addPublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addPublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__createInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__createInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__createInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsBySample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatasetsBySample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatasetsBySample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__searchDatasetsBySampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__searchDatasetsBySampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__addDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__addDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__addDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteSampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteSampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteSampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__deleteSampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__deleteSampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__modifyDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__modifyDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listParameters:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listParameters*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listParameters*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__listParametersResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__listParametersResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__listParametersResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatasets:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatasets*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatasets*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__getDatasetsResponse:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__getDatasetsResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__getDatasetsResponse*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__sample:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__sample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__sample*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__sampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__sampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__sampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__sampleParameterPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__sampleParameterPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__sampleParameterPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__icatRole:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__icatRole*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__icatRole*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datafile:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datafile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datafile*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datafileFormat:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datafileFormat*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datafileFormat*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datafileFormatPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datafileFormatPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datafileFormatPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datafileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datafileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datafileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datafileParameterPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datafileParameterPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datafileParameterPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__relatedDatafiles:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__relatedDatafiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__relatedDatafiles*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__relatedDatafilesPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__relatedDatafilesPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__relatedDatafilesPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterComparisonCondition:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterComparisonCondition*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterComparisonCondition*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__investigation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__investigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__investigation*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__dataset:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__dataset*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__dataset*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datasetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datasetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datasetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__datasetParameterPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__datasetParameterPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__datasetParameterPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__facilityCycle:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__facilityCycle*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__facilityCycle*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__investigator:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__investigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__investigator*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__facilityUser:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__facilityUser*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__facilityUser*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__investigatorPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__investigatorPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__investigatorPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__keyword:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__keyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__keyword*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__keywordPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__keywordPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__keywordPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__publication:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__publication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__publication*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__shift:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__shift*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__shift*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__shiftPK:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__shiftPK*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__shiftPK*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__parameterLogicalCondition:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__parameterLogicalCondition*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__parameterLogicalCondition*)p->ptr);
-		break;
-	case SOAP_TYPE_ns1__icatAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((ns1__icatAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((ns1__icatAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE_SOAP_ENV__Detail:
-		if (p->size < 0)
-			SOAP_DELETE((struct SOAP_ENV__Detail*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct SOAP_ENV__Detail*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__login:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__login*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__login*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__loginLifetime:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__loginLifetime*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__loginLifetime*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addSample:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addSample*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__logout:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__logout*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__logout*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addSampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addSampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addSampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addPublication:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addPublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addPublication*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addKeyword:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addKeyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addKeyword*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getInvestigationIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getInvestigationIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getInvestigationIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getDataset:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getDataset*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getDataset*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatasetIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getDatasetIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getDatasetIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatafile:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getDatafile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getDatafile*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getInvestigationsIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getInvestigationsIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getInvestigationsIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__createInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__createInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__createInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyInvestigationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyInvestigation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeKeywordResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeKeywordResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeKeywordResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeKeyword:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeKeyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeKeyword*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteKeywordResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteKeywordResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteKeywordResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteKeyword:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteKeyword*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteKeyword*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removePublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removePublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removePublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removePublication:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removePublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removePublication*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deletePublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deletePublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deletePublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deletePublication:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deletePublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deletePublication*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyPublicationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyPublicationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyPublicationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyPublication:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyPublication*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyPublication*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigatorResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteInvestigatorResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigatorResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteInvestigator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteInvestigator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSample:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeSample*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSample:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteSample*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifySampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifySampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySample:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifySample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifySample*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeSampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeSampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeSampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeSampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeSampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteSampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteSampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteSampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteSampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteSampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySampleParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifySampleParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifySampleParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifySampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifySampleParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifySampleParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getAuthorisations:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getAuthorisations*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getAuthorisations*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__updateAuthorisationResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__updateAuthorisationResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__updateAuthorisationResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__updateAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__updateAuthorisation*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__updateAuthorisation*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getUserDetails:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getUserDetails*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getUserDetails*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatafiles:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getDatafiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getDatafiles*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__createDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__createDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataFiles:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__createDataFiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__createDataFiles*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFileResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataFileResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFileResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFile:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataFile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFile*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataFileParameters:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addDataFileParameters*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addDataFileParameters*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFileParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataFileParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFileParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataFileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataFileParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFileParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUser:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getKeywordsForUser*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUser*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUserStartWithMax:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getKeywordsForUserStartWithMax*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUserStartWithMax*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUserMax:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getKeywordsForUserMax*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUserMax*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getKeywordsForUserType:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getKeywordsForUserType*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUserType*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getAllKeywords:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getAllKeywords*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getAllKeywords*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__downloadDatafile:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__downloadDatafile*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__downloadDatafile*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__downloadDatafiles:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__downloadDatafiles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__downloadDatafiles*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__downloadDataset:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__downloadDataset*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__downloadDataset*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__checkDatafileDownloadAccess:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__checkDatafileDownloadAccess*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__checkDatafileDownloadAccess*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__checkDatasetDownloadAccess:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__checkDatasetDownloadAccess*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__checkDatasetDownloadAccess*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByAdvanced:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByAdvanced*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByAdvanced*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByAdvancedPagination:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByAdvancedPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByAdvancedPagination*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByKeywords:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByKeywords*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByKeywords*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByKeywordsAll:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByKeywordsAll*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByKeywordsAll*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getMyInvestigations:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getMyInvestigations*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getMyInvestigations*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getMyInvestigationsIncludes:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getMyInvestigationsIncludes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getMyInvestigationsIncludes*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getMyInvestigationsIncludesPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getMyInvestigationsIncludesPagination*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserID:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByUserID*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByUserID*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserIDPagination:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByUserIDPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByUserIDPagination*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserSurname:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByUserSurname*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByUserSurname*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByUserSurnamePagination:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByUserSurnamePagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByUserSurnamePagination*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listInstruments:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listInstruments*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listInstruments*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listRoles:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listRoles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listRoles*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listParameters:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listParameters*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listParameters*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listFacilityCycles:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listFacilityCycles*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listFacilityCycles*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listInvestigationTypes:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listInvestigationTypes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listInvestigationTypes*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchSamplesBySampleName:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchSamplesBySampleName*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchSamplesBySampleName*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatasetsBySample:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchDatasetsBySample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchDatasetsBySample*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listDatasetTypes:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listDatasetTypes*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listDatasetTypes*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listDatasetStatus:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listDatasetStatus*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listDatasetStatus*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByRunNumber:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByRunNumber*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByRunNumber*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByRunNumberPagination:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByRunNumberPagination*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByRunNumberPagination*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__listDatafileFormats:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__listDatafileFormats*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__listDatafileFormats*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getDatasets:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getDatasets*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getDatasets*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__createDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__createDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__createDataSets:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__createDataSets*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__createDataSets*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__deleteDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__deleteDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__modifyDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__modifyDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__setDataSetSampleResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__setDataSetSampleResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__setDataSetSampleResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__setDataSetSample:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__setDataSetSample*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__setDataSetSample*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__addDataSetParameters:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__addDataSetParameters*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__addDataSetParameters*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSetResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataSetResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataSetResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSet:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataSet*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataSet*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSetParameterResponse:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataSetParameterResponse*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataSetParameterResponse*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__removeDataSetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__removeDataSetParameter*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__removeDataSetParameter*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__ingestMetadata:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__ingestMetadata*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__ingestMetadata*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getICATAPIVersion:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getICATAPIVersion*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getICATAPIVersion*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getFacilityUserByFacilityUserId:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getFacilityUserByFacilityUserId*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getFacilityUserByFacilityUserId*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__getFacilityUserByFederalId:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__getFacilityUserByFederalId*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__getFacilityUserByFederalId*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__isSessionValid:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__isSessionValid*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__isSessionValid*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByParameterOperator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByParameterOperator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByParameterOperator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByParameterComparator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByParameterComparator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByParameterComparator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchByParameterComparators:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchByParameterComparators*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchByParameterComparators*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatasetsByParameterComparator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchDatasetsByParameterComparator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchDatasetsByParameterComparator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatasetsByParameterComparators:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchDatasetsByParameterComparators*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchDatasetsByParameterComparators*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatafilesByParameterComparator:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchDatafilesByParameterComparator*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchDatafilesByParameterComparator*)p->ptr);
-		break;
-	case SOAP_TYPE___ns1__searchDatafilesByParameterComparators:
-		if (p->size < 0)
-			SOAP_DELETE((struct __ns1__searchDatafilesByParameterComparators*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct __ns1__searchDatafilesByParameterComparators*)p->ptr);
-		break;
-	case SOAP_TYPE_SOAP_ENV__Header:
-		if (p->size < 0)
-			SOAP_DELETE((struct SOAP_ENV__Header*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct SOAP_ENV__Header*)p->ptr);
-		break;
-	case SOAP_TYPE_SOAP_ENV__Code:
-		if (p->size < 0)
-			SOAP_DELETE((struct SOAP_ENV__Code*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct SOAP_ENV__Code*)p->ptr);
-		break;
-	case SOAP_TYPE_SOAP_ENV__Reason:
-		if (p->size < 0)
-			SOAP_DELETE((struct SOAP_ENV__Reason*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct SOAP_ENV__Reason*)p->ptr);
-		break;
-	case SOAP_TYPE_SOAP_ENV__Fault:
-		if (p->size < 0)
-			SOAP_DELETE((struct SOAP_ENV__Fault*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((struct SOAP_ENV__Fault*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__parameterCondition * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__parameterCondition * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__shift * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__shift * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__publication * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__publication * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__keyword * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__keyword * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__investigator * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__investigator * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__relatedDatafiles * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__relatedDatafiles * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__sampleParameter * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__sampleParameter * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__parameter * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__parameter * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__icatRole * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__icatRole * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__datafileFormat * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__datafileFormat * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__datasetParameter * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__datasetParameter * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__icatAuthorisation * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__icatAuthorisation * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<xsd__anyType * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<xsd__anyType * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfLONG64:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<LONG64 >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<LONG64 >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__dataset * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__dataset * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__facilityCycle * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__facilityCycle * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__datafileParameter * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__datafileParameter * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__datafile * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__datafile * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__investigation * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__investigation * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__parameterComparisonCondition * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__parameterComparisonCondition * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<ns1__sample * >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<ns1__sample * >*)p->ptr);
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfstd__string:
-		if (p->size < 0)
-			SOAP_DELETE((std::vector<std::string >*)p->ptr);
-		else
-			SOAP_DELETE_ARRAY((std::vector<std::string >*)p->ptr);
-		break;
-	default:	return SOAP_ERR;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 void* SOAP_FMAC4 soap_class_id_enter(struct soap *soap, const char *id, void *p, int t, size_t n, const char *type, const char *arrayType)
-{	return soap_id_enter(soap, id, p, t, n, 0, type, arrayType, soap_instantiate);
-}
-
-SOAP_FMAC3 void* SOAP_FMAC4 soap_container_id_forward(struct soap *soap, const char *href, void *p, size_t len, int st, int tt, size_t n, unsigned int k)
-{	return soap_id_forward(soap, href, p, len, st, tt, n, k, soap_container_insert);
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_container_insert(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-#ifdef WIN32
-#pragma warning(push)
-#pragma warning(disable:4065)
-#endif
-{
-	(void)soap; (void)st; (void)p; (void)len; (void)q; (void)n; /* appease -Wall -Werror */
-	switch (tt)
-	{
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__parameterCondition * >*)p)[len] = *(ns1__parameterCondition **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__shift * >*)p)[len] = *(ns1__shift **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__publication * >*)p)[len] = *(ns1__publication **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__keyword * >*)p)[len] = *(ns1__keyword **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__investigator * >*)p)[len] = *(ns1__investigator **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__relatedDatafiles * >*)p)[len] = *(ns1__relatedDatafiles **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__sampleParameter * >*)p)[len] = *(ns1__sampleParameter **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__parameter * >*)p)[len] = *(ns1__parameter **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__icatRole * >*)p)[len] = *(ns1__icatRole **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__datafileFormat * >*)p)[len] = *(ns1__datafileFormat **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__datasetParameter * >*)p)[len] = *(ns1__datasetParameter **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__icatAuthorisation * >*)p)[len] = *(ns1__icatAuthorisation **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<xsd__anyType * >*)p)[len] = *(xsd__anyType **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfLONG64:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<LONG64 >*)p)[len] = *(LONG64 *)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__dataset * >*)p)[len] = *(ns1__dataset **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__facilityCycle * >*)p)[len] = *(ns1__facilityCycle **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__datafileParameter * >*)p)[len] = *(ns1__datafileParameter **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__datafile * >*)p)[len] = *(ns1__datafile **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__investigation * >*)p)[len] = *(ns1__investigation **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__parameterComparisonCondition * >*)p)[len] = *(ns1__parameterComparisonCondition **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<ns1__sample * >*)p)[len] = *(ns1__sample **)q;
-		break;
-	case SOAP_TYPE_std__vectorTemplateOfstd__string:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
-		(*(std::vector<std::string >*)p)[len] = *(std::string *)q;
-		break;
-	default:
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Could not insert type=%d in %d\n", st, tt));
-	}
-#ifdef WIN32
-#pragma warning(pop)
-#endif
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_byte(struct soap *soap, char *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_byte
-	*a = SOAP_DEFAULT_byte;
-#else
-	*a = (char)0;
-#endif
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_byte(struct soap *soap, const char *tag, int id, const char *a, const char *type)
-{
-	return soap_outbyte(soap, tag, id, a, type, SOAP_TYPE_byte);
-}
-
-SOAP_FMAC3 char * SOAP_FMAC4 soap_in_byte(struct soap *soap, const char *tag, char *a, const char *type)
-{	char *p;
-	p = soap_inbyte(soap, tag, a, type, SOAP_TYPE_byte);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_byte(struct soap *soap, const char *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_byte);
-	if (soap_out_byte(soap, tag?tag:"byte", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 char * SOAP_FMAC4 soap_get_byte(struct soap *soap, char *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_byte(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_int(struct soap *soap, int *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_int
-	*a = SOAP_DEFAULT_int;
-#else
-	*a = (int)0;
-#endif
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap *soap, const char *tag, int id, const int *a, const char *type)
-{
-	return soap_outint(soap, tag, id, a, type, SOAP_TYPE_int);
-}
-
-SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap *soap, const char *tag, int *a, const char *type)
-{	int *p;
-	p = soap_inint(soap, tag, a, type, SOAP_TYPE_int);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_int(struct soap *soap, const int *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_int);
-	if (soap_out_int(soap, tag?tag:"int", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 int * SOAP_FMAC4 soap_get_int(struct soap *soap, int *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_int(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_LONG64(struct soap *soap, LONG64 *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_LONG64
-	*a = SOAP_DEFAULT_LONG64;
-#else
-	*a = (LONG64)0;
-#endif
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_LONG64(struct soap *soap, const char *tag, int id, const LONG64 *a, const char *type)
-{
-	return soap_outLONG64(soap, tag, id, a, type, SOAP_TYPE_LONG64);
-}
-
-SOAP_FMAC3 LONG64 * SOAP_FMAC4 soap_in_LONG64(struct soap *soap, const char *tag, LONG64 *a, const char *type)
-{	LONG64 *p;
-	p = soap_inLONG64(soap, tag, a, type, SOAP_TYPE_LONG64);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_LONG64(struct soap *soap, const LONG64 *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_LONG64);
-	if (soap_out_LONG64(soap, tag?tag:"long", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 LONG64 * SOAP_FMAC4 soap_get_LONG64(struct soap *soap, LONG64 *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_LONG64(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_float(struct soap *soap, float *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_float
-	*a = SOAP_DEFAULT_float;
-#else
-	*a = (float)0;
-#endif
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_float(struct soap *soap, const char *tag, int id, const float *a, const char *type)
-{
-	return soap_outfloat(soap, tag, id, a, type, SOAP_TYPE_float);
-}
-
-SOAP_FMAC3 float * SOAP_FMAC4 soap_in_float(struct soap *soap, const char *tag, float *a, const char *type)
-{	float *p;
-	p = soap_infloat(soap, tag, a, type, SOAP_TYPE_float);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_float(struct soap *soap, const float *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_float);
-	if (soap_out_float(soap, tag?tag:"float", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 float * SOAP_FMAC4 soap_get_float(struct soap *soap, float *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_float(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_double(struct soap *soap, double *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_double
-	*a = SOAP_DEFAULT_double;
-#else
-	*a = (double)0;
-#endif
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_double(struct soap *soap, const char *tag, int id, const double *a, const char *type)
-{
-	return soap_outdouble(soap, tag, id, a, type, SOAP_TYPE_double);
-}
-
-SOAP_FMAC3 double * SOAP_FMAC4 soap_in_double(struct soap *soap, const char *tag, double *a, const char *type)
-{	double *p;
-	p = soap_indouble(soap, tag, a, type, SOAP_TYPE_double);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_double(struct soap *soap, const double *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_double);
-	if (soap_out_double(soap, tag?tag:"double", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 double * SOAP_FMAC4 soap_get_double(struct soap *soap, double *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_double(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_time(struct soap *soap, time_t *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_time
-	*a = SOAP_DEFAULT_time;
-#else
-	*a = (time_t)0;
-#endif
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_time(struct soap *soap, const char *tag, int id, const time_t *a, const char *type)
-{
-	return soap_outdateTime(soap, tag, id, a, type, SOAP_TYPE_time);
-}
-
-SOAP_FMAC3 time_t * SOAP_FMAC4 soap_in_time(struct soap *soap, const char *tag, time_t *a, const char *type)
-{	time_t *p;
-	p = soap_indateTime(soap, tag, a, type, SOAP_TYPE_time);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_time(struct soap *soap, const time_t *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_time);
-	if (soap_out_time(soap, tag?tag:"dateTime", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 time_t * SOAP_FMAC4 soap_get_time(struct soap *soap, time_t *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_time(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__datasetInclude
-	*a = SOAP_DEFAULT_ns1__datasetInclude;
-#else
-	*a = (enum ns1__datasetInclude)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__datasetInclude[] =
-{	{ (long)ns1__datasetInclude__DATASET_USCOREAND_USCOREDATAFILES_USCOREONLY, "DATASET_AND_DATAFILES_ONLY" },
-	{ (long)ns1__datasetInclude__DATASET_USCOREPARAMETERS_USCOREONLY, "DATASET_PARAMETERS_ONLY" },
-	{ (long)ns1__datasetInclude__DATASET_USCOREDATAFILES_USCOREAND_USCOREPARAMETERS, "DATASET_DATAFILES_AND_PARAMETERS" },
-	{ (long)ns1__datasetInclude__NONE, "NONE" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__datasetInclude2s(struct soap *soap, enum ns1__datasetInclude n)
-{	const char *s = soap_code_str(soap_codes_ns1__datasetInclude, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetInclude(struct soap *soap, const char *tag, int id, const enum ns1__datasetInclude *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datasetInclude), type) || soap_send(soap, soap_ns1__datasetInclude2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__datasetInclude(struct soap *soap, const char *s, enum ns1__datasetInclude *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__datasetInclude, s);
-	if (map)
-		*a = (enum ns1__datasetInclude)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 3)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__datasetInclude)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__datasetInclude * SOAP_FMAC4 soap_in_ns1__datasetInclude(struct soap *soap, const char *tag, enum ns1__datasetInclude *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__datasetInclude *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetInclude, sizeof(enum ns1__datasetInclude), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__datasetInclude(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__datasetInclude *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datasetInclude, 0, sizeof(enum ns1__datasetInclude), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__datasetInclude(struct soap *soap, const enum ns1__datasetInclude *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__datasetInclude);
-	if (soap_out_ns1__datasetInclude(soap, tag?tag:"ns1:datasetInclude", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__datasetInclude * SOAP_FMAC4 soap_get_ns1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datasetInclude(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__elementType(struct soap *soap, enum ns1__elementType *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__elementType
-	*a = SOAP_DEFAULT_ns1__elementType;
-#else
-	*a = (enum ns1__elementType)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__elementType[] =
-{	{ (long)ns1__elementType__STUDY, "STUDY" },
-	{ (long)ns1__elementType__INVESTIGATION, "INVESTIGATION" },
-	{ (long)ns1__elementType__INVESTIGATOR, "INVESTIGATOR" },
-	{ (long)ns1__elementType__KEYWORD, "KEYWORD" },
-	{ (long)ns1__elementType__SAMPLE, "SAMPLE" },
-	{ (long)ns1__elementType__SAMPLE_USCOREPARAMETER, "SAMPLE_PARAMETER" },
-	{ (long)ns1__elementType__PUBLICATION, "PUBLICATION" },
-	{ (long)ns1__elementType__DATASET, "DATASET" },
-	{ (long)ns1__elementType__DATASET_USCOREPARAMETER, "DATASET_PARAMETER" },
-	{ (long)ns1__elementType__DATAFILE, "DATAFILE" },
-	{ (long)ns1__elementType__DATAFILE_USCOREPARAMETER, "DATAFILE_PARAMETER" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__elementType2s(struct soap *soap, enum ns1__elementType n)
-{	const char *s = soap_code_str(soap_codes_ns1__elementType, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__elementType(struct soap *soap, const char *tag, int id, const enum ns1__elementType *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__elementType), type) || soap_send(soap, soap_ns1__elementType2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__elementType(struct soap *soap, const char *s, enum ns1__elementType *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__elementType, s);
-	if (map)
-		*a = (enum ns1__elementType)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 10)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__elementType)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__elementType * SOAP_FMAC4 soap_in_ns1__elementType(struct soap *soap, const char *tag, enum ns1__elementType *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__elementType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__elementType, sizeof(enum ns1__elementType), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__elementType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__elementType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__elementType, 0, sizeof(enum ns1__elementType), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__elementType(struct soap *soap, const enum ns1__elementType *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__elementType);
-	if (soap_out_ns1__elementType(soap, tag?tag:"ns1:elementType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__elementType * SOAP_FMAC4 soap_get_ns1__elementType(struct soap *soap, enum ns1__elementType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__elementType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__logicalOperator
-	*a = SOAP_DEFAULT_ns1__logicalOperator;
-#else
-	*a = (enum ns1__logicalOperator)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__logicalOperator[] =
-{	{ (long)ns1__logicalOperator__AND, "AND" },
-	{ (long)ns1__logicalOperator__OR, "OR" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__logicalOperator2s(struct soap *soap, enum ns1__logicalOperator n)
-{	const char *s = soap_code_str(soap_codes_ns1__logicalOperator, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logicalOperator(struct soap *soap, const char *tag, int id, const enum ns1__logicalOperator *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__logicalOperator), type) || soap_send(soap, soap_ns1__logicalOperator2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__logicalOperator(struct soap *soap, const char *s, enum ns1__logicalOperator *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__logicalOperator, s);
-	if (map)
-		*a = (enum ns1__logicalOperator)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 1)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__logicalOperator)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__logicalOperator * SOAP_FMAC4 soap_in_ns1__logicalOperator(struct soap *soap, const char *tag, enum ns1__logicalOperator *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__logicalOperator *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logicalOperator, sizeof(enum ns1__logicalOperator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__logicalOperator(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__logicalOperator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__logicalOperator, 0, sizeof(enum ns1__logicalOperator), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__logicalOperator(struct soap *soap, const enum ns1__logicalOperator *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__logicalOperator);
-	if (soap_out_ns1__logicalOperator(soap, tag?tag:"ns1:logicalOperator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__logicalOperator * SOAP_FMAC4 soap_get_ns1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__logicalOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__investigationInclude
-	*a = SOAP_DEFAULT_ns1__investigationInclude;
-#else
-	*a = (enum ns1__investigationInclude)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__investigationInclude[] =
-{	{ (long)ns1__investigationInclude__INVESTIGATORS_USCOREONLY, "INVESTIGATORS_ONLY" },
-	{ (long)ns1__investigationInclude__KEYWORDS_USCOREONLY, "KEYWORDS_ONLY" },
-	{ (long)ns1__investigationInclude__PUBLICATIONS_USCOREONLY, "PUBLICATIONS_ONLY" },
-	{ (long)ns1__investigationInclude__INVESTIGATORS_USCOREAND_USCOREKEYWORDS, "INVESTIGATORS_AND_KEYWORDS" },
-	{ (long)ns1__investigationInclude__INVESTIGATORS_USCOREAND_USCORESHIFTS, "INVESTIGATORS_AND_SHIFTS" },
-	{ (long)ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES, "INVESTIGATORS_SHIFTS_AND_SAMPLES" },
-	{ (long)ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCORESAMPLES_USCOREAND_USCOREPUBLICATIONS, "INVESTIGATORS_SHIFTS_SAMPLES_AND_PUBLICATIONS" },
-	{ (long)ns1__investigationInclude__DATASETS_USCOREONLY, "DATASETS_ONLY" },
-	{ (long)ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATASET_USCOREPARAMETERS_USCOREONLY, "DATASETS_AND_DATASET_PARAMETERS_ONLY" },
-	{ (long)ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATAFILES, "DATASETS_AND_DATAFILES" },
-	{ (long)ns1__investigationInclude__DATASETS_USCOREDATAFILES_USCOREAND_USCOREPARAMETERS, "DATASETS_DATAFILES_AND_PARAMETERS" },
-	{ (long)ns1__investigationInclude__SAMPLES_USCOREONLY, "SAMPLES_ONLY" },
-	{ (long)ns1__investigationInclude__ROLE_USCOREONLY, "ROLE_ONLY" },
-	{ (long)ns1__investigationInclude__SHIFT_USCOREONLY, "SHIFT_ONLY" },
-	{ (long)ns1__investigationInclude__ALL, "ALL" },
-	{ (long)ns1__investigationInclude__NONE, "NONE" },
-	{ (long)ns1__investigationInclude__ALL_USCOREEXCEPT_USCOREDATASETS_USCOREAND_USCOREDATAFILES, "ALL_EXCEPT_DATASETS_AND_DATAFILES" },
-	{ (long)ns1__investigationInclude__ALL_USCOREEXCEPT_USCOREDATASETS_USCOREDATAFILES_USCOREAND_USCOREROLES, "ALL_EXCEPT_DATASETS_DATAFILES_AND_ROLES" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__investigationInclude2s(struct soap *soap, enum ns1__investigationInclude n)
-{	const char *s = soap_code_str(soap_codes_ns1__investigationInclude, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigationInclude(struct soap *soap, const char *tag, int id, const enum ns1__investigationInclude *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigationInclude), type) || soap_send(soap, soap_ns1__investigationInclude2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__investigationInclude(struct soap *soap, const char *s, enum ns1__investigationInclude *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__investigationInclude, s);
-	if (map)
-		*a = (enum ns1__investigationInclude)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 17)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__investigationInclude)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__investigationInclude * SOAP_FMAC4 soap_in_ns1__investigationInclude(struct soap *soap, const char *tag, enum ns1__investigationInclude *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__investigationInclude *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigationInclude, sizeof(enum ns1__investigationInclude), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__investigationInclude(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__investigationInclude *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigationInclude, 0, sizeof(enum ns1__investigationInclude), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__investigationInclude(struct soap *soap, const enum ns1__investigationInclude *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__investigationInclude);
-	if (soap_out_ns1__investigationInclude(soap, tag?tag:"ns1:investigationInclude", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__investigationInclude * SOAP_FMAC4 soap_get_ns1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__investigationInclude(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__keywordType(struct soap *soap, enum ns1__keywordType *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__keywordType
-	*a = SOAP_DEFAULT_ns1__keywordType;
-#else
-	*a = (enum ns1__keywordType)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__keywordType[] =
-{	{ (long)ns1__keywordType__ALL, "ALL" },
-	{ (long)ns1__keywordType__ALPHA_USCORENUMERIC, "ALPHA_NUMERIC" },
-	{ (long)ns1__keywordType__ALPHA, "ALPHA" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__keywordType2s(struct soap *soap, enum ns1__keywordType n)
-{	const char *s = soap_code_str(soap_codes_ns1__keywordType, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordType(struct soap *soap, const char *tag, int id, const enum ns1__keywordType *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keywordType), type) || soap_send(soap, soap_ns1__keywordType2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__keywordType(struct soap *soap, const char *s, enum ns1__keywordType *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__keywordType, s);
-	if (map)
-		*a = (enum ns1__keywordType)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 2)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__keywordType)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__keywordType * SOAP_FMAC4 soap_in_ns1__keywordType(struct soap *soap, const char *tag, enum ns1__keywordType *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__keywordType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordType, sizeof(enum ns1__keywordType), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__keywordType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__keywordType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keywordType, 0, sizeof(enum ns1__keywordType), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__keywordType(struct soap *soap, const enum ns1__keywordType *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__keywordType);
-	if (soap_out_ns1__keywordType(soap, tag?tag:"ns1:keywordType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__keywordType * SOAP_FMAC4 soap_get_ns1__keywordType(struct soap *soap, enum ns1__keywordType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__keywordType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__parameterType(struct soap *soap, enum ns1__parameterType *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__parameterType
-	*a = SOAP_DEFAULT_ns1__parameterType;
-#else
-	*a = (enum ns1__parameterType)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__parameterType[] =
-{	{ (long)ns1__parameterType__DATAFILE, "DATAFILE" },
-	{ (long)ns1__parameterType__DATASET, "DATASET" },
-	{ (long)ns1__parameterType__SAMPLE, "SAMPLE" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__parameterType2s(struct soap *soap, enum ns1__parameterType n)
-{	const char *s = soap_code_str(soap_codes_ns1__parameterType, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterType(struct soap *soap, const char *tag, int id, const enum ns1__parameterType *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterType), type) || soap_send(soap, soap_ns1__parameterType2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__parameterType(struct soap *soap, const char *s, enum ns1__parameterType *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__parameterType, s);
-	if (map)
-		*a = (enum ns1__parameterType)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 2)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__parameterType)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__parameterType * SOAP_FMAC4 soap_in_ns1__parameterType(struct soap *soap, const char *tag, enum ns1__parameterType *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__parameterType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterType, sizeof(enum ns1__parameterType), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__parameterType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__parameterType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterType, 0, sizeof(enum ns1__parameterType), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__parameterType(struct soap *soap, const enum ns1__parameterType *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__parameterType);
-	if (soap_out_ns1__parameterType(soap, tag?tag:"ns1:parameterType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__parameterType * SOAP_FMAC4 soap_get_ns1__parameterType(struct soap *soap, enum ns1__parameterType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__comparisonOperator
-	*a = SOAP_DEFAULT_ns1__comparisonOperator;
-#else
-	*a = (enum ns1__comparisonOperator)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__comparisonOperator[] =
-{	{ (long)ns1__comparisonOperator__GREATER_USCORETHAN, "GREATER_THAN" },
-	{ (long)ns1__comparisonOperator__LESS_USCORETHAN, "LESS_THAN" },
-	{ (long)ns1__comparisonOperator__EQUAL, "EQUAL" },
-	{ (long)ns1__comparisonOperator__GREATER_USCOREEQUAL, "GREATER_EQUAL" },
-	{ (long)ns1__comparisonOperator__LESS_USCOREEQUAL, "LESS_EQUAL" },
-	{ (long)ns1__comparisonOperator__BETWEEN, "BETWEEN" },
-	{ (long)ns1__comparisonOperator__BETWEEN_USCOREEQUAL, "BETWEEN_EQUAL" },
-	{ (long)ns1__comparisonOperator__BETWEEN_USCOREEQUAL_USCORELEFT, "BETWEEN_EQUAL_LEFT" },
-	{ (long)ns1__comparisonOperator__BETWEEN_USCOREEQUAL_USCORERIGHT, "BETWEEN_EQUAL_RIGHT" },
-	{ (long)ns1__comparisonOperator__CONTAIN, "CONTAIN" },
-	{ (long)ns1__comparisonOperator__START_USCOREWITH, "START_WITH" },
-	{ (long)ns1__comparisonOperator__END_USCOREWITH, "END_WITH" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__comparisonOperator2s(struct soap *soap, enum ns1__comparisonOperator n)
-{	const char *s = soap_code_str(soap_codes_ns1__comparisonOperator, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__comparisonOperator(struct soap *soap, const char *tag, int id, const enum ns1__comparisonOperator *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__comparisonOperator), type) || soap_send(soap, soap_ns1__comparisonOperator2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__comparisonOperator(struct soap *soap, const char *s, enum ns1__comparisonOperator *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__comparisonOperator, s);
-	if (map)
-		*a = (enum ns1__comparisonOperator)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 11)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__comparisonOperator)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__comparisonOperator * SOAP_FMAC4 soap_in_ns1__comparisonOperator(struct soap *soap, const char *tag, enum ns1__comparisonOperator *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__comparisonOperator *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__comparisonOperator, sizeof(enum ns1__comparisonOperator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__comparisonOperator(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__comparisonOperator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__comparisonOperator, 0, sizeof(enum ns1__comparisonOperator), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__comparisonOperator(struct soap *soap, const enum ns1__comparisonOperator *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__comparisonOperator);
-	if (soap_out_ns1__comparisonOperator(soap, tag?tag:"ns1:comparisonOperator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__comparisonOperator * SOAP_FMAC4 soap_get_ns1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__comparisonOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__datafileInclude
-	*a = SOAP_DEFAULT_ns1__datafileInclude;
-#else
-	*a = (enum ns1__datafileInclude)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__datafileInclude[] =
-{	{ (long)ns1__datafileInclude__DATAFILE_USCOREPARAMETERS, "DATAFILE_PARAMETERS" },
-	{ (long)ns1__datafileInclude__RELATED_USCOREDATAFILES, "RELATED_DATAFILES" },
-	{ (long)ns1__datafileInclude__ALL, "ALL" },
-	{ (long)ns1__datafileInclude__NONE, "NONE" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__datafileInclude2s(struct soap *soap, enum ns1__datafileInclude n)
-{	const char *s = soap_code_str(soap_codes_ns1__datafileInclude, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileInclude(struct soap *soap, const char *tag, int id, const enum ns1__datafileInclude *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileInclude), type) || soap_send(soap, soap_ns1__datafileInclude2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__datafileInclude(struct soap *soap, const char *s, enum ns1__datafileInclude *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__datafileInclude, s);
-	if (map)
-		*a = (enum ns1__datafileInclude)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 3)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__datafileInclude)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__datafileInclude * SOAP_FMAC4 soap_in_ns1__datafileInclude(struct soap *soap, const char *tag, enum ns1__datafileInclude *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__datafileInclude *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileInclude, sizeof(enum ns1__datafileInclude), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__datafileInclude(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__datafileInclude *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileInclude, 0, sizeof(enum ns1__datafileInclude), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__datafileInclude(struct soap *soap, const enum ns1__datafileInclude *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__datafileInclude);
-	if (soap_out_ns1__datafileInclude(soap, tag?tag:"ns1:datafileInclude", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__datafileInclude * SOAP_FMAC4 soap_get_ns1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafileInclude(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_ns1__parameterValueType
-	*a = SOAP_DEFAULT_ns1__parameterValueType;
-#else
-	*a = (enum ns1__parameterValueType)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_ns1__parameterValueType[] =
-{	{ (long)ns1__parameterValueType__NUMERIC, "NUMERIC" },
-	{ (long)ns1__parameterValueType__STRING, "STRING" },
-	{ (long)ns1__parameterValueType__DATE_USCOREAND_USCORETIME, "DATE_AND_TIME" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__parameterValueType2s(struct soap *soap, enum ns1__parameterValueType n)
-{	const char *s = soap_code_str(soap_codes_ns1__parameterValueType, (long)n);
-	if (s)
-		return s;
-	return soap_long2s(soap, (long)n);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterValueType(struct soap *soap, const char *tag, int id, const enum ns1__parameterValueType *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterValueType), type) || soap_send(soap, soap_ns1__parameterValueType2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__parameterValueType(struct soap *soap, const char *s, enum ns1__parameterValueType *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_ns1__parameterValueType, s);
-	if (map)
-		*a = (enum ns1__parameterValueType)map->code;
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 2)))
-			return soap->error = SOAP_TYPE;
-		*a = (enum ns1__parameterValueType)n;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 enum ns1__parameterValueType * SOAP_FMAC4 soap_in_ns1__parameterValueType(struct soap *soap, const char *tag, enum ns1__parameterValueType *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (enum ns1__parameterValueType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterValueType, sizeof(enum ns1__parameterValueType), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2ns1__parameterValueType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__parameterValueType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterValueType, 0, sizeof(enum ns1__parameterValueType), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__parameterValueType(struct soap *soap, const enum ns1__parameterValueType *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__parameterValueType);
-	if (soap_out_ns1__parameterValueType(soap, tag?tag:"ns1:parameterValueType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__parameterValueType * SOAP_FMAC4 soap_get_ns1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterValueType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_bool(struct soap *soap, bool *a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_bool
-	*a = SOAP_DEFAULT_bool;
-#else
-	*a = (bool)0;
-#endif
-}
-
-static const struct soap_code_map soap_codes_bool[] =
-{	{ (long)false, "false" },
-	{ (long)true, "true" },
-	{ 0, NULL }
-};
-
-SOAP_FMAC3S const char* SOAP_FMAC4S soap_bool2s(struct soap *soap, bool n)
-{
-	(void)soap; /* appease -Wall -Werror */
-return soap_code_str(soap_codes_bool, n!=0);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_bool(struct soap *soap, const char *tag, int id, const bool *a, const char *type)
-{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_bool), type) || soap_send(soap, soap_bool2s(soap, *a)))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3S int SOAP_FMAC4S soap_s2bool(struct soap *soap, const char *s, bool *a)
-{
-	const struct soap_code_map *map;
-	if (!s)
-		return soap->error;
-	map = soap_code(soap_codes_bool, s);
-	if (map)
-		*a = (bool)(map->code != 0);
-	else
-	{	long n;
-		if (soap_s2long(soap, s, &n) || n < 0 || n > 1)
-			return soap->error = SOAP_TYPE;
-		*a = (bool)(n != 0);
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 bool * SOAP_FMAC4 soap_in_bool(struct soap *soap, const char *tag, bool *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	if (*soap->type && soap_match_tag(soap, soap->type, type) && soap_match_tag(soap, soap->type, ":boolean"))
-	{	soap->error = SOAP_TYPE;
-		return NULL;
-	}
-	a = (bool *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_bool, sizeof(bool), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	if (soap->body && !*soap->href)
-	{	if (!a || soap_s2bool(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (bool *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_bool, 0, sizeof(bool), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_bool(struct soap *soap, const bool *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_bool);
-	if (soap_out_bool(soap, tag?tag:"boolean", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 bool * SOAP_FMAC4 soap_get_bool(struct soap *soap, bool *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_bool(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-void ns1__datasetInclude_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__datasetInclude(soap, &this->ns1__datasetInclude_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datasetInclude_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__datasetInclude_::__item, SOAP_TYPE_ns1__datasetInclude);
-	/* transient soap skipped */
-}
-
-int ns1__datasetInclude_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datasetInclude_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetInclude_(struct soap *soap, const char *tag, int id, const ns1__datasetInclude_ *a, const char *type)
-{
-	return soap_out_ns1__datasetInclude(soap, tag, id, &(a->ns1__datasetInclude_::__item), "ns1:datasetInclude");
-}
-
-void *ns1__datasetInclude_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datasetInclude_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datasetInclude_ * SOAP_FMAC4 soap_in_ns1__datasetInclude_(struct soap *soap, const char *tag, ns1__datasetInclude_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__datasetInclude_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetInclude_, sizeof(ns1__datasetInclude_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datasetInclude_)
-			return (ns1__datasetInclude_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__datasetInclude(soap, tag, &(a->ns1__datasetInclude_::__item), "ns1:datasetInclude"))
-		return NULL;
-	return a;
-}
-
-int ns1__datasetInclude_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datasetInclude_);
-	if (this->soap_out(soap, tag?tag:"ns1:datasetInclude", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datasetInclude_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datasetInclude_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datasetInclude_ * SOAP_FMAC4 soap_get_ns1__datasetInclude_(struct soap *soap, ns1__datasetInclude_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datasetInclude_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datasetInclude_ * SOAP_FMAC2 soap_instantiate_ns1__datasetInclude_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datasetInclude_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datasetInclude_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_);
-		if (size)
-			*size = sizeof(ns1__datasetInclude_);
-		((ns1__datasetInclude_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datasetInclude_);
-		for (int i = 0; i < n; i++)
-			((ns1__datasetInclude_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datasetInclude_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datasetInclude_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datasetInclude_ %p -> %p\n", q, p));
-	*(ns1__datasetInclude_*)p = *(ns1__datasetInclude_*)q;
-}
-
-void ns1__elementType_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__elementType(soap, &this->ns1__elementType_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__elementType_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__elementType_::__item, SOAP_TYPE_ns1__elementType);
-	/* transient soap skipped */
-}
-
-int ns1__elementType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__elementType_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__elementType_(struct soap *soap, const char *tag, int id, const ns1__elementType_ *a, const char *type)
-{
-	return soap_out_ns1__elementType(soap, tag, id, &(a->ns1__elementType_::__item), "ns1:elementType");
-}
-
-void *ns1__elementType_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__elementType_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__elementType_ * SOAP_FMAC4 soap_in_ns1__elementType_(struct soap *soap, const char *tag, ns1__elementType_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__elementType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__elementType_, sizeof(ns1__elementType_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__elementType_)
-			return (ns1__elementType_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__elementType(soap, tag, &(a->ns1__elementType_::__item), "ns1:elementType"))
-		return NULL;
-	return a;
-}
-
-int ns1__elementType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__elementType_);
-	if (this->soap_out(soap, tag?tag:"ns1:elementType", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__elementType_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__elementType_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__elementType_ * SOAP_FMAC4 soap_get_ns1__elementType_(struct soap *soap, ns1__elementType_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__elementType_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__elementType_ * SOAP_FMAC2 soap_instantiate_ns1__elementType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__elementType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__elementType_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_);
-		if (size)
-			*size = sizeof(ns1__elementType_);
-		((ns1__elementType_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__elementType_);
-		for (int i = 0; i < n; i++)
-			((ns1__elementType_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__elementType_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__elementType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__elementType_ %p -> %p\n", q, p));
-	*(ns1__elementType_*)p = *(ns1__elementType_*)q;
-}
-
-void ns1__logicalOperator_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__logicalOperator(soap, &this->ns1__logicalOperator_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__logicalOperator_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__logicalOperator_::__item, SOAP_TYPE_ns1__logicalOperator);
-	/* transient soap skipped */
-}
-
-int ns1__logicalOperator_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__logicalOperator_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logicalOperator_(struct soap *soap, const char *tag, int id, const ns1__logicalOperator_ *a, const char *type)
-{
-	return soap_out_ns1__logicalOperator(soap, tag, id, &(a->ns1__logicalOperator_::__item), "ns1:logicalOperator");
-}
-
-void *ns1__logicalOperator_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__logicalOperator_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__logicalOperator_ * SOAP_FMAC4 soap_in_ns1__logicalOperator_(struct soap *soap, const char *tag, ns1__logicalOperator_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__logicalOperator_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logicalOperator_, sizeof(ns1__logicalOperator_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__logicalOperator_)
-			return (ns1__logicalOperator_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__logicalOperator(soap, tag, &(a->ns1__logicalOperator_::__item), "ns1:logicalOperator"))
-		return NULL;
-	return a;
-}
-
-int ns1__logicalOperator_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__logicalOperator_);
-	if (this->soap_out(soap, tag?tag:"ns1:logicalOperator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__logicalOperator_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__logicalOperator_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__logicalOperator_ * SOAP_FMAC4 soap_get_ns1__logicalOperator_(struct soap *soap, ns1__logicalOperator_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__logicalOperator_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__logicalOperator_ * SOAP_FMAC2 soap_instantiate_ns1__logicalOperator_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__logicalOperator_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__logicalOperator_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_);
-		if (size)
-			*size = sizeof(ns1__logicalOperator_);
-		((ns1__logicalOperator_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__logicalOperator_);
-		for (int i = 0; i < n; i++)
-			((ns1__logicalOperator_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__logicalOperator_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__logicalOperator_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__logicalOperator_ %p -> %p\n", q, p));
-	*(ns1__logicalOperator_*)p = *(ns1__logicalOperator_*)q;
-}
-
-void ns1__investigationInclude_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__investigationInclude(soap, &this->ns1__investigationInclude_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__investigationInclude_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__investigationInclude_::__item, SOAP_TYPE_ns1__investigationInclude);
-	/* transient soap skipped */
-}
-
-int ns1__investigationInclude_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__investigationInclude_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigationInclude_(struct soap *soap, const char *tag, int id, const ns1__investigationInclude_ *a, const char *type)
-{
-	return soap_out_ns1__investigationInclude(soap, tag, id, &(a->ns1__investigationInclude_::__item), "ns1:investigationInclude");
-}
-
-void *ns1__investigationInclude_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__investigationInclude_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__investigationInclude_ * SOAP_FMAC4 soap_in_ns1__investigationInclude_(struct soap *soap, const char *tag, ns1__investigationInclude_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__investigationInclude_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigationInclude_, sizeof(ns1__investigationInclude_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__investigationInclude_)
-			return (ns1__investigationInclude_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__investigationInclude(soap, tag, &(a->ns1__investigationInclude_::__item), "ns1:investigationInclude"))
-		return NULL;
-	return a;
-}
-
-int ns1__investigationInclude_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigationInclude_);
-	if (this->soap_out(soap, tag?tag:"ns1:investigationInclude", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__investigationInclude_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__investigationInclude_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__investigationInclude_ * SOAP_FMAC4 soap_get_ns1__investigationInclude_(struct soap *soap, ns1__investigationInclude_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__investigationInclude_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__investigationInclude_ * SOAP_FMAC2 soap_instantiate_ns1__investigationInclude_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigationInclude_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigationInclude_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_);
-		if (size)
-			*size = sizeof(ns1__investigationInclude_);
-		((ns1__investigationInclude_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__investigationInclude_);
-		for (int i = 0; i < n; i++)
-			((ns1__investigationInclude_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__investigationInclude_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigationInclude_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigationInclude_ %p -> %p\n", q, p));
-	*(ns1__investigationInclude_*)p = *(ns1__investigationInclude_*)q;
-}
-
-void ns1__keywordType_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__keywordType(soap, &this->ns1__keywordType_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__keywordType_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__keywordType_::__item, SOAP_TYPE_ns1__keywordType);
-	/* transient soap skipped */
-}
-
-int ns1__keywordType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__keywordType_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordType_(struct soap *soap, const char *tag, int id, const ns1__keywordType_ *a, const char *type)
-{
-	return soap_out_ns1__keywordType(soap, tag, id, &(a->ns1__keywordType_::__item), "ns1:keywordType");
-}
-
-void *ns1__keywordType_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__keywordType_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__keywordType_ * SOAP_FMAC4 soap_in_ns1__keywordType_(struct soap *soap, const char *tag, ns1__keywordType_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__keywordType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordType_, sizeof(ns1__keywordType_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__keywordType_)
-			return (ns1__keywordType_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__keywordType(soap, tag, &(a->ns1__keywordType_::__item), "ns1:keywordType"))
-		return NULL;
-	return a;
-}
-
-int ns1__keywordType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keywordType_);
-	if (this->soap_out(soap, tag?tag:"ns1:keywordType", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__keywordType_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__keywordType_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__keywordType_ * SOAP_FMAC4 soap_get_ns1__keywordType_(struct soap *soap, ns1__keywordType_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__keywordType_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__keywordType_ * SOAP_FMAC2 soap_instantiate_ns1__keywordType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keywordType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keywordType_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_);
-		if (size)
-			*size = sizeof(ns1__keywordType_);
-		((ns1__keywordType_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__keywordType_);
-		for (int i = 0; i < n; i++)
-			((ns1__keywordType_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__keywordType_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keywordType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keywordType_ %p -> %p\n", q, p));
-	*(ns1__keywordType_*)p = *(ns1__keywordType_*)q;
-}
-
-void ns1__parameterType_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__parameterType(soap, &this->ns1__parameterType_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterType_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__parameterType_::__item, SOAP_TYPE_ns1__parameterType);
-	/* transient soap skipped */
-}
-
-int ns1__parameterType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterType_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterType_(struct soap *soap, const char *tag, int id, const ns1__parameterType_ *a, const char *type)
-{
-	return soap_out_ns1__parameterType(soap, tag, id, &(a->ns1__parameterType_::__item), "ns1:parameterType");
-}
-
-void *ns1__parameterType_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterType_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterType_ * SOAP_FMAC4 soap_in_ns1__parameterType_(struct soap *soap, const char *tag, ns1__parameterType_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__parameterType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterType_, sizeof(ns1__parameterType_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterType_)
-			return (ns1__parameterType_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__parameterType(soap, tag, &(a->ns1__parameterType_::__item), "ns1:parameterType"))
-		return NULL;
-	return a;
-}
-
-int ns1__parameterType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterType_);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterType", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterType_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterType_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterType_ * SOAP_FMAC4 soap_get_ns1__parameterType_(struct soap *soap, ns1__parameterType_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterType_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterType_ * SOAP_FMAC2 soap_instantiate_ns1__parameterType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterType_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_);
-		if (size)
-			*size = sizeof(ns1__parameterType_);
-		((ns1__parameterType_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterType_);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterType_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterType_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterType_ %p -> %p\n", q, p));
-	*(ns1__parameterType_*)p = *(ns1__parameterType_*)q;
-}
-
-void ns1__comparisonOperator_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__comparisonOperator(soap, &this->ns1__comparisonOperator_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__comparisonOperator_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__comparisonOperator_::__item, SOAP_TYPE_ns1__comparisonOperator);
-	/* transient soap skipped */
-}
-
-int ns1__comparisonOperator_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__comparisonOperator_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__comparisonOperator_(struct soap *soap, const char *tag, int id, const ns1__comparisonOperator_ *a, const char *type)
-{
-	return soap_out_ns1__comparisonOperator(soap, tag, id, &(a->ns1__comparisonOperator_::__item), "ns1:comparisonOperator");
-}
-
-void *ns1__comparisonOperator_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__comparisonOperator_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__comparisonOperator_ * SOAP_FMAC4 soap_in_ns1__comparisonOperator_(struct soap *soap, const char *tag, ns1__comparisonOperator_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__comparisonOperator_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__comparisonOperator_, sizeof(ns1__comparisonOperator_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__comparisonOperator_)
-			return (ns1__comparisonOperator_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__comparisonOperator(soap, tag, &(a->ns1__comparisonOperator_::__item), "ns1:comparisonOperator"))
-		return NULL;
-	return a;
-}
-
-int ns1__comparisonOperator_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__comparisonOperator_);
-	if (this->soap_out(soap, tag?tag:"ns1:comparisonOperator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__comparisonOperator_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__comparisonOperator_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__comparisonOperator_ * SOAP_FMAC4 soap_get_ns1__comparisonOperator_(struct soap *soap, ns1__comparisonOperator_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__comparisonOperator_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__comparisonOperator_ * SOAP_FMAC2 soap_instantiate_ns1__comparisonOperator_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__comparisonOperator_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__comparisonOperator_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_);
-		if (size)
-			*size = sizeof(ns1__comparisonOperator_);
-		((ns1__comparisonOperator_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__comparisonOperator_);
-		for (int i = 0; i < n; i++)
-			((ns1__comparisonOperator_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__comparisonOperator_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__comparisonOperator_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__comparisonOperator_ %p -> %p\n", q, p));
-	*(ns1__comparisonOperator_*)p = *(ns1__comparisonOperator_*)q;
-}
-
-void ns1__datafileInclude_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__datafileInclude(soap, &this->ns1__datafileInclude_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datafileInclude_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__datafileInclude_::__item, SOAP_TYPE_ns1__datafileInclude);
-	/* transient soap skipped */
-}
-
-int ns1__datafileInclude_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datafileInclude_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileInclude_(struct soap *soap, const char *tag, int id, const ns1__datafileInclude_ *a, const char *type)
-{
-	return soap_out_ns1__datafileInclude(soap, tag, id, &(a->ns1__datafileInclude_::__item), "ns1:datafileInclude");
-}
-
-void *ns1__datafileInclude_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datafileInclude_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datafileInclude_ * SOAP_FMAC4 soap_in_ns1__datafileInclude_(struct soap *soap, const char *tag, ns1__datafileInclude_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__datafileInclude_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileInclude_, sizeof(ns1__datafileInclude_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datafileInclude_)
-			return (ns1__datafileInclude_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__datafileInclude(soap, tag, &(a->ns1__datafileInclude_::__item), "ns1:datafileInclude"))
-		return NULL;
-	return a;
-}
-
-int ns1__datafileInclude_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileInclude_);
-	if (this->soap_out(soap, tag?tag:"ns1:datafileInclude", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datafileInclude_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datafileInclude_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datafileInclude_ * SOAP_FMAC4 soap_get_ns1__datafileInclude_(struct soap *soap, ns1__datafileInclude_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafileInclude_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datafileInclude_ * SOAP_FMAC2 soap_instantiate_ns1__datafileInclude_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileInclude_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileInclude_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_);
-		if (size)
-			*size = sizeof(ns1__datafileInclude_);
-		((ns1__datafileInclude_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datafileInclude_);
-		for (int i = 0; i < n; i++)
-			((ns1__datafileInclude_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datafileInclude_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileInclude_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileInclude_ %p -> %p\n", q, p));
-	*(ns1__datafileInclude_*)p = *(ns1__datafileInclude_*)q;
-}
-
-void ns1__parameterValueType_::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_ns1__parameterValueType(soap, &this->ns1__parameterValueType_::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterValueType_::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->ns1__parameterValueType_::__item, SOAP_TYPE_ns1__parameterValueType);
-	/* transient soap skipped */
-}
-
-int ns1__parameterValueType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterValueType_(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterValueType_(struct soap *soap, const char *tag, int id, const ns1__parameterValueType_ *a, const char *type)
-{
-	return soap_out_ns1__parameterValueType(soap, tag, id, &(a->ns1__parameterValueType_::__item), "ns1:parameterValueType");
-}
-
-void *ns1__parameterValueType_::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterValueType_(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterValueType_ * SOAP_FMAC4 soap_in_ns1__parameterValueType_(struct soap *soap, const char *tag, ns1__parameterValueType_ *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__parameterValueType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterValueType_, sizeof(ns1__parameterValueType_), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterValueType_)
-			return (ns1__parameterValueType_ *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_ns1__parameterValueType(soap, tag, &(a->ns1__parameterValueType_::__item), "ns1:parameterValueType"))
-		return NULL;
-	return a;
-}
-
-int ns1__parameterValueType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterValueType_);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterValueType", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterValueType_::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterValueType_(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterValueType_ * SOAP_FMAC4 soap_get_ns1__parameterValueType_(struct soap *soap, ns1__parameterValueType_ *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterValueType_(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterValueType_ * SOAP_FMAC2 soap_instantiate_ns1__parameterValueType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterValueType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterValueType_, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_);
-		if (size)
-			*size = sizeof(ns1__parameterValueType_);
-		((ns1__parameterValueType_*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterValueType_);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterValueType_*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterValueType_*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterValueType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterValueType_ %p -> %p\n", q, p));
-	*(ns1__parameterValueType_*)p = *(ns1__parameterValueType_*)q;
-}
-
-void ns1__getDatasetsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__getDatasetsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatasetsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__getDatasetsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getDatasetsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatasetsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetsResponse(struct soap *soap, const char *tag, int id, const ns1__getDatasetsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetsResponse), "ns1:getDatasetsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__getDatasetsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatasetsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatasetsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetsResponse * SOAP_FMAC4 soap_in_ns1__getDatasetsResponse(struct soap *soap, const char *tag, ns1__getDatasetsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatasetsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetsResponse, sizeof(ns1__getDatasetsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatasetsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__getDatasetsResponse::return_), "ns1:dataset"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatasetsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetsResponse, 0, sizeof(ns1__getDatasetsResponse), 0, soap_copy_ns1__getDatasetsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatasetsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatasetsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatasetsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatasetsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetsResponse * SOAP_FMAC4 soap_get_ns1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatasetsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatasetsResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatasetsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse);
-		if (size)
-			*size = sizeof(ns1__getDatasetsResponse);
-		((ns1__getDatasetsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatasetsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatasetsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatasetsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetsResponse %p -> %p\n", q, p));
-	*(ns1__getDatasetsResponse*)p = *(ns1__getDatasetsResponse*)q;
-}
-
-void ns1__getDatasets::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatasets::sessionId = NULL;
-	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatasets::datasetIds);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatasets::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatasets::sessionId);
-	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatasets::datasetIds);
-	/* transient soap skipped */
-}
-
-int ns1__getDatasets::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatasets(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasets(struct soap *soap, const char *tag, int id, const ns1__getDatasets *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasets), "ns1:getDatasets"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatasets::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfLONG64(soap, "datasetIds", -1, &(a->ns1__getDatasets::datasetIds), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatasets::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatasets(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatasets * SOAP_FMAC4 soap_in_ns1__getDatasets(struct soap *soap, const char *tag, ns1__getDatasets *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatasets *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasets, sizeof(ns1__getDatasets), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatasets)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatasets *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatasets::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfLONG64(soap, "datasetIds", &(a->ns1__getDatasets::datasetIds), "xsd:long"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatasets *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasets, 0, sizeof(ns1__getDatasets), 0, soap_copy_ns1__getDatasets);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatasets::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasets);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatasets", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatasets::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatasets(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatasets * SOAP_FMAC4 soap_get_ns1__getDatasets(struct soap *soap, ns1__getDatasets *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatasets(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatasets * SOAP_FMAC2 soap_instantiate_ns1__getDatasets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasets, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets);
-		if (size)
-			*size = sizeof(ns1__getDatasets);
-		((ns1__getDatasets*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatasets);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatasets*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatasets*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasets %p -> %p\n", q, p));
-	*(ns1__getDatasets*)p = *(ns1__getDatasets*)q;
-}
-
-void ns1__listParametersResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__parameter(soap, &this->ns1__listParametersResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listParametersResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__parameter(soap, &this->ns1__listParametersResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listParametersResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listParametersResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listParametersResponse(struct soap *soap, const char *tag, int id, const ns1__listParametersResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listParametersResponse), "ns1:listParametersResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__parameter(soap, "return", -1, &(a->ns1__listParametersResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listParametersResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listParametersResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listParametersResponse * SOAP_FMAC4 soap_in_ns1__listParametersResponse(struct soap *soap, const char *tag, ns1__listParametersResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listParametersResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listParametersResponse, sizeof(ns1__listParametersResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listParametersResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listParametersResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__parameter(soap, "return", &(a->ns1__listParametersResponse::return_), "ns1:parameter"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listParametersResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listParametersResponse, 0, sizeof(ns1__listParametersResponse), 0, soap_copy_ns1__listParametersResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listParametersResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listParametersResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listParametersResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listParametersResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listParametersResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listParametersResponse * SOAP_FMAC4 soap_get_ns1__listParametersResponse(struct soap *soap, ns1__listParametersResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listParametersResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listParametersResponse * SOAP_FMAC2 soap_instantiate_ns1__listParametersResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listParametersResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listParametersResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse);
-		if (size)
-			*size = sizeof(ns1__listParametersResponse);
-		((ns1__listParametersResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listParametersResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listParametersResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listParametersResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listParametersResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listParametersResponse %p -> %p\n", q, p));
-	*(ns1__listParametersResponse*)p = *(ns1__listParametersResponse*)q;
-}
-
-void ns1__listParameters::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listParameters::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listParameters::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listParameters::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listParameters::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listParameters(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listParameters(struct soap *soap, const char *tag, int id, const ns1__listParameters *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listParameters), "ns1:listParameters"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listParameters::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listParameters::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listParameters(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listParameters * SOAP_FMAC4 soap_in_ns1__listParameters(struct soap *soap, const char *tag, ns1__listParameters *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listParameters *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listParameters, sizeof(ns1__listParameters), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listParameters)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listParameters *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listParameters::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listParameters *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listParameters, 0, sizeof(ns1__listParameters), 0, soap_copy_ns1__listParameters);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listParameters::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listParameters);
-	if (this->soap_out(soap, tag?tag:"ns1:listParameters", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listParameters::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listParameters(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listParameters * SOAP_FMAC4 soap_get_ns1__listParameters(struct soap *soap, ns1__listParameters *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listParameters * SOAP_FMAC2 soap_instantiate_ns1__listParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listParameters, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters);
-		if (size)
-			*size = sizeof(ns1__listParameters);
-		((ns1__listParameters*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listParameters);
-		for (int i = 0; i < n; i++)
-			((ns1__listParameters*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listParameters*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listParameters %p -> %p\n", q, p));
-	*(ns1__listParameters*)p = *(ns1__listParameters*)q;
-}
-
-void ns1__modifyDataFileParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataFileParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataFileParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataFileParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataFileParameterResponse");
-}
-
-void *ns1__modifyDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataFileParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataFileParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFileParameterResponse, sizeof(ns1__modifyDataFileParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFileParameterResponse)
-			return (ns1__modifyDataFileParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFileParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFileParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataFileParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse);
-		if (size)
-			*size = sizeof(ns1__modifyDataFileParameterResponse);
-		((ns1__modifyDataFileParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataFileParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFileParameterResponse %p -> %p\n", q, p));
-	*(ns1__modifyDataFileParameterResponse*)p = *(ns1__modifyDataFileParameterResponse*)q;
-}
-
-void ns1__modifyDataFileParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyDataFileParameter::sessionId = NULL;
-	this->ns1__modifyDataFileParameter::dataFileParameter = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataFileParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataFileParameter::sessionId);
-	soap_serialize_PointerTons1__datafileParameter(soap, &this->ns1__modifyDataFileParameter::dataFileParameter);
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataFileParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__modifyDataFileParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataFileParameter), "ns1:modifyDataFileParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataFileParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileParameter(soap, "dataFileParameter", -1, &(a->ns1__modifyDataFileParameter::dataFileParameter), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataFileParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameter * SOAP_FMAC4 soap_in_ns1__modifyDataFileParameter(struct soap *soap, const char *tag, ns1__modifyDataFileParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFileParameter, sizeof(ns1__modifyDataFileParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFileParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyDataFileParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataFileParameter1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataFileParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataFileParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileParameter(soap, "dataFileParameter", &(a->ns1__modifyDataFileParameter::dataFileParameter), "ns1:datafileParameter"))
-				{	soap_flag_dataFileParameter1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataFileParameter, 0, sizeof(ns1__modifyDataFileParameter), 0, soap_copy_ns1__modifyDataFileParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFileParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFileParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataFileParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameter * SOAP_FMAC4 soap_get_ns1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter);
-		if (size)
-			*size = sizeof(ns1__modifyDataFileParameter);
-		((ns1__modifyDataFileParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataFileParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataFileParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFileParameter %p -> %p\n", q, p));
-	*(ns1__modifyDataFileParameter*)p = *(ns1__modifyDataFileParameter*)q;
-}
-
-void ns1__deleteSampleParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteSampleParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteSampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteSampleParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__deleteSampleParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteSampleParameterResponse");
-}
-
-void *ns1__deleteSampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteSampleParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_in_ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, ns1__deleteSampleParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteSampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSampleParameterResponse, sizeof(ns1__deleteSampleParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteSampleParameterResponse)
-			return (ns1__deleteSampleParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteSampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSampleParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteSampleParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteSampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteSampleParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_get_ns1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteSampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse);
-		if (size)
-			*size = sizeof(ns1__deleteSampleParameterResponse);
-		((ns1__deleteSampleParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteSampleParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteSampleParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteSampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSampleParameterResponse %p -> %p\n", q, p));
-	*(ns1__deleteSampleParameterResponse*)p = *(ns1__deleteSampleParameterResponse*)q;
-}
-
-void ns1__deleteSampleParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteSampleParameter::sessionId = NULL;
-	this->ns1__deleteSampleParameter::sampleParameterPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteSampleParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteSampleParameter::sessionId);
-	soap_serialize_PointerTons1__sampleParameterPK(soap, &this->ns1__deleteSampleParameter::sampleParameterPK);
-	/* transient soap skipped */
-}
-
-int ns1__deleteSampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteSampleParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSampleParameter(struct soap *soap, const char *tag, int id, const ns1__deleteSampleParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteSampleParameter), "ns1:deleteSampleParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteSampleParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", -1, &(a->ns1__deleteSampleParameter::sampleParameterPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteSampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteSampleParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameter * SOAP_FMAC4 soap_in_ns1__deleteSampleParameter(struct soap *soap, const char *tag, ns1__deleteSampleParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteSampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSampleParameter, sizeof(ns1__deleteSampleParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteSampleParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteSampleParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleParameterPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteSampleParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", &(a->ns1__deleteSampleParameter::sampleParameterPK), "ns1:sampleParameterPK"))
-				{	soap_flag_sampleParameterPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteSampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteSampleParameter, 0, sizeof(ns1__deleteSampleParameter), 0, soap_copy_ns1__deleteSampleParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteSampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSampleParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteSampleParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteSampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteSampleParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameter * SOAP_FMAC4 soap_get_ns1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteSampleParameter * SOAP_FMAC2 soap_instantiate_ns1__deleteSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter);
-		if (size)
-			*size = sizeof(ns1__deleteSampleParameter);
-		((ns1__deleteSampleParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteSampleParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteSampleParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteSampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSampleParameter %p -> %p\n", q, p));
-	*(ns1__deleteSampleParameter*)p = *(ns1__deleteSampleParameter*)q;
-}
-
-void ns1__addDataFileParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addDataFileParameterResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataFileParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameterResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataFileParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__addDataFileParameterResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParameterResponse), "ns1:addDataFileParameterResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__datafileParameter(soap, "return", -1, &(a->ns1__addDataFileParameterResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataFileParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__addDataFileParameterResponse(struct soap *soap, const char *tag, ns1__addDataFileParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParameterResponse, sizeof(ns1__addDataFileParameterResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParameterResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataFileParameterResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileParameter(soap, "return", &(a->ns1__addDataFileParameterResponse::return_), "ns1:datafileParameter"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataFileParameterResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParameterResponse, 0, sizeof(ns1__addDataFileParameterResponse), 0, soap_copy_ns1__addDataFileParameterResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataFileParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse);
-		if (size)
-			*size = sizeof(ns1__addDataFileParameterResponse);
-		((ns1__addDataFileParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataFileParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParameterResponse %p -> %p\n", q, p));
-	*(ns1__addDataFileParameterResponse*)p = *(ns1__addDataFileParameterResponse*)q;
-}
-
-void ns1__addDataFileParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addDataFileParameter::sessionId = NULL;
-	this->ns1__addDataFileParameter::dataFileParameter = NULL;
-	this->ns1__addDataFileParameter::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataFileParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataFileParameter::sessionId);
-	soap_serialize_PointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameter::dataFileParameter);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataFileParameter::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__addDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataFileParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__addDataFileParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParameter), "ns1:addDataFileParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataFileParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileParameter(soap, "dataFileParameter", -1, &(a->ns1__addDataFileParameter::dataFileParameter), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__addDataFileParameter::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataFileParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameter * SOAP_FMAC4 soap_in_ns1__addDataFileParameter(struct soap *soap, const char *tag, ns1__addDataFileParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParameter, sizeof(ns1__addDataFileParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataFileParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataFileParameter1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataFileParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataFileParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileParameter(soap, "dataFileParameter", &(a->ns1__addDataFileParameter::dataFileParameter), "ns1:datafileParameter"))
-				{	soap_flag_dataFileParameter1--;
-					continue;
-				}
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__addDataFileParameter::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParameter, 0, sizeof(ns1__addDataFileParameter), 0, soap_copy_ns1__addDataFileParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataFileParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameter * SOAP_FMAC4 soap_get_ns1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter);
-		if (size)
-			*size = sizeof(ns1__addDataFileParameter);
-		((ns1__addDataFileParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataFileParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataFileParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParameter %p -> %p\n", q, p));
-	*(ns1__addDataFileParameter*)p = *(ns1__addDataFileParameter*)q;
-}
-
-void ns1__searchDatasetsBySampleResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsBySampleResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatasetsBySampleResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsBySampleResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatasetsBySampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatasetsBySampleResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsBySampleResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse), "ns1:searchDatasetsBySampleResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__searchDatasetsBySampleResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatasetsBySampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatasetsBySampleResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySampleResponse * SOAP_FMAC4 soap_in_ns1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, ns1__searchDatasetsBySampleResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatasetsBySampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, sizeof(ns1__searchDatasetsBySampleResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsBySampleResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatasetsBySampleResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__searchDatasetsBySampleResponse::return_), "ns1:dataset"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatasetsBySampleResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, 0, sizeof(ns1__searchDatasetsBySampleResponse), 0, soap_copy_ns1__searchDatasetsBySampleResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatasetsBySampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsBySampleResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsBySampleResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatasetsBySampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatasetsBySampleResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySampleResponse * SOAP_FMAC4 soap_get_ns1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatasetsBySampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatasetsBySampleResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsBySampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsBySampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse);
-		if (size)
-			*size = sizeof(ns1__searchDatasetsBySampleResponse);
-		((ns1__searchDatasetsBySampleResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatasetsBySampleResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatasetsBySampleResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatasetsBySampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsBySampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsBySampleResponse %p -> %p\n", q, p));
-	*(ns1__searchDatasetsBySampleResponse*)p = *(ns1__searchDatasetsBySampleResponse*)q;
-}
-
-void ns1__searchDatasetsBySample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchDatasetsBySample::sessionId = NULL;
-	this->ns1__searchDatasetsBySample::sample = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatasetsBySample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatasetsBySample::sessionId);
-	soap_serialize_PointerTons1__sample(soap, &this->ns1__searchDatasetsBySample::sample);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatasetsBySample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatasetsBySample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsBySample(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsBySample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsBySample), "ns1:searchDatasetsBySample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatasetsBySample::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sample(soap, "sample", -1, &(a->ns1__searchDatasetsBySample::sample), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatasetsBySample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatasetsBySample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySample * SOAP_FMAC4 soap_in_ns1__searchDatasetsBySample(struct soap *soap, const char *tag, ns1__searchDatasetsBySample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatasetsBySample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsBySample, sizeof(ns1__searchDatasetsBySample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsBySample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatasetsBySample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sample1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatasetsBySample::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sample1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sample(soap, "sample", &(a->ns1__searchDatasetsBySample::sample), "ns1:sample"))
-				{	soap_flag_sample1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatasetsBySample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsBySample, 0, sizeof(ns1__searchDatasetsBySample), 0, soap_copy_ns1__searchDatasetsBySample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatasetsBySample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsBySample);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsBySample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatasetsBySample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatasetsBySample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySample * SOAP_FMAC4 soap_get_ns1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatasetsBySample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatasetsBySample * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsBySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsBySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsBySample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample);
-		if (size)
-			*size = sizeof(ns1__searchDatasetsBySample);
-		((ns1__searchDatasetsBySample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatasetsBySample);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatasetsBySample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatasetsBySample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsBySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsBySample %p -> %p\n", q, p));
-	*(ns1__searchDatasetsBySample*)p = *(ns1__searchDatasetsBySample*)q;
-}
-
-void ns1__createInvestigationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createInvestigationResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createInvestigationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__investigation(soap, &this->ns1__createInvestigationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__createInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createInvestigationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__createInvestigationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createInvestigationResponse), "ns1:createInvestigationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__investigation(soap, "return", -1, &(a->ns1__createInvestigationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createInvestigationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createInvestigationResponse * SOAP_FMAC4 soap_in_ns1__createInvestigationResponse(struct soap *soap, const char *tag, ns1__createInvestigationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createInvestigationResponse, sizeof(ns1__createInvestigationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createInvestigationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createInvestigationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigation(soap, "return", &(a->ns1__createInvestigationResponse::return_), "ns1:investigation"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createInvestigationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createInvestigationResponse, 0, sizeof(ns1__createInvestigationResponse), 0, soap_copy_ns1__createInvestigationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createInvestigationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:createInvestigationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createInvestigationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createInvestigationResponse * SOAP_FMAC4 soap_get_ns1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__createInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse);
-		if (size)
-			*size = sizeof(ns1__createInvestigationResponse);
-		((ns1__createInvestigationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createInvestigationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__createInvestigationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createInvestigationResponse %p -> %p\n", q, p));
-	*(ns1__createInvestigationResponse*)p = *(ns1__createInvestigationResponse*)q;
-}
-
-void ns1__createInvestigation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createInvestigation::sessionId = NULL;
-	this->ns1__createInvestigation::investigation = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createInvestigation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__createInvestigation::sessionId);
-	soap_serialize_PointerTons1__investigation(soap, &this->ns1__createInvestigation::investigation);
-	/* transient soap skipped */
-}
-
-int ns1__createInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createInvestigation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createInvestigation(struct soap *soap, const char *tag, int id, const ns1__createInvestigation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createInvestigation), "ns1:createInvestigation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createInvestigation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigation(soap, "investigation", -1, &(a->ns1__createInvestigation::investigation), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createInvestigation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createInvestigation * SOAP_FMAC4 soap_in_ns1__createInvestigation(struct soap *soap, const char *tag, ns1__createInvestigation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createInvestigation, sizeof(ns1__createInvestigation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createInvestigation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createInvestigation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigation1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createInvestigation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigation1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigation(soap, "investigation", &(a->ns1__createInvestigation::investigation), "ns1:investigation"))
-				{	soap_flag_investigation1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createInvestigation, 0, sizeof(ns1__createInvestigation), 0, soap_copy_ns1__createInvestigation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createInvestigation);
-	if (this->soap_out(soap, tag?tag:"ns1:createInvestigation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createInvestigation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createInvestigation * SOAP_FMAC4 soap_get_ns1__createInvestigation(struct soap *soap, ns1__createInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createInvestigation * SOAP_FMAC2 soap_instantiate_ns1__createInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation);
-		if (size)
-			*size = sizeof(ns1__createInvestigation);
-		((ns1__createInvestigation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createInvestigation);
-		for (int i = 0; i < n; i++)
-			((ns1__createInvestigation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createInvestigation %p -> %p\n", q, p));
-	*(ns1__createInvestigation*)p = *(ns1__createInvestigation*)q;
-}
-
-void ns1__addPublicationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addPublicationResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addPublicationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__publication(soap, &this->ns1__addPublicationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addPublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addPublicationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addPublicationResponse(struct soap *soap, const char *tag, int id, const ns1__addPublicationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addPublicationResponse), "ns1:addPublicationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__publication(soap, "return", -1, &(a->ns1__addPublicationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addPublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addPublicationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addPublicationResponse * SOAP_FMAC4 soap_in_ns1__addPublicationResponse(struct soap *soap, const char *tag, ns1__addPublicationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addPublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addPublicationResponse, sizeof(ns1__addPublicationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addPublicationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addPublicationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__publication(soap, "return", &(a->ns1__addPublicationResponse::return_), "ns1:publication"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addPublicationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addPublicationResponse, 0, sizeof(ns1__addPublicationResponse), 0, soap_copy_ns1__addPublicationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addPublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addPublicationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addPublicationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addPublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addPublicationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addPublicationResponse * SOAP_FMAC4 soap_get_ns1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addPublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addPublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__addPublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addPublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addPublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse);
-		if (size)
-			*size = sizeof(ns1__addPublicationResponse);
-		((ns1__addPublicationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addPublicationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addPublicationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addPublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addPublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addPublicationResponse %p -> %p\n", q, p));
-	*(ns1__addPublicationResponse*)p = *(ns1__addPublicationResponse*)q;
-}
-
-void ns1__addPublication::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addPublication::sessionId = NULL;
-	this->ns1__addPublication::publication = NULL;
-	this->ns1__addPublication::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addPublication::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addPublication::sessionId);
-	soap_serialize_PointerTons1__publication(soap, &this->ns1__addPublication::publication);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addPublication::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__addPublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addPublication(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addPublication(struct soap *soap, const char *tag, int id, const ns1__addPublication *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addPublication), "ns1:addPublication"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addPublication::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__publication(soap, "publication", -1, &(a->ns1__addPublication::publication), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addPublication::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addPublication::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addPublication(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addPublication * SOAP_FMAC4 soap_in_ns1__addPublication(struct soap *soap, const char *tag, ns1__addPublication *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addPublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addPublication, sizeof(ns1__addPublication), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addPublication)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addPublication *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_publication1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addPublication::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_publication1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__publication(soap, "publication", &(a->ns1__addPublication::publication), "ns1:publication"))
-				{	soap_flag_publication1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addPublication::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addPublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addPublication, 0, sizeof(ns1__addPublication), 0, soap_copy_ns1__addPublication);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addPublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addPublication);
-	if (this->soap_out(soap, tag?tag:"ns1:addPublication", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addPublication::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addPublication(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addPublication * SOAP_FMAC4 soap_get_ns1__addPublication(struct soap *soap, ns1__addPublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addPublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addPublication * SOAP_FMAC2 soap_instantiate_ns1__addPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addPublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication);
-		if (size)
-			*size = sizeof(ns1__addPublication);
-		((ns1__addPublication*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addPublication);
-		for (int i = 0; i < n; i++)
-			((ns1__addPublication*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addPublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addPublication %p -> %p\n", q, p));
-	*(ns1__addPublication*)p = *(ns1__addPublication*)q;
-}
-
-void ns1__deleteDataFileParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataFileParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataFileParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataFileParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataFileParameterResponse");
-}
-
-void *ns1__deleteDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataFileParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataFileParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFileParameterResponse, sizeof(ns1__deleteDataFileParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFileParameterResponse)
-			return (ns1__deleteDataFileParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFileParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFileParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataFileParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse);
-		if (size)
-			*size = sizeof(ns1__deleteDataFileParameterResponse);
-		((ns1__deleteDataFileParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataFileParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFileParameterResponse %p -> %p\n", q, p));
-	*(ns1__deleteDataFileParameterResponse*)p = *(ns1__deleteDataFileParameterResponse*)q;
-}
-
-void ns1__deleteDataFileParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteDataFileParameter::sessionId = NULL;
-	this->ns1__deleteDataFileParameter::datafileParameterPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataFileParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataFileParameter::sessionId);
-	soap_serialize_PointerTons1__datafileParameterPK(soap, &this->ns1__deleteDataFileParameter::datafileParameterPK);
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataFileParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__deleteDataFileParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataFileParameter), "ns1:deleteDataFileParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataFileParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", -1, &(a->ns1__deleteDataFileParameter::datafileParameterPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataFileParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameter * SOAP_FMAC4 soap_in_ns1__deleteDataFileParameter(struct soap *soap, const char *tag, ns1__deleteDataFileParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFileParameter, sizeof(ns1__deleteDataFileParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFileParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteDataFileParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileParameterPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataFileParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datafileParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", &(a->ns1__deleteDataFileParameter::datafileParameterPK), "ns1:datafileParameterPK"))
-				{	soap_flag_datafileParameterPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataFileParameter, 0, sizeof(ns1__deleteDataFileParameter), 0, soap_copy_ns1__deleteDataFileParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFileParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFileParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataFileParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameter * SOAP_FMAC4 soap_get_ns1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter);
-		if (size)
-			*size = sizeof(ns1__deleteDataFileParameter);
-		((ns1__deleteDataFileParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataFileParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataFileParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFileParameter %p -> %p\n", q, p));
-	*(ns1__deleteDataFileParameter*)p = *(ns1__deleteDataFileParameter*)q;
-}
-
-void ns1__getInvestigationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getInvestigationResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getInvestigationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__investigation(soap, &this->ns1__getInvestigationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getInvestigationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__getInvestigationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationResponse), "ns1:getInvestigationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__investigation(soap, "return", -1, &(a->ns1__getInvestigationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getInvestigationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationResponse * SOAP_FMAC4 soap_in_ns1__getInvestigationResponse(struct soap *soap, const char *tag, ns1__getInvestigationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationResponse, sizeof(ns1__getInvestigationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getInvestigationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigation(soap, "return", &(a->ns1__getInvestigationResponse::return_), "ns1:investigation"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getInvestigationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationResponse, 0, sizeof(ns1__getInvestigationResponse), 0, soap_copy_ns1__getInvestigationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getInvestigationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationResponse * SOAP_FMAC4 soap_get_ns1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse);
-		if (size)
-			*size = sizeof(ns1__getInvestigationResponse);
-		((ns1__getInvestigationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getInvestigationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getInvestigationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationResponse %p -> %p\n", q, p));
-	*(ns1__getInvestigationResponse*)p = *(ns1__getInvestigationResponse*)q;
-}
-
-void ns1__getInvestigation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getInvestigation::sessionId = NULL;
-	this->ns1__getInvestigation::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getInvestigation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getInvestigation::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__getInvestigation::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__getInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getInvestigation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigation(struct soap *soap, const char *tag, int id, const ns1__getInvestigation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigation), "ns1:getInvestigation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getInvestigation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__getInvestigation::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getInvestigation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigation * SOAP_FMAC4 soap_in_ns1__getInvestigation(struct soap *soap, const char *tag, ns1__getInvestigation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigation, sizeof(ns1__getInvestigation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getInvestigation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getInvestigation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__getInvestigation::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigation, 0, sizeof(ns1__getInvestigation), 0, soap_copy_ns1__getInvestigation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigation);
-	if (this->soap_out(soap, tag?tag:"ns1:getInvestigation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getInvestigation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigation * SOAP_FMAC4 soap_get_ns1__getInvestigation(struct soap *soap, ns1__getInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getInvestigation * SOAP_FMAC2 soap_instantiate_ns1__getInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation);
-		if (size)
-			*size = sizeof(ns1__getInvestigation);
-		((ns1__getInvestigation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getInvestigation);
-		for (int i = 0; i < n; i++)
-			((ns1__getInvestigation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigation %p -> %p\n", q, p));
-	*(ns1__getInvestigation*)p = *(ns1__getInvestigation*)q;
-}
-
-void ns1__getInvestigationIncludesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getInvestigationIncludesResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getInvestigationIncludesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__investigation(soap, &this->ns1__getInvestigationIncludesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getInvestigationIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getInvestigationIncludesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getInvestigationIncludesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationIncludesResponse), "ns1:getInvestigationIncludesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__investigation(soap, "return", -1, &(a->ns1__getInvestigationIncludesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getInvestigationIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getInvestigationIncludesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludesResponse * SOAP_FMAC4 soap_in_ns1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationIncludesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getInvestigationIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationIncludesResponse, sizeof(ns1__getInvestigationIncludesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationIncludesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getInvestigationIncludesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigation(soap, "return", &(a->ns1__getInvestigationIncludesResponse::return_), "ns1:investigation"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getInvestigationIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationIncludesResponse, 0, sizeof(ns1__getInvestigationIncludesResponse), 0, soap_copy_ns1__getInvestigationIncludesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getInvestigationIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationIncludesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationIncludesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getInvestigationIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getInvestigationIncludesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludesResponse * SOAP_FMAC4 soap_get_ns1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getInvestigationIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getInvestigationIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationIncludesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse);
-		if (size)
-			*size = sizeof(ns1__getInvestigationIncludesResponse);
-		((ns1__getInvestigationIncludesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getInvestigationIncludesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getInvestigationIncludesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getInvestigationIncludesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationIncludesResponse %p -> %p\n", q, p));
-	*(ns1__getInvestigationIncludesResponse*)p = *(ns1__getInvestigationIncludesResponse*)q;
-}
-
-void ns1__getInvestigationIncludes::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getInvestigationIncludes::sessionId = NULL;
-	this->ns1__getInvestigationIncludes::investigationId = NULL;
-	this->ns1__getInvestigationIncludes::investigationInclude = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getInvestigationIncludes::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getInvestigationIncludes::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__getInvestigationIncludes::investigationId);
-	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getInvestigationIncludes::investigationInclude);
-	/* transient soap skipped */
-}
-
-int ns1__getInvestigationIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getInvestigationIncludes(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationIncludes(struct soap *soap, const char *tag, int id, const ns1__getInvestigationIncludes *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationIncludes), "ns1:getInvestigationIncludes"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getInvestigationIncludes::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__getInvestigationIncludes::investigationId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getInvestigationIncludes::investigationInclude), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getInvestigationIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getInvestigationIncludes(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludes * SOAP_FMAC4 soap_in_ns1__getInvestigationIncludes(struct soap *soap, const char *tag, ns1__getInvestigationIncludes *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getInvestigationIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationIncludes, sizeof(ns1__getInvestigationIncludes), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationIncludes)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getInvestigationIncludes *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	size_t soap_flag_investigationInclude1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getInvestigationIncludes::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__getInvestigationIncludes::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getInvestigationIncludes::investigationInclude), "ns1:investigationInclude"))
-				{	soap_flag_investigationInclude1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getInvestigationIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationIncludes, 0, sizeof(ns1__getInvestigationIncludes), 0, soap_copy_ns1__getInvestigationIncludes);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getInvestigationIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationIncludes);
-	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationIncludes", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getInvestigationIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getInvestigationIncludes(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludes * SOAP_FMAC4 soap_get_ns1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getInvestigationIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getInvestigationIncludes * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes);
-		if (size)
-			*size = sizeof(ns1__getInvestigationIncludes);
-		((ns1__getInvestigationIncludes*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getInvestigationIncludes);
-		for (int i = 0; i < n; i++)
-			((ns1__getInvestigationIncludes*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getInvestigationIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationIncludes %p -> %p\n", q, p));
-	*(ns1__getInvestigationIncludes*)p = *(ns1__getInvestigationIncludes*)q;
-}
-
-void ns1__modifyDataFileResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataFileResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataFileResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataFileResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataFileResponse");
-}
-
-void *ns1__modifyDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataFileResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileResponse * SOAP_FMAC4 soap_in_ns1__modifyDataFileResponse(struct soap *soap, const char *tag, ns1__modifyDataFileResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFileResponse, sizeof(ns1__modifyDataFileResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFileResponse)
-			return (ns1__modifyDataFileResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFileResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFileResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataFileResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileResponse * SOAP_FMAC4 soap_get_ns1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse);
-		if (size)
-			*size = sizeof(ns1__modifyDataFileResponse);
-		((ns1__modifyDataFileResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataFileResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataFileResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFileResponse %p -> %p\n", q, p));
-	*(ns1__modifyDataFileResponse*)p = *(ns1__modifyDataFileResponse*)q;
-}
-
-void ns1__modifyDataFile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyDataFile::sessionId = NULL;
-	this->ns1__modifyDataFile::dataFile = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataFile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataFile::sessionId);
-	soap_serialize_PointerTons1__datafile(soap, &this->ns1__modifyDataFile::dataFile);
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataFile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFile(struct soap *soap, const char *tag, int id, const ns1__modifyDataFile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataFile), "ns1:modifyDataFile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataFile::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafile(soap, "dataFile", -1, &(a->ns1__modifyDataFile::dataFile), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataFile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFile * SOAP_FMAC4 soap_in_ns1__modifyDataFile(struct soap *soap, const char *tag, ns1__modifyDataFile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFile, sizeof(ns1__modifyDataFile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyDataFile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataFile1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataFile::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataFile1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafile(soap, "dataFile", &(a->ns1__modifyDataFile::dataFile), "ns1:datafile"))
-				{	soap_flag_dataFile1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataFile, 0, sizeof(ns1__modifyDataFile), 0, soap_copy_ns1__modifyDataFile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFile);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataFile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFile * SOAP_FMAC4 soap_get_ns1__modifyDataFile(struct soap *soap, ns1__modifyDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataFile * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile);
-		if (size)
-			*size = sizeof(ns1__modifyDataFile);
-		((ns1__modifyDataFile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataFile);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataFile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFile %p -> %p\n", q, p));
-	*(ns1__modifyDataFile*)p = *(ns1__modifyDataFile*)q;
-}
-
-void ns1__getDatafileResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatafileResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatafileResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datafile(soap, &this->ns1__getDatafileResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getDatafileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatafileResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafileResponse(struct soap *soap, const char *tag, int id, const ns1__getDatafileResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafileResponse), "ns1:getDatafileResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__datafile(soap, "return", -1, &(a->ns1__getDatafileResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatafileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatafileResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatafileResponse * SOAP_FMAC4 soap_in_ns1__getDatafileResponse(struct soap *soap, const char *tag, ns1__getDatafileResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatafileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafileResponse, sizeof(ns1__getDatafileResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatafileResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatafileResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafile(soap, "return", &(a->ns1__getDatafileResponse::return_), "ns1:datafile"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatafileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafileResponse, 0, sizeof(ns1__getDatafileResponse), 0, soap_copy_ns1__getDatafileResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatafileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafileResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatafileResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatafileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatafileResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatafileResponse * SOAP_FMAC4 soap_get_ns1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatafileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatafileResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatafileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse);
-		if (size)
-			*size = sizeof(ns1__getDatafileResponse);
-		((ns1__getDatafileResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatafileResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatafileResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatafileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafileResponse %p -> %p\n", q, p));
-	*(ns1__getDatafileResponse*)p = *(ns1__getDatafileResponse*)q;
-}
-
-void ns1__getDatafile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatafile::sessionId = NULL;
-	this->ns1__getDatafile::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatafile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatafile::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__getDatafile::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__getDatafile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatafile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafile(struct soap *soap, const char *tag, int id, const ns1__getDatafile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafile), "ns1:getDatafile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatafile::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__getDatafile::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatafile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatafile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatafile * SOAP_FMAC4 soap_in_ns1__getDatafile(struct soap *soap, const char *tag, ns1__getDatafile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatafile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafile, sizeof(ns1__getDatafile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatafile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatafile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatafile::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__getDatafile::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatafile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafile, 0, sizeof(ns1__getDatafile), 0, soap_copy_ns1__getDatafile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatafile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafile);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatafile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatafile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatafile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatafile * SOAP_FMAC4 soap_get_ns1__getDatafile(struct soap *soap, ns1__getDatafile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatafile * SOAP_FMAC2 soap_instantiate_ns1__getDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile);
-		if (size)
-			*size = sizeof(ns1__getDatafile);
-		((ns1__getDatafile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatafile);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatafile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatafile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafile %p -> %p\n", q, p));
-	*(ns1__getDatafile*)p = *(ns1__getDatafile*)q;
-}
-
-void ns1__ICATAPIException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__ICATAPIException::message = NULL;
-	this->ns1__ICATAPIException::stackTraceAsString = NULL;
-	this->ns1__ICATAPIException::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__ICATAPIException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ICATAPIException::message);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ICATAPIException::stackTraceAsString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ICATAPIException::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__ICATAPIException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__ICATAPIException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ICATAPIException(struct soap *soap, const char *tag, int id, const ns1__ICATAPIException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ICATAPIException), "ns1:ICATAPIException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__ICATAPIException::message), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__ICATAPIException::stackTraceAsString), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__ICATAPIException::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__ICATAPIException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__ICATAPIException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__ICATAPIException * SOAP_FMAC4 soap_in_ns1__ICATAPIException(struct soap *soap, const char *tag, ns1__ICATAPIException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__ICATAPIException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ICATAPIException, sizeof(ns1__ICATAPIException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__ICATAPIException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__ICATAPIException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	size_t soap_flag_stackTraceAsString1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__ICATAPIException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__ICATAPIException::stackTraceAsString), "xsd:string"))
-				{	soap_flag_stackTraceAsString1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__ICATAPIException::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__ICATAPIException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ICATAPIException, 0, sizeof(ns1__ICATAPIException), 0, soap_copy_ns1__ICATAPIException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__ICATAPIException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ICATAPIException);
-	if (this->soap_out(soap, tag?tag:"ns1:ICATAPIException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__ICATAPIException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__ICATAPIException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__ICATAPIException * SOAP_FMAC4 soap_get_ns1__ICATAPIException(struct soap *soap, ns1__ICATAPIException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__ICATAPIException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__ICATAPIException * SOAP_FMAC2 soap_instantiate_ns1__ICATAPIException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ICATAPIException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ICATAPIException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException);
-		if (size)
-			*size = sizeof(ns1__ICATAPIException);
-		((ns1__ICATAPIException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__ICATAPIException);
-		for (int i = 0; i < n; i++)
-			((ns1__ICATAPIException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__ICATAPIException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ICATAPIException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ICATAPIException %p -> %p\n", q, p));
-	*(ns1__ICATAPIException*)p = *(ns1__ICATAPIException*)q;
-}
-
-void ns1__ingestMetadataResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__ingestMetadataResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__ingestMetadataResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__ingestMetadataResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__ingestMetadataResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__ingestMetadataResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ingestMetadataResponse(struct soap *soap, const char *tag, int id, const ns1__ingestMetadataResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ingestMetadataResponse), "ns1:ingestMetadataResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfLONG64(soap, "return", -1, &(a->ns1__ingestMetadataResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__ingestMetadataResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__ingestMetadataResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__ingestMetadataResponse * SOAP_FMAC4 soap_in_ns1__ingestMetadataResponse(struct soap *soap, const char *tag, ns1__ingestMetadataResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__ingestMetadataResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ingestMetadataResponse, sizeof(ns1__ingestMetadataResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__ingestMetadataResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__ingestMetadataResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfLONG64(soap, "return", &(a->ns1__ingestMetadataResponse::return_), "xsd:long"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__ingestMetadataResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ingestMetadataResponse, 0, sizeof(ns1__ingestMetadataResponse), 0, soap_copy_ns1__ingestMetadataResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__ingestMetadataResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ingestMetadataResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:ingestMetadataResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__ingestMetadataResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__ingestMetadataResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__ingestMetadataResponse * SOAP_FMAC4 soap_get_ns1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__ingestMetadataResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__ingestMetadataResponse * SOAP_FMAC2 soap_instantiate_ns1__ingestMetadataResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ingestMetadataResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ingestMetadataResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse);
-		if (size)
-			*size = sizeof(ns1__ingestMetadataResponse);
-		((ns1__ingestMetadataResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__ingestMetadataResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__ingestMetadataResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__ingestMetadataResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ingestMetadataResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ingestMetadataResponse %p -> %p\n", q, p));
-	*(ns1__ingestMetadataResponse*)p = *(ns1__ingestMetadataResponse*)q;
-}
-
-void ns1__ingestMetadata::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__ingestMetadata::sessionId = NULL;
-	this->ns1__ingestMetadata::xml = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__ingestMetadata::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ingestMetadata::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ingestMetadata::xml);
-	/* transient soap skipped */
-}
-
-int ns1__ingestMetadata::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__ingestMetadata(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ingestMetadata(struct soap *soap, const char *tag, int id, const ns1__ingestMetadata *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ingestMetadata), "ns1:ingestMetadata"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__ingestMetadata::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "xml", -1, &(a->ns1__ingestMetadata::xml), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__ingestMetadata::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__ingestMetadata(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__ingestMetadata * SOAP_FMAC4 soap_in_ns1__ingestMetadata(struct soap *soap, const char *tag, ns1__ingestMetadata *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__ingestMetadata *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ingestMetadata, sizeof(ns1__ingestMetadata), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__ingestMetadata)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__ingestMetadata *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_xml1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__ingestMetadata::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_xml1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "xml", &(a->ns1__ingestMetadata::xml), "xsd:string"))
-				{	soap_flag_xml1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__ingestMetadata *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ingestMetadata, 0, sizeof(ns1__ingestMetadata), 0, soap_copy_ns1__ingestMetadata);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__ingestMetadata::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ingestMetadata);
-	if (this->soap_out(soap, tag?tag:"ns1:ingestMetadata", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__ingestMetadata::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__ingestMetadata(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__ingestMetadata * SOAP_FMAC4 soap_get_ns1__ingestMetadata(struct soap *soap, ns1__ingestMetadata *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__ingestMetadata(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__ingestMetadata * SOAP_FMAC2 soap_instantiate_ns1__ingestMetadata(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ingestMetadata(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ingestMetadata, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata);
-		if (size)
-			*size = sizeof(ns1__ingestMetadata);
-		((ns1__ingestMetadata*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__ingestMetadata);
-		for (int i = 0; i < n; i++)
-			((ns1__ingestMetadata*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__ingestMetadata*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ingestMetadata(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ingestMetadata %p -> %p\n", q, p));
-	*(ns1__ingestMetadata*)p = *(ns1__ingestMetadata*)q;
-}
-
-void ns1__listRolesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__icatRole(soap, &this->ns1__listRolesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listRolesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__icatRole(soap, &this->ns1__listRolesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listRolesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listRolesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listRolesResponse(struct soap *soap, const char *tag, int id, const ns1__listRolesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listRolesResponse), "ns1:listRolesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__icatRole(soap, "return", -1, &(a->ns1__listRolesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listRolesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listRolesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listRolesResponse * SOAP_FMAC4 soap_in_ns1__listRolesResponse(struct soap *soap, const char *tag, ns1__listRolesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listRolesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listRolesResponse, sizeof(ns1__listRolesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listRolesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listRolesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__icatRole(soap, "return", &(a->ns1__listRolesResponse::return_), "ns1:icatRole"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listRolesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listRolesResponse, 0, sizeof(ns1__listRolesResponse), 0, soap_copy_ns1__listRolesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listRolesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listRolesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listRolesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listRolesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listRolesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listRolesResponse * SOAP_FMAC4 soap_get_ns1__listRolesResponse(struct soap *soap, ns1__listRolesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listRolesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listRolesResponse * SOAP_FMAC2 soap_instantiate_ns1__listRolesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listRolesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listRolesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse);
-		if (size)
-			*size = sizeof(ns1__listRolesResponse);
-		((ns1__listRolesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listRolesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listRolesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listRolesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listRolesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listRolesResponse %p -> %p\n", q, p));
-	*(ns1__listRolesResponse*)p = *(ns1__listRolesResponse*)q;
-}
-
-void ns1__listRoles::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listRoles::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listRoles::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listRoles::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listRoles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listRoles(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listRoles(struct soap *soap, const char *tag, int id, const ns1__listRoles *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listRoles), "ns1:listRoles"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listRoles::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listRoles::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listRoles(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listRoles * SOAP_FMAC4 soap_in_ns1__listRoles(struct soap *soap, const char *tag, ns1__listRoles *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listRoles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listRoles, sizeof(ns1__listRoles), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listRoles)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listRoles *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listRoles::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listRoles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listRoles, 0, sizeof(ns1__listRoles), 0, soap_copy_ns1__listRoles);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listRoles::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listRoles);
-	if (this->soap_out(soap, tag?tag:"ns1:listRoles", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listRoles::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listRoles(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listRoles * SOAP_FMAC4 soap_get_ns1__listRoles(struct soap *soap, ns1__listRoles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listRoles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listRoles * SOAP_FMAC2 soap_instantiate_ns1__listRoles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listRoles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listRoles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles);
-		if (size)
-			*size = sizeof(ns1__listRoles);
-		((ns1__listRoles*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listRoles);
-		for (int i = 0; i < n; i++)
-			((ns1__listRoles*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listRoles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listRoles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listRoles %p -> %p\n", q, p));
-	*(ns1__listRoles*)p = *(ns1__listRoles*)q;
-}
-
-void ns1__getDatasetResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatasetResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatasetResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__dataset(soap, &this->ns1__getDatasetResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getDatasetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatasetResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetResponse(struct soap *soap, const char *tag, int id, const ns1__getDatasetResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetResponse), "ns1:getDatasetResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__dataset(soap, "return", -1, &(a->ns1__getDatasetResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatasetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatasetResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetResponse * SOAP_FMAC4 soap_in_ns1__getDatasetResponse(struct soap *soap, const char *tag, ns1__getDatasetResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatasetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetResponse, sizeof(ns1__getDatasetResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatasetResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__dataset(soap, "return", &(a->ns1__getDatasetResponse::return_), "ns1:dataset"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatasetResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetResponse, 0, sizeof(ns1__getDatasetResponse), 0, soap_copy_ns1__getDatasetResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatasetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatasetResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatasetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatasetResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetResponse * SOAP_FMAC4 soap_get_ns1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatasetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatasetResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatasetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse);
-		if (size)
-			*size = sizeof(ns1__getDatasetResponse);
-		((ns1__getDatasetResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatasetResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatasetResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatasetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetResponse %p -> %p\n", q, p));
-	*(ns1__getDatasetResponse*)p = *(ns1__getDatasetResponse*)q;
-}
-
-void ns1__getDataset::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDataset::sessionId = NULL;
-	this->ns1__getDataset::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDataset::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getDataset::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__getDataset::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__getDataset::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDataset(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDataset(struct soap *soap, const char *tag, int id, const ns1__getDataset *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDataset), "ns1:getDataset"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDataset::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__getDataset::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDataset::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDataset(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDataset * SOAP_FMAC4 soap_in_ns1__getDataset(struct soap *soap, const char *tag, ns1__getDataset *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDataset *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDataset, sizeof(ns1__getDataset), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDataset)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDataset *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDataset::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__getDataset::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDataset *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDataset, 0, sizeof(ns1__getDataset), 0, soap_copy_ns1__getDataset);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDataset::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDataset);
-	if (this->soap_out(soap, tag?tag:"ns1:getDataset", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDataset::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDataset(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDataset * SOAP_FMAC4 soap_get_ns1__getDataset(struct soap *soap, ns1__getDataset *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDataset * SOAP_FMAC2 soap_instantiate_ns1__getDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDataset, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset);
-		if (size)
-			*size = sizeof(ns1__getDataset);
-		((ns1__getDataset*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDataset);
-		for (int i = 0; i < n; i++)
-			((ns1__getDataset*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDataset*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDataset %p -> %p\n", q, p));
-	*(ns1__getDataset*)p = *(ns1__getDataset*)q;
-}
-
-void ns1__getDatasetIncludesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatasetIncludesResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatasetIncludesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__dataset(soap, &this->ns1__getDatasetIncludesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getDatasetIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatasetIncludesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getDatasetIncludesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetIncludesResponse), "ns1:getDatasetIncludesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__dataset(soap, "return", -1, &(a->ns1__getDatasetIncludesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatasetIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatasetIncludesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludesResponse * SOAP_FMAC4 soap_in_ns1__getDatasetIncludesResponse(struct soap *soap, const char *tag, ns1__getDatasetIncludesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatasetIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetIncludesResponse, sizeof(ns1__getDatasetIncludesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetIncludesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatasetIncludesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__dataset(soap, "return", &(a->ns1__getDatasetIncludesResponse::return_), "ns1:dataset"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatasetIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetIncludesResponse, 0, sizeof(ns1__getDatasetIncludesResponse), 0, soap_copy_ns1__getDatasetIncludesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatasetIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetIncludesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatasetIncludesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatasetIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatasetIncludesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludesResponse * SOAP_FMAC4 soap_get_ns1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatasetIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatasetIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatasetIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetIncludesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse);
-		if (size)
-			*size = sizeof(ns1__getDatasetIncludesResponse);
-		((ns1__getDatasetIncludesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatasetIncludesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatasetIncludesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatasetIncludesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetIncludesResponse %p -> %p\n", q, p));
-	*(ns1__getDatasetIncludesResponse*)p = *(ns1__getDatasetIncludesResponse*)q;
-}
-
-void ns1__getDatasetIncludes::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatasetIncludes::sessionId = NULL;
-	this->ns1__getDatasetIncludes::datasetId = NULL;
-	this->ns1__getDatasetIncludes::datasetInclude = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatasetIncludes::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatasetIncludes::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__getDatasetIncludes::datasetId);
-	soap_serialize_PointerTons1__datasetInclude(soap, &this->ns1__getDatasetIncludes::datasetInclude);
-	/* transient soap skipped */
-}
-
-int ns1__getDatasetIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatasetIncludes(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetIncludes(struct soap *soap, const char *tag, int id, const ns1__getDatasetIncludes *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetIncludes), "ns1:getDatasetIncludes"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatasetIncludes::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__getDatasetIncludes::datasetId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datasetInclude(soap, "datasetInclude", -1, &(a->ns1__getDatasetIncludes::datasetInclude), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatasetIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatasetIncludes(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludes * SOAP_FMAC4 soap_in_ns1__getDatasetIncludes(struct soap *soap, const char *tag, ns1__getDatasetIncludes *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatasetIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetIncludes, sizeof(ns1__getDatasetIncludes), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetIncludes)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatasetIncludes *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	size_t soap_flag_datasetInclude1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatasetIncludes::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__getDatasetIncludes::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag_datasetInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetInclude(soap, "datasetInclude", &(a->ns1__getDatasetIncludes::datasetInclude), "ns1:datasetInclude"))
-				{	soap_flag_datasetInclude1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatasetIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetIncludes, 0, sizeof(ns1__getDatasetIncludes), 0, soap_copy_ns1__getDatasetIncludes);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatasetIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetIncludes);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatasetIncludes", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatasetIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatasetIncludes(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludes * SOAP_FMAC4 soap_get_ns1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatasetIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatasetIncludes * SOAP_FMAC2 soap_instantiate_ns1__getDatasetIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes);
-		if (size)
-			*size = sizeof(ns1__getDatasetIncludes);
-		((ns1__getDatasetIncludes*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatasetIncludes);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatasetIncludes*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatasetIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetIncludes %p -> %p\n", q, p));
-	*(ns1__getDatasetIncludes*)p = *(ns1__getDatasetIncludes*)q;
-}
-
-void ns1__updateAuthorisationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__updateAuthorisationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__updateAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__updateAuthorisationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__updateAuthorisationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:updateAuthorisationResponse");
-}
-
-void *ns1__updateAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__updateAuthorisationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, ns1__updateAuthorisationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__updateAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__updateAuthorisationResponse, sizeof(ns1__updateAuthorisationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__updateAuthorisationResponse)
-			return (ns1__updateAuthorisationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__updateAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__updateAuthorisationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:updateAuthorisationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__updateAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__updateAuthorisationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__updateAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__updateAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__updateAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__updateAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__updateAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse);
-		if (size)
-			*size = sizeof(ns1__updateAuthorisationResponse);
-		((ns1__updateAuthorisationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__updateAuthorisationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__updateAuthorisationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__updateAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__updateAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__updateAuthorisationResponse %p -> %p\n", q, p));
-	*(ns1__updateAuthorisationResponse*)p = *(ns1__updateAuthorisationResponse*)q;
-}
-
-void ns1__updateAuthorisation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__updateAuthorisation::sessionId = NULL;
-	this->ns1__updateAuthorisation::toChangetoRole = NULL;
-	this->ns1__updateAuthorisation::authorisationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__updateAuthorisation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__updateAuthorisation::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__updateAuthorisation::toChangetoRole);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__updateAuthorisation::authorisationId);
-	/* transient soap skipped */
-}
-
-int ns1__updateAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__updateAuthorisation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__updateAuthorisation(struct soap *soap, const char *tag, int id, const ns1__updateAuthorisation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__updateAuthorisation), "ns1:updateAuthorisation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__updateAuthorisation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "toChangetoRole", -1, &(a->ns1__updateAuthorisation::toChangetoRole), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "authorisationId", -1, &(a->ns1__updateAuthorisation::authorisationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__updateAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__updateAuthorisation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisation * SOAP_FMAC4 soap_in_ns1__updateAuthorisation(struct soap *soap, const char *tag, ns1__updateAuthorisation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__updateAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__updateAuthorisation, sizeof(ns1__updateAuthorisation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__updateAuthorisation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__updateAuthorisation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_toChangetoRole1 = 1;
-	size_t soap_flag_authorisationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__updateAuthorisation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_toChangetoRole1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "toChangetoRole", &(a->ns1__updateAuthorisation::toChangetoRole), "xsd:string"))
-				{	soap_flag_toChangetoRole1--;
-					continue;
-				}
-			if (soap_flag_authorisationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "authorisationId", &(a->ns1__updateAuthorisation::authorisationId), "xsd:long"))
-				{	soap_flag_authorisationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__updateAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__updateAuthorisation, 0, sizeof(ns1__updateAuthorisation), 0, soap_copy_ns1__updateAuthorisation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__updateAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__updateAuthorisation);
-	if (this->soap_out(soap, tag?tag:"ns1:updateAuthorisation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__updateAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__updateAuthorisation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisation * SOAP_FMAC4 soap_get_ns1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__updateAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__updateAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__updateAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__updateAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__updateAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation);
-		if (size)
-			*size = sizeof(ns1__updateAuthorisation);
-		((ns1__updateAuthorisation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__updateAuthorisation);
-		for (int i = 0; i < n; i++)
-			((ns1__updateAuthorisation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__updateAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__updateAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__updateAuthorisation %p -> %p\n", q, p));
-	*(ns1__updateAuthorisation*)p = *(ns1__updateAuthorisation*)q;
-}
-
-void ns1__deleteAuthorisationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteAuthorisationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteAuthorisationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__deleteAuthorisationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteAuthorisationResponse");
-}
-
-void *ns1__deleteAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteAuthorisationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, ns1__deleteAuthorisationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteAuthorisationResponse, sizeof(ns1__deleteAuthorisationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteAuthorisationResponse)
-			return (ns1__deleteAuthorisationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteAuthorisationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteAuthorisationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteAuthorisationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse);
-		if (size)
-			*size = sizeof(ns1__deleteAuthorisationResponse);
-		((ns1__deleteAuthorisationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteAuthorisationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteAuthorisationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteAuthorisationResponse %p -> %p\n", q, p));
-	*(ns1__deleteAuthorisationResponse*)p = *(ns1__deleteAuthorisationResponse*)q;
-}
-
-void ns1__deleteAuthorisation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteAuthorisation::sessionId = NULL;
-	this->ns1__deleteAuthorisation::authorisationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteAuthorisation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteAuthorisation::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteAuthorisation::authorisationId);
-	/* transient soap skipped */
-}
-
-int ns1__deleteAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteAuthorisation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteAuthorisation(struct soap *soap, const char *tag, int id, const ns1__deleteAuthorisation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteAuthorisation), "ns1:deleteAuthorisation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteAuthorisation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "authorisationId", -1, &(a->ns1__deleteAuthorisation::authorisationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteAuthorisation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisation * SOAP_FMAC4 soap_in_ns1__deleteAuthorisation(struct soap *soap, const char *tag, ns1__deleteAuthorisation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteAuthorisation, sizeof(ns1__deleteAuthorisation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteAuthorisation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteAuthorisation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_authorisationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteAuthorisation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_authorisationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "authorisationId", &(a->ns1__deleteAuthorisation::authorisationId), "xsd:long"))
-				{	soap_flag_authorisationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteAuthorisation, 0, sizeof(ns1__deleteAuthorisation), 0, soap_copy_ns1__deleteAuthorisation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteAuthorisation);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteAuthorisation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteAuthorisation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisation * SOAP_FMAC4 soap_get_ns1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__deleteAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation);
-		if (size)
-			*size = sizeof(ns1__deleteAuthorisation);
-		((ns1__deleteAuthorisation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteAuthorisation);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteAuthorisation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteAuthorisation %p -> %p\n", q, p));
-	*(ns1__deleteAuthorisation*)p = *(ns1__deleteAuthorisation*)q;
-}
-
-void ns1__deletePublicationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deletePublicationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deletePublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deletePublicationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deletePublicationResponse(struct soap *soap, const char *tag, int id, const ns1__deletePublicationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deletePublicationResponse");
-}
-
-void *ns1__deletePublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deletePublicationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deletePublicationResponse * SOAP_FMAC4 soap_in_ns1__deletePublicationResponse(struct soap *soap, const char *tag, ns1__deletePublicationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deletePublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deletePublicationResponse, sizeof(ns1__deletePublicationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deletePublicationResponse)
-			return (ns1__deletePublicationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deletePublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deletePublicationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deletePublicationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deletePublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deletePublicationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deletePublicationResponse * SOAP_FMAC4 soap_get_ns1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deletePublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deletePublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__deletePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deletePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deletePublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse);
-		if (size)
-			*size = sizeof(ns1__deletePublicationResponse);
-		((ns1__deletePublicationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deletePublicationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deletePublicationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deletePublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deletePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deletePublicationResponse %p -> %p\n", q, p));
-	*(ns1__deletePublicationResponse*)p = *(ns1__deletePublicationResponse*)q;
-}
-
-void ns1__deletePublication::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deletePublication::sessionId = NULL;
-	this->ns1__deletePublication::publicationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deletePublication::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deletePublication::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__deletePublication::publicationId);
-	/* transient soap skipped */
-}
-
-int ns1__deletePublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deletePublication(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deletePublication(struct soap *soap, const char *tag, int id, const ns1__deletePublication *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deletePublication), "ns1:deletePublication"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deletePublication::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "publicationId", -1, &(a->ns1__deletePublication::publicationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deletePublication::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deletePublication(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deletePublication * SOAP_FMAC4 soap_in_ns1__deletePublication(struct soap *soap, const char *tag, ns1__deletePublication *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deletePublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deletePublication, sizeof(ns1__deletePublication), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deletePublication)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deletePublication *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_publicationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deletePublication::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_publicationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "publicationId", &(a->ns1__deletePublication::publicationId), "xsd:long"))
-				{	soap_flag_publicationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deletePublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deletePublication, 0, sizeof(ns1__deletePublication), 0, soap_copy_ns1__deletePublication);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deletePublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deletePublication);
-	if (this->soap_out(soap, tag?tag:"ns1:deletePublication", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deletePublication::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deletePublication(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deletePublication * SOAP_FMAC4 soap_get_ns1__deletePublication(struct soap *soap, ns1__deletePublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deletePublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deletePublication * SOAP_FMAC2 soap_instantiate_ns1__deletePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deletePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deletePublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication);
-		if (size)
-			*size = sizeof(ns1__deletePublication);
-		((ns1__deletePublication*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deletePublication);
-		for (int i = 0; i < n; i++)
-			((ns1__deletePublication*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deletePublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deletePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deletePublication %p -> %p\n", q, p));
-	*(ns1__deletePublication*)p = *(ns1__deletePublication*)q;
-}
-
-void ns1__loginResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__loginResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__loginResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__loginResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__loginResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__loginResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__loginResponse(struct soap *soap, const char *tag, int id, const ns1__loginResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__loginResponse), "ns1:loginResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "return", -1, &(a->ns1__loginResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__loginResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__loginResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__loginResponse * SOAP_FMAC4 soap_in_ns1__loginResponse(struct soap *soap, const char *tag, ns1__loginResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__loginResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__loginResponse, sizeof(ns1__loginResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__loginResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__loginResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "return", &(a->ns1__loginResponse::return_), "xsd:string"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__loginResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__loginResponse, 0, sizeof(ns1__loginResponse), 0, soap_copy_ns1__loginResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__loginResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__loginResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:loginResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__loginResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__loginResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__loginResponse * SOAP_FMAC4 soap_get_ns1__loginResponse(struct soap *soap, ns1__loginResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__loginResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__loginResponse * SOAP_FMAC2 soap_instantiate_ns1__loginResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__loginResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__loginResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse);
-		if (size)
-			*size = sizeof(ns1__loginResponse);
-		((ns1__loginResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__loginResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__loginResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__loginResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__loginResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__loginResponse %p -> %p\n", q, p));
-	*(ns1__loginResponse*)p = *(ns1__loginResponse*)q;
-}
-
-void ns1__login::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__login::username = NULL;
-	this->ns1__login::password = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__login::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__login::username);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__login::password);
-	/* transient soap skipped */
-}
-
-int ns1__login::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__login(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__login(struct soap *soap, const char *tag, int id, const ns1__login *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__login), "ns1:login"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "username", -1, &(a->ns1__login::username), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "password", -1, &(a->ns1__login::password), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__login::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__login(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__login * SOAP_FMAC4 soap_in_ns1__login(struct soap *soap, const char *tag, ns1__login *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__login *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__login, sizeof(ns1__login), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__login)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__login *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_username1 = 1;
-	size_t soap_flag_password1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_username1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "username", &(a->ns1__login::username), "xsd:string"))
-				{	soap_flag_username1--;
-					continue;
-				}
-			if (soap_flag_password1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "password", &(a->ns1__login::password), "xsd:string"))
-				{	soap_flag_password1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__login *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__login, 0, sizeof(ns1__login), 0, soap_copy_ns1__login);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__login::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__login);
-	if (this->soap_out(soap, tag?tag:"ns1:login", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__login::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__login(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__login * SOAP_FMAC4 soap_get_ns1__login(struct soap *soap, ns1__login *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__login(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__login * SOAP_FMAC2 soap_instantiate_ns1__login(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__login(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__login, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__login);
-		if (size)
-			*size = sizeof(ns1__login);
-		((ns1__login*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__login[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__login);
-		for (int i = 0; i < n; i++)
-			((ns1__login*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__login*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__login(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__login %p -> %p\n", q, p));
-	*(ns1__login*)p = *(ns1__login*)q;
-}
-
-void ns1__loginLifetimeResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__loginLifetimeResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__loginLifetimeResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__loginLifetimeResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__loginLifetimeResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__loginLifetimeResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__loginLifetimeResponse(struct soap *soap, const char *tag, int id, const ns1__loginLifetimeResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__loginLifetimeResponse), "ns1:loginLifetimeResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "return", -1, &(a->ns1__loginLifetimeResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__loginLifetimeResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__loginLifetimeResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__loginLifetimeResponse * SOAP_FMAC4 soap_in_ns1__loginLifetimeResponse(struct soap *soap, const char *tag, ns1__loginLifetimeResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__loginLifetimeResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__loginLifetimeResponse, sizeof(ns1__loginLifetimeResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__loginLifetimeResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__loginLifetimeResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "return", &(a->ns1__loginLifetimeResponse::return_), "xsd:string"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__loginLifetimeResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__loginLifetimeResponse, 0, sizeof(ns1__loginLifetimeResponse), 0, soap_copy_ns1__loginLifetimeResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__loginLifetimeResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__loginLifetimeResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:loginLifetimeResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__loginLifetimeResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__loginLifetimeResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__loginLifetimeResponse * SOAP_FMAC4 soap_get_ns1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__loginLifetimeResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__loginLifetimeResponse * SOAP_FMAC2 soap_instantiate_ns1__loginLifetimeResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__loginLifetimeResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__loginLifetimeResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse);
-		if (size)
-			*size = sizeof(ns1__loginLifetimeResponse);
-		((ns1__loginLifetimeResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__loginLifetimeResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__loginLifetimeResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__loginLifetimeResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__loginLifetimeResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__loginLifetimeResponse %p -> %p\n", q, p));
-	*(ns1__loginLifetimeResponse*)p = *(ns1__loginLifetimeResponse*)q;
-}
-
-void ns1__loginLifetime::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__loginLifetime::username = NULL;
-	this->ns1__loginLifetime::password = NULL;
-	soap_default_int(soap, &this->ns1__loginLifetime::lifetime);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__loginLifetime::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__loginLifetime::username);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__loginLifetime::password);
-	soap_embedded(soap, &this->ns1__loginLifetime::lifetime, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__loginLifetime::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__loginLifetime(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__loginLifetime(struct soap *soap, const char *tag, int id, const ns1__loginLifetime *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__loginLifetime), "ns1:loginLifetime"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "username", -1, &(a->ns1__loginLifetime::username), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "password", -1, &(a->ns1__loginLifetime::password), ""))
-		return soap->error;
-	if (soap_out_int(soap, "lifetime", -1, &(a->ns1__loginLifetime::lifetime), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__loginLifetime::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__loginLifetime(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__loginLifetime * SOAP_FMAC4 soap_in_ns1__loginLifetime(struct soap *soap, const char *tag, ns1__loginLifetime *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__loginLifetime *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__loginLifetime, sizeof(ns1__loginLifetime), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__loginLifetime)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__loginLifetime *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_username1 = 1;
-	size_t soap_flag_password1 = 1;
-	size_t soap_flag_lifetime1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_username1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "username", &(a->ns1__loginLifetime::username), "xsd:string"))
-				{	soap_flag_username1--;
-					continue;
-				}
-			if (soap_flag_password1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "password", &(a->ns1__loginLifetime::password), "xsd:string"))
-				{	soap_flag_password1--;
-					continue;
-				}
-			if (soap_flag_lifetime1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "lifetime", &(a->ns1__loginLifetime::lifetime), "xsd:int"))
-				{	soap_flag_lifetime1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__loginLifetime *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__loginLifetime, 0, sizeof(ns1__loginLifetime), 0, soap_copy_ns1__loginLifetime);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_lifetime1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__loginLifetime::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__loginLifetime);
-	if (this->soap_out(soap, tag?tag:"ns1:loginLifetime", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__loginLifetime::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__loginLifetime(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__loginLifetime * SOAP_FMAC4 soap_get_ns1__loginLifetime(struct soap *soap, ns1__loginLifetime *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__loginLifetime(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__loginLifetime * SOAP_FMAC2 soap_instantiate_ns1__loginLifetime(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__loginLifetime(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__loginLifetime, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime);
-		if (size)
-			*size = sizeof(ns1__loginLifetime);
-		((ns1__loginLifetime*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__loginLifetime);
-		for (int i = 0; i < n; i++)
-			((ns1__loginLifetime*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__loginLifetime*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__loginLifetime(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__loginLifetime %p -> %p\n", q, p));
-	*(ns1__loginLifetime*)p = *(ns1__loginLifetime*)q;
-}
-
-void ns1__addSampleResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addSampleResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addSampleResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__sample(soap, &this->ns1__addSampleResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addSampleResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSampleResponse(struct soap *soap, const char *tag, int id, const ns1__addSampleResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSampleResponse), "ns1:addSampleResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__sample(soap, "return", -1, &(a->ns1__addSampleResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addSampleResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addSampleResponse * SOAP_FMAC4 soap_in_ns1__addSampleResponse(struct soap *soap, const char *tag, ns1__addSampleResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSampleResponse, sizeof(ns1__addSampleResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addSampleResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addSampleResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sample(soap, "return", &(a->ns1__addSampleResponse::return_), "ns1:sample"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addSampleResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSampleResponse, 0, sizeof(ns1__addSampleResponse), 0, soap_copy_ns1__addSampleResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSampleResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addSampleResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addSampleResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addSampleResponse * SOAP_FMAC4 soap_get_ns1__addSampleResponse(struct soap *soap, ns1__addSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__addSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse);
-		if (size)
-			*size = sizeof(ns1__addSampleResponse);
-		((ns1__addSampleResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addSampleResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addSampleResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSampleResponse %p -> %p\n", q, p));
-	*(ns1__addSampleResponse*)p = *(ns1__addSampleResponse*)q;
-}
-
-void ns1__addSample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addSample::sessionId = NULL;
-	this->ns1__addSample::sample = NULL;
-	this->ns1__addSample::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addSample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addSample::sessionId);
-	soap_serialize_PointerTons1__sample(soap, &this->ns1__addSample::sample);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addSample::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__addSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addSample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSample(struct soap *soap, const char *tag, int id, const ns1__addSample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSample), "ns1:addSample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addSample::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sample(soap, "sample", -1, &(a->ns1__addSample::sample), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addSample::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addSample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addSample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addSample * SOAP_FMAC4 soap_in_ns1__addSample(struct soap *soap, const char *tag, ns1__addSample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSample, sizeof(ns1__addSample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addSample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addSample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sample1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addSample::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sample1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sample(soap, "sample", &(a->ns1__addSample::sample), "ns1:sample"))
-				{	soap_flag_sample1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addSample::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSample, 0, sizeof(ns1__addSample), 0, soap_copy_ns1__addSample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSample);
-	if (this->soap_out(soap, tag?tag:"ns1:addSample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addSample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addSample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addSample * SOAP_FMAC4 soap_get_ns1__addSample(struct soap *soap, ns1__addSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addSample * SOAP_FMAC2 soap_instantiate_ns1__addSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSample);
-		if (size)
-			*size = sizeof(ns1__addSample);
-		((ns1__addSample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addSample);
-		for (int i = 0; i < n; i++)
-			((ns1__addSample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSample %p -> %p\n", q, p));
-	*(ns1__addSample*)p = *(ns1__addSample*)q;
-}
-
-void ns1__addAuthorisationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addAuthorisationResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addAuthorisationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__icatAuthorisation(soap, &this->ns1__addAuthorisationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addAuthorisationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__addAuthorisationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addAuthorisationResponse), "ns1:addAuthorisationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__icatAuthorisation(soap, "return", -1, &(a->ns1__addAuthorisationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addAuthorisationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__addAuthorisationResponse(struct soap *soap, const char *tag, ns1__addAuthorisationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addAuthorisationResponse, sizeof(ns1__addAuthorisationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addAuthorisationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addAuthorisationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatAuthorisation(soap, "return", &(a->ns1__addAuthorisationResponse::return_), "ns1:icatAuthorisation"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addAuthorisationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addAuthorisationResponse, 0, sizeof(ns1__addAuthorisationResponse), 0, soap_copy_ns1__addAuthorisationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addAuthorisationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addAuthorisationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addAuthorisationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__addAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse);
-		if (size)
-			*size = sizeof(ns1__addAuthorisationResponse);
-		((ns1__addAuthorisationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addAuthorisationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addAuthorisationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addAuthorisationResponse %p -> %p\n", q, p));
-	*(ns1__addAuthorisationResponse*)p = *(ns1__addAuthorisationResponse*)q;
-}
-
-void ns1__addAuthorisation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addAuthorisation::sessionId = NULL;
-	this->ns1__addAuthorisation::toAddFedId = NULL;
-	this->ns1__addAuthorisation::toAddRole = NULL;
-	this->ns1__addAuthorisation::elementId = NULL;
-	this->ns1__addAuthorisation::elementType = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addAuthorisation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addAuthorisation::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addAuthorisation::toAddFedId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addAuthorisation::toAddRole);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addAuthorisation::elementId);
-	soap_serialize_PointerTons1__elementType(soap, &this->ns1__addAuthorisation::elementType);
-	/* transient soap skipped */
-}
-
-int ns1__addAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addAuthorisation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addAuthorisation(struct soap *soap, const char *tag, int id, const ns1__addAuthorisation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addAuthorisation), "ns1:addAuthorisation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addAuthorisation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "toAddFedId", -1, &(a->ns1__addAuthorisation::toAddFedId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "toAddRole", -1, &(a->ns1__addAuthorisation::toAddRole), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "elementId", -1, &(a->ns1__addAuthorisation::elementId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__elementType(soap, "elementType", -1, &(a->ns1__addAuthorisation::elementType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addAuthorisation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addAuthorisation * SOAP_FMAC4 soap_in_ns1__addAuthorisation(struct soap *soap, const char *tag, ns1__addAuthorisation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addAuthorisation, sizeof(ns1__addAuthorisation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addAuthorisation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addAuthorisation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_toAddFedId1 = 1;
-	size_t soap_flag_toAddRole1 = 1;
-	size_t soap_flag_elementId1 = 1;
-	size_t soap_flag_elementType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addAuthorisation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_toAddFedId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "toAddFedId", &(a->ns1__addAuthorisation::toAddFedId), "xsd:string"))
-				{	soap_flag_toAddFedId1--;
-					continue;
-				}
-			if (soap_flag_toAddRole1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "toAddRole", &(a->ns1__addAuthorisation::toAddRole), "xsd:string"))
-				{	soap_flag_toAddRole1--;
-					continue;
-				}
-			if (soap_flag_elementId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "elementId", &(a->ns1__addAuthorisation::elementId), "xsd:long"))
-				{	soap_flag_elementId1--;
-					continue;
-				}
-			if (soap_flag_elementType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__elementType(soap, "elementType", &(a->ns1__addAuthorisation::elementType), "ns1:elementType"))
-				{	soap_flag_elementType1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addAuthorisation, 0, sizeof(ns1__addAuthorisation), 0, soap_copy_ns1__addAuthorisation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addAuthorisation);
-	if (this->soap_out(soap, tag?tag:"ns1:addAuthorisation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addAuthorisation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addAuthorisation * SOAP_FMAC4 soap_get_ns1__addAuthorisation(struct soap *soap, ns1__addAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__addAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation);
-		if (size)
-			*size = sizeof(ns1__addAuthorisation);
-		((ns1__addAuthorisation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addAuthorisation);
-		for (int i = 0; i < n; i++)
-			((ns1__addAuthorisation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addAuthorisation %p -> %p\n", q, p));
-	*(ns1__addAuthorisation*)p = *(ns1__addAuthorisation*)q;
-}
-
-void ns1__addDataSetParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addDataSetParameterResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataSetParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameterResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataSetParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__addDataSetParameterResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParameterResponse), "ns1:addDataSetParameterResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__datasetParameter(soap, "return", -1, &(a->ns1__addDataSetParameterResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataSetParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__addDataSetParameterResponse(struct soap *soap, const char *tag, ns1__addDataSetParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParameterResponse, sizeof(ns1__addDataSetParameterResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParameterResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataSetParameterResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetParameter(soap, "return", &(a->ns1__addDataSetParameterResponse::return_), "ns1:datasetParameter"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataSetParameterResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParameterResponse, 0, sizeof(ns1__addDataSetParameterResponse), 0, soap_copy_ns1__addDataSetParameterResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataSetParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse);
-		if (size)
-			*size = sizeof(ns1__addDataSetParameterResponse);
-		((ns1__addDataSetParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataSetParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParameterResponse %p -> %p\n", q, p));
-	*(ns1__addDataSetParameterResponse*)p = *(ns1__addDataSetParameterResponse*)q;
-}
-
-void ns1__addDataSetParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addDataSetParameter::sessionId = NULL;
-	this->ns1__addDataSetParameter::dataSetParameter = NULL;
-	this->ns1__addDataSetParameter::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataSetParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataSetParameter::sessionId);
-	soap_serialize_PointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameter::dataSetParameter);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataSetParameter::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__addDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataSetParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__addDataSetParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParameter), "ns1:addDataSetParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataSetParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datasetParameter(soap, "dataSetParameter", -1, &(a->ns1__addDataSetParameter::dataSetParameter), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__addDataSetParameter::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataSetParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameter * SOAP_FMAC4 soap_in_ns1__addDataSetParameter(struct soap *soap, const char *tag, ns1__addDataSetParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParameter, sizeof(ns1__addDataSetParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataSetParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataSetParameter1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataSetParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataSetParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetParameter(soap, "dataSetParameter", &(a->ns1__addDataSetParameter::dataSetParameter), "ns1:datasetParameter"))
-				{	soap_flag_dataSetParameter1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__addDataSetParameter::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParameter, 0, sizeof(ns1__addDataSetParameter), 0, soap_copy_ns1__addDataSetParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataSetParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameter * SOAP_FMAC4 soap_get_ns1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter);
-		if (size)
-			*size = sizeof(ns1__addDataSetParameter);
-		((ns1__addDataSetParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataSetParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataSetParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParameter %p -> %p\n", q, p));
-	*(ns1__addDataSetParameter*)p = *(ns1__addDataSetParameter*)q;
-}
-
-void ns1__createDataFilesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFilesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataFilesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFilesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__createDataFilesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataFilesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFilesResponse(struct soap *soap, const char *tag, int id, const ns1__createDataFilesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFilesResponse), "ns1:createDataFilesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__createDataFilesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataFilesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataFilesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataFilesResponse * SOAP_FMAC4 soap_in_ns1__createDataFilesResponse(struct soap *soap, const char *tag, ns1__createDataFilesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataFilesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFilesResponse, sizeof(ns1__createDataFilesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataFilesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataFilesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__createDataFilesResponse::return_), "ns1:datafile"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataFilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFilesResponse, 0, sizeof(ns1__createDataFilesResponse), 0, soap_copy_ns1__createDataFilesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataFilesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFilesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataFilesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataFilesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataFilesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataFilesResponse * SOAP_FMAC4 soap_get_ns1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataFilesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataFilesResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataFilesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFilesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFilesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse);
-		if (size)
-			*size = sizeof(ns1__createDataFilesResponse);
-		((ns1__createDataFilesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataFilesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataFilesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataFilesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFilesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFilesResponse %p -> %p\n", q, p));
-	*(ns1__createDataFilesResponse*)p = *(ns1__createDataFilesResponse*)q;
-}
-
-void ns1__createDataFiles::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createDataFiles::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFiles::dataFiles);
-	this->ns1__createDataFiles::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataFiles::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataFiles::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFiles::dataFiles);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataFiles::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__createDataFiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataFiles(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFiles(struct soap *soap, const char *tag, int id, const ns1__createDataFiles *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFiles), "ns1:createDataFiles"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataFiles::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "dataFiles", -1, &(a->ns1__createDataFiles::dataFiles), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__createDataFiles::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataFiles::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataFiles(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataFiles * SOAP_FMAC4 soap_in_ns1__createDataFiles(struct soap *soap, const char *tag, ns1__createDataFiles *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataFiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFiles, sizeof(ns1__createDataFiles), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataFiles)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataFiles *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataFiles::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "dataFiles", &(a->ns1__createDataFiles::dataFiles), "ns1:datafile"))
-					continue;
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__createDataFiles::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataFiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFiles, 0, sizeof(ns1__createDataFiles), 0, soap_copy_ns1__createDataFiles);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataFiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFiles);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataFiles", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataFiles::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataFiles(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataFiles * SOAP_FMAC4 soap_get_ns1__createDataFiles(struct soap *soap, ns1__createDataFiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataFiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataFiles * SOAP_FMAC2 soap_instantiate_ns1__createDataFiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles);
-		if (size)
-			*size = sizeof(ns1__createDataFiles);
-		((ns1__createDataFiles*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataFiles);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataFiles*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataFiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFiles %p -> %p\n", q, p));
-	*(ns1__createDataFiles*)p = *(ns1__createDataFiles*)q;
-}
-
-void ns1__modifyInvestigatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyInvestigatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyInvestigatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigatorResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyInvestigatorResponse");
-}
-
-void *ns1__modifyInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyInvestigatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, ns1__modifyInvestigatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigatorResponse, sizeof(ns1__modifyInvestigatorResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigatorResponse)
-			return (ns1__modifyInvestigatorResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyInvestigatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse);
-		if (size)
-			*size = sizeof(ns1__modifyInvestigatorResponse);
-		((ns1__modifyInvestigatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyInvestigatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyInvestigatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigatorResponse %p -> %p\n", q, p));
-	*(ns1__modifyInvestigatorResponse*)p = *(ns1__modifyInvestigatorResponse*)q;
-}
-
-void ns1__modifyInvestigator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyInvestigator::sessionId = NULL;
-	this->ns1__modifyInvestigator::investigator = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyInvestigator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyInvestigator::sessionId);
-	soap_serialize_PointerTons1__investigator(soap, &this->ns1__modifyInvestigator::investigator);
-	/* transient soap skipped */
-}
-
-int ns1__modifyInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyInvestigator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigator(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyInvestigator), "ns1:modifyInvestigator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyInvestigator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigator(soap, "investigator", -1, &(a->ns1__modifyInvestigator::investigator), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyInvestigator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigator * SOAP_FMAC4 soap_in_ns1__modifyInvestigator(struct soap *soap, const char *tag, ns1__modifyInvestigator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigator, sizeof(ns1__modifyInvestigator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyInvestigator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigator1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyInvestigator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigator1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigator(soap, "investigator", &(a->ns1__modifyInvestigator::investigator), "ns1:investigator"))
-				{	soap_flag_investigator1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyInvestigator, 0, sizeof(ns1__modifyInvestigator), 0, soap_copy_ns1__modifyInvestigator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigator);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyInvestigator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigator * SOAP_FMAC4 soap_get_ns1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyInvestigator * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator);
-		if (size)
-			*size = sizeof(ns1__modifyInvestigator);
-		((ns1__modifyInvestigator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyInvestigator);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyInvestigator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigator %p -> %p\n", q, p));
-	*(ns1__modifyInvestigator*)p = *(ns1__modifyInvestigator*)q;
-}
-
-void ns1__searchByParameterComparatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByParameterComparatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByParameterComparatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByParameterComparatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparatorResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparatorResponse), "ns1:searchByParameterComparatorResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByParameterComparatorResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByParameterComparatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByParameterComparatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorResponse * SOAP_FMAC4 soap_in_ns1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByParameterComparatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparatorResponse, sizeof(ns1__searchByParameterComparatorResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparatorResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByParameterComparatorResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByParameterComparatorResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByParameterComparatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparatorResponse, 0, sizeof(ns1__searchByParameterComparatorResponse), 0, soap_copy_ns1__searchByParameterComparatorResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByParameterComparatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByParameterComparatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByParameterComparatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorResponse * SOAP_FMAC4 soap_get_ns1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByParameterComparatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByParameterComparatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse);
-		if (size)
-			*size = sizeof(ns1__searchByParameterComparatorResponse);
-		((ns1__searchByParameterComparatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByParameterComparatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByParameterComparatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparatorResponse %p -> %p\n", q, p));
-	*(ns1__searchByParameterComparatorResponse*)p = *(ns1__searchByParameterComparatorResponse*)q;
-}
-
-void ns1__searchByParameterComparator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByParameterComparator::sessionId = NULL;
-	this->ns1__searchByParameterComparator::comparator = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByParameterComparator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByParameterComparator::sessionId);
-	soap_serialize_PointerTons1__parameterComparisonCondition(soap, &this->ns1__searchByParameterComparator::comparator);
-	/* transient soap skipped */
-}
-
-int ns1__searchByParameterComparator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByParameterComparator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparator(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparator), "ns1:searchByParameterComparator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByParameterComparator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterComparisonCondition(soap, "comparator", -1, &(a->ns1__searchByParameterComparator::comparator), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByParameterComparator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByParameterComparator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparator * SOAP_FMAC4 soap_in_ns1__searchByParameterComparator(struct soap *soap, const char *tag, ns1__searchByParameterComparator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByParameterComparator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparator, sizeof(ns1__searchByParameterComparator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByParameterComparator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_comparator1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByParameterComparator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterComparisonCondition(soap, "comparator", &(a->ns1__searchByParameterComparator::comparator), "ns1:parameterComparisonCondition"))
-				{	soap_flag_comparator1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByParameterComparator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparator, 0, sizeof(ns1__searchByParameterComparator), 0, soap_copy_ns1__searchByParameterComparator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByParameterComparator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparator);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByParameterComparator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByParameterComparator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparator * SOAP_FMAC4 soap_get_ns1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByParameterComparator * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator);
-		if (size)
-			*size = sizeof(ns1__searchByParameterComparator);
-		((ns1__searchByParameterComparator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByParameterComparator);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByParameterComparator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByParameterComparator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparator %p -> %p\n", q, p));
-	*(ns1__searchByParameterComparator*)p = *(ns1__searchByParameterComparator*)q;
-}
-
-void ns1__modifySampleParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifySampleParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifySampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifySampleParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__modifySampleParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifySampleParameterResponse");
-}
-
-void *ns1__modifySampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifySampleParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_in_ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, ns1__modifySampleParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifySampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySampleParameterResponse, sizeof(ns1__modifySampleParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifySampleParameterResponse)
-			return (ns1__modifySampleParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifySampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySampleParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifySampleParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifySampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifySampleParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_get_ns1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifySampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifySampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__modifySampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse);
-		if (size)
-			*size = sizeof(ns1__modifySampleParameterResponse);
-		((ns1__modifySampleParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifySampleParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifySampleParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifySampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySampleParameterResponse %p -> %p\n", q, p));
-	*(ns1__modifySampleParameterResponse*)p = *(ns1__modifySampleParameterResponse*)q;
-}
-
-void ns1__modifySampleParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifySampleParameter::sessionId = NULL;
-	this->ns1__modifySampleParameter::sampleParameter = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifySampleParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifySampleParameter::sessionId);
-	soap_serialize_PointerTons1__sampleParameter(soap, &this->ns1__modifySampleParameter::sampleParameter);
-	/* transient soap skipped */
-}
-
-int ns1__modifySampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifySampleParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySampleParameter(struct soap *soap, const char *tag, int id, const ns1__modifySampleParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifySampleParameter), "ns1:modifySampleParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifySampleParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sampleParameter(soap, "sampleParameter", -1, &(a->ns1__modifySampleParameter::sampleParameter), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifySampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifySampleParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameter * SOAP_FMAC4 soap_in_ns1__modifySampleParameter(struct soap *soap, const char *tag, ns1__modifySampleParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifySampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySampleParameter, sizeof(ns1__modifySampleParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifySampleParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifySampleParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleParameter1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifySampleParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sampleParameter(soap, "sampleParameter", &(a->ns1__modifySampleParameter::sampleParameter), "ns1:sampleParameter"))
-				{	soap_flag_sampleParameter1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifySampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifySampleParameter, 0, sizeof(ns1__modifySampleParameter), 0, soap_copy_ns1__modifySampleParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifySampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySampleParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:modifySampleParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifySampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifySampleParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameter * SOAP_FMAC4 soap_get_ns1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifySampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifySampleParameter * SOAP_FMAC2 soap_instantiate_ns1__modifySampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter);
-		if (size)
-			*size = sizeof(ns1__modifySampleParameter);
-		((ns1__modifySampleParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifySampleParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__modifySampleParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifySampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySampleParameter %p -> %p\n", q, p));
-	*(ns1__modifySampleParameter*)p = *(ns1__modifySampleParameter*)q;
-}
-
-void ns1__listDatafileFormatsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafileFormat(soap, &this->ns1__listDatafileFormatsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listDatafileFormatsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafileFormat(soap, &this->ns1__listDatafileFormatsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listDatafileFormatsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listDatafileFormatsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatafileFormatsResponse(struct soap *soap, const char *tag, int id, const ns1__listDatafileFormatsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatafileFormatsResponse), "ns1:listDatafileFormatsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafileFormat(soap, "return", -1, &(a->ns1__listDatafileFormatsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listDatafileFormatsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listDatafileFormatsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormatsResponse * SOAP_FMAC4 soap_in_ns1__listDatafileFormatsResponse(struct soap *soap, const char *tag, ns1__listDatafileFormatsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listDatafileFormatsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatafileFormatsResponse, sizeof(ns1__listDatafileFormatsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listDatafileFormatsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listDatafileFormatsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafileFormat(soap, "return", &(a->ns1__listDatafileFormatsResponse::return_), "ns1:datafileFormat"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listDatafileFormatsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatafileFormatsResponse, 0, sizeof(ns1__listDatafileFormatsResponse), 0, soap_copy_ns1__listDatafileFormatsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listDatafileFormatsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatafileFormatsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listDatafileFormatsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listDatafileFormatsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listDatafileFormatsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormatsResponse * SOAP_FMAC4 soap_get_ns1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listDatafileFormatsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listDatafileFormatsResponse * SOAP_FMAC2 soap_instantiate_ns1__listDatafileFormatsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatafileFormatsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatafileFormatsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse);
-		if (size)
-			*size = sizeof(ns1__listDatafileFormatsResponse);
-		((ns1__listDatafileFormatsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listDatafileFormatsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listDatafileFormatsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listDatafileFormatsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatafileFormatsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatafileFormatsResponse %p -> %p\n", q, p));
-	*(ns1__listDatafileFormatsResponse*)p = *(ns1__listDatafileFormatsResponse*)q;
-}
-
-void ns1__listDatafileFormats::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listDatafileFormats::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listDatafileFormats::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listDatafileFormats::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listDatafileFormats::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listDatafileFormats(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatafileFormats(struct soap *soap, const char *tag, int id, const ns1__listDatafileFormats *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatafileFormats), "ns1:listDatafileFormats"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listDatafileFormats::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listDatafileFormats::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listDatafileFormats(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormats * SOAP_FMAC4 soap_in_ns1__listDatafileFormats(struct soap *soap, const char *tag, ns1__listDatafileFormats *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listDatafileFormats *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatafileFormats, sizeof(ns1__listDatafileFormats), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listDatafileFormats)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listDatafileFormats *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listDatafileFormats::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listDatafileFormats *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatafileFormats, 0, sizeof(ns1__listDatafileFormats), 0, soap_copy_ns1__listDatafileFormats);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listDatafileFormats::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatafileFormats);
-	if (this->soap_out(soap, tag?tag:"ns1:listDatafileFormats", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listDatafileFormats::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listDatafileFormats(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormats * SOAP_FMAC4 soap_get_ns1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listDatafileFormats(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listDatafileFormats * SOAP_FMAC2 soap_instantiate_ns1__listDatafileFormats(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatafileFormats(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatafileFormats, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats);
-		if (size)
-			*size = sizeof(ns1__listDatafileFormats);
-		((ns1__listDatafileFormats*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listDatafileFormats);
-		for (int i = 0; i < n; i++)
-			((ns1__listDatafileFormats*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listDatafileFormats*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatafileFormats(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatafileFormats %p -> %p\n", q, p));
-	*(ns1__listDatafileFormats*)p = *(ns1__listDatafileFormats*)q;
-}
-
-void ns1__searchByAdvancedPaginationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedPaginationResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByAdvancedPaginationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedPaginationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByAdvancedPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByAdvancedPaginationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByAdvancedPaginationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse), "ns1:searchByAdvancedPaginationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByAdvancedPaginationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByAdvancedPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByAdvancedPaginationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedPaginationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByAdvancedPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, sizeof(ns1__searchByAdvancedPaginationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvancedPaginationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByAdvancedPaginationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByAdvancedPaginationResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByAdvancedPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, 0, sizeof(ns1__searchByAdvancedPaginationResponse), 0, soap_copy_ns1__searchByAdvancedPaginationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByAdvancedPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvancedPaginationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByAdvancedPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByAdvancedPaginationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByAdvancedPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByAdvancedPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvancedPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvancedPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse);
-		if (size)
-			*size = sizeof(ns1__searchByAdvancedPaginationResponse);
-		((ns1__searchByAdvancedPaginationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByAdvancedPaginationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByAdvancedPaginationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByAdvancedPaginationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvancedPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvancedPaginationResponse %p -> %p\n", q, p));
-	*(ns1__searchByAdvancedPaginationResponse*)p = *(ns1__searchByAdvancedPaginationResponse*)q;
-}
-
-void ns1__searchByAdvancedPagination::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByAdvancedPagination::sessionId = NULL;
-	this->ns1__searchByAdvancedPagination::advancedSearchDetails = NULL;
-	soap_default_int(soap, &this->ns1__searchByAdvancedPagination::startIndex);
-	soap_default_int(soap, &this->ns1__searchByAdvancedPagination::numberOfResults);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByAdvancedPagination::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByAdvancedPagination::sessionId);
-	soap_serialize_PointerTons1__advancedSearchDetails(soap, &this->ns1__searchByAdvancedPagination::advancedSearchDetails);
-	soap_embedded(soap, &this->ns1__searchByAdvancedPagination::startIndex, SOAP_TYPE_int);
-	soap_embedded(soap, &this->ns1__searchByAdvancedPagination::numberOfResults, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__searchByAdvancedPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByAdvancedPagination(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, int id, const ns1__searchByAdvancedPagination *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvancedPagination), "ns1:searchByAdvancedPagination"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByAdvancedPagination::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", -1, &(a->ns1__searchByAdvancedPagination::advancedSearchDetails), ""))
-		return soap->error;
-	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByAdvancedPagination::startIndex), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByAdvancedPagination::numberOfResults), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByAdvancedPagination::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByAdvancedPagination(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_in_ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, ns1__searchByAdvancedPagination *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByAdvancedPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvancedPagination, sizeof(ns1__searchByAdvancedPagination), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvancedPagination)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByAdvancedPagination *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_advancedSearchDetails1 = 1;
-	size_t soap_flag_startIndex1 = 1;
-	size_t soap_flag_numberOfResults1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByAdvancedPagination::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_advancedSearchDetails1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", &(a->ns1__searchByAdvancedPagination::advancedSearchDetails), "ns1:advancedSearchDetails"))
-				{	soap_flag_advancedSearchDetails1--;
-					continue;
-				}
-			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByAdvancedPagination::startIndex), "xsd:int"))
-				{	soap_flag_startIndex1--;
-					continue;
-				}
-			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByAdvancedPagination::numberOfResults), "xsd:int"))
-				{	soap_flag_numberOfResults1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByAdvancedPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvancedPagination, 0, sizeof(ns1__searchByAdvancedPagination), 0, soap_copy_ns1__searchByAdvancedPagination);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByAdvancedPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvancedPagination);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvancedPagination", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByAdvancedPagination::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByAdvancedPagination(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_get_ns1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByAdvancedPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByAdvancedPagination * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvancedPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvancedPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvancedPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination);
-		if (size)
-			*size = sizeof(ns1__searchByAdvancedPagination);
-		((ns1__searchByAdvancedPagination*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByAdvancedPagination);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByAdvancedPagination*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByAdvancedPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvancedPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvancedPagination %p -> %p\n", q, p));
-	*(ns1__searchByAdvancedPagination*)p = *(ns1__searchByAdvancedPagination*)q;
-}
-
-void ns1__searchByAdvancedResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByAdvancedResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByAdvancedResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByAdvancedResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvancedResponse(struct soap *soap, const char *tag, int id, const ns1__searchByAdvancedResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvancedResponse), "ns1:searchByAdvancedResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByAdvancedResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByAdvancedResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByAdvancedResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedResponse * SOAP_FMAC4 soap_in_ns1__searchByAdvancedResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByAdvancedResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvancedResponse, sizeof(ns1__searchByAdvancedResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvancedResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByAdvancedResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByAdvancedResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByAdvancedResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvancedResponse, 0, sizeof(ns1__searchByAdvancedResponse), 0, soap_copy_ns1__searchByAdvancedResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByAdvancedResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvancedResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvancedResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByAdvancedResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByAdvancedResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedResponse * SOAP_FMAC4 soap_get_ns1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByAdvancedResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByAdvancedResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvancedResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvancedResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvancedResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse);
-		if (size)
-			*size = sizeof(ns1__searchByAdvancedResponse);
-		((ns1__searchByAdvancedResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByAdvancedResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByAdvancedResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByAdvancedResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvancedResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvancedResponse %p -> %p\n", q, p));
-	*(ns1__searchByAdvancedResponse*)p = *(ns1__searchByAdvancedResponse*)q;
-}
-
-void ns1__advancedSearchDetails::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__advancedSearchDetails::backCatalogueInvestigatorString = NULL;
-	soap_default_bool(soap, &this->ns1__advancedSearchDetails::caseSensitive);
-	this->ns1__advancedSearchDetails::datafileName = NULL;
-	this->ns1__advancedSearchDetails::dateRangeEnd = NULL;
-	this->ns1__advancedSearchDetails::dateRangeStart = NULL;
-	this->ns1__advancedSearchDetails::experimentNumber = NULL;
-	this->ns1__advancedSearchDetails::grantId = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::instruments);
-	this->ns1__advancedSearchDetails::investigationAbstract = NULL;
-	this->ns1__advancedSearchDetails::investigationInclude = NULL;
-	this->ns1__advancedSearchDetails::investigationName = NULL;
-	this->ns1__advancedSearchDetails::investigationType = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::investigators);
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::keywords);
-	this->ns1__advancedSearchDetails::runEnd = NULL;
-	this->ns1__advancedSearchDetails::runStart = NULL;
-	this->ns1__advancedSearchDetails::sampleName = NULL;
-	this->ns1__advancedSearchDetails::visitId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__advancedSearchDetails::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::backCatalogueInvestigatorString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::datafileName);
-	soap_serialize_PointerTotime(soap, &this->ns1__advancedSearchDetails::dateRangeEnd);
-	soap_serialize_PointerTotime(soap, &this->ns1__advancedSearchDetails::dateRangeStart);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::experimentNumber);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__advancedSearchDetails::grantId);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::instruments);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::investigationAbstract);
-	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__advancedSearchDetails::investigationInclude);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::investigationName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::investigationType);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::investigators);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::keywords);
-	soap_serialize_PointerTodouble(soap, &this->ns1__advancedSearchDetails::runEnd);
-	soap_serialize_PointerTodouble(soap, &this->ns1__advancedSearchDetails::runStart);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::sampleName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::visitId);
-	/* transient soap skipped */
-}
-
-int ns1__advancedSearchDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__advancedSearchDetails(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__advancedSearchDetails(struct soap *soap, const char *tag, int id, const ns1__advancedSearchDetails *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__advancedSearchDetails), "ns1:advancedSearchDetails"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "backCatalogueInvestigatorString", -1, &(a->ns1__advancedSearchDetails::backCatalogueInvestigatorString), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "caseSensitive", -1, &(a->ns1__advancedSearchDetails::caseSensitive), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "datafileName", -1, &(a->ns1__advancedSearchDetails::datafileName), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "dateRangeEnd", -1, &(a->ns1__advancedSearchDetails::dateRangeEnd), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "dateRangeStart", -1, &(a->ns1__advancedSearchDetails::dateRangeStart), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "experimentNumber", -1, &(a->ns1__advancedSearchDetails::experimentNumber), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "grantId", -1, &(a->ns1__advancedSearchDetails::grantId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "instruments", -1, &(a->ns1__advancedSearchDetails::instruments), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "investigationAbstract", -1, &(a->ns1__advancedSearchDetails::investigationAbstract), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__advancedSearchDetails::investigationInclude), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "investigationName", -1, &(a->ns1__advancedSearchDetails::investigationName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "investigationType", -1, &(a->ns1__advancedSearchDetails::investigationType), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "investigators", -1, &(a->ns1__advancedSearchDetails::investigators), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "keywords", -1, &(a->ns1__advancedSearchDetails::keywords), ""))
-		return soap->error;
-	if (soap_out_PointerTodouble(soap, "runEnd", -1, &(a->ns1__advancedSearchDetails::runEnd), ""))
-		return soap->error;
-	if (soap_out_PointerTodouble(soap, "runStart", -1, &(a->ns1__advancedSearchDetails::runStart), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "sampleName", -1, &(a->ns1__advancedSearchDetails::sampleName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "visitId", -1, &(a->ns1__advancedSearchDetails::visitId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__advancedSearchDetails::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__advancedSearchDetails(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__advancedSearchDetails * SOAP_FMAC4 soap_in_ns1__advancedSearchDetails(struct soap *soap, const char *tag, ns1__advancedSearchDetails *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__advancedSearchDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__advancedSearchDetails, sizeof(ns1__advancedSearchDetails), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__advancedSearchDetails)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__advancedSearchDetails *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_backCatalogueInvestigatorString1 = 1;
-	size_t soap_flag_caseSensitive1 = 1;
-	size_t soap_flag_datafileName1 = 1;
-	size_t soap_flag_dateRangeEnd1 = 1;
-	size_t soap_flag_dateRangeStart1 = 1;
-	size_t soap_flag_experimentNumber1 = 1;
-	size_t soap_flag_grantId1 = 1;
-	size_t soap_flag_investigationAbstract1 = 1;
-	size_t soap_flag_investigationInclude1 = 1;
-	size_t soap_flag_investigationName1 = 1;
-	size_t soap_flag_investigationType1 = 1;
-	size_t soap_flag_runEnd1 = 1;
-	size_t soap_flag_runStart1 = 1;
-	size_t soap_flag_sampleName1 = 1;
-	size_t soap_flag_visitId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_backCatalogueInvestigatorString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "backCatalogueInvestigatorString", &(a->ns1__advancedSearchDetails::backCatalogueInvestigatorString), "xsd:string"))
-				{	soap_flag_backCatalogueInvestigatorString1--;
-					continue;
-				}
-			if (soap_flag_caseSensitive1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "caseSensitive", &(a->ns1__advancedSearchDetails::caseSensitive), "xsd:boolean"))
-				{	soap_flag_caseSensitive1--;
-					continue;
-				}
-			if (soap_flag_datafileName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "datafileName", &(a->ns1__advancedSearchDetails::datafileName), "xsd:string"))
-				{	soap_flag_datafileName1--;
-					continue;
-				}
-			if (soap_flag_dateRangeEnd1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "dateRangeEnd", &(a->ns1__advancedSearchDetails::dateRangeEnd), "xsd:dateTime"))
-				{	soap_flag_dateRangeEnd1--;
-					continue;
-				}
-			if (soap_flag_dateRangeStart1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "dateRangeStart", &(a->ns1__advancedSearchDetails::dateRangeStart), "xsd:dateTime"))
-				{	soap_flag_dateRangeStart1--;
-					continue;
-				}
-			if (soap_flag_experimentNumber1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "experimentNumber", &(a->ns1__advancedSearchDetails::experimentNumber), "xsd:string"))
-				{	soap_flag_experimentNumber1--;
-					continue;
-				}
-			if (soap_flag_grantId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "grantId", &(a->ns1__advancedSearchDetails::grantId), "xsd:long"))
-				{	soap_flag_grantId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "instruments", &(a->ns1__advancedSearchDetails::instruments), "xsd:string"))
-					continue;
-			if (soap_flag_investigationAbstract1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "investigationAbstract", &(a->ns1__advancedSearchDetails::investigationAbstract), "xsd:string"))
-				{	soap_flag_investigationAbstract1--;
-					continue;
-				}
-			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__advancedSearchDetails::investigationInclude), "ns1:investigationInclude"))
-				{	soap_flag_investigationInclude1--;
-					continue;
-				}
-			if (soap_flag_investigationName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "investigationName", &(a->ns1__advancedSearchDetails::investigationName), "xsd:string"))
-				{	soap_flag_investigationName1--;
-					continue;
-				}
-			if (soap_flag_investigationType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "investigationType", &(a->ns1__advancedSearchDetails::investigationType), "xsd:string"))
-				{	soap_flag_investigationType1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "investigators", &(a->ns1__advancedSearchDetails::investigators), "xsd:string"))
-					continue;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "keywords", &(a->ns1__advancedSearchDetails::keywords), "xsd:string"))
-					continue;
-			if (soap_flag_runEnd1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTodouble(soap, "runEnd", &(a->ns1__advancedSearchDetails::runEnd), "xsd:double"))
-				{	soap_flag_runEnd1--;
-					continue;
-				}
-			if (soap_flag_runStart1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTodouble(soap, "runStart", &(a->ns1__advancedSearchDetails::runStart), "xsd:double"))
-				{	soap_flag_runStart1--;
-					continue;
-				}
-			if (soap_flag_sampleName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sampleName", &(a->ns1__advancedSearchDetails::sampleName), "xsd:string"))
-				{	soap_flag_sampleName1--;
-					continue;
-				}
-			if (soap_flag_visitId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "visitId", &(a->ns1__advancedSearchDetails::visitId), "xsd:string"))
-				{	soap_flag_visitId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__advancedSearchDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__advancedSearchDetails, 0, sizeof(ns1__advancedSearchDetails), 0, soap_copy_ns1__advancedSearchDetails);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_caseSensitive1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__advancedSearchDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__advancedSearchDetails);
-	if (this->soap_out(soap, tag?tag:"ns1:advancedSearchDetails", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__advancedSearchDetails::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__advancedSearchDetails(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__advancedSearchDetails * SOAP_FMAC4 soap_get_ns1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__advancedSearchDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__advancedSearchDetails * SOAP_FMAC2 soap_instantiate_ns1__advancedSearchDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__advancedSearchDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__advancedSearchDetails, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails);
-		if (size)
-			*size = sizeof(ns1__advancedSearchDetails);
-		((ns1__advancedSearchDetails*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__advancedSearchDetails);
-		for (int i = 0; i < n; i++)
-			((ns1__advancedSearchDetails*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__advancedSearchDetails*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__advancedSearchDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__advancedSearchDetails %p -> %p\n", q, p));
-	*(ns1__advancedSearchDetails*)p = *(ns1__advancedSearchDetails*)q;
-}
-
-void ns1__searchByAdvanced::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByAdvanced::sessionId = NULL;
-	this->ns1__searchByAdvanced::advancedSearchDetails = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByAdvanced::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByAdvanced::sessionId);
-	soap_serialize_PointerTons1__advancedSearchDetails(soap, &this->ns1__searchByAdvanced::advancedSearchDetails);
-	/* transient soap skipped */
-}
-
-int ns1__searchByAdvanced::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByAdvanced(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvanced(struct soap *soap, const char *tag, int id, const ns1__searchByAdvanced *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvanced), "ns1:searchByAdvanced"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByAdvanced::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", -1, &(a->ns1__searchByAdvanced::advancedSearchDetails), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByAdvanced::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByAdvanced(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvanced * SOAP_FMAC4 soap_in_ns1__searchByAdvanced(struct soap *soap, const char *tag, ns1__searchByAdvanced *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByAdvanced *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvanced, sizeof(ns1__searchByAdvanced), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvanced)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByAdvanced *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_advancedSearchDetails1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByAdvanced::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_advancedSearchDetails1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", &(a->ns1__searchByAdvanced::advancedSearchDetails), "ns1:advancedSearchDetails"))
-				{	soap_flag_advancedSearchDetails1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByAdvanced *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvanced, 0, sizeof(ns1__searchByAdvanced), 0, soap_copy_ns1__searchByAdvanced);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByAdvanced::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvanced);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvanced", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByAdvanced::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByAdvanced(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvanced * SOAP_FMAC4 soap_get_ns1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByAdvanced(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByAdvanced * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvanced(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvanced(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvanced, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced);
-		if (size)
-			*size = sizeof(ns1__searchByAdvanced);
-		((ns1__searchByAdvanced*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByAdvanced);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByAdvanced*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByAdvanced*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvanced(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvanced %p -> %p\n", q, p));
-	*(ns1__searchByAdvanced*)p = *(ns1__searchByAdvanced*)q;
-}
-
-void ns1__searchByRunNumberPaginationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberPaginationResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByRunNumberPaginationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberPaginationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByRunNumberPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByRunNumberPaginationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumberPaginationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse), "ns1:searchByRunNumberPaginationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchByRunNumberPaginationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByRunNumberPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByRunNumberPaginationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberPaginationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByRunNumberPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, sizeof(ns1__searchByRunNumberPaginationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumberPaginationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByRunNumberPaginationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchByRunNumberPaginationResponse::return_), "ns1:datafile"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByRunNumberPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, 0, sizeof(ns1__searchByRunNumberPaginationResponse), 0, soap_copy_ns1__searchByRunNumberPaginationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByRunNumberPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumberPaginationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByRunNumberPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByRunNumberPaginationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByRunNumberPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByRunNumberPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumberPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumberPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse);
-		if (size)
-			*size = sizeof(ns1__searchByRunNumberPaginationResponse);
-		((ns1__searchByRunNumberPaginationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByRunNumberPaginationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByRunNumberPaginationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByRunNumberPaginationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumberPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumberPaginationResponse %p -> %p\n", q, p));
-	*(ns1__searchByRunNumberPaginationResponse*)p = *(ns1__searchByRunNumberPaginationResponse*)q;
-}
-
-void ns1__searchByRunNumberPagination::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByRunNumberPagination::sessionId = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumberPagination::instruments);
-	soap_default_float(soap, &this->ns1__searchByRunNumberPagination::startRun);
-	soap_default_float(soap, &this->ns1__searchByRunNumberPagination::endRun);
-	soap_default_int(soap, &this->ns1__searchByRunNumberPagination::startIndex);
-	soap_default_int(soap, &this->ns1__searchByRunNumberPagination::numberOfResults);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByRunNumberPagination::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByRunNumberPagination::sessionId);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumberPagination::instruments);
-	soap_embedded(soap, &this->ns1__searchByRunNumberPagination::startIndex, SOAP_TYPE_int);
-	soap_embedded(soap, &this->ns1__searchByRunNumberPagination::numberOfResults, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__searchByRunNumberPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByRunNumberPagination(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumberPagination *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumberPagination), "ns1:searchByRunNumberPagination"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByRunNumberPagination::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "instruments", -1, &(a->ns1__searchByRunNumberPagination::instruments), ""))
-		return soap->error;
-	if (soap_out_float(soap, "startRun", -1, &(a->ns1__searchByRunNumberPagination::startRun), ""))
-		return soap->error;
-	if (soap_out_float(soap, "endRun", -1, &(a->ns1__searchByRunNumberPagination::endRun), ""))
-		return soap->error;
-	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByRunNumberPagination::startIndex), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByRunNumberPagination::numberOfResults), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByRunNumberPagination::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByRunNumberPagination(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_in_ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, ns1__searchByRunNumberPagination *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByRunNumberPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumberPagination, sizeof(ns1__searchByRunNumberPagination), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumberPagination)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByRunNumberPagination *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_startRun1 = 1;
-	size_t soap_flag_endRun1 = 1;
-	size_t soap_flag_startIndex1 = 1;
-	size_t soap_flag_numberOfResults1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByRunNumberPagination::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "instruments", &(a->ns1__searchByRunNumberPagination::instruments), "xsd:string"))
-					continue;
-			if (soap_flag_startRun1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_float(soap, "startRun", &(a->ns1__searchByRunNumberPagination::startRun), "xsd:float"))
-				{	soap_flag_startRun1--;
-					continue;
-				}
-			if (soap_flag_endRun1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_float(soap, "endRun", &(a->ns1__searchByRunNumberPagination::endRun), "xsd:float"))
-				{	soap_flag_endRun1--;
-					continue;
-				}
-			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByRunNumberPagination::startIndex), "xsd:int"))
-				{	soap_flag_startIndex1--;
-					continue;
-				}
-			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByRunNumberPagination::numberOfResults), "xsd:int"))
-				{	soap_flag_numberOfResults1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByRunNumberPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumberPagination, 0, sizeof(ns1__searchByRunNumberPagination), 0, soap_copy_ns1__searchByRunNumberPagination);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startRun1 > 0 || soap_flag_endRun1 > 0 || soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByRunNumberPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumberPagination);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumberPagination", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByRunNumberPagination::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByRunNumberPagination(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_get_ns1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByRunNumberPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByRunNumberPagination * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumberPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumberPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumberPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination);
-		if (size)
-			*size = sizeof(ns1__searchByRunNumberPagination);
-		((ns1__searchByRunNumberPagination*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByRunNumberPagination);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByRunNumberPagination*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByRunNumberPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumberPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumberPagination %p -> %p\n", q, p));
-	*(ns1__searchByRunNumberPagination*)p = *(ns1__searchByRunNumberPagination*)q;
-}
-
-void ns1__searchByRunNumberResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByRunNumberResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByRunNumberResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByRunNumberResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumberResponse(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumberResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumberResponse), "ns1:searchByRunNumberResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchByRunNumberResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByRunNumberResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByRunNumberResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberResponse * SOAP_FMAC4 soap_in_ns1__searchByRunNumberResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByRunNumberResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumberResponse, sizeof(ns1__searchByRunNumberResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumberResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByRunNumberResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchByRunNumberResponse::return_), "ns1:datafile"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByRunNumberResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumberResponse, 0, sizeof(ns1__searchByRunNumberResponse), 0, soap_copy_ns1__searchByRunNumberResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByRunNumberResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumberResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumberResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByRunNumberResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByRunNumberResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberResponse * SOAP_FMAC4 soap_get_ns1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByRunNumberResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByRunNumberResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumberResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumberResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumberResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse);
-		if (size)
-			*size = sizeof(ns1__searchByRunNumberResponse);
-		((ns1__searchByRunNumberResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByRunNumberResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByRunNumberResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByRunNumberResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumberResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumberResponse %p -> %p\n", q, p));
-	*(ns1__searchByRunNumberResponse*)p = *(ns1__searchByRunNumberResponse*)q;
-}
-
-void ns1__searchByRunNumber::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByRunNumber::sessionId = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumber::instruments);
-	soap_default_float(soap, &this->ns1__searchByRunNumber::startRun);
-	soap_default_float(soap, &this->ns1__searchByRunNumber::endRun);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByRunNumber::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByRunNumber::sessionId);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumber::instruments);
-	/* transient soap skipped */
-}
-
-int ns1__searchByRunNumber::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByRunNumber(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumber(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumber *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumber), "ns1:searchByRunNumber"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByRunNumber::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "instruments", -1, &(a->ns1__searchByRunNumber::instruments), ""))
-		return soap->error;
-	if (soap_out_float(soap, "startRun", -1, &(a->ns1__searchByRunNumber::startRun), ""))
-		return soap->error;
-	if (soap_out_float(soap, "endRun", -1, &(a->ns1__searchByRunNumber::endRun), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByRunNumber::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByRunNumber(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumber * SOAP_FMAC4 soap_in_ns1__searchByRunNumber(struct soap *soap, const char *tag, ns1__searchByRunNumber *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByRunNumber *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumber, sizeof(ns1__searchByRunNumber), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumber)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByRunNumber *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_startRun1 = 1;
-	size_t soap_flag_endRun1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByRunNumber::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "instruments", &(a->ns1__searchByRunNumber::instruments), "xsd:string"))
-					continue;
-			if (soap_flag_startRun1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_float(soap, "startRun", &(a->ns1__searchByRunNumber::startRun), "xsd:float"))
-				{	soap_flag_startRun1--;
-					continue;
-				}
-			if (soap_flag_endRun1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_float(soap, "endRun", &(a->ns1__searchByRunNumber::endRun), "xsd:float"))
-				{	soap_flag_endRun1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByRunNumber *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumber, 0, sizeof(ns1__searchByRunNumber), 0, soap_copy_ns1__searchByRunNumber);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startRun1 > 0 || soap_flag_endRun1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByRunNumber::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumber);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumber", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByRunNumber::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByRunNumber(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumber * SOAP_FMAC4 soap_get_ns1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByRunNumber(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByRunNumber * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumber(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumber(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumber, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber);
-		if (size)
-			*size = sizeof(ns1__searchByRunNumber);
-		((ns1__searchByRunNumber*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByRunNumber);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByRunNumber*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByRunNumber*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumber(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumber %p -> %p\n", q, p));
-	*(ns1__searchByRunNumber*)p = *(ns1__searchByRunNumber*)q;
-}
-
-void ns1__addDataSetParametersResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParametersResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataSetParametersResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParametersResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addDataSetParametersResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataSetParametersResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParametersResponse(struct soap *soap, const char *tag, int id, const ns1__addDataSetParametersResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParametersResponse), "ns1:addDataSetParametersResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "return", -1, &(a->ns1__addDataSetParametersResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataSetParametersResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataSetParametersResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParametersResponse * SOAP_FMAC4 soap_in_ns1__addDataSetParametersResponse(struct soap *soap, const char *tag, ns1__addDataSetParametersResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataSetParametersResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParametersResponse, sizeof(ns1__addDataSetParametersResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParametersResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataSetParametersResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "return", &(a->ns1__addDataSetParametersResponse::return_), "ns1:datasetParameter"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataSetParametersResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParametersResponse, 0, sizeof(ns1__addDataSetParametersResponse), 0, soap_copy_ns1__addDataSetParametersResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataSetParametersResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParametersResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParametersResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataSetParametersResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataSetParametersResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParametersResponse * SOAP_FMAC4 soap_get_ns1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataSetParametersResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataSetParametersResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParametersResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParametersResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParametersResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse);
-		if (size)
-			*size = sizeof(ns1__addDataSetParametersResponse);
-		((ns1__addDataSetParametersResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataSetParametersResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataSetParametersResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataSetParametersResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParametersResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParametersResponse %p -> %p\n", q, p));
-	*(ns1__addDataSetParametersResponse*)p = *(ns1__addDataSetParametersResponse*)q;
-}
-
-void ns1__addDataSetParameters::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addDataSetParameters::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameters::dataSetParameters);
-	this->ns1__addDataSetParameters::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataSetParameters::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataSetParameters::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameters::dataSetParameters);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataSetParameters::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__addDataSetParameters::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataSetParameters(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParameters(struct soap *soap, const char *tag, int id, const ns1__addDataSetParameters *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParameters), "ns1:addDataSetParameters"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataSetParameters::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "dataSetParameters", -1, &(a->ns1__addDataSetParameters::dataSetParameters), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__addDataSetParameters::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataSetParameters::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataSetParameters(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameters * SOAP_FMAC4 soap_in_ns1__addDataSetParameters(struct soap *soap, const char *tag, ns1__addDataSetParameters *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataSetParameters *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParameters, sizeof(ns1__addDataSetParameters), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParameters)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataSetParameters *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataSetParameters::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "dataSetParameters", &(a->ns1__addDataSetParameters::dataSetParameters), "ns1:datasetParameter"))
-					continue;
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__addDataSetParameters::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataSetParameters *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParameters, 0, sizeof(ns1__addDataSetParameters), 0, soap_copy_ns1__addDataSetParameters);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataSetParameters::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParameters);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParameters", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataSetParameters::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataSetParameters(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameters * SOAP_FMAC4 soap_get_ns1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataSetParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataSetParameters * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParameters, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters);
-		if (size)
-			*size = sizeof(ns1__addDataSetParameters);
-		((ns1__addDataSetParameters*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataSetParameters);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataSetParameters*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataSetParameters*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParameters %p -> %p\n", q, p));
-	*(ns1__addDataSetParameters*)p = *(ns1__addDataSetParameters*)q;
-}
-
-void ns1__deleteKeywordResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteKeywordResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteKeywordResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteKeywordResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteKeywordResponse(struct soap *soap, const char *tag, int id, const ns1__deleteKeywordResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteKeywordResponse");
-}
-
-void *ns1__deleteKeywordResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteKeywordResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteKeywordResponse * SOAP_FMAC4 soap_in_ns1__deleteKeywordResponse(struct soap *soap, const char *tag, ns1__deleteKeywordResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteKeywordResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteKeywordResponse, sizeof(ns1__deleteKeywordResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteKeywordResponse)
-			return (ns1__deleteKeywordResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteKeywordResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteKeywordResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteKeywordResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteKeywordResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteKeywordResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteKeywordResponse * SOAP_FMAC4 soap_get_ns1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteKeywordResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteKeywordResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse);
-		if (size)
-			*size = sizeof(ns1__deleteKeywordResponse);
-		((ns1__deleteKeywordResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteKeywordResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteKeywordResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteKeywordResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteKeywordResponse %p -> %p\n", q, p));
-	*(ns1__deleteKeywordResponse*)p = *(ns1__deleteKeywordResponse*)q;
-}
-
-void ns1__deleteKeyword::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteKeyword::sessionId = NULL;
-	this->ns1__deleteKeyword::keywordPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteKeyword::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteKeyword::sessionId);
-	soap_serialize_PointerTons1__keywordPK(soap, &this->ns1__deleteKeyword::keywordPK);
-	/* transient soap skipped */
-}
-
-int ns1__deleteKeyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteKeyword(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteKeyword(struct soap *soap, const char *tag, int id, const ns1__deleteKeyword *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteKeyword), "ns1:deleteKeyword"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteKeyword::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keywordPK(soap, "keywordPK", -1, &(a->ns1__deleteKeyword::keywordPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteKeyword::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteKeyword(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteKeyword * SOAP_FMAC4 soap_in_ns1__deleteKeyword(struct soap *soap, const char *tag, ns1__deleteKeyword *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteKeyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteKeyword, sizeof(ns1__deleteKeyword), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteKeyword)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteKeyword *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_keywordPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteKeyword::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_keywordPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keywordPK(soap, "keywordPK", &(a->ns1__deleteKeyword::keywordPK), "ns1:keywordPK"))
-				{	soap_flag_keywordPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteKeyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteKeyword, 0, sizeof(ns1__deleteKeyword), 0, soap_copy_ns1__deleteKeyword);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteKeyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteKeyword);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteKeyword", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteKeyword::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteKeyword(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteKeyword * SOAP_FMAC4 soap_get_ns1__deleteKeyword(struct soap *soap, ns1__deleteKeyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteKeyword * SOAP_FMAC2 soap_instantiate_ns1__deleteKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteKeyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword);
-		if (size)
-			*size = sizeof(ns1__deleteKeyword);
-		((ns1__deleteKeyword*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteKeyword);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteKeyword*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteKeyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteKeyword %p -> %p\n", q, p));
-	*(ns1__deleteKeyword*)p = *(ns1__deleteKeyword*)q;
-}
-
-void ns1__deleteSampleResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteSampleResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteSampleResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSampleResponse(struct soap *soap, const char *tag, int id, const ns1__deleteSampleResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteSampleResponse");
-}
-
-void *ns1__deleteSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteSampleResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleResponse * SOAP_FMAC4 soap_in_ns1__deleteSampleResponse(struct soap *soap, const char *tag, ns1__deleteSampleResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSampleResponse, sizeof(ns1__deleteSampleResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteSampleResponse)
-			return (ns1__deleteSampleResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSampleResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteSampleResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteSampleResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleResponse * SOAP_FMAC4 soap_get_ns1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse);
-		if (size)
-			*size = sizeof(ns1__deleteSampleResponse);
-		((ns1__deleteSampleResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteSampleResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteSampleResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSampleResponse %p -> %p\n", q, p));
-	*(ns1__deleteSampleResponse*)p = *(ns1__deleteSampleResponse*)q;
-}
-
-void ns1__deleteSample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteSample::sessionId = NULL;
-	this->ns1__deleteSample::sampleId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteSample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteSample::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteSample::sampleId);
-	/* transient soap skipped */
-}
-
-int ns1__deleteSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteSample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSample(struct soap *soap, const char *tag, int id, const ns1__deleteSample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteSample), "ns1:deleteSample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteSample::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__deleteSample::sampleId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteSample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteSample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteSample * SOAP_FMAC4 soap_in_ns1__deleteSample(struct soap *soap, const char *tag, ns1__deleteSample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSample, sizeof(ns1__deleteSample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteSample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteSample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteSample::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__deleteSample::sampleId), "xsd:long"))
-				{	soap_flag_sampleId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteSample, 0, sizeof(ns1__deleteSample), 0, soap_copy_ns1__deleteSample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSample);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteSample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteSample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteSample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteSample * SOAP_FMAC4 soap_get_ns1__deleteSample(struct soap *soap, ns1__deleteSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteSample * SOAP_FMAC2 soap_instantiate_ns1__deleteSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample);
-		if (size)
-			*size = sizeof(ns1__deleteSample);
-		((ns1__deleteSample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteSample);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteSample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSample %p -> %p\n", q, p));
-	*(ns1__deleteSample*)p = *(ns1__deleteSample*)q;
-}
-
-void ns1__listDatasetStatusResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetStatusResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listDatasetStatusResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetStatusResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listDatasetStatusResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listDatasetStatusResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetStatusResponse(struct soap *soap, const char *tag, int id, const ns1__listDatasetStatusResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetStatusResponse), "ns1:listDatasetStatusResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listDatasetStatusResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listDatasetStatusResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listDatasetStatusResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatusResponse * SOAP_FMAC4 soap_in_ns1__listDatasetStatusResponse(struct soap *soap, const char *tag, ns1__listDatasetStatusResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listDatasetStatusResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetStatusResponse, sizeof(ns1__listDatasetStatusResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetStatusResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listDatasetStatusResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listDatasetStatusResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listDatasetStatusResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetStatusResponse, 0, sizeof(ns1__listDatasetStatusResponse), 0, soap_copy_ns1__listDatasetStatusResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listDatasetStatusResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetStatusResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listDatasetStatusResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listDatasetStatusResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listDatasetStatusResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatusResponse * SOAP_FMAC4 soap_get_ns1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listDatasetStatusResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listDatasetStatusResponse * SOAP_FMAC2 soap_instantiate_ns1__listDatasetStatusResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetStatusResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetStatusResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse);
-		if (size)
-			*size = sizeof(ns1__listDatasetStatusResponse);
-		((ns1__listDatasetStatusResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listDatasetStatusResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listDatasetStatusResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listDatasetStatusResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetStatusResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetStatusResponse %p -> %p\n", q, p));
-	*(ns1__listDatasetStatusResponse*)p = *(ns1__listDatasetStatusResponse*)q;
-}
-
-void ns1__listDatasetStatus::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listDatasetStatus::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listDatasetStatus::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listDatasetStatus::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listDatasetStatus::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listDatasetStatus(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetStatus(struct soap *soap, const char *tag, int id, const ns1__listDatasetStatus *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetStatus), "ns1:listDatasetStatus"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listDatasetStatus::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listDatasetStatus::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listDatasetStatus(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatus * SOAP_FMAC4 soap_in_ns1__listDatasetStatus(struct soap *soap, const char *tag, ns1__listDatasetStatus *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listDatasetStatus *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetStatus, sizeof(ns1__listDatasetStatus), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetStatus)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listDatasetStatus *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listDatasetStatus::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listDatasetStatus *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetStatus, 0, sizeof(ns1__listDatasetStatus), 0, soap_copy_ns1__listDatasetStatus);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listDatasetStatus::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetStatus);
-	if (this->soap_out(soap, tag?tag:"ns1:listDatasetStatus", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listDatasetStatus::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listDatasetStatus(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatus * SOAP_FMAC4 soap_get_ns1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listDatasetStatus(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listDatasetStatus * SOAP_FMAC2 soap_instantiate_ns1__listDatasetStatus(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetStatus(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetStatus, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus);
-		if (size)
-			*size = sizeof(ns1__listDatasetStatus);
-		((ns1__listDatasetStatus*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listDatasetStatus);
-		for (int i = 0; i < n; i++)
-			((ns1__listDatasetStatus*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listDatasetStatus*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetStatus(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetStatus %p -> %p\n", q, p));
-	*(ns1__listDatasetStatus*)p = *(ns1__listDatasetStatus*)q;
-}
-
-void ns1__modifyInvestigationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyInvestigationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyInvestigationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyInvestigationResponse");
-}
-
-void *ns1__modifyInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyInvestigationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_in_ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, ns1__modifyInvestigationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigationResponse, sizeof(ns1__modifyInvestigationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigationResponse)
-			return (ns1__modifyInvestigationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyInvestigationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_get_ns1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse);
-		if (size)
-			*size = sizeof(ns1__modifyInvestigationResponse);
-		((ns1__modifyInvestigationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyInvestigationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyInvestigationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigationResponse %p -> %p\n", q, p));
-	*(ns1__modifyInvestigationResponse*)p = *(ns1__modifyInvestigationResponse*)q;
-}
-
-void ns1__modifyInvestigation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyInvestigation::sessionId = NULL;
-	this->ns1__modifyInvestigation::investigaion = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyInvestigation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyInvestigation::sessionId);
-	soap_serialize_PointerTons1__investigation(soap, &this->ns1__modifyInvestigation::investigaion);
-	/* transient soap skipped */
-}
-
-int ns1__modifyInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyInvestigation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigation(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyInvestigation), "ns1:modifyInvestigation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyInvestigation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigation(soap, "investigaion", -1, &(a->ns1__modifyInvestigation::investigaion), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyInvestigation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigation * SOAP_FMAC4 soap_in_ns1__modifyInvestigation(struct soap *soap, const char *tag, ns1__modifyInvestigation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigation, sizeof(ns1__modifyInvestigation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyInvestigation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigaion1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyInvestigation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigaion1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigation(soap, "investigaion", &(a->ns1__modifyInvestigation::investigaion), "ns1:investigation"))
-				{	soap_flag_investigaion1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyInvestigation, 0, sizeof(ns1__modifyInvestigation), 0, soap_copy_ns1__modifyInvestigation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigation);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyInvestigation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigation * SOAP_FMAC4 soap_get_ns1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyInvestigation * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation);
-		if (size)
-			*size = sizeof(ns1__modifyInvestigation);
-		((ns1__modifyInvestigation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyInvestigation);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyInvestigation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigation %p -> %p\n", q, p));
-	*(ns1__modifyInvestigation*)p = *(ns1__modifyInvestigation*)q;
-}
-
-void ns1__addKeywordResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addKeywordResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addKeywordResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__keyword(soap, &this->ns1__addKeywordResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addKeywordResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addKeywordResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addKeywordResponse(struct soap *soap, const char *tag, int id, const ns1__addKeywordResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addKeywordResponse), "ns1:addKeywordResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__keyword(soap, "return", -1, &(a->ns1__addKeywordResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addKeywordResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addKeywordResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addKeywordResponse * SOAP_FMAC4 soap_in_ns1__addKeywordResponse(struct soap *soap, const char *tag, ns1__addKeywordResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addKeywordResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addKeywordResponse, sizeof(ns1__addKeywordResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addKeywordResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addKeywordResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keyword(soap, "return", &(a->ns1__addKeywordResponse::return_), "ns1:keyword"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addKeywordResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addKeywordResponse, 0, sizeof(ns1__addKeywordResponse), 0, soap_copy_ns1__addKeywordResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addKeywordResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addKeywordResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addKeywordResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addKeywordResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addKeywordResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addKeywordResponse * SOAP_FMAC4 soap_get_ns1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addKeywordResponse * SOAP_FMAC2 soap_instantiate_ns1__addKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addKeywordResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse);
-		if (size)
-			*size = sizeof(ns1__addKeywordResponse);
-		((ns1__addKeywordResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addKeywordResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addKeywordResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addKeywordResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addKeywordResponse %p -> %p\n", q, p));
-	*(ns1__addKeywordResponse*)p = *(ns1__addKeywordResponse*)q;
-}
-
-void ns1__addKeyword::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addKeyword::sessionId = NULL;
-	this->ns1__addKeyword::keyword = NULL;
-	this->ns1__addKeyword::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addKeyword::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addKeyword::sessionId);
-	soap_serialize_PointerTons1__keyword(soap, &this->ns1__addKeyword::keyword);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addKeyword::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__addKeyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addKeyword(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addKeyword(struct soap *soap, const char *tag, int id, const ns1__addKeyword *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addKeyword), "ns1:addKeyword"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addKeyword::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keyword(soap, "keyword", -1, &(a->ns1__addKeyword::keyword), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addKeyword::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addKeyword::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addKeyword(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addKeyword * SOAP_FMAC4 soap_in_ns1__addKeyword(struct soap *soap, const char *tag, ns1__addKeyword *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addKeyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addKeyword, sizeof(ns1__addKeyword), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addKeyword)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addKeyword *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_keyword1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addKeyword::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_keyword1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keyword(soap, "keyword", &(a->ns1__addKeyword::keyword), "ns1:keyword"))
-				{	soap_flag_keyword1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addKeyword::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addKeyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addKeyword, 0, sizeof(ns1__addKeyword), 0, soap_copy_ns1__addKeyword);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addKeyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addKeyword);
-	if (this->soap_out(soap, tag?tag:"ns1:addKeyword", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addKeyword::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addKeyword(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addKeyword * SOAP_FMAC4 soap_get_ns1__addKeyword(struct soap *soap, ns1__addKeyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addKeyword * SOAP_FMAC2 soap_instantiate_ns1__addKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addKeyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword);
-		if (size)
-			*size = sizeof(ns1__addKeyword);
-		((ns1__addKeyword*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addKeyword);
-		for (int i = 0; i < n; i++)
-			((ns1__addKeyword*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addKeyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addKeyword %p -> %p\n", q, p));
-	*(ns1__addKeyword*)p = *(ns1__addKeyword*)q;
-}
-
-void ns1__icatAuthorisation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__icatAuthorisation::elementId = NULL;
-	this->ns1__icatAuthorisation::elementType = NULL;
-	this->ns1__icatAuthorisation::id = NULL;
-	this->ns1__icatAuthorisation::role = NULL;
-	this->ns1__icatAuthorisation::userChildRecord = NULL;
-	this->ns1__icatAuthorisation::userId = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__icatAuthorisation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerToLONG64(soap, &this->ns1__icatAuthorisation::elementId);
-	soap_serialize_PointerTons1__elementType(soap, &this->ns1__icatAuthorisation::elementType);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__icatAuthorisation::id);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__icatAuthorisation::role);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__icatAuthorisation::userChildRecord);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__icatAuthorisation::userId);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__icatAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__icatAuthorisation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__icatAuthorisation(struct soap *soap, const char *tag, int id, const ns1__icatAuthorisation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__icatAuthorisation), "ns1:icatAuthorisation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "elementId", -1, &(a->ns1__icatAuthorisation::elementId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__elementType(soap, "elementType", -1, &(a->ns1__icatAuthorisation::elementType), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__icatAuthorisation::id), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "role", -1, &(a->ns1__icatAuthorisation::role), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "userChildRecord", -1, &(a->ns1__icatAuthorisation::userChildRecord), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "userId", -1, &(a->ns1__icatAuthorisation::userId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__icatAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__icatAuthorisation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__icatAuthorisation * SOAP_FMAC4 soap_in_ns1__icatAuthorisation(struct soap *soap, const char *tag, ns1__icatAuthorisation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__icatAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__icatAuthorisation, sizeof(ns1__icatAuthorisation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__icatAuthorisation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__icatAuthorisation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_elementId1 = 1;
-	size_t soap_flag_elementType1 = 1;
-	size_t soap_flag_id1 = 1;
-	size_t soap_flag_role1 = 1;
-	size_t soap_flag_userChildRecord1 = 1;
-	size_t soap_flag_userId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_elementId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "elementId", &(a->ns1__icatAuthorisation::elementId), "xsd:long"))
-				{	soap_flag_elementId1--;
-					continue;
-				}
-			if (soap_flag_elementType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__elementType(soap, "elementType", &(a->ns1__icatAuthorisation::elementType), "ns1:elementType"))
-				{	soap_flag_elementType1--;
-					continue;
-				}
-			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__icatAuthorisation::id), "xsd:long"))
-				{	soap_flag_id1--;
-					continue;
-				}
-			if (soap_flag_role1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "role", &(a->ns1__icatAuthorisation::role), "ns1:icatRole"))
-				{	soap_flag_role1--;
-					continue;
-				}
-			if (soap_flag_userChildRecord1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "userChildRecord", &(a->ns1__icatAuthorisation::userChildRecord), "xsd:long"))
-				{	soap_flag_userChildRecord1--;
-					continue;
-				}
-			if (soap_flag_userId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "userId", &(a->ns1__icatAuthorisation::userId), "xsd:string"))
-				{	soap_flag_userId1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__icatAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__icatAuthorisation, 0, sizeof(ns1__icatAuthorisation), 0, soap_copy_ns1__icatAuthorisation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__icatAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__icatAuthorisation);
-	if (this->soap_out(soap, tag?tag:"ns1:icatAuthorisation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__icatAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__icatAuthorisation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__icatAuthorisation * SOAP_FMAC4 soap_get_ns1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__icatAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__icatAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__icatAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__icatAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__icatAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation);
-		if (size)
-			*size = sizeof(ns1__icatAuthorisation);
-		((ns1__icatAuthorisation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__icatAuthorisation);
-		for (int i = 0; i < n; i++)
-			((ns1__icatAuthorisation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__icatAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__icatAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__icatAuthorisation %p -> %p\n", q, p));
-	*(ns1__icatAuthorisation*)p = *(ns1__icatAuthorisation*)q;
-}
-
-void ns1__getAuthorisationsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, &this->ns1__getAuthorisationsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getAuthorisationsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, &this->ns1__getAuthorisationsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getAuthorisationsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getAuthorisationsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAuthorisationsResponse(struct soap *soap, const char *tag, int id, const ns1__getAuthorisationsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAuthorisationsResponse), "ns1:getAuthorisationsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, "return", -1, &(a->ns1__getAuthorisationsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getAuthorisationsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getAuthorisationsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getAuthorisationsResponse * SOAP_FMAC4 soap_in_ns1__getAuthorisationsResponse(struct soap *soap, const char *tag, ns1__getAuthorisationsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getAuthorisationsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAuthorisationsResponse, sizeof(ns1__getAuthorisationsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getAuthorisationsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getAuthorisationsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, "return", &(a->ns1__getAuthorisationsResponse::return_), "ns1:icatAuthorisation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getAuthorisationsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAuthorisationsResponse, 0, sizeof(ns1__getAuthorisationsResponse), 0, soap_copy_ns1__getAuthorisationsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getAuthorisationsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAuthorisationsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getAuthorisationsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getAuthorisationsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getAuthorisationsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getAuthorisationsResponse * SOAP_FMAC4 soap_get_ns1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getAuthorisationsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getAuthorisationsResponse * SOAP_FMAC2 soap_instantiate_ns1__getAuthorisationsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAuthorisationsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAuthorisationsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse);
-		if (size)
-			*size = sizeof(ns1__getAuthorisationsResponse);
-		((ns1__getAuthorisationsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getAuthorisationsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getAuthorisationsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getAuthorisationsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAuthorisationsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAuthorisationsResponse %p -> %p\n", q, p));
-	*(ns1__getAuthorisationsResponse*)p = *(ns1__getAuthorisationsResponse*)q;
-}
-
-void ns1__getAuthorisations::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getAuthorisations::sessionId = NULL;
-	this->ns1__getAuthorisations::elementId = NULL;
-	this->ns1__getAuthorisations::elementType = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getAuthorisations::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getAuthorisations::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__getAuthorisations::elementId);
-	soap_serialize_PointerTons1__elementType(soap, &this->ns1__getAuthorisations::elementType);
-	/* transient soap skipped */
-}
-
-int ns1__getAuthorisations::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getAuthorisations(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAuthorisations(struct soap *soap, const char *tag, int id, const ns1__getAuthorisations *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAuthorisations), "ns1:getAuthorisations"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getAuthorisations::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "elementId", -1, &(a->ns1__getAuthorisations::elementId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__elementType(soap, "elementType", -1, &(a->ns1__getAuthorisations::elementType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getAuthorisations::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getAuthorisations(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getAuthorisations * SOAP_FMAC4 soap_in_ns1__getAuthorisations(struct soap *soap, const char *tag, ns1__getAuthorisations *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getAuthorisations *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAuthorisations, sizeof(ns1__getAuthorisations), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getAuthorisations)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getAuthorisations *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_elementId1 = 1;
-	size_t soap_flag_elementType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getAuthorisations::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_elementId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "elementId", &(a->ns1__getAuthorisations::elementId), "xsd:long"))
-				{	soap_flag_elementId1--;
-					continue;
-				}
-			if (soap_flag_elementType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__elementType(soap, "elementType", &(a->ns1__getAuthorisations::elementType), "ns1:elementType"))
-				{	soap_flag_elementType1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getAuthorisations *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAuthorisations, 0, sizeof(ns1__getAuthorisations), 0, soap_copy_ns1__getAuthorisations);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getAuthorisations::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAuthorisations);
-	if (this->soap_out(soap, tag?tag:"ns1:getAuthorisations", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getAuthorisations::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getAuthorisations(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getAuthorisations * SOAP_FMAC4 soap_get_ns1__getAuthorisations(struct soap *soap, ns1__getAuthorisations *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getAuthorisations(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getAuthorisations * SOAP_FMAC2 soap_instantiate_ns1__getAuthorisations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAuthorisations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAuthorisations, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations);
-		if (size)
-			*size = sizeof(ns1__getAuthorisations);
-		((ns1__getAuthorisations*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getAuthorisations);
-		for (int i = 0; i < n; i++)
-			((ns1__getAuthorisations*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getAuthorisations*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAuthorisations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAuthorisations %p -> %p\n", q, p));
-	*(ns1__getAuthorisations*)p = *(ns1__getAuthorisations*)q;
-}
-
-void ns1__removeDataSetResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataSetResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataSetResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataSetResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataSetResponse");
-}
-
-void *ns1__removeDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataSetResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetResponse * SOAP_FMAC4 soap_in_ns1__removeDataSetResponse(struct soap *soap, const char *tag, ns1__removeDataSetResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSetResponse, sizeof(ns1__removeDataSetResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSetResponse)
-			return (ns1__removeDataSetResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSetResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataSetResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataSetResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetResponse * SOAP_FMAC4 soap_get_ns1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse);
-		if (size)
-			*size = sizeof(ns1__removeDataSetResponse);
-		((ns1__removeDataSetResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataSetResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataSetResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSetResponse %p -> %p\n", q, p));
-	*(ns1__removeDataSetResponse*)p = *(ns1__removeDataSetResponse*)q;
-}
-
-void ns1__removeDataSet::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeDataSet::sessionId = NULL;
-	this->ns1__removeDataSet::dataSetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataSet::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataSet::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__removeDataSet::dataSetId);
-	/* transient soap skipped */
-}
-
-int ns1__removeDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataSet(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSet(struct soap *soap, const char *tag, int id, const ns1__removeDataSet *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataSet), "ns1:removeDataSet"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataSet::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "dataSetId", -1, &(a->ns1__removeDataSet::dataSetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataSet(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSet * SOAP_FMAC4 soap_in_ns1__removeDataSet(struct soap *soap, const char *tag, ns1__removeDataSet *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSet, sizeof(ns1__removeDataSet), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSet)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeDataSet *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataSetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataSet::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataSetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "dataSetId", &(a->ns1__removeDataSet::dataSetId), "xsd:long"))
-				{	soap_flag_dataSetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataSet, 0, sizeof(ns1__removeDataSet), 0, soap_copy_ns1__removeDataSet);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSet);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataSet", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataSet(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSet * SOAP_FMAC4 soap_get_ns1__removeDataSet(struct soap *soap, ns1__removeDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataSet * SOAP_FMAC2 soap_instantiate_ns1__removeDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet);
-		if (size)
-			*size = sizeof(ns1__removeDataSet);
-		((ns1__removeDataSet*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataSet);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataSet*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSet %p -> %p\n", q, p));
-	*(ns1__removeDataSet*)p = *(ns1__removeDataSet*)q;
-}
-
-void ns1__modifyDataSetParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataSetParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataSetParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataSetParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataSetParameterResponse");
-}
-
-void *ns1__modifyDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataSetParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataSetParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSetParameterResponse, sizeof(ns1__modifyDataSetParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSetParameterResponse)
-			return (ns1__modifyDataSetParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSetParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSetParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataSetParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse);
-		if (size)
-			*size = sizeof(ns1__modifyDataSetParameterResponse);
-		((ns1__modifyDataSetParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataSetParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSetParameterResponse %p -> %p\n", q, p));
-	*(ns1__modifyDataSetParameterResponse*)p = *(ns1__modifyDataSetParameterResponse*)q;
-}
-
-void ns1__modifyDataSetParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyDataSetParameter::sessionId = NULL;
-	this->ns1__modifyDataSetParameter::dataSetParameter = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataSetParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataSetParameter::sessionId);
-	soap_serialize_PointerTons1__datasetParameter(soap, &this->ns1__modifyDataSetParameter::dataSetParameter);
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataSetParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__modifyDataSetParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataSetParameter), "ns1:modifyDataSetParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataSetParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datasetParameter(soap, "dataSetParameter", -1, &(a->ns1__modifyDataSetParameter::dataSetParameter), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataSetParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameter * SOAP_FMAC4 soap_in_ns1__modifyDataSetParameter(struct soap *soap, const char *tag, ns1__modifyDataSetParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSetParameter, sizeof(ns1__modifyDataSetParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSetParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyDataSetParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataSetParameter1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataSetParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataSetParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetParameter(soap, "dataSetParameter", &(a->ns1__modifyDataSetParameter::dataSetParameter), "ns1:datasetParameter"))
-				{	soap_flag_dataSetParameter1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataSetParameter, 0, sizeof(ns1__modifyDataSetParameter), 0, soap_copy_ns1__modifyDataSetParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSetParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSetParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataSetParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameter * SOAP_FMAC4 soap_get_ns1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter);
-		if (size)
-			*size = sizeof(ns1__modifyDataSetParameter);
-		((ns1__modifyDataSetParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataSetParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataSetParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSetParameter %p -> %p\n", q, p));
-	*(ns1__modifyDataSetParameter*)p = *(ns1__modifyDataSetParameter*)q;
-}
-
-void ns1__listInvestigationTypesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listInvestigationTypesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listInvestigationTypesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listInvestigationTypesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listInvestigationTypesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listInvestigationTypesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInvestigationTypesResponse(struct soap *soap, const char *tag, int id, const ns1__listInvestigationTypesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInvestigationTypesResponse), "ns1:listInvestigationTypesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listInvestigationTypesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listInvestigationTypesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listInvestigationTypesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypesResponse * SOAP_FMAC4 soap_in_ns1__listInvestigationTypesResponse(struct soap *soap, const char *tag, ns1__listInvestigationTypesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listInvestigationTypesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInvestigationTypesResponse, sizeof(ns1__listInvestigationTypesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listInvestigationTypesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listInvestigationTypesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listInvestigationTypesResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listInvestigationTypesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInvestigationTypesResponse, 0, sizeof(ns1__listInvestigationTypesResponse), 0, soap_copy_ns1__listInvestigationTypesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listInvestigationTypesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInvestigationTypesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listInvestigationTypesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listInvestigationTypesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listInvestigationTypesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypesResponse * SOAP_FMAC4 soap_get_ns1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listInvestigationTypesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listInvestigationTypesResponse * SOAP_FMAC2 soap_instantiate_ns1__listInvestigationTypesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInvestigationTypesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInvestigationTypesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse);
-		if (size)
-			*size = sizeof(ns1__listInvestigationTypesResponse);
-		((ns1__listInvestigationTypesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listInvestigationTypesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listInvestigationTypesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listInvestigationTypesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInvestigationTypesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInvestigationTypesResponse %p -> %p\n", q, p));
-	*(ns1__listInvestigationTypesResponse*)p = *(ns1__listInvestigationTypesResponse*)q;
-}
-
-void ns1__listInvestigationTypes::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listInvestigationTypes::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listInvestigationTypes::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listInvestigationTypes::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listInvestigationTypes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listInvestigationTypes(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInvestigationTypes(struct soap *soap, const char *tag, int id, const ns1__listInvestigationTypes *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInvestigationTypes), "ns1:listInvestigationTypes"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listInvestigationTypes::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listInvestigationTypes::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listInvestigationTypes(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypes * SOAP_FMAC4 soap_in_ns1__listInvestigationTypes(struct soap *soap, const char *tag, ns1__listInvestigationTypes *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listInvestigationTypes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInvestigationTypes, sizeof(ns1__listInvestigationTypes), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listInvestigationTypes)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listInvestigationTypes *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listInvestigationTypes::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listInvestigationTypes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInvestigationTypes, 0, sizeof(ns1__listInvestigationTypes), 0, soap_copy_ns1__listInvestigationTypes);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listInvestigationTypes::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInvestigationTypes);
-	if (this->soap_out(soap, tag?tag:"ns1:listInvestigationTypes", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listInvestigationTypes::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listInvestigationTypes(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypes * SOAP_FMAC4 soap_get_ns1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listInvestigationTypes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listInvestigationTypes * SOAP_FMAC2 soap_instantiate_ns1__listInvestigationTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInvestigationTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInvestigationTypes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes);
-		if (size)
-			*size = sizeof(ns1__listInvestigationTypes);
-		((ns1__listInvestigationTypes*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listInvestigationTypes);
-		for (int i = 0; i < n; i++)
-			((ns1__listInvestigationTypes*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listInvestigationTypes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInvestigationTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInvestigationTypes %p -> %p\n", q, p));
-	*(ns1__listInvestigationTypes*)p = *(ns1__listInvestigationTypes*)q;
-}
-
-void ns1__getKeywordsForUserTypeResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserTypeResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserTypeResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserTypeResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserTypeResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserTypeResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserTypeResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse), "ns1:getKeywordsForUserTypeResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserTypeResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserTypeResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserTypeResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserTypeResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserTypeResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, sizeof(ns1__getKeywordsForUserTypeResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserTypeResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserTypeResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserTypeResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserTypeResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, 0, sizeof(ns1__getKeywordsForUserTypeResponse), 0, soap_copy_ns1__getKeywordsForUserTypeResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserTypeResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserTypeResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserTypeResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserTypeResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserTypeResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserTypeResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserTypeResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserTypeResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserTypeResponse);
-		((ns1__getKeywordsForUserTypeResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserTypeResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserTypeResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserTypeResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserTypeResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserTypeResponse %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserTypeResponse*)p = *(ns1__getKeywordsForUserTypeResponse*)q;
-}
-
-void ns1__getKeywordsForUserType::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getKeywordsForUserType::sessionId = NULL;
-	this->ns1__getKeywordsForUserType::keywordType = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserType::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserType::sessionId);
-	soap_serialize_PointerTons1__keywordType(soap, &this->ns1__getKeywordsForUserType::keywordType);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserType::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserType(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserType(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserType *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserType), "ns1:getKeywordsForUserType"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUserType::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keywordType(soap, "keywordType", -1, &(a->ns1__getKeywordsForUserType::keywordType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserType::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserType(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserType * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserType(struct soap *soap, const char *tag, ns1__getKeywordsForUserType *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserType *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserType, sizeof(ns1__getKeywordsForUserType), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserType)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserType *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_keywordType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUserType::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_keywordType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keywordType(soap, "keywordType", &(a->ns1__getKeywordsForUserType::keywordType), "ns1:keywordType"))
-				{	soap_flag_keywordType1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserType, 0, sizeof(ns1__getKeywordsForUserType), 0, soap_copy_ns1__getKeywordsForUserType);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserType::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserType);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserType", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserType::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserType(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserType * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserType * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserType, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserType);
-		((ns1__getKeywordsForUserType*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserType);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserType*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserType*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserType %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserType*)p = *(ns1__getKeywordsForUserType*)q;
-}
-
-void ns1__getKeywordsForUserMaxResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserMaxResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserMaxResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserMaxResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserMaxResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserMaxResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserMaxResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse), "ns1:getKeywordsForUserMaxResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserMaxResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserMaxResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserMaxResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserMaxResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserMaxResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, sizeof(ns1__getKeywordsForUserMaxResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserMaxResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserMaxResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserMaxResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserMaxResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, 0, sizeof(ns1__getKeywordsForUserMaxResponse), 0, soap_copy_ns1__getKeywordsForUserMaxResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserMaxResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserMaxResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserMaxResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserMaxResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserMaxResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserMaxResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserMaxResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserMaxResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserMaxResponse);
-		((ns1__getKeywordsForUserMaxResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserMaxResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserMaxResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserMaxResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserMaxResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserMaxResponse %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserMaxResponse*)p = *(ns1__getKeywordsForUserMaxResponse*)q;
-}
-
-void ns1__getKeywordsForUserMax::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getKeywordsForUserMax::sessionId = NULL;
-	soap_default_int(soap, &this->ns1__getKeywordsForUserMax::numberReturned);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserMax::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserMax::sessionId);
-	soap_embedded(soap, &this->ns1__getKeywordsForUserMax::numberReturned, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserMax::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserMax(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserMax *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserMax), "ns1:getKeywordsForUserMax"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUserMax::sessionId), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberReturned", -1, &(a->ns1__getKeywordsForUserMax::numberReturned), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserMax::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserMax(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserMax *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserMax *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserMax, sizeof(ns1__getKeywordsForUserMax), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserMax)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserMax *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_numberReturned1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUserMax::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_numberReturned1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberReturned", &(a->ns1__getKeywordsForUserMax::numberReturned), "xsd:int"))
-				{	soap_flag_numberReturned1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserMax *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserMax, 0, sizeof(ns1__getKeywordsForUserMax), 0, soap_copy_ns1__getKeywordsForUserMax);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numberReturned1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserMax::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserMax);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserMax", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserMax::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserMax(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserMax(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserMax * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserMax, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserMax);
-		((ns1__getKeywordsForUserMax*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserMax);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserMax*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserMax*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserMax %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserMax*)p = *(ns1__getKeywordsForUserMax*)q;
-}
-
-void ns1__getKeywordsForUserStartWithMaxResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserStartWithMaxResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserStartWithMaxResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserStartWithMaxResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserStartWithMaxResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserStartWithMaxResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserStartWithMaxResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse), "ns1:getKeywordsForUserStartWithMaxResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserStartWithMaxResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserStartWithMaxResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMaxResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserStartWithMaxResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserStartWithMaxResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserStartWithMaxResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserStartWithMaxResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, 0, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), 0, soap_copy_ns1__getKeywordsForUserStartWithMaxResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserStartWithMaxResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserStartWithMaxResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserStartWithMaxResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserStartWithMaxResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserStartWithMaxResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
-		((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserStartWithMaxResponse %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserStartWithMaxResponse*)p = *(ns1__getKeywordsForUserStartWithMaxResponse*)q;
-}
-
-void ns1__getKeywordsForUserStartWithMax::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getKeywordsForUserStartWithMax::sessionId = NULL;
-	this->ns1__getKeywordsForUserStartWithMax::startKeyword = NULL;
-	soap_default_int(soap, &this->ns1__getKeywordsForUserStartWithMax::numberReturned);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserStartWithMax::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserStartWithMax::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserStartWithMax::startKeyword);
-	soap_embedded(soap, &this->ns1__getKeywordsForUserStartWithMax::numberReturned, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserStartWithMax::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserStartWithMax(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserStartWithMax *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax), "ns1:getKeywordsForUserStartWithMax"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUserStartWithMax::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "startKeyword", -1, &(a->ns1__getKeywordsForUserStartWithMax::startKeyword), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberReturned", -1, &(a->ns1__getKeywordsForUserStartWithMax::numberReturned), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserStartWithMax::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserStartWithMax(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMax *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserStartWithMax *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, sizeof(ns1__getKeywordsForUserStartWithMax), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserStartWithMax)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserStartWithMax *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_startKeyword1 = 1;
-	size_t soap_flag_numberReturned1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUserStartWithMax::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_startKeyword1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "startKeyword", &(a->ns1__getKeywordsForUserStartWithMax::startKeyword), "xsd:string"))
-				{	soap_flag_startKeyword1--;
-					continue;
-				}
-			if (soap_flag_numberReturned1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberReturned", &(a->ns1__getKeywordsForUserStartWithMax::numberReturned), "xsd:int"))
-				{	soap_flag_numberReturned1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserStartWithMax *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, 0, sizeof(ns1__getKeywordsForUserStartWithMax), 0, soap_copy_ns1__getKeywordsForUserStartWithMax);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numberReturned1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserStartWithMax::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserStartWithMax", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserStartWithMax::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserStartWithMax(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserStartWithMax(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserStartWithMax * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserStartWithMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserStartWithMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserStartWithMax);
-		((ns1__getKeywordsForUserStartWithMax*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserStartWithMax);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserStartWithMax*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserStartWithMax*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserStartWithMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserStartWithMax %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserStartWithMax*)p = *(ns1__getKeywordsForUserStartWithMax*)q;
-}
-
-void ns1__getKeywordsForUserResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUserResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUserResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUserResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserResponse), "ns1:getKeywordsForUserResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUserResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUserResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUserResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserResponse, sizeof(ns1__getKeywordsForUserResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUserResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUserResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserResponse, 0, sizeof(ns1__getKeywordsForUserResponse), 0, soap_copy_ns1__getKeywordsForUserResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUserResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUserResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUserResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUserResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUserResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUserResponse);
-		((ns1__getKeywordsForUserResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUserResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUserResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUserResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserResponse %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUserResponse*)p = *(ns1__getKeywordsForUserResponse*)q;
-}
-
-void ns1__getKeywordsForUser::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getKeywordsForUser::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getKeywordsForUser::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUser::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__getKeywordsForUser::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getKeywordsForUser(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUser(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUser *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUser), "ns1:getKeywordsForUser"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUser::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getKeywordsForUser::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getKeywordsForUser(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUser * SOAP_FMAC4 soap_in_ns1__getKeywordsForUser(struct soap *soap, const char *tag, ns1__getKeywordsForUser *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getKeywordsForUser *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUser, sizeof(ns1__getKeywordsForUser), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUser)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getKeywordsForUser *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUser::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getKeywordsForUser *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUser, 0, sizeof(ns1__getKeywordsForUser), 0, soap_copy_ns1__getKeywordsForUser);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getKeywordsForUser::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUser);
-	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUser", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getKeywordsForUser::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getKeywordsForUser(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUser * SOAP_FMAC4 soap_get_ns1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getKeywordsForUser(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getKeywordsForUser * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUser(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUser(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUser, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser);
-		if (size)
-			*size = sizeof(ns1__getKeywordsForUser);
-		((ns1__getKeywordsForUser*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getKeywordsForUser);
-		for (int i = 0; i < n; i++)
-			((ns1__getKeywordsForUser*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getKeywordsForUser*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUser(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUser %p -> %p\n", q, p));
-	*(ns1__getKeywordsForUser*)p = *(ns1__getKeywordsForUser*)q;
-}
-
-void ns1__downloadDatafileResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadDatafileResponse::URL = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadDatafileResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafileResponse::URL);
-	/* transient soap skipped */
-}
-
-int ns1__downloadDatafileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadDatafileResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafileResponse(struct soap *soap, const char *tag, int id, const ns1__downloadDatafileResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafileResponse), "ns1:downloadDatafileResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "URL", -1, &(a->ns1__downloadDatafileResponse::URL), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadDatafileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadDatafileResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafileResponse * SOAP_FMAC4 soap_in_ns1__downloadDatafileResponse(struct soap *soap, const char *tag, ns1__downloadDatafileResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadDatafileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafileResponse, sizeof(ns1__downloadDatafileResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafileResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadDatafileResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_URL1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "URL", &(a->ns1__downloadDatafileResponse::URL), "xsd:string"))
-				{	soap_flag_URL1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadDatafileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafileResponse, 0, sizeof(ns1__downloadDatafileResponse), 0, soap_copy_ns1__downloadDatafileResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadDatafileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafileResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafileResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadDatafileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadDatafileResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafileResponse * SOAP_FMAC4 soap_get_ns1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadDatafileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadDatafileResponse * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse);
-		if (size)
-			*size = sizeof(ns1__downloadDatafileResponse);
-		((ns1__downloadDatafileResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadDatafileResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadDatafileResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadDatafileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafileResponse %p -> %p\n", q, p));
-	*(ns1__downloadDatafileResponse*)p = *(ns1__downloadDatafileResponse*)q;
-}
-
-void ns1__downloadDatafile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadDatafile::sessionId = NULL;
-	this->ns1__downloadDatafile::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadDatafile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafile::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__downloadDatafile::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__downloadDatafile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadDatafile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafile(struct soap *soap, const char *tag, int id, const ns1__downloadDatafile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafile), "ns1:downloadDatafile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__downloadDatafile::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__downloadDatafile::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadDatafile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadDatafile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafile * SOAP_FMAC4 soap_in_ns1__downloadDatafile(struct soap *soap, const char *tag, ns1__downloadDatafile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadDatafile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafile, sizeof(ns1__downloadDatafile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadDatafile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__downloadDatafile::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__downloadDatafile::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadDatafile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafile, 0, sizeof(ns1__downloadDatafile), 0, soap_copy_ns1__downloadDatafile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadDatafile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafile);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadDatafile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadDatafile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafile * SOAP_FMAC4 soap_get_ns1__downloadDatafile(struct soap *soap, ns1__downloadDatafile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadDatafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadDatafile * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile);
-		if (size)
-			*size = sizeof(ns1__downloadDatafile);
-		((ns1__downloadDatafile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadDatafile);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadDatafile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadDatafile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafile %p -> %p\n", q, p));
-	*(ns1__downloadDatafile*)p = *(ns1__downloadDatafile*)q;
-}
-
-void ns1__searchDatasetsByParameterComparatorsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatasetsByParameterComparatorsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatasetsByParameterComparatorsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatasetsByParameterComparatorsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparatorsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse), "ns1:searchDatasetsByParameterComparatorsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__searchDatasetsByParameterComparatorsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatasetsByParameterComparatorsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatasetsByParameterComparatorsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatasetsByParameterComparatorsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__searchDatasetsByParameterComparatorsResponse::return_), "ns1:dataset"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatasetsByParameterComparatorsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, 0, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), 0, soap_copy_ns1__searchDatasetsByParameterComparatorsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatasetsByParameterComparatorsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatasetsByParameterComparatorsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatasetsByParameterComparatorsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatasetsByParameterComparatorsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse);
-		if (size)
-			*size = sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
-		((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparatorsResponse %p -> %p\n", q, p));
-	*(ns1__searchDatasetsByParameterComparatorsResponse*)p = *(ns1__searchDatasetsByParameterComparatorsResponse*)q;
-}
-
-void ns1__searchDatasetsByParameterComparators::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchDatasetsByParameterComparators::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatasetsByParameterComparators::comparators);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatasetsByParameterComparators::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatasetsByParameterComparators::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatasetsByParameterComparators::comparators);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatasetsByParameterComparators::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatasetsByParameterComparators(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparators *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators), "ns1:searchDatasetsByParameterComparators"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatasetsByParameterComparators::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", -1, &(a->ns1__searchDatasetsByParameterComparators::comparators), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatasetsByParameterComparators::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatasetsByParameterComparators(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparators *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatasetsByParameterComparators *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, sizeof(ns1__searchDatasetsByParameterComparators), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparators)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatasetsByParameterComparators *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatasetsByParameterComparators::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", &(a->ns1__searchDatasetsByParameterComparators::comparators), "ns1:parameterComparisonCondition"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatasetsByParameterComparators *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, 0, sizeof(ns1__searchDatasetsByParameterComparators), 0, soap_copy_ns1__searchDatasetsByParameterComparators);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatasetsByParameterComparators::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparators);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparators", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatasetsByParameterComparators::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatasetsByParameterComparators(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatasetsByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatasetsByParameterComparators * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators);
-		if (size)
-			*size = sizeof(ns1__searchDatasetsByParameterComparators);
-		((ns1__searchDatasetsByParameterComparators*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatasetsByParameterComparators);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatasetsByParameterComparators*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatasetsByParameterComparators*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparators %p -> %p\n", q, p));
-	*(ns1__searchDatasetsByParameterComparators*)p = *(ns1__searchDatasetsByParameterComparators*)q;
-}
-
-void ns1__setDataSetSampleResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__setDataSetSampleResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__setDataSetSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__setDataSetSampleResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, int id, const ns1__setDataSetSampleResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:setDataSetSampleResponse");
-}
-
-void *ns1__setDataSetSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__setDataSetSampleResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_in_ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, ns1__setDataSetSampleResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__setDataSetSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__setDataSetSampleResponse, sizeof(ns1__setDataSetSampleResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__setDataSetSampleResponse)
-			return (ns1__setDataSetSampleResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__setDataSetSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__setDataSetSampleResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:setDataSetSampleResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__setDataSetSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__setDataSetSampleResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_get_ns1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__setDataSetSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__setDataSetSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__setDataSetSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__setDataSetSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__setDataSetSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse);
-		if (size)
-			*size = sizeof(ns1__setDataSetSampleResponse);
-		((ns1__setDataSetSampleResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__setDataSetSampleResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__setDataSetSampleResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__setDataSetSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__setDataSetSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__setDataSetSampleResponse %p -> %p\n", q, p));
-	*(ns1__setDataSetSampleResponse*)p = *(ns1__setDataSetSampleResponse*)q;
-}
-
-void ns1__setDataSetSample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__setDataSetSample::sessionId = NULL;
-	this->ns1__setDataSetSample::sampleId = NULL;
-	this->ns1__setDataSetSample::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__setDataSetSample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__setDataSetSample::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__setDataSetSample::sampleId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__setDataSetSample::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__setDataSetSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__setDataSetSample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__setDataSetSample(struct soap *soap, const char *tag, int id, const ns1__setDataSetSample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__setDataSetSample), "ns1:setDataSetSample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__setDataSetSample::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__setDataSetSample::sampleId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__setDataSetSample::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__setDataSetSample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__setDataSetSample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__setDataSetSample * SOAP_FMAC4 soap_in_ns1__setDataSetSample(struct soap *soap, const char *tag, ns1__setDataSetSample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__setDataSetSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__setDataSetSample, sizeof(ns1__setDataSetSample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__setDataSetSample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__setDataSetSample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleId1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__setDataSetSample::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__setDataSetSample::sampleId), "xsd:long"))
-				{	soap_flag_sampleId1--;
-					continue;
-				}
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__setDataSetSample::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__setDataSetSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__setDataSetSample, 0, sizeof(ns1__setDataSetSample), 0, soap_copy_ns1__setDataSetSample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__setDataSetSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__setDataSetSample);
-	if (this->soap_out(soap, tag?tag:"ns1:setDataSetSample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__setDataSetSample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__setDataSetSample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__setDataSetSample * SOAP_FMAC4 soap_get_ns1__setDataSetSample(struct soap *soap, ns1__setDataSetSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__setDataSetSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__setDataSetSample * SOAP_FMAC2 soap_instantiate_ns1__setDataSetSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__setDataSetSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__setDataSetSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample);
-		if (size)
-			*size = sizeof(ns1__setDataSetSample);
-		((ns1__setDataSetSample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__setDataSetSample);
-		for (int i = 0; i < n; i++)
-			((ns1__setDataSetSample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__setDataSetSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__setDataSetSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__setDataSetSample %p -> %p\n", q, p));
-	*(ns1__setDataSetSample*)p = *(ns1__setDataSetSample*)q;
-}
-
-void ns1__deleteDataSetParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataSetParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataSetParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataSetParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataSetParameterResponse");
-}
-
-void *ns1__deleteDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataSetParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataSetParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSetParameterResponse, sizeof(ns1__deleteDataSetParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSetParameterResponse)
-			return (ns1__deleteDataSetParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSetParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSetParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataSetParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse);
-		if (size)
-			*size = sizeof(ns1__deleteDataSetParameterResponse);
-		((ns1__deleteDataSetParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataSetParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSetParameterResponse %p -> %p\n", q, p));
-	*(ns1__deleteDataSetParameterResponse*)p = *(ns1__deleteDataSetParameterResponse*)q;
-}
-
-void ns1__deleteDataSetParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteDataSetParameter::sessionId = NULL;
-	this->ns1__deleteDataSetParameter::datasetParameterPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataSetParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataSetParameter::sessionId);
-	soap_serialize_PointerTons1__datasetParameterPK(soap, &this->ns1__deleteDataSetParameter::datasetParameterPK);
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataSetParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__deleteDataSetParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataSetParameter), "ns1:deleteDataSetParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataSetParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", -1, &(a->ns1__deleteDataSetParameter::datasetParameterPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataSetParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameter * SOAP_FMAC4 soap_in_ns1__deleteDataSetParameter(struct soap *soap, const char *tag, ns1__deleteDataSetParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSetParameter, sizeof(ns1__deleteDataSetParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSetParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteDataSetParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetParameterPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataSetParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datasetParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", &(a->ns1__deleteDataSetParameter::datasetParameterPK), "ns1:datasetParameterPK"))
-				{	soap_flag_datasetParameterPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataSetParameter, 0, sizeof(ns1__deleteDataSetParameter), 0, soap_copy_ns1__deleteDataSetParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSetParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSetParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataSetParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameter * SOAP_FMAC4 soap_get_ns1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter);
-		if (size)
-			*size = sizeof(ns1__deleteDataSetParameter);
-		((ns1__deleteDataSetParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataSetParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataSetParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSetParameter %p -> %p\n", q, p));
-	*(ns1__deleteDataSetParameter*)p = *(ns1__deleteDataSetParameter*)q;
-}
-
-void ns1__removeSampleParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeSampleParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeSampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeSampleParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__removeSampleParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeSampleParameterResponse");
-}
-
-void *ns1__removeSampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeSampleParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_in_ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, ns1__removeSampleParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeSampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSampleParameterResponse, sizeof(ns1__removeSampleParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeSampleParameterResponse)
-			return (ns1__removeSampleParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeSampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSampleParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeSampleParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeSampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeSampleParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_get_ns1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeSampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__removeSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse);
-		if (size)
-			*size = sizeof(ns1__removeSampleParameterResponse);
-		((ns1__removeSampleParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeSampleParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeSampleParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeSampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSampleParameterResponse %p -> %p\n", q, p));
-	*(ns1__removeSampleParameterResponse*)p = *(ns1__removeSampleParameterResponse*)q;
-}
-
-void ns1__removeSampleParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeSampleParameter::sessionId = NULL;
-	this->ns1__removeSampleParameter::sampleParameterPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeSampleParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeSampleParameter::sessionId);
-	soap_serialize_PointerTons1__sampleParameterPK(soap, &this->ns1__removeSampleParameter::sampleParameterPK);
-	/* transient soap skipped */
-}
-
-int ns1__removeSampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeSampleParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSampleParameter(struct soap *soap, const char *tag, int id, const ns1__removeSampleParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeSampleParameter), "ns1:removeSampleParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeSampleParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", -1, &(a->ns1__removeSampleParameter::sampleParameterPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeSampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeSampleParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameter * SOAP_FMAC4 soap_in_ns1__removeSampleParameter(struct soap *soap, const char *tag, ns1__removeSampleParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeSampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSampleParameter, sizeof(ns1__removeSampleParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeSampleParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeSampleParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleParameterPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeSampleParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", &(a->ns1__removeSampleParameter::sampleParameterPK), "ns1:sampleParameterPK"))
-				{	soap_flag_sampleParameterPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeSampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeSampleParameter, 0, sizeof(ns1__removeSampleParameter), 0, soap_copy_ns1__removeSampleParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeSampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSampleParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:removeSampleParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeSampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeSampleParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameter * SOAP_FMAC4 soap_get_ns1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeSampleParameter * SOAP_FMAC2 soap_instantiate_ns1__removeSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter);
-		if (size)
-			*size = sizeof(ns1__removeSampleParameter);
-		((ns1__removeSampleParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeSampleParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__removeSampleParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeSampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSampleParameter %p -> %p\n", q, p));
-	*(ns1__removeSampleParameter*)p = *(ns1__removeSampleParameter*)q;
-}
-
-void ns1__searchDatasetsByParameterComparatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatasetsByParameterComparatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatasetsByParameterComparatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatasetsByParameterComparatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparatorResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse), "ns1:searchDatasetsByParameterComparatorResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__searchDatasetsByParameterComparatorResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatasetsByParameterComparatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatasetsByParameterComparatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, sizeof(ns1__searchDatasetsByParameterComparatorResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatasetsByParameterComparatorResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__searchDatasetsByParameterComparatorResponse::return_), "ns1:dataset"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatasetsByParameterComparatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, 0, sizeof(ns1__searchDatasetsByParameterComparatorResponse), 0, soap_copy_ns1__searchDatasetsByParameterComparatorResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatasetsByParameterComparatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatasetsByParameterComparatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatasetsByParameterComparatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatasetsByParameterComparatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse);
-		if (size)
-			*size = sizeof(ns1__searchDatasetsByParameterComparatorResponse);
-		((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatasetsByParameterComparatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparatorResponse %p -> %p\n", q, p));
-	*(ns1__searchDatasetsByParameterComparatorResponse*)p = *(ns1__searchDatasetsByParameterComparatorResponse*)q;
-}
-
-void ns1__searchDatasetsByParameterComparator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchDatasetsByParameterComparator::sessionId = NULL;
-	this->ns1__searchDatasetsByParameterComparator::comparator = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatasetsByParameterComparator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatasetsByParameterComparator::sessionId);
-	soap_serialize_PointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatasetsByParameterComparator::comparator);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatasetsByParameterComparator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatasetsByParameterComparator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator), "ns1:searchDatasetsByParameterComparator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatasetsByParameterComparator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterComparisonCondition(soap, "comparator", -1, &(a->ns1__searchDatasetsByParameterComparator::comparator), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatasetsByParameterComparator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatasetsByParameterComparator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatasetsByParameterComparator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, sizeof(ns1__searchDatasetsByParameterComparator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatasetsByParameterComparator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_comparator1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatasetsByParameterComparator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterComparisonCondition(soap, "comparator", &(a->ns1__searchDatasetsByParameterComparator::comparator), "ns1:parameterComparisonCondition"))
-				{	soap_flag_comparator1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatasetsByParameterComparator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, 0, sizeof(ns1__searchDatasetsByParameterComparator), 0, soap_copy_ns1__searchDatasetsByParameterComparator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatasetsByParameterComparator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparator);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatasetsByParameterComparator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatasetsByParameterComparator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatasetsByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatasetsByParameterComparator * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator);
-		if (size)
-			*size = sizeof(ns1__searchDatasetsByParameterComparator);
-		((ns1__searchDatasetsByParameterComparator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatasetsByParameterComparator);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatasetsByParameterComparator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatasetsByParameterComparator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparator %p -> %p\n", q, p));
-	*(ns1__searchDatasetsByParameterComparator*)p = *(ns1__searchDatasetsByParameterComparator*)q;
-}
-
-void ns1__createDataSetResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createDataSetResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataSetResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__dataset(soap, &this->ns1__createDataSetResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__createDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataSetResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__createDataSetResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSetResponse), "ns1:createDataSetResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__dataset(soap, "return", -1, &(a->ns1__createDataSetResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataSetResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataSetResponse * SOAP_FMAC4 soap_in_ns1__createDataSetResponse(struct soap *soap, const char *tag, ns1__createDataSetResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSetResponse, sizeof(ns1__createDataSetResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataSetResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataSetResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__dataset(soap, "return", &(a->ns1__createDataSetResponse::return_), "ns1:dataset"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataSetResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSetResponse, 0, sizeof(ns1__createDataSetResponse), 0, soap_copy_ns1__createDataSetResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSetResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataSetResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataSetResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataSetResponse * SOAP_FMAC4 soap_get_ns1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse);
-		if (size)
-			*size = sizeof(ns1__createDataSetResponse);
-		((ns1__createDataSetResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataSetResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataSetResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSetResponse %p -> %p\n", q, p));
-	*(ns1__createDataSetResponse*)p = *(ns1__createDataSetResponse*)q;
-}
-
-void ns1__createDataSet::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createDataSet::sessionId = NULL;
-	this->ns1__createDataSet::dataSet = NULL;
-	this->ns1__createDataSet::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataSet::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataSet::sessionId);
-	soap_serialize_PointerTons1__dataset(soap, &this->ns1__createDataSet::dataSet);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataSet::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__createDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataSet(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSet(struct soap *soap, const char *tag, int id, const ns1__createDataSet *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSet), "ns1:createDataSet"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataSet::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__dataset(soap, "dataSet", -1, &(a->ns1__createDataSet::dataSet), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__createDataSet::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataSet(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataSet * SOAP_FMAC4 soap_in_ns1__createDataSet(struct soap *soap, const char *tag, ns1__createDataSet *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSet, sizeof(ns1__createDataSet), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataSet)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataSet *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataSet1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataSet::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataSet1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__dataset(soap, "dataSet", &(a->ns1__createDataSet::dataSet), "ns1:dataset"))
-				{	soap_flag_dataSet1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__createDataSet::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSet, 0, sizeof(ns1__createDataSet), 0, soap_copy_ns1__createDataSet);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSet);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataSet", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataSet(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataSet * SOAP_FMAC4 soap_get_ns1__createDataSet(struct soap *soap, ns1__createDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataSet * SOAP_FMAC2 soap_instantiate_ns1__createDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet);
-		if (size)
-			*size = sizeof(ns1__createDataSet);
-		((ns1__createDataSet*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataSet);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataSet*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSet %p -> %p\n", q, p));
-	*(ns1__createDataSet*)p = *(ns1__createDataSet*)q;
-}
-
-void ns1__addInvestigatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addInvestigatorResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addInvestigatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__investigator(soap, &this->ns1__addInvestigatorResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addInvestigatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__addInvestigatorResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addInvestigatorResponse), "ns1:addInvestigatorResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__investigator(soap, "return", -1, &(a->ns1__addInvestigatorResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addInvestigatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__addInvestigatorResponse(struct soap *soap, const char *tag, ns1__addInvestigatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addInvestigatorResponse, sizeof(ns1__addInvestigatorResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addInvestigatorResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addInvestigatorResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigator(soap, "return", &(a->ns1__addInvestigatorResponse::return_), "ns1:investigator"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addInvestigatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addInvestigatorResponse, 0, sizeof(ns1__addInvestigatorResponse), 0, soap_copy_ns1__addInvestigatorResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addInvestigatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addInvestigatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addInvestigatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__addInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse);
-		if (size)
-			*size = sizeof(ns1__addInvestigatorResponse);
-		((ns1__addInvestigatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addInvestigatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addInvestigatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addInvestigatorResponse %p -> %p\n", q, p));
-	*(ns1__addInvestigatorResponse*)p = *(ns1__addInvestigatorResponse*)q;
-}
-
-void ns1__addInvestigator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addInvestigator::sessionId = NULL;
-	this->ns1__addInvestigator::investigator = NULL;
-	this->ns1__addInvestigator::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addInvestigator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addInvestigator::sessionId);
-	soap_serialize_PointerTons1__investigator(soap, &this->ns1__addInvestigator::investigator);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addInvestigator::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__addInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addInvestigator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addInvestigator(struct soap *soap, const char *tag, int id, const ns1__addInvestigator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addInvestigator), "ns1:addInvestigator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addInvestigator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigator(soap, "investigator", -1, &(a->ns1__addInvestigator::investigator), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addInvestigator::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addInvestigator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addInvestigator * SOAP_FMAC4 soap_in_ns1__addInvestigator(struct soap *soap, const char *tag, ns1__addInvestigator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addInvestigator, sizeof(ns1__addInvestigator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addInvestigator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addInvestigator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigator1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addInvestigator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigator1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigator(soap, "investigator", &(a->ns1__addInvestigator::investigator), "ns1:investigator"))
-				{	soap_flag_investigator1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addInvestigator::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addInvestigator, 0, sizeof(ns1__addInvestigator), 0, soap_copy_ns1__addInvestigator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addInvestigator);
-	if (this->soap_out(soap, tag?tag:"ns1:addInvestigator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addInvestigator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addInvestigator * SOAP_FMAC4 soap_get_ns1__addInvestigator(struct soap *soap, ns1__addInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addInvestigator * SOAP_FMAC2 soap_instantiate_ns1__addInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator);
-		if (size)
-			*size = sizeof(ns1__addInvestigator);
-		((ns1__addInvestigator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addInvestigator);
-		for (int i = 0; i < n; i++)
-			((ns1__addInvestigator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addInvestigator %p -> %p\n", q, p));
-	*(ns1__addInvestigator*)p = *(ns1__addInvestigator*)q;
-}
-
-void ns1__deleteInvestigatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteInvestigatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteInvestigatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigatorResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteInvestigatorResponse");
-}
-
-void *ns1__deleteInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteInvestigatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, ns1__deleteInvestigatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigatorResponse, sizeof(ns1__deleteInvestigatorResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigatorResponse)
-			return (ns1__deleteInvestigatorResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteInvestigatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse);
-		if (size)
-			*size = sizeof(ns1__deleteInvestigatorResponse);
-		((ns1__deleteInvestigatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteInvestigatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteInvestigatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigatorResponse %p -> %p\n", q, p));
-	*(ns1__deleteInvestigatorResponse*)p = *(ns1__deleteInvestigatorResponse*)q;
-}
-
-void ns1__deleteInvestigator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteInvestigator::sessionId = NULL;
-	this->ns1__deleteInvestigator::investigatorPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteInvestigator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteInvestigator::sessionId);
-	soap_serialize_PointerTons1__investigatorPK(soap, &this->ns1__deleteInvestigator::investigatorPK);
-	/* transient soap skipped */
-}
-
-int ns1__deleteInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteInvestigator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigator(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteInvestigator), "ns1:deleteInvestigator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteInvestigator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigatorPK(soap, "investigatorPK", -1, &(a->ns1__deleteInvestigator::investigatorPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteInvestigator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigator * SOAP_FMAC4 soap_in_ns1__deleteInvestigator(struct soap *soap, const char *tag, ns1__deleteInvestigator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigator, sizeof(ns1__deleteInvestigator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteInvestigator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigatorPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteInvestigator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigatorPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigatorPK(soap, "investigatorPK", &(a->ns1__deleteInvestigator::investigatorPK), "ns1:investigatorPK"))
-				{	soap_flag_investigatorPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteInvestigator, 0, sizeof(ns1__deleteInvestigator), 0, soap_copy_ns1__deleteInvestigator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigator);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteInvestigator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigator * SOAP_FMAC4 soap_get_ns1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteInvestigator * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator);
-		if (size)
-			*size = sizeof(ns1__deleteInvestigator);
-		((ns1__deleteInvestigator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteInvestigator);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteInvestigator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigator %p -> %p\n", q, p));
-	*(ns1__deleteInvestigator*)p = *(ns1__deleteInvestigator*)q;
-}
-
-void ns1__getICATAPIVersionResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getICATAPIVersionResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getICATAPIVersionResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getICATAPIVersionResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getICATAPIVersionResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getICATAPIVersionResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getICATAPIVersionResponse(struct soap *soap, const char *tag, int id, const ns1__getICATAPIVersionResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getICATAPIVersionResponse), "ns1:getICATAPIVersionResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "return", -1, &(a->ns1__getICATAPIVersionResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getICATAPIVersionResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getICATAPIVersionResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersionResponse * SOAP_FMAC4 soap_in_ns1__getICATAPIVersionResponse(struct soap *soap, const char *tag, ns1__getICATAPIVersionResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getICATAPIVersionResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getICATAPIVersionResponse, sizeof(ns1__getICATAPIVersionResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getICATAPIVersionResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getICATAPIVersionResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "return", &(a->ns1__getICATAPIVersionResponse::return_), "xsd:string"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getICATAPIVersionResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getICATAPIVersionResponse, 0, sizeof(ns1__getICATAPIVersionResponse), 0, soap_copy_ns1__getICATAPIVersionResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getICATAPIVersionResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getICATAPIVersionResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getICATAPIVersionResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getICATAPIVersionResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getICATAPIVersionResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersionResponse * SOAP_FMAC4 soap_get_ns1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getICATAPIVersionResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getICATAPIVersionResponse * SOAP_FMAC2 soap_instantiate_ns1__getICATAPIVersionResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getICATAPIVersionResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getICATAPIVersionResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse);
-		if (size)
-			*size = sizeof(ns1__getICATAPIVersionResponse);
-		((ns1__getICATAPIVersionResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getICATAPIVersionResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getICATAPIVersionResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getICATAPIVersionResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getICATAPIVersionResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getICATAPIVersionResponse %p -> %p\n", q, p));
-	*(ns1__getICATAPIVersionResponse*)p = *(ns1__getICATAPIVersionResponse*)q;
-}
-
-void ns1__getICATAPIVersion::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getICATAPIVersion::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getICATAPIVersion::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getICATAPIVersion::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__getICATAPIVersion::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getICATAPIVersion(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getICATAPIVersion(struct soap *soap, const char *tag, int id, const ns1__getICATAPIVersion *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getICATAPIVersion), "ns1:getICATAPIVersion"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getICATAPIVersion::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getICATAPIVersion::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getICATAPIVersion(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersion * SOAP_FMAC4 soap_in_ns1__getICATAPIVersion(struct soap *soap, const char *tag, ns1__getICATAPIVersion *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getICATAPIVersion *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getICATAPIVersion, sizeof(ns1__getICATAPIVersion), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getICATAPIVersion)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getICATAPIVersion *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getICATAPIVersion::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getICATAPIVersion *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getICATAPIVersion, 0, sizeof(ns1__getICATAPIVersion), 0, soap_copy_ns1__getICATAPIVersion);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getICATAPIVersion::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getICATAPIVersion);
-	if (this->soap_out(soap, tag?tag:"ns1:getICATAPIVersion", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getICATAPIVersion::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getICATAPIVersion(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersion * SOAP_FMAC4 soap_get_ns1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getICATAPIVersion(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getICATAPIVersion * SOAP_FMAC2 soap_instantiate_ns1__getICATAPIVersion(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getICATAPIVersion(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getICATAPIVersion, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion);
-		if (size)
-			*size = sizeof(ns1__getICATAPIVersion);
-		((ns1__getICATAPIVersion*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getICATAPIVersion);
-		for (int i = 0; i < n; i++)
-			((ns1__getICATAPIVersion*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getICATAPIVersion*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getICATAPIVersion(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getICATAPIVersion %p -> %p\n", q, p));
-	*(ns1__getICATAPIVersion*)p = *(ns1__getICATAPIVersion*)q;
-}
-
-void ns1__getDatafilesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__getDatafilesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatafilesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__getDatafilesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getDatafilesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatafilesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafilesResponse(struct soap *soap, const char *tag, int id, const ns1__getDatafilesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafilesResponse), "ns1:getDatafilesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__getDatafilesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatafilesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatafilesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatafilesResponse * SOAP_FMAC4 soap_in_ns1__getDatafilesResponse(struct soap *soap, const char *tag, ns1__getDatafilesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatafilesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafilesResponse, sizeof(ns1__getDatafilesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatafilesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatafilesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__getDatafilesResponse::return_), "ns1:datafile"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatafilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafilesResponse, 0, sizeof(ns1__getDatafilesResponse), 0, soap_copy_ns1__getDatafilesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatafilesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafilesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatafilesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatafilesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatafilesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatafilesResponse * SOAP_FMAC4 soap_get_ns1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatafilesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatafilesResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatafilesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafilesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafilesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse);
-		if (size)
-			*size = sizeof(ns1__getDatafilesResponse);
-		((ns1__getDatafilesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatafilesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatafilesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatafilesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafilesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafilesResponse %p -> %p\n", q, p));
-	*(ns1__getDatafilesResponse*)p = *(ns1__getDatafilesResponse*)q;
-}
-
-void ns1__getDatafiles::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getDatafiles::sessionId = NULL;
-	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatafiles::datafileIds);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getDatafiles::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatafiles::sessionId);
-	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatafiles::datafileIds);
-	/* transient soap skipped */
-}
-
-int ns1__getDatafiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getDatafiles(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafiles(struct soap *soap, const char *tag, int id, const ns1__getDatafiles *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafiles), "ns1:getDatafiles"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatafiles::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfLONG64(soap, "datafileIds", -1, &(a->ns1__getDatafiles::datafileIds), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getDatafiles::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getDatafiles(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getDatafiles * SOAP_FMAC4 soap_in_ns1__getDatafiles(struct soap *soap, const char *tag, ns1__getDatafiles *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getDatafiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafiles, sizeof(ns1__getDatafiles), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getDatafiles)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getDatafiles *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatafiles::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfLONG64(soap, "datafileIds", &(a->ns1__getDatafiles::datafileIds), "xsd:long"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getDatafiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafiles, 0, sizeof(ns1__getDatafiles), 0, soap_copy_ns1__getDatafiles);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getDatafiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafiles);
-	if (this->soap_out(soap, tag?tag:"ns1:getDatafiles", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getDatafiles::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getDatafiles(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getDatafiles * SOAP_FMAC4 soap_get_ns1__getDatafiles(struct soap *soap, ns1__getDatafiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getDatafiles * SOAP_FMAC2 soap_instantiate_ns1__getDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles);
-		if (size)
-			*size = sizeof(ns1__getDatafiles);
-		((ns1__getDatafiles*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getDatafiles);
-		for (int i = 0; i < n; i++)
-			((ns1__getDatafiles*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getDatafiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafiles %p -> %p\n", q, p));
-	*(ns1__getDatafiles*)p = *(ns1__getDatafiles*)q;
-}
-
-void ns1__searchByParameterOperatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterOperatorResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByParameterOperatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterOperatorResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByParameterOperatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByParameterOperatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchByParameterOperatorResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterOperatorResponse), "ns1:searchByParameterOperatorResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByParameterOperatorResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByParameterOperatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByParameterOperatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperatorResponse * SOAP_FMAC4 soap_in_ns1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterOperatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByParameterOperatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterOperatorResponse, sizeof(ns1__searchByParameterOperatorResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterOperatorResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByParameterOperatorResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByParameterOperatorResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByParameterOperatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterOperatorResponse, 0, sizeof(ns1__searchByParameterOperatorResponse), 0, soap_copy_ns1__searchByParameterOperatorResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByParameterOperatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterOperatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterOperatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByParameterOperatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByParameterOperatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperatorResponse * SOAP_FMAC4 soap_get_ns1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByParameterOperatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByParameterOperatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterOperatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterOperatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterOperatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse);
-		if (size)
-			*size = sizeof(ns1__searchByParameterOperatorResponse);
-		((ns1__searchByParameterOperatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByParameterOperatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByParameterOperatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByParameterOperatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterOperatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterOperatorResponse %p -> %p\n", q, p));
-	*(ns1__searchByParameterOperatorResponse*)p = *(ns1__searchByParameterOperatorResponse*)q;
-}
-
-void ns1__parameterLogicalCondition::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__parameterCondition(soap, &this->ns1__parameterLogicalCondition::listComparable);
-	this->ns1__parameterLogicalCondition::operator_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterLogicalCondition::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__parameterCondition(soap, &this->ns1__parameterLogicalCondition::listComparable);
-	soap_serialize_PointerTons1__logicalOperator(soap, &this->ns1__parameterLogicalCondition::operator_);
-	/* transient soap skipped */
-}
-
-int ns1__parameterLogicalCondition::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterLogicalCondition(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterLogicalCondition(struct soap *soap, const char *tag, int id, const ns1__parameterLogicalCondition *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterLogicalCondition), "ns1:parameterLogicalCondition"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__parameterCondition(soap, "listComparable", -1, &(a->ns1__parameterLogicalCondition::listComparable), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__logicalOperator(soap, "operator", -1, &(a->ns1__parameterLogicalCondition::operator_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__parameterLogicalCondition::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterLogicalCondition(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterLogicalCondition * SOAP_FMAC4 soap_in_ns1__parameterLogicalCondition(struct soap *soap, const char *tag, ns1__parameterLogicalCondition *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__parameterLogicalCondition *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterLogicalCondition)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__parameterLogicalCondition *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_operator_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__parameterCondition(soap, "listComparable", &(a->ns1__parameterLogicalCondition::listComparable), "ns1:parameterCondition"))
-					continue;
-			if (soap_flag_operator_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__logicalOperator(soap, "operator", &(a->ns1__parameterLogicalCondition::operator_), "ns1:logicalOperator"))
-				{	soap_flag_operator_1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__parameterLogicalCondition *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterLogicalCondition, 0, sizeof(ns1__parameterLogicalCondition), 0, soap_copy_ns1__parameterLogicalCondition);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__parameterLogicalCondition::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterLogicalCondition);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterLogicalCondition", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterLogicalCondition::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterLogicalCondition(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterLogicalCondition * SOAP_FMAC4 soap_get_ns1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterLogicalCondition(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterLogicalCondition * SOAP_FMAC2 soap_instantiate_ns1__parameterLogicalCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterLogicalCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterLogicalCondition, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition);
-		if (size)
-			*size = sizeof(ns1__parameterLogicalCondition);
-		((ns1__parameterLogicalCondition*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterLogicalCondition);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterLogicalCondition*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterLogicalCondition*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterLogicalCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterLogicalCondition %p -> %p\n", q, p));
-	*(ns1__parameterLogicalCondition*)p = *(ns1__parameterLogicalCondition*)q;
-}
-
-void ns1__searchByParameterOperator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByParameterOperator::sessionId = NULL;
-	this->ns1__searchByParameterOperator::operator_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByParameterOperator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByParameterOperator::sessionId);
-	soap_serialize_PointerTons1__parameterLogicalCondition(soap, &this->ns1__searchByParameterOperator::operator_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByParameterOperator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByParameterOperator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterOperator(struct soap *soap, const char *tag, int id, const ns1__searchByParameterOperator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterOperator), "ns1:searchByParameterOperator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByParameterOperator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterLogicalCondition(soap, "operator", -1, &(a->ns1__searchByParameterOperator::operator_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByParameterOperator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByParameterOperator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperator * SOAP_FMAC4 soap_in_ns1__searchByParameterOperator(struct soap *soap, const char *tag, ns1__searchByParameterOperator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByParameterOperator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterOperator, sizeof(ns1__searchByParameterOperator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterOperator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByParameterOperator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_operator_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByParameterOperator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_operator_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterLogicalCondition(soap, "operator", &(a->ns1__searchByParameterOperator::operator_), "ns1:parameterLogicalCondition"))
-				{	soap_flag_operator_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByParameterOperator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterOperator, 0, sizeof(ns1__searchByParameterOperator), 0, soap_copy_ns1__searchByParameterOperator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByParameterOperator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterOperator);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterOperator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByParameterOperator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByParameterOperator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperator * SOAP_FMAC4 soap_get_ns1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByParameterOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByParameterOperator * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterOperator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterOperator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterOperator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator);
-		if (size)
-			*size = sizeof(ns1__searchByParameterOperator);
-		((ns1__searchByParameterOperator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByParameterOperator);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByParameterOperator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByParameterOperator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterOperator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterOperator %p -> %p\n", q, p));
-	*(ns1__searchByParameterOperator*)p = *(ns1__searchByParameterOperator*)q;
-}
-
-void ns1__isSessionValidResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->ns1__isSessionValidResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__isSessionValidResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__isSessionValidResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__isSessionValidResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__isSessionValidResponse(struct soap *soap, const char *tag, int id, const ns1__isSessionValidResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__isSessionValidResponse), "ns1:isSessionValidResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "return", -1, &(a->ns1__isSessionValidResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__isSessionValidResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__isSessionValidResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__isSessionValidResponse * SOAP_FMAC4 soap_in_ns1__isSessionValidResponse(struct soap *soap, const char *tag, ns1__isSessionValidResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__isSessionValidResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__isSessionValidResponse, sizeof(ns1__isSessionValidResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__isSessionValidResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__isSessionValidResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "return", &(a->ns1__isSessionValidResponse::return_), "xsd:boolean"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__isSessionValidResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__isSessionValidResponse, 0, sizeof(ns1__isSessionValidResponse), 0, soap_copy_ns1__isSessionValidResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__isSessionValidResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__isSessionValidResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:isSessionValidResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__isSessionValidResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__isSessionValidResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__isSessionValidResponse * SOAP_FMAC4 soap_get_ns1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__isSessionValidResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__isSessionValidResponse * SOAP_FMAC2 soap_instantiate_ns1__isSessionValidResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__isSessionValidResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__isSessionValidResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse);
-		if (size)
-			*size = sizeof(ns1__isSessionValidResponse);
-		((ns1__isSessionValidResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__isSessionValidResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__isSessionValidResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__isSessionValidResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__isSessionValidResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__isSessionValidResponse %p -> %p\n", q, p));
-	*(ns1__isSessionValidResponse*)p = *(ns1__isSessionValidResponse*)q;
-}
-
-void ns1__isSessionValid::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__isSessionValid::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__isSessionValid::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__isSessionValid::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__isSessionValid::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__isSessionValid(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__isSessionValid(struct soap *soap, const char *tag, int id, const ns1__isSessionValid *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__isSessionValid), "ns1:isSessionValid"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__isSessionValid::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__isSessionValid::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__isSessionValid(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__isSessionValid * SOAP_FMAC4 soap_in_ns1__isSessionValid(struct soap *soap, const char *tag, ns1__isSessionValid *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__isSessionValid *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__isSessionValid, sizeof(ns1__isSessionValid), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__isSessionValid)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__isSessionValid *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__isSessionValid::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__isSessionValid *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__isSessionValid, 0, sizeof(ns1__isSessionValid), 0, soap_copy_ns1__isSessionValid);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__isSessionValid::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__isSessionValid);
-	if (this->soap_out(soap, tag?tag:"ns1:isSessionValid", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__isSessionValid::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__isSessionValid(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__isSessionValid * SOAP_FMAC4 soap_get_ns1__isSessionValid(struct soap *soap, ns1__isSessionValid *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__isSessionValid(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__isSessionValid * SOAP_FMAC2 soap_instantiate_ns1__isSessionValid(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__isSessionValid(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__isSessionValid, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid);
-		if (size)
-			*size = sizeof(ns1__isSessionValid);
-		((ns1__isSessionValid*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__isSessionValid);
-		for (int i = 0; i < n; i++)
-			((ns1__isSessionValid*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__isSessionValid*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__isSessionValid(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__isSessionValid %p -> %p\n", q, p));
-	*(ns1__isSessionValid*)p = *(ns1__isSessionValid*)q;
-}
-
-void ns1__deleteDataSetResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataSetResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataSetResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataSetResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataSetResponse");
-}
-
-void *ns1__deleteDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataSetResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetResponse * SOAP_FMAC4 soap_in_ns1__deleteDataSetResponse(struct soap *soap, const char *tag, ns1__deleteDataSetResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSetResponse, sizeof(ns1__deleteDataSetResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSetResponse)
-			return (ns1__deleteDataSetResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSetResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSetResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataSetResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetResponse * SOAP_FMAC4 soap_get_ns1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse);
-		if (size)
-			*size = sizeof(ns1__deleteDataSetResponse);
-		((ns1__deleteDataSetResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataSetResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataSetResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSetResponse %p -> %p\n", q, p));
-	*(ns1__deleteDataSetResponse*)p = *(ns1__deleteDataSetResponse*)q;
-}
-
-void ns1__deleteDataSet::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteDataSet::sessionId = NULL;
-	this->ns1__deleteDataSet::dataSetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataSet::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataSet::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteDataSet::dataSetId);
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataSet(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSet(struct soap *soap, const char *tag, int id, const ns1__deleteDataSet *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataSet), "ns1:deleteDataSet"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataSet::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "dataSetId", -1, &(a->ns1__deleteDataSet::dataSetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataSet(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSet * SOAP_FMAC4 soap_in_ns1__deleteDataSet(struct soap *soap, const char *tag, ns1__deleteDataSet *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSet, sizeof(ns1__deleteDataSet), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSet)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteDataSet *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataSetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataSet::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataSetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "dataSetId", &(a->ns1__deleteDataSet::dataSetId), "xsd:long"))
-				{	soap_flag_dataSetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataSet, 0, sizeof(ns1__deleteDataSet), 0, soap_copy_ns1__deleteDataSet);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSet);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSet", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataSet(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSet * SOAP_FMAC4 soap_get_ns1__deleteDataSet(struct soap *soap, ns1__deleteDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataSet * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet);
-		if (size)
-			*size = sizeof(ns1__deleteDataSet);
-		((ns1__deleteDataSet*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataSet);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataSet*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSet %p -> %p\n", q, p));
-	*(ns1__deleteDataSet*)p = *(ns1__deleteDataSet*)q;
-}
-
-void ns1__searchDatafilesByParameterComparatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatafilesByParameterComparatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatafilesByParameterComparatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatafilesByParameterComparatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparatorResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse), "ns1:searchDatafilesByParameterComparatorResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchDatafilesByParameterComparatorResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatafilesByParameterComparatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatafilesByParameterComparatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, sizeof(ns1__searchDatafilesByParameterComparatorResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatafilesByParameterComparatorResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchDatafilesByParameterComparatorResponse::return_), "ns1:datafile"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatafilesByParameterComparatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, 0, sizeof(ns1__searchDatafilesByParameterComparatorResponse), 0, soap_copy_ns1__searchDatafilesByParameterComparatorResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatafilesByParameterComparatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatafilesByParameterComparatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatafilesByParameterComparatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatafilesByParameterComparatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse);
-		if (size)
-			*size = sizeof(ns1__searchDatafilesByParameterComparatorResponse);
-		((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatafilesByParameterComparatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparatorResponse %p -> %p\n", q, p));
-	*(ns1__searchDatafilesByParameterComparatorResponse*)p = *(ns1__searchDatafilesByParameterComparatorResponse*)q;
-}
-
-void ns1__searchDatafilesByParameterComparator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchDatafilesByParameterComparator::sessionId = NULL;
-	this->ns1__searchDatafilesByParameterComparator::comparator = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatafilesByParameterComparator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatafilesByParameterComparator::sessionId);
-	soap_serialize_PointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatafilesByParameterComparator::comparator);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatafilesByParameterComparator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatafilesByParameterComparator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator), "ns1:searchDatafilesByParameterComparator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatafilesByParameterComparator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterComparisonCondition(soap, "comparator", -1, &(a->ns1__searchDatafilesByParameterComparator::comparator), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatafilesByParameterComparator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatafilesByParameterComparator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatafilesByParameterComparator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, sizeof(ns1__searchDatafilesByParameterComparator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatafilesByParameterComparator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_comparator1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatafilesByParameterComparator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterComparisonCondition(soap, "comparator", &(a->ns1__searchDatafilesByParameterComparator::comparator), "ns1:parameterComparisonCondition"))
-				{	soap_flag_comparator1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatafilesByParameterComparator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, 0, sizeof(ns1__searchDatafilesByParameterComparator), 0, soap_copy_ns1__searchDatafilesByParameterComparator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatafilesByParameterComparator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparator);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatafilesByParameterComparator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatafilesByParameterComparator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatafilesByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatafilesByParameterComparator * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator);
-		if (size)
-			*size = sizeof(ns1__searchDatafilesByParameterComparator);
-		((ns1__searchDatafilesByParameterComparator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatafilesByParameterComparator);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatafilesByParameterComparator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatafilesByParameterComparator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparator %p -> %p\n", q, p));
-	*(ns1__searchDatafilesByParameterComparator*)p = *(ns1__searchDatafilesByParameterComparator*)q;
-}
-
-void ns1__getInvestigationsIncludesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getInvestigationsIncludesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getInvestigationsIncludesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getInvestigationsIncludesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getInvestigationsIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getInvestigationsIncludesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getInvestigationsIncludesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse), "ns1:getInvestigationsIncludesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getInvestigationsIncludesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getInvestigationsIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getInvestigationsIncludesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludesResponse * SOAP_FMAC4 soap_in_ns1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationsIncludesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getInvestigationsIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, sizeof(ns1__getInvestigationsIncludesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationsIncludesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getInvestigationsIncludesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getInvestigationsIncludesResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getInvestigationsIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, 0, sizeof(ns1__getInvestigationsIncludesResponse), 0, soap_copy_ns1__getInvestigationsIncludesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getInvestigationsIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationsIncludesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationsIncludesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getInvestigationsIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getInvestigationsIncludesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludesResponse * SOAP_FMAC4 soap_get_ns1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getInvestigationsIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getInvestigationsIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationsIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationsIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse);
-		if (size)
-			*size = sizeof(ns1__getInvestigationsIncludesResponse);
-		((ns1__getInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getInvestigationsIncludesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getInvestigationsIncludesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationsIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationsIncludesResponse %p -> %p\n", q, p));
-	*(ns1__getInvestigationsIncludesResponse*)p = *(ns1__getInvestigationsIncludesResponse*)q;
-}
-
-void ns1__getInvestigationsIncludes::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getInvestigationsIncludes::userId = NULL;
-	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__getInvestigationsIncludes::investigationIds);
-	this->ns1__getInvestigationsIncludes::investigationInclude = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getInvestigationsIncludes::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getInvestigationsIncludes::userId);
-	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__getInvestigationsIncludes::investigationIds);
-	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getInvestigationsIncludes::investigationInclude);
-	/* transient soap skipped */
-}
-
-int ns1__getInvestigationsIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getInvestigationsIncludes(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, int id, const ns1__getInvestigationsIncludes *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationsIncludes), "ns1:getInvestigationsIncludes"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "userId", -1, &(a->ns1__getInvestigationsIncludes::userId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfLONG64(soap, "investigationIds", -1, &(a->ns1__getInvestigationsIncludes::investigationIds), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getInvestigationsIncludes::investigationInclude), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getInvestigationsIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getInvestigationsIncludes(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_in_ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getInvestigationsIncludes *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getInvestigationsIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationsIncludes, sizeof(ns1__getInvestigationsIncludes), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationsIncludes)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getInvestigationsIncludes *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_userId1 = 1;
-	size_t soap_flag_investigationInclude1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_userId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "userId", &(a->ns1__getInvestigationsIncludes::userId), "xsd:string"))
-				{	soap_flag_userId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfLONG64(soap, "investigationIds", &(a->ns1__getInvestigationsIncludes::investigationIds), "xsd:long"))
-					continue;
-			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getInvestigationsIncludes::investigationInclude), "ns1:investigationInclude"))
-				{	soap_flag_investigationInclude1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getInvestigationsIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationsIncludes, 0, sizeof(ns1__getInvestigationsIncludes), 0, soap_copy_ns1__getInvestigationsIncludes);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getInvestigationsIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationsIncludes);
-	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationsIncludes", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getInvestigationsIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getInvestigationsIncludes(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_get_ns1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getInvestigationsIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getInvestigationsIncludes * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationsIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes);
-		if (size)
-			*size = sizeof(ns1__getInvestigationsIncludes);
-		((ns1__getInvestigationsIncludes*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getInvestigationsIncludes);
-		for (int i = 0; i < n; i++)
-			((ns1__getInvestigationsIncludes*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getInvestigationsIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationsIncludes %p -> %p\n", q, p));
-	*(ns1__getInvestigationsIncludes*)p = *(ns1__getInvestigationsIncludes*)q;
-}
-
-void ns1__removeDataFileParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataFileParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataFileParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataFileParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataFileParameterResponse");
-}
-
-void *ns1__removeDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataFileParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, ns1__removeDataFileParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFileParameterResponse, sizeof(ns1__removeDataFileParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFileParameterResponse)
-			return (ns1__removeDataFileParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFileParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataFileParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataFileParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse);
-		if (size)
-			*size = sizeof(ns1__removeDataFileParameterResponse);
-		((ns1__removeDataFileParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataFileParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFileParameterResponse %p -> %p\n", q, p));
-	*(ns1__removeDataFileParameterResponse*)p = *(ns1__removeDataFileParameterResponse*)q;
-}
-
-void ns1__removeDataFileParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeDataFileParameter::sessionId = NULL;
-	this->ns1__removeDataFileParameter::datafileParameterPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataFileParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataFileParameter::sessionId);
-	soap_serialize_PointerTons1__datafileParameterPK(soap, &this->ns1__removeDataFileParameter::datafileParameterPK);
-	/* transient soap skipped */
-}
-
-int ns1__removeDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataFileParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__removeDataFileParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataFileParameter), "ns1:removeDataFileParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataFileParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", -1, &(a->ns1__removeDataFileParameter::datafileParameterPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataFileParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameter * SOAP_FMAC4 soap_in_ns1__removeDataFileParameter(struct soap *soap, const char *tag, ns1__removeDataFileParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFileParameter, sizeof(ns1__removeDataFileParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFileParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeDataFileParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileParameterPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataFileParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datafileParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", &(a->ns1__removeDataFileParameter::datafileParameterPK), "ns1:datafileParameterPK"))
-				{	soap_flag_datafileParameterPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataFileParameter, 0, sizeof(ns1__removeDataFileParameter), 0, soap_copy_ns1__removeDataFileParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFileParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataFileParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataFileParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameter * SOAP_FMAC4 soap_get_ns1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__removeDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter);
-		if (size)
-			*size = sizeof(ns1__removeDataFileParameter);
-		((ns1__removeDataFileParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataFileParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataFileParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFileParameter %p -> %p\n", q, p));
-	*(ns1__removeDataFileParameter*)p = *(ns1__removeDataFileParameter*)q;
-}
-
-void ns1__searchByUserIDPaginationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDPaginationResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserIDPaginationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDPaginationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserIDPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserIDPaginationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserIDPaginationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse), "ns1:searchByUserIDPaginationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserIDPaginationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserIDPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserIDPaginationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserIDPaginationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserIDPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, sizeof(ns1__searchByUserIDPaginationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserIDPaginationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserIDPaginationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserIDPaginationResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserIDPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, 0, sizeof(ns1__searchByUserIDPaginationResponse), 0, soap_copy_ns1__searchByUserIDPaginationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserIDPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserIDPaginationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserIDPaginationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserIDPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserIDPaginationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserIDPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserIDPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserIDPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserIDPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse);
-		if (size)
-			*size = sizeof(ns1__searchByUserIDPaginationResponse);
-		((ns1__searchByUserIDPaginationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserIDPaginationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserIDPaginationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserIDPaginationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserIDPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserIDPaginationResponse %p -> %p\n", q, p));
-	*(ns1__searchByUserIDPaginationResponse*)p = *(ns1__searchByUserIDPaginationResponse*)q;
-}
-
-void ns1__searchByUserIDPagination::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByUserIDPagination::sessionId = NULL;
-	this->ns1__searchByUserIDPagination::userSearch = NULL;
-	soap_default_int(soap, &this->ns1__searchByUserIDPagination::startIndex);
-	soap_default_int(soap, &this->ns1__searchByUserIDPagination::numberOfResults);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserIDPagination::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserIDPagination::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserIDPagination::userSearch);
-	soap_embedded(soap, &this->ns1__searchByUserIDPagination::startIndex, SOAP_TYPE_int);
-	soap_embedded(soap, &this->ns1__searchByUserIDPagination::numberOfResults, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserIDPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserIDPagination(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserIDPagination(struct soap *soap, const char *tag, int id, const ns1__searchByUserIDPagination *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserIDPagination), "ns1:searchByUserIDPagination"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserIDPagination::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "userSearch", -1, &(a->ns1__searchByUserIDPagination::userSearch), ""))
-		return soap->error;
-	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByUserIDPagination::startIndex), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByUserIDPagination::numberOfResults), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserIDPagination::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserIDPagination(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPagination * SOAP_FMAC4 soap_in_ns1__searchByUserIDPagination(struct soap *soap, const char *tag, ns1__searchByUserIDPagination *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserIDPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserIDPagination, sizeof(ns1__searchByUserIDPagination), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserIDPagination)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserIDPagination *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_userSearch1 = 1;
-	size_t soap_flag_startIndex1 = 1;
-	size_t soap_flag_numberOfResults1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserIDPagination::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_userSearch1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "userSearch", &(a->ns1__searchByUserIDPagination::userSearch), "xsd:string"))
-				{	soap_flag_userSearch1--;
-					continue;
-				}
-			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByUserIDPagination::startIndex), "xsd:int"))
-				{	soap_flag_startIndex1--;
-					continue;
-				}
-			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByUserIDPagination::numberOfResults), "xsd:int"))
-				{	soap_flag_numberOfResults1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserIDPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserIDPagination, 0, sizeof(ns1__searchByUserIDPagination), 0, soap_copy_ns1__searchByUserIDPagination);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserIDPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserIDPagination);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserIDPagination", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserIDPagination::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserIDPagination(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPagination * SOAP_FMAC4 soap_get_ns1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserIDPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserIDPagination * SOAP_FMAC2 soap_instantiate_ns1__searchByUserIDPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserIDPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserIDPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination);
-		if (size)
-			*size = sizeof(ns1__searchByUserIDPagination);
-		((ns1__searchByUserIDPagination*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserIDPagination);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserIDPagination*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserIDPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserIDPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserIDPagination %p -> %p\n", q, p));
-	*(ns1__searchByUserIDPagination*)p = *(ns1__searchByUserIDPagination*)q;
-}
-
-void ns1__searchByUserIDResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserIDResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserIDResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserIDResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserIDResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserIDResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserIDResponse), "ns1:searchByUserIDResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserIDResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserIDResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserIDResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDResponse * SOAP_FMAC4 soap_in_ns1__searchByUserIDResponse(struct soap *soap, const char *tag, ns1__searchByUserIDResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserIDResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserIDResponse, sizeof(ns1__searchByUserIDResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserIDResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserIDResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserIDResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserIDResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserIDResponse, 0, sizeof(ns1__searchByUserIDResponse), 0, soap_copy_ns1__searchByUserIDResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserIDResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserIDResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserIDResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserIDResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserIDResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDResponse * SOAP_FMAC4 soap_get_ns1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserIDResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserIDResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserIDResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserIDResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserIDResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse);
-		if (size)
-			*size = sizeof(ns1__searchByUserIDResponse);
-		((ns1__searchByUserIDResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserIDResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserIDResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserIDResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserIDResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserIDResponse %p -> %p\n", q, p));
-	*(ns1__searchByUserIDResponse*)p = *(ns1__searchByUserIDResponse*)q;
-}
-
-void ns1__searchByUserID::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByUserID::sessionId = NULL;
-	this->ns1__searchByUserID::userSearch = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserID::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserID::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserID::userSearch);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserID::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserID(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserID(struct soap *soap, const char *tag, int id, const ns1__searchByUserID *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserID), "ns1:searchByUserID"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserID::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "userSearch", -1, &(a->ns1__searchByUserID::userSearch), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserID::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserID(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserID * SOAP_FMAC4 soap_in_ns1__searchByUserID(struct soap *soap, const char *tag, ns1__searchByUserID *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserID *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserID, sizeof(ns1__searchByUserID), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserID)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserID *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_userSearch1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserID::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_userSearch1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "userSearch", &(a->ns1__searchByUserID::userSearch), "xsd:string"))
-				{	soap_flag_userSearch1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserID *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserID, 0, sizeof(ns1__searchByUserID), 0, soap_copy_ns1__searchByUserID);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserID::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserID);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserID", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserID::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserID(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserID * SOAP_FMAC4 soap_get_ns1__searchByUserID(struct soap *soap, ns1__searchByUserID *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserID(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserID * SOAP_FMAC2 soap_instantiate_ns1__searchByUserID(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserID(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserID, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID);
-		if (size)
-			*size = sizeof(ns1__searchByUserID);
-		((ns1__searchByUserID*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserID);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserID*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserID*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserID(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserID %p -> %p\n", q, p));
-	*(ns1__searchByUserID*)p = *(ns1__searchByUserID*)q;
-}
-
-void ns1__modifyPublicationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyPublicationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyPublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyPublicationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyPublicationResponse(struct soap *soap, const char *tag, int id, const ns1__modifyPublicationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyPublicationResponse");
-}
-
-void *ns1__modifyPublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyPublicationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyPublicationResponse * SOAP_FMAC4 soap_in_ns1__modifyPublicationResponse(struct soap *soap, const char *tag, ns1__modifyPublicationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyPublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyPublicationResponse, sizeof(ns1__modifyPublicationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyPublicationResponse)
-			return (ns1__modifyPublicationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyPublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyPublicationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyPublicationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyPublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyPublicationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyPublicationResponse * SOAP_FMAC4 soap_get_ns1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyPublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyPublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyPublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyPublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyPublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse);
-		if (size)
-			*size = sizeof(ns1__modifyPublicationResponse);
-		((ns1__modifyPublicationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyPublicationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyPublicationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyPublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyPublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyPublicationResponse %p -> %p\n", q, p));
-	*(ns1__modifyPublicationResponse*)p = *(ns1__modifyPublicationResponse*)q;
-}
-
-void ns1__modifyPublication::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyPublication::sessionId = NULL;
-	this->ns1__modifyPublication::publication = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyPublication::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyPublication::sessionId);
-	soap_serialize_PointerTons1__publication(soap, &this->ns1__modifyPublication::publication);
-	/* transient soap skipped */
-}
-
-int ns1__modifyPublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyPublication(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyPublication(struct soap *soap, const char *tag, int id, const ns1__modifyPublication *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyPublication), "ns1:modifyPublication"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyPublication::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__publication(soap, "publication", -1, &(a->ns1__modifyPublication::publication), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyPublication::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyPublication(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyPublication * SOAP_FMAC4 soap_in_ns1__modifyPublication(struct soap *soap, const char *tag, ns1__modifyPublication *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyPublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyPublication, sizeof(ns1__modifyPublication), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyPublication)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyPublication *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_publication1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyPublication::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_publication1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__publication(soap, "publication", &(a->ns1__modifyPublication::publication), "ns1:publication"))
-				{	soap_flag_publication1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyPublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyPublication, 0, sizeof(ns1__modifyPublication), 0, soap_copy_ns1__modifyPublication);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyPublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyPublication);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyPublication", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyPublication::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyPublication(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyPublication * SOAP_FMAC4 soap_get_ns1__modifyPublication(struct soap *soap, ns1__modifyPublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyPublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyPublication * SOAP_FMAC2 soap_instantiate_ns1__modifyPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyPublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication);
-		if (size)
-			*size = sizeof(ns1__modifyPublication);
-		((ns1__modifyPublication*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyPublication);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyPublication*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyPublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyPublication %p -> %p\n", q, p));
-	*(ns1__modifyPublication*)p = *(ns1__modifyPublication*)q;
-}
-
-void ns1__removeDataSetParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataSetParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataSetParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataSetParameterResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataSetParameterResponse");
-}
-
-void *ns1__removeDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataSetParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, ns1__removeDataSetParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSetParameterResponse, sizeof(ns1__removeDataSetParameterResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSetParameterResponse)
-			return (ns1__removeDataSetParameterResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSetParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataSetParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataSetParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse);
-		if (size)
-			*size = sizeof(ns1__removeDataSetParameterResponse);
-		((ns1__removeDataSetParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataSetParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSetParameterResponse %p -> %p\n", q, p));
-	*(ns1__removeDataSetParameterResponse*)p = *(ns1__removeDataSetParameterResponse*)q;
-}
-
-void ns1__removeDataSetParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeDataSetParameter::sessionId = NULL;
-	this->ns1__removeDataSetParameter::datasetParameterPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataSetParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataSetParameter::sessionId);
-	soap_serialize_PointerTons1__datasetParameterPK(soap, &this->ns1__removeDataSetParameter::datasetParameterPK);
-	/* transient soap skipped */
-}
-
-int ns1__removeDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataSetParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__removeDataSetParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataSetParameter), "ns1:removeDataSetParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataSetParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", -1, &(a->ns1__removeDataSetParameter::datasetParameterPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataSetParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameter * SOAP_FMAC4 soap_in_ns1__removeDataSetParameter(struct soap *soap, const char *tag, ns1__removeDataSetParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSetParameter, sizeof(ns1__removeDataSetParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSetParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeDataSetParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetParameterPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataSetParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datasetParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", &(a->ns1__removeDataSetParameter::datasetParameterPK), "ns1:datasetParameterPK"))
-				{	soap_flag_datasetParameterPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataSetParameter, 0, sizeof(ns1__removeDataSetParameter), 0, soap_copy_ns1__removeDataSetParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSetParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataSetParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataSetParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameter * SOAP_FMAC4 soap_get_ns1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__removeDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter);
-		if (size)
-			*size = sizeof(ns1__removeDataSetParameter);
-		((ns1__removeDataSetParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataSetParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataSetParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSetParameter %p -> %p\n", q, p));
-	*(ns1__removeDataSetParameter*)p = *(ns1__removeDataSetParameter*)q;
-}
-
-void ns1__getMyInvestigationsIncludesPaginationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesPaginationResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getMyInvestigationsIncludesPaginationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesPaginationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getMyInvestigationsIncludesPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getMyInvestigationsIncludesPaginationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludesPaginationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse), "ns1:getMyInvestigationsIncludesPaginationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getMyInvestigationsIncludesPaginationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getMyInvestigationsIncludesPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPaginationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getMyInvestigationsIncludesPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getMyInvestigationsIncludesPaginationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getMyInvestigationsIncludesPaginationResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getMyInvestigationsIncludesPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, 0, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), 0, soap_copy_ns1__getMyInvestigationsIncludesPaginationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getMyInvestigationsIncludesPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludesPaginationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getMyInvestigationsIncludesPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getMyInvestigationsIncludesPaginationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getMyInvestigationsIncludesPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse);
-		if (size)
-			*size = sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
-		((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludesPaginationResponse %p -> %p\n", q, p));
-	*(ns1__getMyInvestigationsIncludesPaginationResponse*)p = *(ns1__getMyInvestigationsIncludesPaginationResponse*)q;
-}
-
-void ns1__getMyInvestigationsIncludesPagination::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getMyInvestigationsIncludesPagination::sessionId = NULL;
-	this->ns1__getMyInvestigationsIncludesPagination::investigationInclude = NULL;
-	soap_default_int(soap, &this->ns1__getMyInvestigationsIncludesPagination::startIndex);
-	soap_default_int(soap, &this->ns1__getMyInvestigationsIncludesPagination::numberOfResults);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getMyInvestigationsIncludesPagination::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getMyInvestigationsIncludesPagination::sessionId);
-	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getMyInvestigationsIncludesPagination::investigationInclude);
-	soap_embedded(soap, &this->ns1__getMyInvestigationsIncludesPagination::startIndex, SOAP_TYPE_int);
-	soap_embedded(soap, &this->ns1__getMyInvestigationsIncludesPagination::numberOfResults, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__getMyInvestigationsIncludesPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getMyInvestigationsIncludesPagination(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludesPagination *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination), "ns1:getMyInvestigationsIncludesPagination"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getMyInvestigationsIncludesPagination::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getMyInvestigationsIncludesPagination::investigationInclude), ""))
-		return soap->error;
-	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__getMyInvestigationsIncludesPagination::startIndex), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__getMyInvestigationsIncludesPagination::numberOfResults), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getMyInvestigationsIncludesPagination::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getMyInvestigationsIncludesPagination(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPagination *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getMyInvestigationsIncludesPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, sizeof(ns1__getMyInvestigationsIncludesPagination), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getMyInvestigationsIncludesPagination *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationInclude1 = 1;
-	size_t soap_flag_startIndex1 = 1;
-	size_t soap_flag_numberOfResults1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getMyInvestigationsIncludesPagination::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getMyInvestigationsIncludesPagination::investigationInclude), "ns1:investigationInclude"))
-				{	soap_flag_investigationInclude1--;
-					continue;
-				}
-			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "startIndex", &(a->ns1__getMyInvestigationsIncludesPagination::startIndex), "xsd:int"))
-				{	soap_flag_startIndex1--;
-					continue;
-				}
-			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberOfResults", &(a->ns1__getMyInvestigationsIncludesPagination::numberOfResults), "xsd:int"))
-				{	soap_flag_numberOfResults1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getMyInvestigationsIncludesPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, 0, sizeof(ns1__getMyInvestigationsIncludesPagination), 0, soap_copy_ns1__getMyInvestigationsIncludesPagination);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__getMyInvestigationsIncludesPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination);
-	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludesPagination", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getMyInvestigationsIncludesPagination::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getMyInvestigationsIncludesPagination(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getMyInvestigationsIncludesPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludesPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination);
-		if (size)
-			*size = sizeof(ns1__getMyInvestigationsIncludesPagination);
-		((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getMyInvestigationsIncludesPagination);
-		for (int i = 0; i < n; i++)
-			((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getMyInvestigationsIncludesPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludesPagination %p -> %p\n", q, p));
-	*(ns1__getMyInvestigationsIncludesPagination*)p = *(ns1__getMyInvestigationsIncludesPagination*)q;
-}
-
-void ns1__getMyInvestigationsIncludesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getMyInvestigationsIncludesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getMyInvestigationsIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getMyInvestigationsIncludesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse), "ns1:getMyInvestigationsIncludesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getMyInvestigationsIncludesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getMyInvestigationsIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getMyInvestigationsIncludesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getMyInvestigationsIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, sizeof(ns1__getMyInvestigationsIncludesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getMyInvestigationsIncludesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getMyInvestigationsIncludesResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getMyInvestigationsIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, 0, sizeof(ns1__getMyInvestigationsIncludesResponse), 0, soap_copy_ns1__getMyInvestigationsIncludesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getMyInvestigationsIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getMyInvestigationsIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getMyInvestigationsIncludesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getMyInvestigationsIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getMyInvestigationsIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse);
-		if (size)
-			*size = sizeof(ns1__getMyInvestigationsIncludesResponse);
-		((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getMyInvestigationsIncludesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getMyInvestigationsIncludesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludesResponse %p -> %p\n", q, p));
-	*(ns1__getMyInvestigationsIncludesResponse*)p = *(ns1__getMyInvestigationsIncludesResponse*)q;
-}
-
-void ns1__getMyInvestigationsIncludes::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getMyInvestigationsIncludes::sessionId = NULL;
-	this->ns1__getMyInvestigationsIncludes::investigationInclude = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getMyInvestigationsIncludes::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getMyInvestigationsIncludes::sessionId);
-	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getMyInvestigationsIncludes::investigationInclude);
-	/* transient soap skipped */
-}
-
-int ns1__getMyInvestigationsIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getMyInvestigationsIncludes(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludes *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludes), "ns1:getMyInvestigationsIncludes"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getMyInvestigationsIncludes::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getMyInvestigationsIncludes::investigationInclude), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getMyInvestigationsIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getMyInvestigationsIncludes(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludes *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getMyInvestigationsIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludes, sizeof(ns1__getMyInvestigationsIncludes), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludes)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getMyInvestigationsIncludes *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationInclude1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getMyInvestigationsIncludes::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getMyInvestigationsIncludes::investigationInclude), "ns1:investigationInclude"))
-				{	soap_flag_investigationInclude1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getMyInvestigationsIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludes, 0, sizeof(ns1__getMyInvestigationsIncludes), 0, soap_copy_ns1__getMyInvestigationsIncludes);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getMyInvestigationsIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludes);
-	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludes", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getMyInvestigationsIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getMyInvestigationsIncludes(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getMyInvestigationsIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getMyInvestigationsIncludes * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes);
-		if (size)
-			*size = sizeof(ns1__getMyInvestigationsIncludes);
-		((ns1__getMyInvestigationsIncludes*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getMyInvestigationsIncludes);
-		for (int i = 0; i < n; i++)
-			((ns1__getMyInvestigationsIncludes*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getMyInvestigationsIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludes %p -> %p\n", q, p));
-	*(ns1__getMyInvestigationsIncludes*)p = *(ns1__getMyInvestigationsIncludes*)q;
-}
-
-void ns1__getMyInvestigationsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getMyInvestigationsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getMyInvestigationsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getMyInvestigationsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsResponse(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsResponse), "ns1:getMyInvestigationsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getMyInvestigationsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getMyInvestigationsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getMyInvestigationsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsResponse * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getMyInvestigationsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsResponse, sizeof(ns1__getMyInvestigationsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getMyInvestigationsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getMyInvestigationsResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getMyInvestigationsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsResponse, 0, sizeof(ns1__getMyInvestigationsResponse), 0, soap_copy_ns1__getMyInvestigationsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getMyInvestigationsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getMyInvestigationsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getMyInvestigationsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsResponse * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getMyInvestigationsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getMyInvestigationsResponse * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse);
-		if (size)
-			*size = sizeof(ns1__getMyInvestigationsResponse);
-		((ns1__getMyInvestigationsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getMyInvestigationsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getMyInvestigationsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getMyInvestigationsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsResponse %p -> %p\n", q, p));
-	*(ns1__getMyInvestigationsResponse*)p = *(ns1__getMyInvestigationsResponse*)q;
-}
-
-void ns1__getMyInvestigations::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getMyInvestigations::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getMyInvestigations::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getMyInvestigations::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__getMyInvestigations::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getMyInvestigations(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigations(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigations *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigations), "ns1:getMyInvestigations"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getMyInvestigations::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getMyInvestigations::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getMyInvestigations(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigations * SOAP_FMAC4 soap_in_ns1__getMyInvestigations(struct soap *soap, const char *tag, ns1__getMyInvestigations *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getMyInvestigations *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigations, sizeof(ns1__getMyInvestigations), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigations)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getMyInvestigations *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getMyInvestigations::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getMyInvestigations *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigations, 0, sizeof(ns1__getMyInvestigations), 0, soap_copy_ns1__getMyInvestigations);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getMyInvestigations::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigations);
-	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigations", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getMyInvestigations::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getMyInvestigations(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigations * SOAP_FMAC4 soap_get_ns1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getMyInvestigations(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getMyInvestigations * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigations, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations);
-		if (size)
-			*size = sizeof(ns1__getMyInvestigations);
-		((ns1__getMyInvestigations*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getMyInvestigations);
-		for (int i = 0; i < n; i++)
-			((ns1__getMyInvestigations*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getMyInvestigations*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigations %p -> %p\n", q, p));
-	*(ns1__getMyInvestigations*)p = *(ns1__getMyInvestigations*)q;
-}
-
-void ns1__searchByKeywordsAllResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsAllResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByKeywordsAllResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsAllResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByKeywordsAllResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByKeywordsAllResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, int id, const ns1__searchByKeywordsAllResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywordsAllResponse), "ns1:searchByKeywordsAllResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByKeywordsAllResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByKeywordsAllResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByKeywordsAllResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAllResponse * SOAP_FMAC4 soap_in_ns1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsAllResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByKeywordsAllResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywordsAllResponse, sizeof(ns1__searchByKeywordsAllResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywordsAllResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByKeywordsAllResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByKeywordsAllResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByKeywordsAllResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywordsAllResponse, 0, sizeof(ns1__searchByKeywordsAllResponse), 0, soap_copy_ns1__searchByKeywordsAllResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByKeywordsAllResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywordsAllResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywordsAllResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByKeywordsAllResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByKeywordsAllResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAllResponse * SOAP_FMAC4 soap_get_ns1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByKeywordsAllResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByKeywordsAllResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywordsAllResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywordsAllResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywordsAllResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse);
-		if (size)
-			*size = sizeof(ns1__searchByKeywordsAllResponse);
-		((ns1__searchByKeywordsAllResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByKeywordsAllResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByKeywordsAllResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByKeywordsAllResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywordsAllResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywordsAllResponse %p -> %p\n", q, p));
-	*(ns1__searchByKeywordsAllResponse*)p = *(ns1__searchByKeywordsAllResponse*)q;
-}
-
-void ns1__keywordDetails::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->ns1__keywordDetails::caseSensitive);
-	this->ns1__keywordDetails::investigationInclude = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__keywordDetails::keywords);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__keywordDetails::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__keywordDetails::investigationInclude);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__keywordDetails::keywords);
-	/* transient soap skipped */
-}
-
-int ns1__keywordDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__keywordDetails(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordDetails(struct soap *soap, const char *tag, int id, const ns1__keywordDetails *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keywordDetails), "ns1:keywordDetails"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "caseSensitive", -1, &(a->ns1__keywordDetails::caseSensitive), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__keywordDetails::investigationInclude), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "keywords", -1, &(a->ns1__keywordDetails::keywords), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__keywordDetails::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__keywordDetails(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__keywordDetails * SOAP_FMAC4 soap_in_ns1__keywordDetails(struct soap *soap, const char *tag, ns1__keywordDetails *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__keywordDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordDetails, sizeof(ns1__keywordDetails), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__keywordDetails)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__keywordDetails *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_caseSensitive1 = 1;
-	size_t soap_flag_investigationInclude1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_caseSensitive1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "caseSensitive", &(a->ns1__keywordDetails::caseSensitive), "xsd:boolean"))
-				{	soap_flag_caseSensitive1--;
-					continue;
-				}
-			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__keywordDetails::investigationInclude), "ns1:investigationInclude"))
-				{	soap_flag_investigationInclude1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "keywords", &(a->ns1__keywordDetails::keywords), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__keywordDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keywordDetails, 0, sizeof(ns1__keywordDetails), 0, soap_copy_ns1__keywordDetails);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_caseSensitive1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__keywordDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keywordDetails);
-	if (this->soap_out(soap, tag?tag:"ns1:keywordDetails", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__keywordDetails::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__keywordDetails(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__keywordDetails * SOAP_FMAC4 soap_get_ns1__keywordDetails(struct soap *soap, ns1__keywordDetails *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__keywordDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__keywordDetails * SOAP_FMAC2 soap_instantiate_ns1__keywordDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keywordDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keywordDetails, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails);
-		if (size)
-			*size = sizeof(ns1__keywordDetails);
-		((ns1__keywordDetails*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__keywordDetails);
-		for (int i = 0; i < n; i++)
-			((ns1__keywordDetails*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__keywordDetails*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keywordDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keywordDetails %p -> %p\n", q, p));
-	*(ns1__keywordDetails*)p = *(ns1__keywordDetails*)q;
-}
-
-void ns1__searchByKeywordsAll::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByKeywordsAll::sessionId = NULL;
-	this->ns1__searchByKeywordsAll::keywordDetails = NULL;
-	soap_default_int(soap, &this->ns1__searchByKeywordsAll::startIndex);
-	soap_default_int(soap, &this->ns1__searchByKeywordsAll::numberOfResults);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByKeywordsAll::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByKeywordsAll::sessionId);
-	soap_serialize_PointerTons1__keywordDetails(soap, &this->ns1__searchByKeywordsAll::keywordDetails);
-	soap_embedded(soap, &this->ns1__searchByKeywordsAll::startIndex, SOAP_TYPE_int);
-	soap_embedded(soap, &this->ns1__searchByKeywordsAll::numberOfResults, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__searchByKeywordsAll::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByKeywordsAll(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywordsAll(struct soap *soap, const char *tag, int id, const ns1__searchByKeywordsAll *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywordsAll), "ns1:searchByKeywordsAll"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByKeywordsAll::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keywordDetails(soap, "keywordDetails", -1, &(a->ns1__searchByKeywordsAll::keywordDetails), ""))
-		return soap->error;
-	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByKeywordsAll::startIndex), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByKeywordsAll::numberOfResults), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByKeywordsAll::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByKeywordsAll(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAll * SOAP_FMAC4 soap_in_ns1__searchByKeywordsAll(struct soap *soap, const char *tag, ns1__searchByKeywordsAll *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByKeywordsAll *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywordsAll, sizeof(ns1__searchByKeywordsAll), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywordsAll)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByKeywordsAll *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_keywordDetails1 = 1;
-	size_t soap_flag_startIndex1 = 1;
-	size_t soap_flag_numberOfResults1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByKeywordsAll::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_keywordDetails1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keywordDetails(soap, "keywordDetails", &(a->ns1__searchByKeywordsAll::keywordDetails), "ns1:keywordDetails"))
-				{	soap_flag_keywordDetails1--;
-					continue;
-				}
-			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByKeywordsAll::startIndex), "xsd:int"))
-				{	soap_flag_startIndex1--;
-					continue;
-				}
-			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByKeywordsAll::numberOfResults), "xsd:int"))
-				{	soap_flag_numberOfResults1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByKeywordsAll *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywordsAll, 0, sizeof(ns1__searchByKeywordsAll), 0, soap_copy_ns1__searchByKeywordsAll);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByKeywordsAll::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywordsAll);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywordsAll", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByKeywordsAll::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByKeywordsAll(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAll * SOAP_FMAC4 soap_get_ns1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByKeywordsAll(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByKeywordsAll * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywordsAll(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywordsAll(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywordsAll, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll);
-		if (size)
-			*size = sizeof(ns1__searchByKeywordsAll);
-		((ns1__searchByKeywordsAll*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByKeywordsAll);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByKeywordsAll*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByKeywordsAll*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywordsAll(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywordsAll %p -> %p\n", q, p));
-	*(ns1__searchByKeywordsAll*)p = *(ns1__searchByKeywordsAll*)q;
-}
-
-void ns1__searchByKeywordsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByKeywordsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByKeywordsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByKeywordsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywordsResponse(struct soap *soap, const char *tag, int id, const ns1__searchByKeywordsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywordsResponse), "ns1:searchByKeywordsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByKeywordsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByKeywordsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByKeywordsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsResponse * SOAP_FMAC4 soap_in_ns1__searchByKeywordsResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByKeywordsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywordsResponse, sizeof(ns1__searchByKeywordsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywordsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByKeywordsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByKeywordsResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByKeywordsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywordsResponse, 0, sizeof(ns1__searchByKeywordsResponse), 0, soap_copy_ns1__searchByKeywordsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByKeywordsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywordsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywordsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByKeywordsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByKeywordsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsResponse * SOAP_FMAC4 soap_get_ns1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByKeywordsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByKeywordsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywordsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywordsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywordsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse);
-		if (size)
-			*size = sizeof(ns1__searchByKeywordsResponse);
-		((ns1__searchByKeywordsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByKeywordsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByKeywordsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByKeywordsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywordsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywordsResponse %p -> %p\n", q, p));
-	*(ns1__searchByKeywordsResponse*)p = *(ns1__searchByKeywordsResponse*)q;
-}
-
-void ns1__searchByKeywords::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByKeywords::sessionId = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByKeywords::keywords);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByKeywords::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByKeywords::sessionId);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByKeywords::keywords);
-	/* transient soap skipped */
-}
-
-int ns1__searchByKeywords::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByKeywords(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywords(struct soap *soap, const char *tag, int id, const ns1__searchByKeywords *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywords), "ns1:searchByKeywords"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByKeywords::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "keywords", -1, &(a->ns1__searchByKeywords::keywords), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByKeywords::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByKeywords(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywords * SOAP_FMAC4 soap_in_ns1__searchByKeywords(struct soap *soap, const char *tag, ns1__searchByKeywords *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByKeywords *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywords, sizeof(ns1__searchByKeywords), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywords)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByKeywords *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByKeywords::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "keywords", &(a->ns1__searchByKeywords::keywords), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByKeywords *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywords, 0, sizeof(ns1__searchByKeywords), 0, soap_copy_ns1__searchByKeywords);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByKeywords::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywords);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywords", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByKeywords::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByKeywords(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywords * SOAP_FMAC4 soap_get_ns1__searchByKeywords(struct soap *soap, ns1__searchByKeywords *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByKeywords(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByKeywords * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywords, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords);
-		if (size)
-			*size = sizeof(ns1__searchByKeywords);
-		((ns1__searchByKeywords*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByKeywords);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByKeywords*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByKeywords*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywords %p -> %p\n", q, p));
-	*(ns1__searchByKeywords*)p = *(ns1__searchByKeywords*)q;
-}
-
-void ns1__checkDatasetDownloadAccessResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__checkDatasetDownloadAccessResponse::downloadInfo = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__checkDatasetDownloadAccessResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__downloadInfo(soap, &this->ns1__checkDatasetDownloadAccessResponse::downloadInfo);
-	/* transient soap skipped */
-}
-
-int ns1__checkDatasetDownloadAccessResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__checkDatasetDownloadAccessResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, int id, const ns1__checkDatasetDownloadAccessResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse), "ns1:checkDatasetDownloadAccessResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__downloadInfo(soap, "downloadInfo", -1, &(a->ns1__checkDatasetDownloadAccessResponse::downloadInfo), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__checkDatasetDownloadAccessResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__checkDatasetDownloadAccessResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse * SOAP_FMAC4 soap_in_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccessResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__checkDatasetDownloadAccessResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, sizeof(ns1__checkDatasetDownloadAccessResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__checkDatasetDownloadAccessResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_downloadInfo1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_downloadInfo1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__downloadInfo(soap, "downloadInfo", &(a->ns1__checkDatasetDownloadAccessResponse::downloadInfo), "ns1:downloadInfo"))
-				{	soap_flag_downloadInfo1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__checkDatasetDownloadAccessResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, 0, sizeof(ns1__checkDatasetDownloadAccessResponse), 0, soap_copy_ns1__checkDatasetDownloadAccessResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__checkDatasetDownloadAccessResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:checkDatasetDownloadAccessResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__checkDatasetDownloadAccessResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__checkDatasetDownloadAccessResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse * SOAP_FMAC4 soap_get_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__checkDatasetDownloadAccessResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__checkDatasetDownloadAccessResponse * SOAP_FMAC2 soap_instantiate_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatasetDownloadAccessResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse);
-		if (size)
-			*size = sizeof(ns1__checkDatasetDownloadAccessResponse);
-		((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__checkDatasetDownloadAccessResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__checkDatasetDownloadAccessResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatasetDownloadAccessResponse %p -> %p\n", q, p));
-	*(ns1__checkDatasetDownloadAccessResponse*)p = *(ns1__checkDatasetDownloadAccessResponse*)q;
-}
-
-void ns1__checkDatasetDownloadAccess::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__checkDatasetDownloadAccess::sessionId = NULL;
-	this->ns1__checkDatasetDownloadAccess::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__checkDatasetDownloadAccess::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__checkDatasetDownloadAccess::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__checkDatasetDownloadAccess::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__checkDatasetDownloadAccess::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__checkDatasetDownloadAccess(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, int id, const ns1__checkDatasetDownloadAccess *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccess), "ns1:checkDatasetDownloadAccess"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__checkDatasetDownloadAccess::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__checkDatasetDownloadAccess::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__checkDatasetDownloadAccess::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__checkDatasetDownloadAccess(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_in_ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccess *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__checkDatasetDownloadAccess *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccess, sizeof(ns1__checkDatasetDownloadAccess), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__checkDatasetDownloadAccess)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__checkDatasetDownloadAccess *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__checkDatasetDownloadAccess::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__checkDatasetDownloadAccess::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__checkDatasetDownloadAccess *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatasetDownloadAccess, 0, sizeof(ns1__checkDatasetDownloadAccess), 0, soap_copy_ns1__checkDatasetDownloadAccess);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__checkDatasetDownloadAccess::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatasetDownloadAccess);
-	if (this->soap_out(soap, tag?tag:"ns1:checkDatasetDownloadAccess", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__checkDatasetDownloadAccess::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__checkDatasetDownloadAccess(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_get_ns1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__checkDatasetDownloadAccess(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__checkDatasetDownloadAccess * SOAP_FMAC2 soap_instantiate_ns1__checkDatasetDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatasetDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatasetDownloadAccess, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess);
-		if (size)
-			*size = sizeof(ns1__checkDatasetDownloadAccess);
-		((ns1__checkDatasetDownloadAccess*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__checkDatasetDownloadAccess);
-		for (int i = 0; i < n; i++)
-			((ns1__checkDatasetDownloadAccess*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__checkDatasetDownloadAccess*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatasetDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatasetDownloadAccess %p -> %p\n", q, p));
-	*(ns1__checkDatasetDownloadAccess*)p = *(ns1__checkDatasetDownloadAccess*)q;
-}
-
-void ns1__searchByUserSurnamePaginationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnamePaginationResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserSurnamePaginationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnamePaginationResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserSurnamePaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserSurnamePaginationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurnamePaginationResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse), "ns1:searchByUserSurnamePaginationResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserSurnamePaginationResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserSurnamePaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserSurnamePaginationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnamePaginationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserSurnamePaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, sizeof(ns1__searchByUserSurnamePaginationResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserSurnamePaginationResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserSurnamePaginationResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserSurnamePaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, 0, sizeof(ns1__searchByUserSurnamePaginationResponse), 0, soap_copy_ns1__searchByUserSurnamePaginationResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserSurnamePaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurnamePaginationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserSurnamePaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserSurnamePaginationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserSurnamePaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserSurnamePaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurnamePaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse);
-		if (size)
-			*size = sizeof(ns1__searchByUserSurnamePaginationResponse);
-		((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserSurnamePaginationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserSurnamePaginationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurnamePaginationResponse %p -> %p\n", q, p));
-	*(ns1__searchByUserSurnamePaginationResponse*)p = *(ns1__searchByUserSurnamePaginationResponse*)q;
-}
-
-void ns1__searchByUserSurnamePagination::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByUserSurnamePagination::sessionId = NULL;
-	this->ns1__searchByUserSurnamePagination::surname = NULL;
-	soap_default_int(soap, &this->ns1__searchByUserSurnamePagination::startIndex);
-	soap_default_int(soap, &this->ns1__searchByUserSurnamePagination::numberOfResults);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserSurnamePagination::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurnamePagination::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurnamePagination::surname);
-	soap_embedded(soap, &this->ns1__searchByUserSurnamePagination::startIndex, SOAP_TYPE_int);
-	soap_embedded(soap, &this->ns1__searchByUserSurnamePagination::numberOfResults, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserSurnamePagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserSurnamePagination(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurnamePagination *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurnamePagination), "ns1:searchByUserSurnamePagination"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserSurnamePagination::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "surname", -1, &(a->ns1__searchByUserSurnamePagination::surname), ""))
-		return soap->error;
-	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByUserSurnamePagination::startIndex), ""))
-		return soap->error;
-	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByUserSurnamePagination::numberOfResults), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserSurnamePagination::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserSurnamePagination(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_in_ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, ns1__searchByUserSurnamePagination *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserSurnamePagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurnamePagination, sizeof(ns1__searchByUserSurnamePagination), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurnamePagination)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserSurnamePagination *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_surname1 = 1;
-	size_t soap_flag_startIndex1 = 1;
-	size_t soap_flag_numberOfResults1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserSurnamePagination::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_surname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "surname", &(a->ns1__searchByUserSurnamePagination::surname), "xsd:string"))
-				{	soap_flag_surname1--;
-					continue;
-				}
-			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByUserSurnamePagination::startIndex), "xsd:int"))
-				{	soap_flag_startIndex1--;
-					continue;
-				}
-			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByUserSurnamePagination::numberOfResults), "xsd:int"))
-				{	soap_flag_numberOfResults1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserSurnamePagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurnamePagination, 0, sizeof(ns1__searchByUserSurnamePagination), 0, soap_copy_ns1__searchByUserSurnamePagination);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserSurnamePagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurnamePagination);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurnamePagination", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserSurnamePagination::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserSurnamePagination(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_get_ns1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserSurnamePagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserSurnamePagination * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurnamePagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurnamePagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurnamePagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination);
-		if (size)
-			*size = sizeof(ns1__searchByUserSurnamePagination);
-		((ns1__searchByUserSurnamePagination*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserSurnamePagination);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserSurnamePagination*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserSurnamePagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurnamePagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurnamePagination %p -> %p\n", q, p));
-	*(ns1__searchByUserSurnamePagination*)p = *(ns1__searchByUserSurnamePagination*)q;
-}
-
-void ns1__searchByUserSurnameResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnameResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserSurnameResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnameResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserSurnameResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserSurnameResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurnameResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurnameResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurnameResponse), "ns1:searchByUserSurnameResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserSurnameResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserSurnameResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserSurnameResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnameResponse * SOAP_FMAC4 soap_in_ns1__searchByUserSurnameResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnameResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserSurnameResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurnameResponse, sizeof(ns1__searchByUserSurnameResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurnameResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserSurnameResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserSurnameResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserSurnameResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurnameResponse, 0, sizeof(ns1__searchByUserSurnameResponse), 0, soap_copy_ns1__searchByUserSurnameResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserSurnameResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurnameResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurnameResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserSurnameResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserSurnameResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnameResponse * SOAP_FMAC4 soap_get_ns1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserSurnameResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserSurnameResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurnameResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurnameResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurnameResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse);
-		if (size)
-			*size = sizeof(ns1__searchByUserSurnameResponse);
-		((ns1__searchByUserSurnameResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserSurnameResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserSurnameResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserSurnameResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurnameResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurnameResponse %p -> %p\n", q, p));
-	*(ns1__searchByUserSurnameResponse*)p = *(ns1__searchByUserSurnameResponse*)q;
-}
-
-void ns1__searchByUserSurname::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByUserSurname::sessionId = NULL;
-	this->ns1__searchByUserSurname::surname = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByUserSurname::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurname::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurname::surname);
-	/* transient soap skipped */
-}
-
-int ns1__searchByUserSurname::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByUserSurname(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurname(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurname *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurname), "ns1:searchByUserSurname"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserSurname::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "surname", -1, &(a->ns1__searchByUserSurname::surname), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByUserSurname::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByUserSurname(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurname * SOAP_FMAC4 soap_in_ns1__searchByUserSurname(struct soap *soap, const char *tag, ns1__searchByUserSurname *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByUserSurname *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurname, sizeof(ns1__searchByUserSurname), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurname)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByUserSurname *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_surname1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserSurname::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_surname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "surname", &(a->ns1__searchByUserSurname::surname), "xsd:string"))
-				{	soap_flag_surname1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByUserSurname *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurname, 0, sizeof(ns1__searchByUserSurname), 0, soap_copy_ns1__searchByUserSurname);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByUserSurname::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurname);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurname", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByUserSurname::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByUserSurname(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurname * SOAP_FMAC4 soap_get_ns1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByUserSurname(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByUserSurname * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurname(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurname(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurname, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname);
-		if (size)
-			*size = sizeof(ns1__searchByUserSurname);
-		((ns1__searchByUserSurname*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByUserSurname);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByUserSurname*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByUserSurname*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurname(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurname %p -> %p\n", q, p));
-	*(ns1__searchByUserSurname*)p = *(ns1__searchByUserSurname*)q;
-}
-
-void ns1__deleteDataFileResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataFileResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataFileResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataFileResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataFileResponse");
-}
-
-void *ns1__deleteDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataFileResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileResponse * SOAP_FMAC4 soap_in_ns1__deleteDataFileResponse(struct soap *soap, const char *tag, ns1__deleteDataFileResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFileResponse, sizeof(ns1__deleteDataFileResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFileResponse)
-			return (ns1__deleteDataFileResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFileResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFileResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataFileResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileResponse * SOAP_FMAC4 soap_get_ns1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse);
-		if (size)
-			*size = sizeof(ns1__deleteDataFileResponse);
-		((ns1__deleteDataFileResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataFileResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataFileResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFileResponse %p -> %p\n", q, p));
-	*(ns1__deleteDataFileResponse*)p = *(ns1__deleteDataFileResponse*)q;
-}
-
-void ns1__deleteDataFile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteDataFile::sessionId = NULL;
-	this->ns1__deleteDataFile::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteDataFile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataFile::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteDataFile::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__deleteDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteDataFile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFile(struct soap *soap, const char *tag, int id, const ns1__deleteDataFile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataFile), "ns1:deleteDataFile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataFile::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__deleteDataFile::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteDataFile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFile * SOAP_FMAC4 soap_in_ns1__deleteDataFile(struct soap *soap, const char *tag, ns1__deleteDataFile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFile, sizeof(ns1__deleteDataFile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteDataFile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataFile::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__deleteDataFile::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataFile, 0, sizeof(ns1__deleteDataFile), 0, soap_copy_ns1__deleteDataFile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFile);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteDataFile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFile * SOAP_FMAC4 soap_get_ns1__deleteDataFile(struct soap *soap, ns1__deleteDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteDataFile * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile);
-		if (size)
-			*size = sizeof(ns1__deleteDataFile);
-		((ns1__deleteDataFile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteDataFile);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteDataFile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFile %p -> %p\n", q, p));
-	*(ns1__deleteDataFile*)p = *(ns1__deleteDataFile*)q;
-}
-
-void ns1__downloadInfo::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadInfo::credential = NULL;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__downloadInfo::datafileLocations);
-	soap_default_std__vectorTemplateOfPointerToxsd__anyType(soap, &this->ns1__downloadInfo::datafileNames);
-	this->ns1__downloadInfo::userId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadInfo::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadInfo::credential);
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__downloadInfo::datafileLocations);
-	soap_serialize_std__vectorTemplateOfPointerToxsd__anyType(soap, &this->ns1__downloadInfo::datafileNames);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadInfo::userId);
-	/* transient soap skipped */
-}
-
-int ns1__downloadInfo::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadInfo(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadInfo(struct soap *soap, const char *tag, int id, const ns1__downloadInfo *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadInfo), "ns1:downloadInfo"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "credential", -1, &(a->ns1__downloadInfo::credential), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "datafileLocations", -1, &(a->ns1__downloadInfo::datafileLocations), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerToxsd__anyType(soap, "datafileNames", -1, &(a->ns1__downloadInfo::datafileNames), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "userId", -1, &(a->ns1__downloadInfo::userId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadInfo::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadInfo(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadInfo * SOAP_FMAC4 soap_in_ns1__downloadInfo(struct soap *soap, const char *tag, ns1__downloadInfo *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadInfo *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadInfo, sizeof(ns1__downloadInfo), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadInfo)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadInfo *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_credential1 = 1;
-	size_t soap_flag_userId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_credential1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "credential", &(a->ns1__downloadInfo::credential), "xsd:string"))
-				{	soap_flag_credential1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "datafileLocations", &(a->ns1__downloadInfo::datafileLocations), "xsd:string"))
-					continue;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerToxsd__anyType(soap, "datafileNames", &(a->ns1__downloadInfo::datafileNames), "xsd:anyType"))
-					continue;
-			if (soap_flag_userId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "userId", &(a->ns1__downloadInfo::userId), "xsd:string"))
-				{	soap_flag_userId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadInfo *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadInfo, 0, sizeof(ns1__downloadInfo), 0, soap_copy_ns1__downloadInfo);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadInfo::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadInfo);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadInfo", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadInfo::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadInfo(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadInfo * SOAP_FMAC4 soap_get_ns1__downloadInfo(struct soap *soap, ns1__downloadInfo *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadInfo(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadInfo * SOAP_FMAC2 soap_instantiate_ns1__downloadInfo(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadInfo(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadInfo, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo);
-		if (size)
-			*size = sizeof(ns1__downloadInfo);
-		((ns1__downloadInfo*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadInfo);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadInfo*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadInfo*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadInfo(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadInfo %p -> %p\n", q, p));
-	*(ns1__downloadInfo*)p = *(ns1__downloadInfo*)q;
-}
-
-void ns1__checkDatafileDownloadAccessResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__checkDatafileDownloadAccessResponse::downloadInfo = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__checkDatafileDownloadAccessResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__downloadInfo(soap, &this->ns1__checkDatafileDownloadAccessResponse::downloadInfo);
-	/* transient soap skipped */
-}
-
-int ns1__checkDatafileDownloadAccessResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__checkDatafileDownloadAccessResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, int id, const ns1__checkDatafileDownloadAccessResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse), "ns1:checkDatafileDownloadAccessResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__downloadInfo(soap, "downloadInfo", -1, &(a->ns1__checkDatafileDownloadAccessResponse::downloadInfo), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__checkDatafileDownloadAccessResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__checkDatafileDownloadAccessResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse * SOAP_FMAC4 soap_in_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccessResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__checkDatafileDownloadAccessResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, sizeof(ns1__checkDatafileDownloadAccessResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__checkDatafileDownloadAccessResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_downloadInfo1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_downloadInfo1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__downloadInfo(soap, "downloadInfo", &(a->ns1__checkDatafileDownloadAccessResponse::downloadInfo), "ns1:downloadInfo"))
-				{	soap_flag_downloadInfo1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__checkDatafileDownloadAccessResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, 0, sizeof(ns1__checkDatafileDownloadAccessResponse), 0, soap_copy_ns1__checkDatafileDownloadAccessResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__checkDatafileDownloadAccessResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:checkDatafileDownloadAccessResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__checkDatafileDownloadAccessResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__checkDatafileDownloadAccessResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse * SOAP_FMAC4 soap_get_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__checkDatafileDownloadAccessResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__checkDatafileDownloadAccessResponse * SOAP_FMAC2 soap_instantiate_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatafileDownloadAccessResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse);
-		if (size)
-			*size = sizeof(ns1__checkDatafileDownloadAccessResponse);
-		((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__checkDatafileDownloadAccessResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__checkDatafileDownloadAccessResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatafileDownloadAccessResponse %p -> %p\n", q, p));
-	*(ns1__checkDatafileDownloadAccessResponse*)p = *(ns1__checkDatafileDownloadAccessResponse*)q;
-}
-
-void ns1__checkDatafileDownloadAccess::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__checkDatafileDownloadAccess::sessionId = NULL;
-	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__checkDatafileDownloadAccess::datafileIds);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__checkDatafileDownloadAccess::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__checkDatafileDownloadAccess::sessionId);
-	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__checkDatafileDownloadAccess::datafileIds);
-	/* transient soap skipped */
-}
-
-int ns1__checkDatafileDownloadAccess::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__checkDatafileDownloadAccess(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, int id, const ns1__checkDatafileDownloadAccess *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccess), "ns1:checkDatafileDownloadAccess"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__checkDatafileDownloadAccess::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfLONG64(soap, "datafileIds", -1, &(a->ns1__checkDatafileDownloadAccess::datafileIds), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__checkDatafileDownloadAccess::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__checkDatafileDownloadAccess(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_in_ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccess *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__checkDatafileDownloadAccess *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccess, sizeof(ns1__checkDatafileDownloadAccess), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__checkDatafileDownloadAccess)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__checkDatafileDownloadAccess *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__checkDatafileDownloadAccess::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfLONG64(soap, "datafileIds", &(a->ns1__checkDatafileDownloadAccess::datafileIds), "xsd:long"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__checkDatafileDownloadAccess *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatafileDownloadAccess, 0, sizeof(ns1__checkDatafileDownloadAccess), 0, soap_copy_ns1__checkDatafileDownloadAccess);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__checkDatafileDownloadAccess::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatafileDownloadAccess);
-	if (this->soap_out(soap, tag?tag:"ns1:checkDatafileDownloadAccess", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__checkDatafileDownloadAccess::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__checkDatafileDownloadAccess(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_get_ns1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__checkDatafileDownloadAccess(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__checkDatafileDownloadAccess * SOAP_FMAC2 soap_instantiate_ns1__checkDatafileDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatafileDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatafileDownloadAccess, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess);
-		if (size)
-			*size = sizeof(ns1__checkDatafileDownloadAccess);
-		((ns1__checkDatafileDownloadAccess*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__checkDatafileDownloadAccess);
-		for (int i = 0; i < n; i++)
-			((ns1__checkDatafileDownloadAccess*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__checkDatafileDownloadAccess*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatafileDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatafileDownloadAccess %p -> %p\n", q, p));
-	*(ns1__checkDatafileDownloadAccess*)p = *(ns1__checkDatafileDownloadAccess*)q;
-}
-
-void ns1__getFacilityUserByFacilityUserIdResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getFacilityUserByFacilityUserIdResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getFacilityUserByFacilityUserIdResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__facilityUser(soap, &this->ns1__getFacilityUserByFacilityUserIdResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getFacilityUserByFacilityUserIdResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getFacilityUserByFacilityUserIdResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFacilityUserIdResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse), "ns1:getFacilityUserByFacilityUserIdResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__facilityUser(soap, "return", -1, &(a->ns1__getFacilityUserByFacilityUserIdResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getFacilityUserByFacilityUserIdResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserIdResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getFacilityUserByFacilityUserIdResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getFacilityUserByFacilityUserIdResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__facilityUser(soap, "return", &(a->ns1__getFacilityUserByFacilityUserIdResponse::return_), "ns1:facilityUser"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getFacilityUserByFacilityUserIdResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, 0, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), 0, soap_copy_ns1__getFacilityUserByFacilityUserIdResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getFacilityUserByFacilityUserIdResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFacilityUserIdResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getFacilityUserByFacilityUserIdResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getFacilityUserByFacilityUserIdResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getFacilityUserByFacilityUserIdResponse * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse);
-		if (size)
-			*size = sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
-		((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFacilityUserIdResponse %p -> %p\n", q, p));
-	*(ns1__getFacilityUserByFacilityUserIdResponse*)p = *(ns1__getFacilityUserByFacilityUserIdResponse*)q;
-}
-
-void ns1__getFacilityUserByFacilityUserId::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getFacilityUserByFacilityUserId::sessionId = NULL;
-	this->ns1__getFacilityUserByFacilityUserId::facilityUserId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getFacilityUserByFacilityUserId::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFacilityUserId::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFacilityUserId::facilityUserId);
-	/* transient soap skipped */
-}
-
-int ns1__getFacilityUserByFacilityUserId::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getFacilityUserByFacilityUserId(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFacilityUserId *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId), "ns1:getFacilityUserByFacilityUserId"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getFacilityUserByFacilityUserId::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "facilityUserId", -1, &(a->ns1__getFacilityUserByFacilityUserId::facilityUserId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getFacilityUserByFacilityUserId::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getFacilityUserByFacilityUserId(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserId *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getFacilityUserByFacilityUserId *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, sizeof(ns1__getFacilityUserByFacilityUserId), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFacilityUserId)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getFacilityUserByFacilityUserId *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_facilityUserId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getFacilityUserByFacilityUserId::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_facilityUserId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "facilityUserId", &(a->ns1__getFacilityUserByFacilityUserId::facilityUserId), "xsd:string"))
-				{	soap_flag_facilityUserId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getFacilityUserByFacilityUserId *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, 0, sizeof(ns1__getFacilityUserByFacilityUserId), 0, soap_copy_ns1__getFacilityUserByFacilityUserId);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getFacilityUserByFacilityUserId::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId);
-	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFacilityUserId", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getFacilityUserByFacilityUserId::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getFacilityUserByFacilityUserId(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getFacilityUserByFacilityUserId(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getFacilityUserByFacilityUserId * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFacilityUserId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFacilityUserId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId);
-		if (size)
-			*size = sizeof(ns1__getFacilityUserByFacilityUserId);
-		((ns1__getFacilityUserByFacilityUserId*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getFacilityUserByFacilityUserId);
-		for (int i = 0; i < n; i++)
-			((ns1__getFacilityUserByFacilityUserId*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getFacilityUserByFacilityUserId*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFacilityUserId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFacilityUserId %p -> %p\n", q, p));
-	*(ns1__getFacilityUserByFacilityUserId*)p = *(ns1__getFacilityUserByFacilityUserId*)q;
-}
-
-void ns1__addSampleParameterResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addSampleParameterResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addSampleParameterResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__sampleParameter(soap, &this->ns1__addSampleParameterResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addSampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addSampleParameterResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__addSampleParameterResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSampleParameterResponse), "ns1:addSampleParameterResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__sampleParameter(soap, "return", -1, &(a->ns1__addSampleParameterResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addSampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addSampleParameterResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addSampleParameterResponse * SOAP_FMAC4 soap_in_ns1__addSampleParameterResponse(struct soap *soap, const char *tag, ns1__addSampleParameterResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addSampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSampleParameterResponse, sizeof(ns1__addSampleParameterResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addSampleParameterResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addSampleParameterResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sampleParameter(soap, "return", &(a->ns1__addSampleParameterResponse::return_), "ns1:sampleParameter"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addSampleParameterResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSampleParameterResponse, 0, sizeof(ns1__addSampleParameterResponse), 0, soap_copy_ns1__addSampleParameterResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addSampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSampleParameterResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addSampleParameterResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addSampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addSampleParameterResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addSampleParameterResponse * SOAP_FMAC4 soap_get_ns1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addSampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__addSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse);
-		if (size)
-			*size = sizeof(ns1__addSampleParameterResponse);
-		((ns1__addSampleParameterResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addSampleParameterResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addSampleParameterResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addSampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSampleParameterResponse %p -> %p\n", q, p));
-	*(ns1__addSampleParameterResponse*)p = *(ns1__addSampleParameterResponse*)q;
-}
-
-void ns1__addSampleParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addSampleParameter::sessionId = NULL;
-	this->ns1__addSampleParameter::sampleParameter = NULL;
-	this->ns1__addSampleParameter::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addSampleParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addSampleParameter::sessionId);
-	soap_serialize_PointerTons1__sampleParameter(soap, &this->ns1__addSampleParameter::sampleParameter);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addSampleParameter::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__addSampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addSampleParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSampleParameter(struct soap *soap, const char *tag, int id, const ns1__addSampleParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSampleParameter), "ns1:addSampleParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addSampleParameter::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sampleParameter(soap, "sampleParameter", -1, &(a->ns1__addSampleParameter::sampleParameter), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addSampleParameter::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addSampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addSampleParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addSampleParameter * SOAP_FMAC4 soap_in_ns1__addSampleParameter(struct soap *soap, const char *tag, ns1__addSampleParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addSampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSampleParameter, sizeof(ns1__addSampleParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addSampleParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addSampleParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleParameter1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addSampleParameter::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sampleParameter(soap, "sampleParameter", &(a->ns1__addSampleParameter::sampleParameter), "ns1:sampleParameter"))
-				{	soap_flag_sampleParameter1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addSampleParameter::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addSampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSampleParameter, 0, sizeof(ns1__addSampleParameter), 0, soap_copy_ns1__addSampleParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addSampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSampleParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:addSampleParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addSampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addSampleParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addSampleParameter * SOAP_FMAC4 soap_get_ns1__addSampleParameter(struct soap *soap, ns1__addSampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addSampleParameter * SOAP_FMAC2 soap_instantiate_ns1__addSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter);
-		if (size)
-			*size = sizeof(ns1__addSampleParameter);
-		((ns1__addSampleParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addSampleParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__addSampleParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addSampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSampleParameter %p -> %p\n", q, p));
-	*(ns1__addSampleParameter*)p = *(ns1__addSampleParameter*)q;
-}
-
-void ns1__modifyDataSetResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataSetResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataSetResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataSetResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataSetResponse");
-}
-
-void *ns1__modifyDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataSetResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetResponse * SOAP_FMAC4 soap_in_ns1__modifyDataSetResponse(struct soap *soap, const char *tag, ns1__modifyDataSetResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifyDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSetResponse, sizeof(ns1__modifyDataSetResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSetResponse)
-			return (ns1__modifyDataSetResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifyDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSetResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSetResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataSetResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetResponse * SOAP_FMAC4 soap_get_ns1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse);
-		if (size)
-			*size = sizeof(ns1__modifyDataSetResponse);
-		((ns1__modifyDataSetResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataSetResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataSetResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSetResponse %p -> %p\n", q, p));
-	*(ns1__modifyDataSetResponse*)p = *(ns1__modifyDataSetResponse*)q;
-}
-
-void ns1__modifyDataSet::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifyDataSet::sessionId = NULL;
-	this->ns1__modifyDataSet::dataSet = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifyDataSet::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataSet::sessionId);
-	soap_serialize_PointerTons1__dataset(soap, &this->ns1__modifyDataSet::dataSet);
-	/* transient soap skipped */
-}
-
-int ns1__modifyDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifyDataSet(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSet(struct soap *soap, const char *tag, int id, const ns1__modifyDataSet *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataSet), "ns1:modifyDataSet"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataSet::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__dataset(soap, "dataSet", -1, &(a->ns1__modifyDataSet::dataSet), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifyDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifyDataSet(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSet * SOAP_FMAC4 soap_in_ns1__modifyDataSet(struct soap *soap, const char *tag, ns1__modifyDataSet *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifyDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSet, sizeof(ns1__modifyDataSet), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSet)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifyDataSet *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataSet1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataSet::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataSet1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__dataset(soap, "dataSet", &(a->ns1__modifyDataSet::dataSet), "ns1:dataset"))
-				{	soap_flag_dataSet1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifyDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataSet, 0, sizeof(ns1__modifyDataSet), 0, soap_copy_ns1__modifyDataSet);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifyDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSet);
-	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSet", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifyDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifyDataSet(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSet * SOAP_FMAC4 soap_get_ns1__modifyDataSet(struct soap *soap, ns1__modifyDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifyDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifyDataSet * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet);
-		if (size)
-			*size = sizeof(ns1__modifyDataSet);
-		((ns1__modifyDataSet*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifyDataSet);
-		for (int i = 0; i < n; i++)
-			((ns1__modifyDataSet*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifyDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSet %p -> %p\n", q, p));
-	*(ns1__modifyDataSet*)p = *(ns1__modifyDataSet*)q;
-}
-
-void ns1__downloadDatafilesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadDatafilesResponse::URL = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadDatafilesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafilesResponse::URL);
-	/* transient soap skipped */
-}
-
-int ns1__downloadDatafilesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadDatafilesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafilesResponse(struct soap *soap, const char *tag, int id, const ns1__downloadDatafilesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafilesResponse), "ns1:downloadDatafilesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "URL", -1, &(a->ns1__downloadDatafilesResponse::URL), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadDatafilesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadDatafilesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafilesResponse * SOAP_FMAC4 soap_in_ns1__downloadDatafilesResponse(struct soap *soap, const char *tag, ns1__downloadDatafilesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadDatafilesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafilesResponse, sizeof(ns1__downloadDatafilesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafilesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadDatafilesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_URL1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "URL", &(a->ns1__downloadDatafilesResponse::URL), "xsd:string"))
-				{	soap_flag_URL1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadDatafilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafilesResponse, 0, sizeof(ns1__downloadDatafilesResponse), 0, soap_copy_ns1__downloadDatafilesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadDatafilesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafilesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafilesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadDatafilesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadDatafilesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafilesResponse * SOAP_FMAC4 soap_get_ns1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadDatafilesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadDatafilesResponse * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafilesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafilesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafilesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse);
-		if (size)
-			*size = sizeof(ns1__downloadDatafilesResponse);
-		((ns1__downloadDatafilesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadDatafilesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadDatafilesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadDatafilesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafilesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafilesResponse %p -> %p\n", q, p));
-	*(ns1__downloadDatafilesResponse*)p = *(ns1__downloadDatafilesResponse*)q;
-}
-
-void ns1__downloadDatafiles::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadDatafiles::sessionId = NULL;
-	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__downloadDatafiles::datafileIds);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadDatafiles::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafiles::sessionId);
-	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__downloadDatafiles::datafileIds);
-	/* transient soap skipped */
-}
-
-int ns1__downloadDatafiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadDatafiles(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafiles(struct soap *soap, const char *tag, int id, const ns1__downloadDatafiles *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafiles), "ns1:downloadDatafiles"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__downloadDatafiles::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfLONG64(soap, "datafileIds", -1, &(a->ns1__downloadDatafiles::datafileIds), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadDatafiles::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadDatafiles(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafiles * SOAP_FMAC4 soap_in_ns1__downloadDatafiles(struct soap *soap, const char *tag, ns1__downloadDatafiles *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadDatafiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafiles, sizeof(ns1__downloadDatafiles), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafiles)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadDatafiles *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__downloadDatafiles::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfLONG64(soap, "datafileIds", &(a->ns1__downloadDatafiles::datafileIds), "xsd:long"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadDatafiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafiles, 0, sizeof(ns1__downloadDatafiles), 0, soap_copy_ns1__downloadDatafiles);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadDatafiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafiles);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafiles", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadDatafiles::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadDatafiles(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafiles * SOAP_FMAC4 soap_get_ns1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadDatafiles * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles);
-		if (size)
-			*size = sizeof(ns1__downloadDatafiles);
-		((ns1__downloadDatafiles*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadDatafiles);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadDatafiles*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadDatafiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafiles %p -> %p\n", q, p));
-	*(ns1__downloadDatafiles*)p = *(ns1__downloadDatafiles*)q;
-}
-
-void ns1__NoSuchUserException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__NoSuchUserException::message = NULL;
-	this->ns1__NoSuchUserException::stackTraceAsString = NULL;
-	this->ns1__NoSuchUserException::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__NoSuchUserException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchUserException::message);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchUserException::stackTraceAsString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchUserException::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__NoSuchUserException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__NoSuchUserException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__NoSuchUserException(struct soap *soap, const char *tag, int id, const ns1__NoSuchUserException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__NoSuchUserException), "ns1:NoSuchUserException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__NoSuchUserException::message), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__NoSuchUserException::stackTraceAsString), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__NoSuchUserException::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__NoSuchUserException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__NoSuchUserException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__NoSuchUserException * SOAP_FMAC4 soap_in_ns1__NoSuchUserException(struct soap *soap, const char *tag, ns1__NoSuchUserException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__NoSuchUserException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__NoSuchUserException, sizeof(ns1__NoSuchUserException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__NoSuchUserException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__NoSuchUserException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	size_t soap_flag_stackTraceAsString1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__NoSuchUserException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__NoSuchUserException::stackTraceAsString), "xsd:string"))
-				{	soap_flag_stackTraceAsString1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__NoSuchUserException::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__NoSuchUserException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__NoSuchUserException, 0, sizeof(ns1__NoSuchUserException), 0, soap_copy_ns1__NoSuchUserException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__NoSuchUserException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__NoSuchUserException);
-	if (this->soap_out(soap, tag?tag:"ns1:NoSuchUserException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__NoSuchUserException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__NoSuchUserException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__NoSuchUserException * SOAP_FMAC4 soap_get_ns1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__NoSuchUserException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__NoSuchUserException * SOAP_FMAC2 soap_instantiate_ns1__NoSuchUserException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__NoSuchUserException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__NoSuchUserException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException);
-		if (size)
-			*size = sizeof(ns1__NoSuchUserException);
-		((ns1__NoSuchUserException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__NoSuchUserException);
-		for (int i = 0; i < n; i++)
-			((ns1__NoSuchUserException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__NoSuchUserException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__NoSuchUserException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__NoSuchUserException %p -> %p\n", q, p));
-	*(ns1__NoSuchUserException*)p = *(ns1__NoSuchUserException*)q;
-}
-
-void ns1__userDetails::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__userDetails::credential = NULL;
-	this->ns1__userDetails::department = NULL;
-	this->ns1__userDetails::email = NULL;
-	this->ns1__userDetails::federalId = NULL;
-	this->ns1__userDetails::firstName = NULL;
-	this->ns1__userDetails::initial = NULL;
-	this->ns1__userDetails::institution = NULL;
-	this->ns1__userDetails::lastName = NULL;
-	this->ns1__userDetails::title = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__userDetails::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::credential);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::department);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::email);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::federalId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::firstName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::initial);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::institution);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::lastName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::title);
-	/* transient soap skipped */
-}
-
-int ns1__userDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__userDetails(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__userDetails(struct soap *soap, const char *tag, int id, const ns1__userDetails *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__userDetails), "ns1:userDetails"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "credential", -1, &(a->ns1__userDetails::credential), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "department", -1, &(a->ns1__userDetails::department), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "email", -1, &(a->ns1__userDetails::email), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "federalId", -1, &(a->ns1__userDetails::federalId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "firstName", -1, &(a->ns1__userDetails::firstName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "initial", -1, &(a->ns1__userDetails::initial), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "institution", -1, &(a->ns1__userDetails::institution), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "lastName", -1, &(a->ns1__userDetails::lastName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "title", -1, &(a->ns1__userDetails::title), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__userDetails::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__userDetails(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__userDetails * SOAP_FMAC4 soap_in_ns1__userDetails(struct soap *soap, const char *tag, ns1__userDetails *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__userDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__userDetails, sizeof(ns1__userDetails), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__userDetails)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__userDetails *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_credential1 = 1;
-	size_t soap_flag_department1 = 1;
-	size_t soap_flag_email1 = 1;
-	size_t soap_flag_federalId1 = 1;
-	size_t soap_flag_firstName1 = 1;
-	size_t soap_flag_initial1 = 1;
-	size_t soap_flag_institution1 = 1;
-	size_t soap_flag_lastName1 = 1;
-	size_t soap_flag_title1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_credential1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "credential", &(a->ns1__userDetails::credential), "xsd:string"))
-				{	soap_flag_credential1--;
-					continue;
-				}
-			if (soap_flag_department1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "department", &(a->ns1__userDetails::department), "xsd:string"))
-				{	soap_flag_department1--;
-					continue;
-				}
-			if (soap_flag_email1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "email", &(a->ns1__userDetails::email), "xsd:string"))
-				{	soap_flag_email1--;
-					continue;
-				}
-			if (soap_flag_federalId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "federalId", &(a->ns1__userDetails::federalId), "xsd:string"))
-				{	soap_flag_federalId1--;
-					continue;
-				}
-			if (soap_flag_firstName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "firstName", &(a->ns1__userDetails::firstName), "xsd:string"))
-				{	soap_flag_firstName1--;
-					continue;
-				}
-			if (soap_flag_initial1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "initial", &(a->ns1__userDetails::initial), "xsd:string"))
-				{	soap_flag_initial1--;
-					continue;
-				}
-			if (soap_flag_institution1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "institution", &(a->ns1__userDetails::institution), "xsd:string"))
-				{	soap_flag_institution1--;
-					continue;
-				}
-			if (soap_flag_lastName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "lastName", &(a->ns1__userDetails::lastName), "xsd:string"))
-				{	soap_flag_lastName1--;
-					continue;
-				}
-			if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "title", &(a->ns1__userDetails::title), "xsd:string"))
-				{	soap_flag_title1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__userDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__userDetails, 0, sizeof(ns1__userDetails), 0, soap_copy_ns1__userDetails);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__userDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__userDetails);
-	if (this->soap_out(soap, tag?tag:"ns1:userDetails", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__userDetails::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__userDetails(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__userDetails * SOAP_FMAC4 soap_get_ns1__userDetails(struct soap *soap, ns1__userDetails *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__userDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__userDetails * SOAP_FMAC2 soap_instantiate_ns1__userDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__userDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__userDetails, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails);
-		if (size)
-			*size = sizeof(ns1__userDetails);
-		((ns1__userDetails*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__userDetails);
-		for (int i = 0; i < n; i++)
-			((ns1__userDetails*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__userDetails*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__userDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__userDetails %p -> %p\n", q, p));
-	*(ns1__userDetails*)p = *(ns1__userDetails*)q;
-}
-
-void ns1__getUserDetailsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getUserDetailsResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getUserDetailsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__userDetails(soap, &this->ns1__getUserDetailsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getUserDetailsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getUserDetailsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getUserDetailsResponse(struct soap *soap, const char *tag, int id, const ns1__getUserDetailsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getUserDetailsResponse), "ns1:getUserDetailsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__userDetails(soap, "return", -1, &(a->ns1__getUserDetailsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getUserDetailsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getUserDetailsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getUserDetailsResponse * SOAP_FMAC4 soap_in_ns1__getUserDetailsResponse(struct soap *soap, const char *tag, ns1__getUserDetailsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getUserDetailsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getUserDetailsResponse, sizeof(ns1__getUserDetailsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getUserDetailsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getUserDetailsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__userDetails(soap, "return", &(a->ns1__getUserDetailsResponse::return_), "ns1:userDetails"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getUserDetailsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getUserDetailsResponse, 0, sizeof(ns1__getUserDetailsResponse), 0, soap_copy_ns1__getUserDetailsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getUserDetailsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getUserDetailsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getUserDetailsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getUserDetailsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getUserDetailsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getUserDetailsResponse * SOAP_FMAC4 soap_get_ns1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getUserDetailsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getUserDetailsResponse * SOAP_FMAC2 soap_instantiate_ns1__getUserDetailsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getUserDetailsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getUserDetailsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse);
-		if (size)
-			*size = sizeof(ns1__getUserDetailsResponse);
-		((ns1__getUserDetailsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getUserDetailsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getUserDetailsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getUserDetailsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getUserDetailsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getUserDetailsResponse %p -> %p\n", q, p));
-	*(ns1__getUserDetailsResponse*)p = *(ns1__getUserDetailsResponse*)q;
-}
-
-void ns1__getUserDetails::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getUserDetails::sessionId = NULL;
-	this->ns1__getUserDetails::usersName = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getUserDetails::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getUserDetails::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getUserDetails::usersName);
-	/* transient soap skipped */
-}
-
-int ns1__getUserDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getUserDetails(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getUserDetails(struct soap *soap, const char *tag, int id, const ns1__getUserDetails *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getUserDetails), "ns1:getUserDetails"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getUserDetails::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "usersName", -1, &(a->ns1__getUserDetails::usersName), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getUserDetails::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getUserDetails(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getUserDetails * SOAP_FMAC4 soap_in_ns1__getUserDetails(struct soap *soap, const char *tag, ns1__getUserDetails *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getUserDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getUserDetails, sizeof(ns1__getUserDetails), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getUserDetails)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getUserDetails *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_usersName1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getUserDetails::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_usersName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "usersName", &(a->ns1__getUserDetails::usersName), "xsd:string"))
-				{	soap_flag_usersName1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getUserDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getUserDetails, 0, sizeof(ns1__getUserDetails), 0, soap_copy_ns1__getUserDetails);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getUserDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getUserDetails);
-	if (this->soap_out(soap, tag?tag:"ns1:getUserDetails", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getUserDetails::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getUserDetails(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getUserDetails * SOAP_FMAC4 soap_get_ns1__getUserDetails(struct soap *soap, ns1__getUserDetails *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getUserDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getUserDetails * SOAP_FMAC2 soap_instantiate_ns1__getUserDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getUserDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getUserDetails, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails);
-		if (size)
-			*size = sizeof(ns1__getUserDetails);
-		((ns1__getUserDetails*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getUserDetails);
-		for (int i = 0; i < n; i++)
-			((ns1__getUserDetails*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getUserDetails*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getUserDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getUserDetails %p -> %p\n", q, p));
-	*(ns1__getUserDetails*)p = *(ns1__getUserDetails*)q;
-}
-
-void ns1__getAllKeywordsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getAllKeywordsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getAllKeywordsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getAllKeywordsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getAllKeywordsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getAllKeywordsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAllKeywordsResponse(struct soap *soap, const char *tag, int id, const ns1__getAllKeywordsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAllKeywordsResponse), "ns1:getAllKeywordsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getAllKeywordsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getAllKeywordsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getAllKeywordsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getAllKeywordsResponse * SOAP_FMAC4 soap_in_ns1__getAllKeywordsResponse(struct soap *soap, const char *tag, ns1__getAllKeywordsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getAllKeywordsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAllKeywordsResponse, sizeof(ns1__getAllKeywordsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getAllKeywordsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getAllKeywordsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getAllKeywordsResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getAllKeywordsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAllKeywordsResponse, 0, sizeof(ns1__getAllKeywordsResponse), 0, soap_copy_ns1__getAllKeywordsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getAllKeywordsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAllKeywordsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getAllKeywordsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getAllKeywordsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getAllKeywordsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getAllKeywordsResponse * SOAP_FMAC4 soap_get_ns1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getAllKeywordsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getAllKeywordsResponse * SOAP_FMAC2 soap_instantiate_ns1__getAllKeywordsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAllKeywordsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAllKeywordsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse);
-		if (size)
-			*size = sizeof(ns1__getAllKeywordsResponse);
-		((ns1__getAllKeywordsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getAllKeywordsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getAllKeywordsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getAllKeywordsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAllKeywordsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAllKeywordsResponse %p -> %p\n", q, p));
-	*(ns1__getAllKeywordsResponse*)p = *(ns1__getAllKeywordsResponse*)q;
-}
-
-void ns1__getAllKeywords::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getAllKeywords::sessionId = NULL;
-	this->ns1__getAllKeywords::type = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getAllKeywords::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getAllKeywords::sessionId);
-	soap_serialize_PointerTons1__keywordType(soap, &this->ns1__getAllKeywords::type);
-	/* transient soap skipped */
-}
-
-int ns1__getAllKeywords::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getAllKeywords(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAllKeywords(struct soap *soap, const char *tag, int id, const ns1__getAllKeywords *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAllKeywords), "ns1:getAllKeywords"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getAllKeywords::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keywordType(soap, "type", -1, &(a->ns1__getAllKeywords::type), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getAllKeywords::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getAllKeywords(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getAllKeywords * SOAP_FMAC4 soap_in_ns1__getAllKeywords(struct soap *soap, const char *tag, ns1__getAllKeywords *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getAllKeywords *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAllKeywords, sizeof(ns1__getAllKeywords), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getAllKeywords)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getAllKeywords *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_type1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getAllKeywords::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_type1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keywordType(soap, "type", &(a->ns1__getAllKeywords::type), "ns1:keywordType"))
-				{	soap_flag_type1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getAllKeywords *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAllKeywords, 0, sizeof(ns1__getAllKeywords), 0, soap_copy_ns1__getAllKeywords);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getAllKeywords::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAllKeywords);
-	if (this->soap_out(soap, tag?tag:"ns1:getAllKeywords", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getAllKeywords::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getAllKeywords(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getAllKeywords * SOAP_FMAC4 soap_get_ns1__getAllKeywords(struct soap *soap, ns1__getAllKeywords *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getAllKeywords(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getAllKeywords * SOAP_FMAC2 soap_instantiate_ns1__getAllKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAllKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAllKeywords, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords);
-		if (size)
-			*size = sizeof(ns1__getAllKeywords);
-		((ns1__getAllKeywords*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getAllKeywords);
-		for (int i = 0; i < n; i++)
-			((ns1__getAllKeywords*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getAllKeywords*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAllKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAllKeywords %p -> %p\n", q, p));
-	*(ns1__getAllKeywords*)p = *(ns1__getAllKeywords*)q;
-}
-
-void ns1__removePublicationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removePublicationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removePublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removePublicationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removePublicationResponse(struct soap *soap, const char *tag, int id, const ns1__removePublicationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removePublicationResponse");
-}
-
-void *ns1__removePublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removePublicationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removePublicationResponse * SOAP_FMAC4 soap_in_ns1__removePublicationResponse(struct soap *soap, const char *tag, ns1__removePublicationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removePublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removePublicationResponse, sizeof(ns1__removePublicationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removePublicationResponse)
-			return (ns1__removePublicationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removePublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removePublicationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removePublicationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removePublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removePublicationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removePublicationResponse * SOAP_FMAC4 soap_get_ns1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removePublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removePublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__removePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removePublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse);
-		if (size)
-			*size = sizeof(ns1__removePublicationResponse);
-		((ns1__removePublicationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removePublicationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removePublicationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removePublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removePublicationResponse %p -> %p\n", q, p));
-	*(ns1__removePublicationResponse*)p = *(ns1__removePublicationResponse*)q;
-}
-
-void ns1__removePublication::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removePublication::sessionId = NULL;
-	this->ns1__removePublication::publicationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removePublication::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removePublication::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__removePublication::publicationId);
-	/* transient soap skipped */
-}
-
-int ns1__removePublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removePublication(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removePublication(struct soap *soap, const char *tag, int id, const ns1__removePublication *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removePublication), "ns1:removePublication"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removePublication::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "publicationId", -1, &(a->ns1__removePublication::publicationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removePublication::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removePublication(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removePublication * SOAP_FMAC4 soap_in_ns1__removePublication(struct soap *soap, const char *tag, ns1__removePublication *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removePublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removePublication, sizeof(ns1__removePublication), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removePublication)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removePublication *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_publicationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removePublication::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_publicationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "publicationId", &(a->ns1__removePublication::publicationId), "xsd:long"))
-				{	soap_flag_publicationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removePublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removePublication, 0, sizeof(ns1__removePublication), 0, soap_copy_ns1__removePublication);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removePublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removePublication);
-	if (this->soap_out(soap, tag?tag:"ns1:removePublication", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removePublication::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removePublication(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removePublication * SOAP_FMAC4 soap_get_ns1__removePublication(struct soap *soap, ns1__removePublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removePublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removePublication * SOAP_FMAC2 soap_instantiate_ns1__removePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removePublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication);
-		if (size)
-			*size = sizeof(ns1__removePublication);
-		((ns1__removePublication*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removePublication);
-		for (int i = 0; i < n; i++)
-			((ns1__removePublication*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removePublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removePublication %p -> %p\n", q, p));
-	*(ns1__removePublication*)p = *(ns1__removePublication*)q;
-}
-
-void ns1__createDataSetsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSetsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataSetsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSetsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__createDataSetsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataSetsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSetsResponse(struct soap *soap, const char *tag, int id, const ns1__createDataSetsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSetsResponse), "ns1:createDataSetsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__createDataSetsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataSetsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataSetsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataSetsResponse * SOAP_FMAC4 soap_in_ns1__createDataSetsResponse(struct soap *soap, const char *tag, ns1__createDataSetsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataSetsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSetsResponse, sizeof(ns1__createDataSetsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataSetsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataSetsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__createDataSetsResponse::return_), "ns1:dataset"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataSetsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSetsResponse, 0, sizeof(ns1__createDataSetsResponse), 0, soap_copy_ns1__createDataSetsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataSetsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSetsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataSetsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataSetsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataSetsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataSetsResponse * SOAP_FMAC4 soap_get_ns1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataSetsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataSetsResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataSetsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSetsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSetsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse);
-		if (size)
-			*size = sizeof(ns1__createDataSetsResponse);
-		((ns1__createDataSetsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataSetsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataSetsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataSetsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSetsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSetsResponse %p -> %p\n", q, p));
-	*(ns1__createDataSetsResponse*)p = *(ns1__createDataSetsResponse*)q;
-}
-
-void ns1__createDataSets::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createDataSets::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSets::dataSets);
-	this->ns1__createDataSets::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataSets::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataSets::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSets::dataSets);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataSets::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__createDataSets::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataSets(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSets(struct soap *soap, const char *tag, int id, const ns1__createDataSets *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSets), "ns1:createDataSets"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataSets::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "dataSets", -1, &(a->ns1__createDataSets::dataSets), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__createDataSets::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataSets::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataSets(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataSets * SOAP_FMAC4 soap_in_ns1__createDataSets(struct soap *soap, const char *tag, ns1__createDataSets *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataSets *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSets, sizeof(ns1__createDataSets), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataSets)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataSets *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataSets::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "dataSets", &(a->ns1__createDataSets::dataSets), "ns1:dataset"))
-					continue;
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__createDataSets::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataSets *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSets, 0, sizeof(ns1__createDataSets), 0, soap_copy_ns1__createDataSets);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataSets::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSets);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataSets", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataSets::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataSets(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataSets * SOAP_FMAC4 soap_get_ns1__createDataSets(struct soap *soap, ns1__createDataSets *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataSets(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataSets * SOAP_FMAC2 soap_instantiate_ns1__createDataSets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSets, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets);
-		if (size)
-			*size = sizeof(ns1__createDataSets);
-		((ns1__createDataSets*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataSets);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataSets*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataSets*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSets %p -> %p\n", q, p));
-	*(ns1__createDataSets*)p = *(ns1__createDataSets*)q;
-}
-
-void ns1__deleteInvestigationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteInvestigationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__deleteInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteInvestigationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteInvestigationResponse");
-}
-
-void *ns1__deleteInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteInvestigationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_in_ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, ns1__deleteInvestigationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__deleteInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigationResponse, sizeof(ns1__deleteInvestigationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigationResponse)
-			return (ns1__deleteInvestigationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__deleteInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteInvestigationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_get_ns1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse);
-		if (size)
-			*size = sizeof(ns1__deleteInvestigationResponse);
-		((ns1__deleteInvestigationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteInvestigationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteInvestigationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigationResponse %p -> %p\n", q, p));
-	*(ns1__deleteInvestigationResponse*)p = *(ns1__deleteInvestigationResponse*)q;
-}
-
-void ns1__deleteInvestigation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__deleteInvestigation::sessionId = NULL;
-	this->ns1__deleteInvestigation::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__deleteInvestigation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteInvestigation::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteInvestigation::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__deleteInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__deleteInvestigation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigation(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteInvestigation), "ns1:deleteInvestigation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteInvestigation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__deleteInvestigation::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__deleteInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__deleteInvestigation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigation * SOAP_FMAC4 soap_in_ns1__deleteInvestigation(struct soap *soap, const char *tag, ns1__deleteInvestigation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__deleteInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigation, sizeof(ns1__deleteInvestigation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__deleteInvestigation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteInvestigation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__deleteInvestigation::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__deleteInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteInvestigation, 0, sizeof(ns1__deleteInvestigation), 0, soap_copy_ns1__deleteInvestigation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__deleteInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigation);
-	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__deleteInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__deleteInvestigation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigation * SOAP_FMAC4 soap_get_ns1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__deleteInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__deleteInvestigation * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation);
-		if (size)
-			*size = sizeof(ns1__deleteInvestigation);
-		((ns1__deleteInvestigation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__deleteInvestigation);
-		for (int i = 0; i < n; i++)
-			((ns1__deleteInvestigation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__deleteInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigation %p -> %p\n", q, p));
-	*(ns1__deleteInvestigation*)p = *(ns1__deleteInvestigation*)q;
-}
-
-void ns1__removeKeywordResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeKeywordResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeKeywordResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeKeywordResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeKeywordResponse(struct soap *soap, const char *tag, int id, const ns1__removeKeywordResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeKeywordResponse");
-}
-
-void *ns1__removeKeywordResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeKeywordResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeKeywordResponse * SOAP_FMAC4 soap_in_ns1__removeKeywordResponse(struct soap *soap, const char *tag, ns1__removeKeywordResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeKeywordResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeKeywordResponse, sizeof(ns1__removeKeywordResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeKeywordResponse)
-			return (ns1__removeKeywordResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeKeywordResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeKeywordResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeKeywordResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeKeywordResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeKeywordResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeKeywordResponse * SOAP_FMAC4 soap_get_ns1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeKeywordResponse * SOAP_FMAC2 soap_instantiate_ns1__removeKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeKeywordResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse);
-		if (size)
-			*size = sizeof(ns1__removeKeywordResponse);
-		((ns1__removeKeywordResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeKeywordResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeKeywordResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeKeywordResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeKeywordResponse %p -> %p\n", q, p));
-	*(ns1__removeKeywordResponse*)p = *(ns1__removeKeywordResponse*)q;
-}
-
-void ns1__removeKeyword::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeKeyword::sessionId = NULL;
-	this->ns1__removeKeyword::keywordPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeKeyword::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeKeyword::sessionId);
-	soap_serialize_PointerTons1__keywordPK(soap, &this->ns1__removeKeyword::keywordPK);
-	/* transient soap skipped */
-}
-
-int ns1__removeKeyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeKeyword(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeKeyword(struct soap *soap, const char *tag, int id, const ns1__removeKeyword *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeKeyword), "ns1:removeKeyword"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeKeyword::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keywordPK(soap, "keywordPK", -1, &(a->ns1__removeKeyword::keywordPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeKeyword::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeKeyword(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeKeyword * SOAP_FMAC4 soap_in_ns1__removeKeyword(struct soap *soap, const char *tag, ns1__removeKeyword *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeKeyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeKeyword, sizeof(ns1__removeKeyword), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeKeyword)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeKeyword *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_keywordPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeKeyword::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_keywordPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keywordPK(soap, "keywordPK", &(a->ns1__removeKeyword::keywordPK), "ns1:keywordPK"))
-				{	soap_flag_keywordPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeKeyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeKeyword, 0, sizeof(ns1__removeKeyword), 0, soap_copy_ns1__removeKeyword);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeKeyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeKeyword);
-	if (this->soap_out(soap, tag?tag:"ns1:removeKeyword", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeKeyword::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeKeyword(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeKeyword * SOAP_FMAC4 soap_get_ns1__removeKeyword(struct soap *soap, ns1__removeKeyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeKeyword * SOAP_FMAC2 soap_instantiate_ns1__removeKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeKeyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword);
-		if (size)
-			*size = sizeof(ns1__removeKeyword);
-		((ns1__removeKeyword*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeKeyword);
-		for (int i = 0; i < n; i++)
-			((ns1__removeKeyword*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeKeyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeKeyword %p -> %p\n", q, p));
-	*(ns1__removeKeyword*)p = *(ns1__removeKeyword*)q;
-}
-
-void ns1__removeInvestigatorResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeInvestigatorResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeInvestigatorResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__removeInvestigatorResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeInvestigatorResponse");
-}
-
-void *ns1__removeInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeInvestigatorResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, ns1__removeInvestigatorResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigatorResponse, sizeof(ns1__removeInvestigatorResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigatorResponse)
-			return (ns1__removeInvestigatorResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigatorResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigatorResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeInvestigatorResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse);
-		if (size)
-			*size = sizeof(ns1__removeInvestigatorResponse);
-		((ns1__removeInvestigatorResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeInvestigatorResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeInvestigatorResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigatorResponse %p -> %p\n", q, p));
-	*(ns1__removeInvestigatorResponse*)p = *(ns1__removeInvestigatorResponse*)q;
-}
-
-void ns1__removeInvestigator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeInvestigator::sessionId = NULL;
-	this->ns1__removeInvestigator::investigatorPK = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeInvestigator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeInvestigator::sessionId);
-	soap_serialize_PointerTons1__investigatorPK(soap, &this->ns1__removeInvestigator::investigatorPK);
-	/* transient soap skipped */
-}
-
-int ns1__removeInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeInvestigator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigator(struct soap *soap, const char *tag, int id, const ns1__removeInvestigator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeInvestigator), "ns1:removeInvestigator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeInvestigator::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigatorPK(soap, "investigatorPK", -1, &(a->ns1__removeInvestigator::investigatorPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeInvestigator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigator * SOAP_FMAC4 soap_in_ns1__removeInvestigator(struct soap *soap, const char *tag, ns1__removeInvestigator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigator, sizeof(ns1__removeInvestigator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeInvestigator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigatorPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeInvestigator::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigatorPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigatorPK(soap, "investigatorPK", &(a->ns1__removeInvestigator::investigatorPK), "ns1:investigatorPK"))
-				{	soap_flag_investigatorPK1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeInvestigator, 0, sizeof(ns1__removeInvestigator), 0, soap_copy_ns1__removeInvestigator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigator);
-	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeInvestigator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigator * SOAP_FMAC4 soap_get_ns1__removeInvestigator(struct soap *soap, ns1__removeInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeInvestigator * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator);
-		if (size)
-			*size = sizeof(ns1__removeInvestigator);
-		((ns1__removeInvestigator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeInvestigator);
-		for (int i = 0; i < n; i++)
-			((ns1__removeInvestigator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigator %p -> %p\n", q, p));
-	*(ns1__removeInvestigator*)p = *(ns1__removeInvestigator*)q;
-}
-
-void ns1__removeInvestigationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeInvestigationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeInvestigationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__removeInvestigationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeInvestigationResponse");
-}
-
-void *ns1__removeInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeInvestigationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigationResponse * SOAP_FMAC4 soap_in_ns1__removeInvestigationResponse(struct soap *soap, const char *tag, ns1__removeInvestigationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigationResponse, sizeof(ns1__removeInvestigationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigationResponse)
-			return (ns1__removeInvestigationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeInvestigationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigationResponse * SOAP_FMAC4 soap_get_ns1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse);
-		if (size)
-			*size = sizeof(ns1__removeInvestigationResponse);
-		((ns1__removeInvestigationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeInvestigationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeInvestigationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigationResponse %p -> %p\n", q, p));
-	*(ns1__removeInvestigationResponse*)p = *(ns1__removeInvestigationResponse*)q;
-}
-
-void ns1__removeInvestigation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeInvestigation::sessionId = NULL;
-	this->ns1__removeInvestigation::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeInvestigation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeInvestigation::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__removeInvestigation::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__removeInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeInvestigation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigation(struct soap *soap, const char *tag, int id, const ns1__removeInvestigation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeInvestigation), "ns1:removeInvestigation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeInvestigation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__removeInvestigation::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeInvestigation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigation * SOAP_FMAC4 soap_in_ns1__removeInvestigation(struct soap *soap, const char *tag, ns1__removeInvestigation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigation, sizeof(ns1__removeInvestigation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeInvestigation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeInvestigation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__removeInvestigation::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeInvestigation, 0, sizeof(ns1__removeInvestigation), 0, soap_copy_ns1__removeInvestigation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigation);
-	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeInvestigation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigation * SOAP_FMAC4 soap_get_ns1__removeInvestigation(struct soap *soap, ns1__removeInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeInvestigation * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation);
-		if (size)
-			*size = sizeof(ns1__removeInvestigation);
-		((ns1__removeInvestigation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeInvestigation);
-		for (int i = 0; i < n; i++)
-			((ns1__removeInvestigation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigation %p -> %p\n", q, p));
-	*(ns1__removeInvestigation*)p = *(ns1__removeInvestigation*)q;
-}
-
-void ns1__getFacilityUserByFederalIdResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getFacilityUserByFederalIdResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getFacilityUserByFederalIdResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__facilityUser(soap, &this->ns1__getFacilityUserByFederalIdResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__getFacilityUserByFederalIdResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getFacilityUserByFederalIdResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFederalIdResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse), "ns1:getFacilityUserByFederalIdResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__facilityUser(soap, "return", -1, &(a->ns1__getFacilityUserByFederalIdResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getFacilityUserByFederalIdResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getFacilityUserByFederalIdResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalIdResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getFacilityUserByFederalIdResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, sizeof(ns1__getFacilityUserByFederalIdResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getFacilityUserByFederalIdResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__facilityUser(soap, "return", &(a->ns1__getFacilityUserByFederalIdResponse::return_), "ns1:facilityUser"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getFacilityUserByFederalIdResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, 0, sizeof(ns1__getFacilityUserByFederalIdResponse), 0, soap_copy_ns1__getFacilityUserByFederalIdResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getFacilityUserByFederalIdResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFederalIdResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getFacilityUserByFederalIdResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getFacilityUserByFederalIdResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getFacilityUserByFederalIdResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getFacilityUserByFederalIdResponse * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFederalIdResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse);
-		if (size)
-			*size = sizeof(ns1__getFacilityUserByFederalIdResponse);
-		((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getFacilityUserByFederalIdResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getFacilityUserByFederalIdResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFederalIdResponse %p -> %p\n", q, p));
-	*(ns1__getFacilityUserByFederalIdResponse*)p = *(ns1__getFacilityUserByFederalIdResponse*)q;
-}
-
-void ns1__getFacilityUserByFederalId::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__getFacilityUserByFederalId::sessionId = NULL;
-	this->ns1__getFacilityUserByFederalId::federalId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__getFacilityUserByFederalId::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFederalId::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFederalId::federalId);
-	/* transient soap skipped */
-}
-
-int ns1__getFacilityUserByFederalId::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__getFacilityUserByFederalId(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFederalId *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFederalId), "ns1:getFacilityUserByFederalId"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getFacilityUserByFederalId::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "federalId", -1, &(a->ns1__getFacilityUserByFederalId::federalId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__getFacilityUserByFederalId::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__getFacilityUserByFederalId(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalId *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__getFacilityUserByFederalId *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFederalId, sizeof(ns1__getFacilityUserByFederalId), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFederalId)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__getFacilityUserByFederalId *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_federalId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getFacilityUserByFederalId::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_federalId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "federalId", &(a->ns1__getFacilityUserByFederalId::federalId), "xsd:string"))
-				{	soap_flag_federalId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__getFacilityUserByFederalId *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFederalId, 0, sizeof(ns1__getFacilityUserByFederalId), 0, soap_copy_ns1__getFacilityUserByFederalId);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__getFacilityUserByFederalId::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFederalId);
-	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFederalId", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__getFacilityUserByFederalId::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__getFacilityUserByFederalId(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__getFacilityUserByFederalId(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__getFacilityUserByFederalId * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFederalId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFederalId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFederalId, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId);
-		if (size)
-			*size = sizeof(ns1__getFacilityUserByFederalId);
-		((ns1__getFacilityUserByFederalId*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__getFacilityUserByFederalId);
-		for (int i = 0; i < n; i++)
-			((ns1__getFacilityUserByFederalId*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__getFacilityUserByFederalId*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFederalId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFederalId %p -> %p\n", q, p));
-	*(ns1__getFacilityUserByFederalId*)p = *(ns1__getFacilityUserByFederalId*)q;
-}
-
-void ns1__downloadDatasetResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadDatasetResponse::URL = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadDatasetResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatasetResponse::URL);
-	/* transient soap skipped */
-}
-
-int ns1__downloadDatasetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadDatasetResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatasetResponse(struct soap *soap, const char *tag, int id, const ns1__downloadDatasetResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatasetResponse), "ns1:downloadDatasetResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "URL", -1, &(a->ns1__downloadDatasetResponse::URL), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadDatasetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadDatasetResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatasetResponse * SOAP_FMAC4 soap_in_ns1__downloadDatasetResponse(struct soap *soap, const char *tag, ns1__downloadDatasetResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadDatasetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatasetResponse, sizeof(ns1__downloadDatasetResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatasetResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadDatasetResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_URL1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "URL", &(a->ns1__downloadDatasetResponse::URL), "xsd:string"))
-				{	soap_flag_URL1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadDatasetResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatasetResponse, 0, sizeof(ns1__downloadDatasetResponse), 0, soap_copy_ns1__downloadDatasetResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadDatasetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatasetResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadDatasetResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadDatasetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadDatasetResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatasetResponse * SOAP_FMAC4 soap_get_ns1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadDatasetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadDatasetResponse * SOAP_FMAC2 soap_instantiate_ns1__downloadDatasetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatasetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatasetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse);
-		if (size)
-			*size = sizeof(ns1__downloadDatasetResponse);
-		((ns1__downloadDatasetResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadDatasetResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadDatasetResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadDatasetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatasetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatasetResponse %p -> %p\n", q, p));
-	*(ns1__downloadDatasetResponse*)p = *(ns1__downloadDatasetResponse*)q;
-}
-
-void ns1__downloadDataset::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__downloadDataset::sessionId = NULL;
-	this->ns1__downloadDataset::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__downloadDataset::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDataset::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__downloadDataset::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__downloadDataset::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__downloadDataset(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDataset(struct soap *soap, const char *tag, int id, const ns1__downloadDataset *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDataset), "ns1:downloadDataset"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__downloadDataset::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__downloadDataset::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__downloadDataset::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__downloadDataset(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__downloadDataset * SOAP_FMAC4 soap_in_ns1__downloadDataset(struct soap *soap, const char *tag, ns1__downloadDataset *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__downloadDataset *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDataset, sizeof(ns1__downloadDataset), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__downloadDataset)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__downloadDataset *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__downloadDataset::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__downloadDataset::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__downloadDataset *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDataset, 0, sizeof(ns1__downloadDataset), 0, soap_copy_ns1__downloadDataset);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__downloadDataset::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDataset);
-	if (this->soap_out(soap, tag?tag:"ns1:downloadDataset", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__downloadDataset::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__downloadDataset(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__downloadDataset * SOAP_FMAC4 soap_get_ns1__downloadDataset(struct soap *soap, ns1__downloadDataset *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__downloadDataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__downloadDataset * SOAP_FMAC2 soap_instantiate_ns1__downloadDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDataset, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset);
-		if (size)
-			*size = sizeof(ns1__downloadDataset);
-		((ns1__downloadDataset*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__downloadDataset);
-		for (int i = 0; i < n; i++)
-			((ns1__downloadDataset*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__downloadDataset*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDataset %p -> %p\n", q, p));
-	*(ns1__downloadDataset*)p = *(ns1__downloadDataset*)q;
-}
-
-void ns1__logoutResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->ns1__logoutResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__logoutResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__logoutResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__logoutResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logoutResponse(struct soap *soap, const char *tag, int id, const ns1__logoutResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__logoutResponse), "ns1:logoutResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "return", -1, &(a->ns1__logoutResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__logoutResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__logoutResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__logoutResponse * SOAP_FMAC4 soap_in_ns1__logoutResponse(struct soap *soap, const char *tag, ns1__logoutResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__logoutResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logoutResponse, sizeof(ns1__logoutResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__logoutResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__logoutResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "return", &(a->ns1__logoutResponse::return_), "xsd:boolean"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__logoutResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__logoutResponse, 0, sizeof(ns1__logoutResponse), 0, soap_copy_ns1__logoutResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__logoutResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__logoutResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:logoutResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__logoutResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__logoutResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__logoutResponse * SOAP_FMAC4 soap_get_ns1__logoutResponse(struct soap *soap, ns1__logoutResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__logoutResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__logoutResponse * SOAP_FMAC2 soap_instantiate_ns1__logoutResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__logoutResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__logoutResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse);
-		if (size)
-			*size = sizeof(ns1__logoutResponse);
-		((ns1__logoutResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__logoutResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__logoutResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__logoutResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__logoutResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__logoutResponse %p -> %p\n", q, p));
-	*(ns1__logoutResponse*)p = *(ns1__logoutResponse*)q;
-}
-
-void ns1__logout::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__logout::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__logout::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__logout::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__logout::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__logout(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logout(struct soap *soap, const char *tag, int id, const ns1__logout *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__logout), "ns1:logout"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__logout::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__logout::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__logout(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__logout * SOAP_FMAC4 soap_in_ns1__logout(struct soap *soap, const char *tag, ns1__logout *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__logout *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logout, sizeof(ns1__logout), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__logout)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__logout *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__logout::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__logout *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__logout, 0, sizeof(ns1__logout), 0, soap_copy_ns1__logout);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__logout::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__logout);
-	if (this->soap_out(soap, tag?tag:"ns1:logout", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__logout::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__logout(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__logout * SOAP_FMAC4 soap_get_ns1__logout(struct soap *soap, ns1__logout *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__logout(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__logout * SOAP_FMAC2 soap_instantiate_ns1__logout(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__logout(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__logout, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__logout);
-		if (size)
-			*size = sizeof(ns1__logout);
-		((ns1__logout*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__logout[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__logout);
-		for (int i = 0; i < n; i++)
-			((ns1__logout*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__logout*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__logout(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__logout %p -> %p\n", q, p));
-	*(ns1__logout*)p = *(ns1__logout*)q;
-}
-
-void ns1__listFacilityCyclesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__facilityCycle(soap, &this->ns1__listFacilityCyclesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listFacilityCyclesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__facilityCycle(soap, &this->ns1__listFacilityCyclesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listFacilityCyclesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listFacilityCyclesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listFacilityCyclesResponse(struct soap *soap, const char *tag, int id, const ns1__listFacilityCyclesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listFacilityCyclesResponse), "ns1:listFacilityCyclesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__facilityCycle(soap, "return", -1, &(a->ns1__listFacilityCyclesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listFacilityCyclesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listFacilityCyclesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listFacilityCyclesResponse * SOAP_FMAC4 soap_in_ns1__listFacilityCyclesResponse(struct soap *soap, const char *tag, ns1__listFacilityCyclesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listFacilityCyclesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listFacilityCyclesResponse, sizeof(ns1__listFacilityCyclesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listFacilityCyclesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listFacilityCyclesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__facilityCycle(soap, "return", &(a->ns1__listFacilityCyclesResponse::return_), "ns1:facilityCycle"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listFacilityCyclesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listFacilityCyclesResponse, 0, sizeof(ns1__listFacilityCyclesResponse), 0, soap_copy_ns1__listFacilityCyclesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listFacilityCyclesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listFacilityCyclesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listFacilityCyclesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listFacilityCyclesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listFacilityCyclesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listFacilityCyclesResponse * SOAP_FMAC4 soap_get_ns1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listFacilityCyclesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listFacilityCyclesResponse * SOAP_FMAC2 soap_instantiate_ns1__listFacilityCyclesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listFacilityCyclesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listFacilityCyclesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse);
-		if (size)
-			*size = sizeof(ns1__listFacilityCyclesResponse);
-		((ns1__listFacilityCyclesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listFacilityCyclesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listFacilityCyclesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listFacilityCyclesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listFacilityCyclesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listFacilityCyclesResponse %p -> %p\n", q, p));
-	*(ns1__listFacilityCyclesResponse*)p = *(ns1__listFacilityCyclesResponse*)q;
-}
-
-void ns1__listFacilityCycles::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listFacilityCycles::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listFacilityCycles::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listFacilityCycles::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listFacilityCycles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listFacilityCycles(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listFacilityCycles(struct soap *soap, const char *tag, int id, const ns1__listFacilityCycles *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listFacilityCycles), "ns1:listFacilityCycles"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listFacilityCycles::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listFacilityCycles::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listFacilityCycles(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listFacilityCycles * SOAP_FMAC4 soap_in_ns1__listFacilityCycles(struct soap *soap, const char *tag, ns1__listFacilityCycles *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listFacilityCycles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listFacilityCycles, sizeof(ns1__listFacilityCycles), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listFacilityCycles)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listFacilityCycles *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listFacilityCycles::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listFacilityCycles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listFacilityCycles, 0, sizeof(ns1__listFacilityCycles), 0, soap_copy_ns1__listFacilityCycles);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listFacilityCycles::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listFacilityCycles);
-	if (this->soap_out(soap, tag?tag:"ns1:listFacilityCycles", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listFacilityCycles::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listFacilityCycles(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listFacilityCycles * SOAP_FMAC4 soap_get_ns1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listFacilityCycles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listFacilityCycles * SOAP_FMAC2 soap_instantiate_ns1__listFacilityCycles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listFacilityCycles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listFacilityCycles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles);
-		if (size)
-			*size = sizeof(ns1__listFacilityCycles);
-		((ns1__listFacilityCycles*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listFacilityCycles);
-		for (int i = 0; i < n; i++)
-			((ns1__listFacilityCycles*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listFacilityCycles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listFacilityCycles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listFacilityCycles %p -> %p\n", q, p));
-	*(ns1__listFacilityCycles*)p = *(ns1__listFacilityCycles*)q;
-}
-
-void ns1__addDataFileParametersResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParametersResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataFileParametersResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParametersResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__addDataFileParametersResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataFileParametersResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParametersResponse(struct soap *soap, const char *tag, int id, const ns1__addDataFileParametersResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParametersResponse), "ns1:addDataFileParametersResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "return", -1, &(a->ns1__addDataFileParametersResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataFileParametersResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataFileParametersResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParametersResponse * SOAP_FMAC4 soap_in_ns1__addDataFileParametersResponse(struct soap *soap, const char *tag, ns1__addDataFileParametersResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataFileParametersResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParametersResponse, sizeof(ns1__addDataFileParametersResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParametersResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataFileParametersResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "return", &(a->ns1__addDataFileParametersResponse::return_), "ns1:datafileParameter"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataFileParametersResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParametersResponse, 0, sizeof(ns1__addDataFileParametersResponse), 0, soap_copy_ns1__addDataFileParametersResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataFileParametersResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParametersResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParametersResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataFileParametersResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataFileParametersResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParametersResponse * SOAP_FMAC4 soap_get_ns1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataFileParametersResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataFileParametersResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParametersResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParametersResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParametersResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse);
-		if (size)
-			*size = sizeof(ns1__addDataFileParametersResponse);
-		((ns1__addDataFileParametersResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataFileParametersResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataFileParametersResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataFileParametersResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParametersResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParametersResponse %p -> %p\n", q, p));
-	*(ns1__addDataFileParametersResponse*)p = *(ns1__addDataFileParametersResponse*)q;
-}
-
-void ns1__addDataFileParameters::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__addDataFileParameters::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameters::dataFileParameters);
-	this->ns1__addDataFileParameters::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__addDataFileParameters::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataFileParameters::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameters::dataFileParameters);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataFileParameters::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__addDataFileParameters::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__addDataFileParameters(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParameters(struct soap *soap, const char *tag, int id, const ns1__addDataFileParameters *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParameters), "ns1:addDataFileParameters"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataFileParameters::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "dataFileParameters", -1, &(a->ns1__addDataFileParameters::dataFileParameters), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__addDataFileParameters::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__addDataFileParameters::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__addDataFileParameters(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameters * SOAP_FMAC4 soap_in_ns1__addDataFileParameters(struct soap *soap, const char *tag, ns1__addDataFileParameters *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__addDataFileParameters *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParameters, sizeof(ns1__addDataFileParameters), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParameters)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__addDataFileParameters *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataFileParameters::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "dataFileParameters", &(a->ns1__addDataFileParameters::dataFileParameters), "ns1:datafileParameter"))
-					continue;
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__addDataFileParameters::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__addDataFileParameters *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParameters, 0, sizeof(ns1__addDataFileParameters), 0, soap_copy_ns1__addDataFileParameters);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__addDataFileParameters::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParameters);
-	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParameters", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__addDataFileParameters::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__addDataFileParameters(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameters * SOAP_FMAC4 soap_get_ns1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__addDataFileParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__addDataFileParameters * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParameters, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters);
-		if (size)
-			*size = sizeof(ns1__addDataFileParameters);
-		((ns1__addDataFileParameters*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__addDataFileParameters);
-		for (int i = 0; i < n; i++)
-			((ns1__addDataFileParameters*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__addDataFileParameters*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParameters %p -> %p\n", q, p));
-	*(ns1__addDataFileParameters*)p = *(ns1__addDataFileParameters*)q;
-}
-
-void ns1__removeAuthorisationResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeAuthorisationResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeAuthorisationResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__removeAuthorisationResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeAuthorisationResponse");
-}
-
-void *ns1__removeAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeAuthorisationResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, ns1__removeAuthorisationResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeAuthorisationResponse, sizeof(ns1__removeAuthorisationResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeAuthorisationResponse)
-			return (ns1__removeAuthorisationResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeAuthorisationResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeAuthorisationResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeAuthorisationResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__removeAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse);
-		if (size)
-			*size = sizeof(ns1__removeAuthorisationResponse);
-		((ns1__removeAuthorisationResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeAuthorisationResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeAuthorisationResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeAuthorisationResponse %p -> %p\n", q, p));
-	*(ns1__removeAuthorisationResponse*)p = *(ns1__removeAuthorisationResponse*)q;
-}
-
-void ns1__removeAuthorisation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeAuthorisation::sessionId = NULL;
-	this->ns1__removeAuthorisation::authorisationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeAuthorisation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeAuthorisation::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__removeAuthorisation::authorisationId);
-	/* transient soap skipped */
-}
-
-int ns1__removeAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeAuthorisation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeAuthorisation(struct soap *soap, const char *tag, int id, const ns1__removeAuthorisation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeAuthorisation), "ns1:removeAuthorisation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeAuthorisation::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "authorisationId", -1, &(a->ns1__removeAuthorisation::authorisationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeAuthorisation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisation * SOAP_FMAC4 soap_in_ns1__removeAuthorisation(struct soap *soap, const char *tag, ns1__removeAuthorisation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeAuthorisation, sizeof(ns1__removeAuthorisation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeAuthorisation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeAuthorisation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_authorisationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeAuthorisation::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_authorisationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "authorisationId", &(a->ns1__removeAuthorisation::authorisationId), "xsd:long"))
-				{	soap_flag_authorisationId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeAuthorisation, 0, sizeof(ns1__removeAuthorisation), 0, soap_copy_ns1__removeAuthorisation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeAuthorisation);
-	if (this->soap_out(soap, tag?tag:"ns1:removeAuthorisation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeAuthorisation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisation * SOAP_FMAC4 soap_get_ns1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__removeAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation);
-		if (size)
-			*size = sizeof(ns1__removeAuthorisation);
-		((ns1__removeAuthorisation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeAuthorisation);
-		for (int i = 0; i < n; i++)
-			((ns1__removeAuthorisation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeAuthorisation %p -> %p\n", q, p));
-	*(ns1__removeAuthorisation*)p = *(ns1__removeAuthorisation*)q;
-}
-
-void ns1__removeDataFileResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataFileResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataFileResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataFileResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataFileResponse");
-}
-
-void *ns1__removeDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataFileResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileResponse * SOAP_FMAC4 soap_in_ns1__removeDataFileResponse(struct soap *soap, const char *tag, ns1__removeDataFileResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFileResponse, sizeof(ns1__removeDataFileResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFileResponse)
-			return (ns1__removeDataFileResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFileResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataFileResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataFileResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileResponse * SOAP_FMAC4 soap_get_ns1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse);
-		if (size)
-			*size = sizeof(ns1__removeDataFileResponse);
-		((ns1__removeDataFileResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataFileResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataFileResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFileResponse %p -> %p\n", q, p));
-	*(ns1__removeDataFileResponse*)p = *(ns1__removeDataFileResponse*)q;
-}
-
-void ns1__removeDataFile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeDataFile::sessionId = NULL;
-	this->ns1__removeDataFile::datafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeDataFile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataFile::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__removeDataFile::datafileId);
-	/* transient soap skipped */
-}
-
-int ns1__removeDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeDataFile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFile(struct soap *soap, const char *tag, int id, const ns1__removeDataFile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataFile), "ns1:removeDataFile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataFile::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__removeDataFile::datafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeDataFile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFile * SOAP_FMAC4 soap_in_ns1__removeDataFile(struct soap *soap, const char *tag, ns1__removeDataFile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFile, sizeof(ns1__removeDataFile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeDataFile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataFile::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__removeDataFile::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataFile, 0, sizeof(ns1__removeDataFile), 0, soap_copy_ns1__removeDataFile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFile);
-	if (this->soap_out(soap, tag?tag:"ns1:removeDataFile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeDataFile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFile * SOAP_FMAC4 soap_get_ns1__removeDataFile(struct soap *soap, ns1__removeDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeDataFile * SOAP_FMAC2 soap_instantiate_ns1__removeDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile);
-		if (size)
-			*size = sizeof(ns1__removeDataFile);
-		((ns1__removeDataFile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeDataFile);
-		for (int i = 0; i < n; i++)
-			((ns1__removeDataFile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFile %p -> %p\n", q, p));
-	*(ns1__removeDataFile*)p = *(ns1__removeDataFile*)q;
-}
-
-void ns1__searchDatafilesByParameterComparatorsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatafilesByParameterComparatorsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatafilesByParameterComparatorsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatafilesByParameterComparatorsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparatorsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse), "ns1:searchDatafilesByParameterComparatorsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchDatafilesByParameterComparatorsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatafilesByParameterComparatorsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatafilesByParameterComparatorsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatafilesByParameterComparatorsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchDatafilesByParameterComparatorsResponse::return_), "ns1:datafile"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatafilesByParameterComparatorsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, 0, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), 0, soap_copy_ns1__searchDatafilesByParameterComparatorsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatafilesByParameterComparatorsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatafilesByParameterComparatorsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatafilesByParameterComparatorsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatafilesByParameterComparatorsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse);
-		if (size)
-			*size = sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
-		((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparatorsResponse %p -> %p\n", q, p));
-	*(ns1__searchDatafilesByParameterComparatorsResponse*)p = *(ns1__searchDatafilesByParameterComparatorsResponse*)q;
-}
-
-void ns1__searchDatafilesByParameterComparators::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchDatafilesByParameterComparators::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatafilesByParameterComparators::comparators);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchDatafilesByParameterComparators::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatafilesByParameterComparators::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatafilesByParameterComparators::comparators);
-	/* transient soap skipped */
-}
-
-int ns1__searchDatafilesByParameterComparators::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchDatafilesByParameterComparators(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparators *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators), "ns1:searchDatafilesByParameterComparators"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatafilesByParameterComparators::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", -1, &(a->ns1__searchDatafilesByParameterComparators::comparators), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchDatafilesByParameterComparators::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchDatafilesByParameterComparators(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparators *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchDatafilesByParameterComparators *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, sizeof(ns1__searchDatafilesByParameterComparators), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparators)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchDatafilesByParameterComparators *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatafilesByParameterComparators::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", &(a->ns1__searchDatafilesByParameterComparators::comparators), "ns1:parameterComparisonCondition"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchDatafilesByParameterComparators *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, 0, sizeof(ns1__searchDatafilesByParameterComparators), 0, soap_copy_ns1__searchDatafilesByParameterComparators);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchDatafilesByParameterComparators::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparators);
-	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparators", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchDatafilesByParameterComparators::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchDatafilesByParameterComparators(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchDatafilesByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchDatafilesByParameterComparators * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators);
-		if (size)
-			*size = sizeof(ns1__searchDatafilesByParameterComparators);
-		((ns1__searchDatafilesByParameterComparators*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchDatafilesByParameterComparators);
-		for (int i = 0; i < n; i++)
-			((ns1__searchDatafilesByParameterComparators*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchDatafilesByParameterComparators*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparators %p -> %p\n", q, p));
-	*(ns1__searchDatafilesByParameterComparators*)p = *(ns1__searchDatafilesByParameterComparators*)q;
-}
-
-void ns1__ParameterSearchException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__ParameterSearchException::message = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__ParameterSearchException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ParameterSearchException::message);
-	/* transient soap skipped */
-}
-
-int ns1__ParameterSearchException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__ParameterSearchException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ParameterSearchException(struct soap *soap, const char *tag, int id, const ns1__ParameterSearchException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ParameterSearchException), "ns1:ParameterSearchException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__ParameterSearchException::message), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__ParameterSearchException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__ParameterSearchException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__ParameterSearchException * SOAP_FMAC4 soap_in_ns1__ParameterSearchException(struct soap *soap, const char *tag, ns1__ParameterSearchException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__ParameterSearchException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ParameterSearchException, sizeof(ns1__ParameterSearchException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__ParameterSearchException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__ParameterSearchException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__ParameterSearchException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__ParameterSearchException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ParameterSearchException, 0, sizeof(ns1__ParameterSearchException), 0, soap_copy_ns1__ParameterSearchException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__ParameterSearchException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ParameterSearchException);
-	if (this->soap_out(soap, tag?tag:"ns1:ParameterSearchException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__ParameterSearchException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__ParameterSearchException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__ParameterSearchException * SOAP_FMAC4 soap_get_ns1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__ParameterSearchException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__ParameterSearchException * SOAP_FMAC2 soap_instantiate_ns1__ParameterSearchException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ParameterSearchException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ParameterSearchException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException);
-		if (size)
-			*size = sizeof(ns1__ParameterSearchException);
-		((ns1__ParameterSearchException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__ParameterSearchException);
-		for (int i = 0; i < n; i++)
-			((ns1__ParameterSearchException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__ParameterSearchException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ParameterSearchException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ParameterSearchException %p -> %p\n", q, p));
-	*(ns1__ParameterSearchException*)p = *(ns1__ParameterSearchException*)q;
-}
-
-void ns1__shiftPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__shiftPK::endDate = NULL;
-	this->ns1__shiftPK::investigationId = NULL;
-	this->ns1__shiftPK::startDate = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__shiftPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTotime(soap, &this->ns1__shiftPK::endDate);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__shiftPK::investigationId);
-	soap_serialize_PointerTotime(soap, &this->ns1__shiftPK::startDate);
-	/* transient soap skipped */
-}
-
-int ns1__shiftPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__shiftPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__shiftPK(struct soap *soap, const char *tag, int id, const ns1__shiftPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__shiftPK), "ns1:shiftPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTotime(soap, "endDate", -1, &(a->ns1__shiftPK::endDate), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__shiftPK::investigationId), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "startDate", -1, &(a->ns1__shiftPK::startDate), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__shiftPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__shiftPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__shiftPK * SOAP_FMAC4 soap_in_ns1__shiftPK(struct soap *soap, const char *tag, ns1__shiftPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__shiftPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__shiftPK, sizeof(ns1__shiftPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__shiftPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__shiftPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_endDate1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	size_t soap_flag_startDate1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_endDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "endDate", &(a->ns1__shiftPK::endDate), "xsd:dateTime"))
-				{	soap_flag_endDate1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__shiftPK::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag_startDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "startDate", &(a->ns1__shiftPK::startDate), "xsd:dateTime"))
-				{	soap_flag_startDate1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__shiftPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__shiftPK, 0, sizeof(ns1__shiftPK), 0, soap_copy_ns1__shiftPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__shiftPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__shiftPK);
-	if (this->soap_out(soap, tag?tag:"ns1:shiftPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__shiftPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__shiftPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__shiftPK * SOAP_FMAC4 soap_get_ns1__shiftPK(struct soap *soap, ns1__shiftPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__shiftPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__shiftPK * SOAP_FMAC2 soap_instantiate_ns1__shiftPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__shiftPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__shiftPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK);
-		if (size)
-			*size = sizeof(ns1__shiftPK);
-		((ns1__shiftPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__shiftPK);
-		for (int i = 0; i < n; i++)
-			((ns1__shiftPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__shiftPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__shiftPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__shiftPK %p -> %p\n", q, p));
-	*(ns1__shiftPK*)p = *(ns1__shiftPK*)q;
-}
-
-void ns1__shift::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__shift::shiftComment = NULL;
-	this->ns1__shift::shiftPK = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__shift::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__shift::shiftComment);
-	soap_serialize_PointerTons1__shiftPK(soap, &this->ns1__shift::shiftPK);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__shift::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__shift(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__shift(struct soap *soap, const char *tag, int id, const ns1__shift *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__shift), "ns1:shift"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "shiftComment", -1, &(a->ns1__shift::shiftComment), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__shiftPK(soap, "shiftPK", -1, &(a->ns1__shift::shiftPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__shift::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__shift(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__shift * SOAP_FMAC4 soap_in_ns1__shift(struct soap *soap, const char *tag, ns1__shift *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__shift *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__shift, sizeof(ns1__shift), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__shift)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__shift *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_shiftComment1 = 1;
-	size_t soap_flag_shiftPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_shiftComment1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "shiftComment", &(a->ns1__shift::shiftComment), "xsd:string"))
-				{	soap_flag_shiftComment1--;
-					continue;
-				}
-			if (soap_flag_shiftPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__shiftPK(soap, "shiftPK", &(a->ns1__shift::shiftPK), "ns1:shiftPK"))
-				{	soap_flag_shiftPK1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__shift *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__shift, 0, sizeof(ns1__shift), 0, soap_copy_ns1__shift);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__shift::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__shift);
-	if (this->soap_out(soap, tag?tag:"ns1:shift", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__shift::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__shift(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__shift * SOAP_FMAC4 soap_get_ns1__shift(struct soap *soap, ns1__shift *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__shift(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__shift * SOAP_FMAC2 soap_instantiate_ns1__shift(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__shift(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__shift, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__shift);
-		if (size)
-			*size = sizeof(ns1__shift);
-		((ns1__shift*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__shift[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__shift);
-		for (int i = 0; i < n; i++)
-			((ns1__shift*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__shift*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__shift(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__shift %p -> %p\n", q, p));
-	*(ns1__shift*)p = *(ns1__shift*)q;
-}
-
-void ns1__publication::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__publication::fullReference = NULL;
-	this->ns1__publication::id = NULL;
-	this->ns1__publication::repository = NULL;
-	this->ns1__publication::repositoryId = NULL;
-	this->ns1__publication::url = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__publication::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::fullReference);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__publication::id);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::repository);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::repositoryId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::url);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__publication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__publication(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__publication(struct soap *soap, const char *tag, int id, const ns1__publication *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__publication), "ns1:publication"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "fullReference", -1, &(a->ns1__publication::fullReference), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__publication::id), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "repository", -1, &(a->ns1__publication::repository), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "repositoryId", -1, &(a->ns1__publication::repositoryId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "url", -1, &(a->ns1__publication::url), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__publication::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__publication(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__publication * SOAP_FMAC4 soap_in_ns1__publication(struct soap *soap, const char *tag, ns1__publication *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__publication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__publication, sizeof(ns1__publication), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__publication)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__publication *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_fullReference1 = 1;
-	size_t soap_flag_id1 = 1;
-	size_t soap_flag_repository1 = 1;
-	size_t soap_flag_repositoryId1 = 1;
-	size_t soap_flag_url1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_fullReference1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "fullReference", &(a->ns1__publication::fullReference), "xsd:string"))
-				{	soap_flag_fullReference1--;
-					continue;
-				}
-			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__publication::id), "xsd:long"))
-				{	soap_flag_id1--;
-					continue;
-				}
-			if (soap_flag_repository1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "repository", &(a->ns1__publication::repository), "xsd:string"))
-				{	soap_flag_repository1--;
-					continue;
-				}
-			if (soap_flag_repositoryId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "repositoryId", &(a->ns1__publication::repositoryId), "xsd:string"))
-				{	soap_flag_repositoryId1--;
-					continue;
-				}
-			if (soap_flag_url1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "url", &(a->ns1__publication::url), "xsd:string"))
-				{	soap_flag_url1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__publication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__publication, 0, sizeof(ns1__publication), 0, soap_copy_ns1__publication);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__publication::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__publication);
-	if (this->soap_out(soap, tag?tag:"ns1:publication", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__publication::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__publication(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__publication * SOAP_FMAC4 soap_get_ns1__publication(struct soap *soap, ns1__publication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__publication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__publication * SOAP_FMAC2 soap_instantiate_ns1__publication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__publication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__publication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__publication);
-		if (size)
-			*size = sizeof(ns1__publication);
-		((ns1__publication*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__publication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__publication);
-		for (int i = 0; i < n; i++)
-			((ns1__publication*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__publication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__publication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__publication %p -> %p\n", q, p));
-	*(ns1__publication*)p = *(ns1__publication*)q;
-}
-
-void ns1__keywordPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__keywordPK::investigationId = NULL;
-	this->ns1__keywordPK::name = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__keywordPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerToLONG64(soap, &this->ns1__keywordPK::investigationId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__keywordPK::name);
-	/* transient soap skipped */
-}
-
-int ns1__keywordPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__keywordPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordPK(struct soap *soap, const char *tag, int id, const ns1__keywordPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keywordPK), "ns1:keywordPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__keywordPK::investigationId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__keywordPK::name), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__keywordPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__keywordPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__keywordPK * SOAP_FMAC4 soap_in_ns1__keywordPK(struct soap *soap, const char *tag, ns1__keywordPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__keywordPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordPK, sizeof(ns1__keywordPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__keywordPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__keywordPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	size_t soap_flag_name1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__keywordPK::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__keywordPK::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__keywordPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keywordPK, 0, sizeof(ns1__keywordPK), 0, soap_copy_ns1__keywordPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__keywordPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keywordPK);
-	if (this->soap_out(soap, tag?tag:"ns1:keywordPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__keywordPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__keywordPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__keywordPK * SOAP_FMAC4 soap_get_ns1__keywordPK(struct soap *soap, ns1__keywordPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__keywordPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__keywordPK * SOAP_FMAC2 soap_instantiate_ns1__keywordPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keywordPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keywordPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK);
-		if (size)
-			*size = sizeof(ns1__keywordPK);
-		((ns1__keywordPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__keywordPK);
-		for (int i = 0; i < n; i++)
-			((ns1__keywordPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__keywordPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keywordPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keywordPK %p -> %p\n", q, p));
-	*(ns1__keywordPK*)p = *(ns1__keywordPK*)q;
-}
-
-void ns1__keyword::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__keyword::keywordPK = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__keyword::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__keywordPK(soap, &this->ns1__keyword::keywordPK);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__keyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__keyword(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keyword(struct soap *soap, const char *tag, int id, const ns1__keyword *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keyword), "ns1:keyword"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__keywordPK(soap, "keywordPK", -1, &(a->ns1__keyword::keywordPK), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__keyword::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__keyword(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__keyword * SOAP_FMAC4 soap_in_ns1__keyword(struct soap *soap, const char *tag, ns1__keyword *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__keyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keyword, sizeof(ns1__keyword), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__keyword)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__keyword *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_keywordPK1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_keywordPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__keywordPK(soap, "keywordPK", &(a->ns1__keyword::keywordPK), "ns1:keywordPK"))
-				{	soap_flag_keywordPK1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__keyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keyword, 0, sizeof(ns1__keyword), 0, soap_copy_ns1__keyword);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__keyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keyword);
-	if (this->soap_out(soap, tag?tag:"ns1:keyword", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__keyword::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__keyword(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__keyword * SOAP_FMAC4 soap_get_ns1__keyword(struct soap *soap, ns1__keyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__keyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__keyword * SOAP_FMAC2 soap_instantiate_ns1__keyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keyword);
-		if (size)
-			*size = sizeof(ns1__keyword);
-		((ns1__keyword*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__keyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__keyword);
-		for (int i = 0; i < n; i++)
-			((ns1__keyword*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__keyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keyword %p -> %p\n", q, p));
-	*(ns1__keyword*)p = *(ns1__keyword*)q;
-}
-
-void ns1__investigatorPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__investigatorPK::facilityUserId = NULL;
-	this->ns1__investigatorPK::investigationId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__investigatorPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigatorPK::facilityUserId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__investigatorPK::investigationId);
-	/* transient soap skipped */
-}
-
-int ns1__investigatorPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__investigatorPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigatorPK(struct soap *soap, const char *tag, int id, const ns1__investigatorPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigatorPK), "ns1:investigatorPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "facilityUserId", -1, &(a->ns1__investigatorPK::facilityUserId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__investigatorPK::investigationId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__investigatorPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__investigatorPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__investigatorPK * SOAP_FMAC4 soap_in_ns1__investigatorPK(struct soap *soap, const char *tag, ns1__investigatorPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__investigatorPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigatorPK, sizeof(ns1__investigatorPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__investigatorPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__investigatorPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityUserId1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityUserId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "facilityUserId", &(a->ns1__investigatorPK::facilityUserId), "xsd:string"))
-				{	soap_flag_facilityUserId1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__investigatorPK::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__investigatorPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigatorPK, 0, sizeof(ns1__investigatorPK), 0, soap_copy_ns1__investigatorPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__investigatorPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigatorPK);
-	if (this->soap_out(soap, tag?tag:"ns1:investigatorPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__investigatorPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__investigatorPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__investigatorPK * SOAP_FMAC4 soap_get_ns1__investigatorPK(struct soap *soap, ns1__investigatorPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__investigatorPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__investigatorPK * SOAP_FMAC2 soap_instantiate_ns1__investigatorPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigatorPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigatorPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK);
-		if (size)
-			*size = sizeof(ns1__investigatorPK);
-		((ns1__investigatorPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__investigatorPK);
-		for (int i = 0; i < n; i++)
-			((ns1__investigatorPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__investigatorPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigatorPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigatorPK %p -> %p\n", q, p));
-	*(ns1__investigatorPK*)p = *(ns1__investigatorPK*)q;
-}
-
-void ns1__facilityUser::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__facilityUser::facilityUserId = NULL;
-	this->ns1__facilityUser::federalId = NULL;
-	this->ns1__facilityUser::firstName = NULL;
-	this->ns1__facilityUser::initials = NULL;
-	this->ns1__facilityUser::lastName = NULL;
-	this->ns1__facilityUser::middleName = NULL;
-	this->ns1__facilityUser::title = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__facilityUser::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::facilityUserId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::federalId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::firstName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::initials);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::lastName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::middleName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::title);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__facilityUser::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__facilityUser(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__facilityUser(struct soap *soap, const char *tag, int id, const ns1__facilityUser *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__facilityUser), "ns1:facilityUser"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "facilityUserId", -1, &(a->ns1__facilityUser::facilityUserId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "federalId", -1, &(a->ns1__facilityUser::federalId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "firstName", -1, &(a->ns1__facilityUser::firstName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "initials", -1, &(a->ns1__facilityUser::initials), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "lastName", -1, &(a->ns1__facilityUser::lastName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "middleName", -1, &(a->ns1__facilityUser::middleName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "title", -1, &(a->ns1__facilityUser::title), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__facilityUser::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__facilityUser(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__facilityUser * SOAP_FMAC4 soap_in_ns1__facilityUser(struct soap *soap, const char *tag, ns1__facilityUser *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__facilityUser *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__facilityUser, sizeof(ns1__facilityUser), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__facilityUser)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__facilityUser *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_facilityUserId1 = 1;
-	size_t soap_flag_federalId1 = 1;
-	size_t soap_flag_firstName1 = 1;
-	size_t soap_flag_initials1 = 1;
-	size_t soap_flag_lastName1 = 1;
-	size_t soap_flag_middleName1 = 1;
-	size_t soap_flag_title1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_facilityUserId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "facilityUserId", &(a->ns1__facilityUser::facilityUserId), "xsd:string"))
-				{	soap_flag_facilityUserId1--;
-					continue;
-				}
-			if (soap_flag_federalId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "federalId", &(a->ns1__facilityUser::federalId), "xsd:string"))
-				{	soap_flag_federalId1--;
-					continue;
-				}
-			if (soap_flag_firstName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "firstName", &(a->ns1__facilityUser::firstName), "xsd:string"))
-				{	soap_flag_firstName1--;
-					continue;
-				}
-			if (soap_flag_initials1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "initials", &(a->ns1__facilityUser::initials), "xsd:string"))
-				{	soap_flag_initials1--;
-					continue;
-				}
-			if (soap_flag_lastName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "lastName", &(a->ns1__facilityUser::lastName), "xsd:string"))
-				{	soap_flag_lastName1--;
-					continue;
-				}
-			if (soap_flag_middleName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "middleName", &(a->ns1__facilityUser::middleName), "xsd:string"))
-				{	soap_flag_middleName1--;
-					continue;
-				}
-			if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "title", &(a->ns1__facilityUser::title), "xsd:string"))
-				{	soap_flag_title1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__facilityUser *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__facilityUser, 0, sizeof(ns1__facilityUser), 0, soap_copy_ns1__facilityUser);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__facilityUser::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__facilityUser);
-	if (this->soap_out(soap, tag?tag:"ns1:facilityUser", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__facilityUser::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__facilityUser(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__facilityUser * SOAP_FMAC4 soap_get_ns1__facilityUser(struct soap *soap, ns1__facilityUser *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__facilityUser(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__facilityUser * SOAP_FMAC2 soap_instantiate_ns1__facilityUser(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__facilityUser(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__facilityUser, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser);
-		if (size)
-			*size = sizeof(ns1__facilityUser);
-		((ns1__facilityUser*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__facilityUser);
-		for (int i = 0; i < n; i++)
-			((ns1__facilityUser*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__facilityUser*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__facilityUser(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__facilityUser %p -> %p\n", q, p));
-	*(ns1__facilityUser*)p = *(ns1__facilityUser*)q;
-}
-
-void ns1__investigator::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__investigator::facilityUser = NULL;
-	this->ns1__investigator::investigatorPK = NULL;
-	this->ns1__investigator::role = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__investigator::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__facilityUser(soap, &this->ns1__investigator::facilityUser);
-	soap_serialize_PointerTons1__investigatorPK(soap, &this->ns1__investigator::investigatorPK);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigator::role);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__investigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__investigator(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigator(struct soap *soap, const char *tag, int id, const ns1__investigator *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigator), "ns1:investigator"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__facilityUser(soap, "facilityUser", -1, &(a->ns1__investigator::facilityUser), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__investigatorPK(soap, "investigatorPK", -1, &(a->ns1__investigator::investigatorPK), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "role", -1, &(a->ns1__investigator::role), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__investigator::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__investigator(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__investigator * SOAP_FMAC4 soap_in_ns1__investigator(struct soap *soap, const char *tag, ns1__investigator *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__investigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigator, sizeof(ns1__investigator), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__investigator)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__investigator *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_facilityUser1 = 1;
-	size_t soap_flag_investigatorPK1 = 1;
-	size_t soap_flag_role1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_facilityUser1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__facilityUser(soap, "facilityUser", &(a->ns1__investigator::facilityUser), "ns1:facilityUser"))
-				{	soap_flag_facilityUser1--;
-					continue;
-				}
-			if (soap_flag_investigatorPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__investigatorPK(soap, "investigatorPK", &(a->ns1__investigator::investigatorPK), "ns1:investigatorPK"))
-				{	soap_flag_investigatorPK1--;
-					continue;
-				}
-			if (soap_flag_role1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "role", &(a->ns1__investigator::role), "xsd:string"))
-				{	soap_flag_role1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__investigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigator, 0, sizeof(ns1__investigator), 0, soap_copy_ns1__investigator);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__investigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigator);
-	if (this->soap_out(soap, tag?tag:"ns1:investigator", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__investigator::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__investigator(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__investigator * SOAP_FMAC4 soap_get_ns1__investigator(struct soap *soap, ns1__investigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__investigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__investigator * SOAP_FMAC2 soap_instantiate_ns1__investigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigator);
-		if (size)
-			*size = sizeof(ns1__investigator);
-		((ns1__investigator*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__investigator);
-		for (int i = 0; i < n; i++)
-			((ns1__investigator*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__investigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigator %p -> %p\n", q, p));
-	*(ns1__investigator*)p = *(ns1__investigator*)q;
-}
-
-void ns1__facilityCycle::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__facilityCycle::description = NULL;
-	this->ns1__facilityCycle::finishDate = NULL;
-	this->ns1__facilityCycle::name = NULL;
-	this->ns1__facilityCycle::startDate = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__facilityCycle::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityCycle::description);
-	soap_serialize_PointerTotime(soap, &this->ns1__facilityCycle::finishDate);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityCycle::name);
-	soap_serialize_PointerTotime(soap, &this->ns1__facilityCycle::startDate);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__facilityCycle::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__facilityCycle(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__facilityCycle(struct soap *soap, const char *tag, int id, const ns1__facilityCycle *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__facilityCycle), "ns1:facilityCycle"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__facilityCycle::description), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "finishDate", -1, &(a->ns1__facilityCycle::finishDate), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__facilityCycle::name), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "startDate", -1, &(a->ns1__facilityCycle::startDate), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__facilityCycle::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__facilityCycle(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__facilityCycle * SOAP_FMAC4 soap_in_ns1__facilityCycle(struct soap *soap, const char *tag, ns1__facilityCycle *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__facilityCycle *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__facilityCycle, sizeof(ns1__facilityCycle), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__facilityCycle)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__facilityCycle *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_finishDate1 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_startDate1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__facilityCycle::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_finishDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "finishDate", &(a->ns1__facilityCycle::finishDate), "xsd:dateTime"))
-				{	soap_flag_finishDate1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__facilityCycle::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_startDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "startDate", &(a->ns1__facilityCycle::startDate), "xsd:dateTime"))
-				{	soap_flag_startDate1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__facilityCycle *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__facilityCycle, 0, sizeof(ns1__facilityCycle), 0, soap_copy_ns1__facilityCycle);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__facilityCycle::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__facilityCycle);
-	if (this->soap_out(soap, tag?tag:"ns1:facilityCycle", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__facilityCycle::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__facilityCycle(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__facilityCycle * SOAP_FMAC4 soap_get_ns1__facilityCycle(struct soap *soap, ns1__facilityCycle *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__facilityCycle(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__facilityCycle * SOAP_FMAC2 soap_instantiate_ns1__facilityCycle(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__facilityCycle(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__facilityCycle, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle);
-		if (size)
-			*size = sizeof(ns1__facilityCycle);
-		((ns1__facilityCycle*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__facilityCycle);
-		for (int i = 0; i < n; i++)
-			((ns1__facilityCycle*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__facilityCycle*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__facilityCycle(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__facilityCycle %p -> %p\n", q, p));
-	*(ns1__facilityCycle*)p = *(ns1__facilityCycle*)q;
-}
-
-void ns1__datasetParameterPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datasetParameterPK::datasetId = NULL;
-	this->ns1__datasetParameterPK::name = NULL;
-	this->ns1__datasetParameterPK::units = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datasetParameterPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerToLONG64(soap, &this->ns1__datasetParameterPK::datasetId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameterPK::name);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameterPK::units);
-	/* transient soap skipped */
-}
-
-int ns1__datasetParameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datasetParameterPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetParameterPK(struct soap *soap, const char *tag, int id, const ns1__datasetParameterPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datasetParameterPK), "ns1:datasetParameterPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__datasetParameterPK::datasetId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datasetParameterPK::name), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__datasetParameterPK::units), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datasetParameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datasetParameterPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datasetParameterPK * SOAP_FMAC4 soap_in_ns1__datasetParameterPK(struct soap *soap, const char *tag, ns1__datasetParameterPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datasetParameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetParameterPK, sizeof(ns1__datasetParameterPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datasetParameterPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datasetParameterPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_units1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__datasetParameterPK::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datasetParameterPK::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__datasetParameterPK::units), "xsd:string"))
-				{	soap_flag_units1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datasetParameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datasetParameterPK, 0, sizeof(ns1__datasetParameterPK), 0, soap_copy_ns1__datasetParameterPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__datasetParameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datasetParameterPK);
-	if (this->soap_out(soap, tag?tag:"ns1:datasetParameterPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datasetParameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datasetParameterPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datasetParameterPK * SOAP_FMAC4 soap_get_ns1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datasetParameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datasetParameterPK * SOAP_FMAC2 soap_instantiate_ns1__datasetParameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datasetParameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datasetParameterPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK);
-		if (size)
-			*size = sizeof(ns1__datasetParameterPK);
-		((ns1__datasetParameterPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datasetParameterPK);
-		for (int i = 0; i < n; i++)
-			((ns1__datasetParameterPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datasetParameterPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datasetParameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datasetParameterPK %p -> %p\n", q, p));
-	*(ns1__datasetParameterPK*)p = *(ns1__datasetParameterPK*)q;
-}
-
-void ns1__datasetParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datasetParameter::datasetParameterPK = NULL;
-	this->ns1__datasetParameter::dateTimeValue = NULL;
-	this->ns1__datasetParameter::description = NULL;
-	this->ns1__datasetParameter::error = NULL;
-	this->ns1__datasetParameter::numericValue = NULL;
-	this->ns1__datasetParameter::parameter = NULL;
-	this->ns1__datasetParameter::rangeBottom = NULL;
-	this->ns1__datasetParameter::rangeTop = NULL;
-	this->ns1__datasetParameter::stringValue = NULL;
-	this->ns1__datasetParameter::valueType = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datasetParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datasetParameterPK(soap, &this->ns1__datasetParameter::datasetParameterPK);
-	soap_serialize_PointerTotime(soap, &this->ns1__datasetParameter::dateTimeValue);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::description);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::error);
-	soap_serialize_PointerTodouble(soap, &this->ns1__datasetParameter::numericValue);
-	soap_serialize_PointerTons1__parameter(soap, &this->ns1__datasetParameter::parameter);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::rangeBottom);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::rangeTop);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::stringValue);
-	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__datasetParameter::valueType);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__datasetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datasetParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetParameter(struct soap *soap, const char *tag, int id, const ns1__datasetParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datasetParameter), "ns1:datasetParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", -1, &(a->ns1__datasetParameter::datasetParameterPK), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "dateTimeValue", -1, &(a->ns1__datasetParameter::dateTimeValue), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datasetParameter::description), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "error", -1, &(a->ns1__datasetParameter::error), ""))
-		return soap->error;
-	if (soap_out_PointerTodouble(soap, "numericValue", -1, &(a->ns1__datasetParameter::numericValue), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameter(soap, "parameter", -1, &(a->ns1__datasetParameter::parameter), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "rangeBottom", -1, &(a->ns1__datasetParameter::rangeBottom), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "rangeTop", -1, &(a->ns1__datasetParameter::rangeTop), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stringValue", -1, &(a->ns1__datasetParameter::stringValue), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__datasetParameter::valueType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datasetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datasetParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datasetParameter * SOAP_FMAC4 soap_in_ns1__datasetParameter(struct soap *soap, const char *tag, ns1__datasetParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datasetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetParameter, sizeof(ns1__datasetParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datasetParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datasetParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_datasetParameterPK1 = 1;
-	size_t soap_flag_dateTimeValue1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_error1 = 1;
-	size_t soap_flag_numericValue1 = 1;
-	size_t soap_flag_parameter1 = 1;
-	size_t soap_flag_rangeBottom1 = 1;
-	size_t soap_flag_rangeTop1 = 1;
-	size_t soap_flag_stringValue1 = 1;
-	size_t soap_flag_valueType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_datasetParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", &(a->ns1__datasetParameter::datasetParameterPK), "ns1:datasetParameterPK"))
-				{	soap_flag_datasetParameterPK1--;
-					continue;
-				}
-			if (soap_flag_dateTimeValue1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "dateTimeValue", &(a->ns1__datasetParameter::dateTimeValue), "xsd:dateTime"))
-				{	soap_flag_dateTimeValue1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datasetParameter::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_error1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "error", &(a->ns1__datasetParameter::error), "xsd:string"))
-				{	soap_flag_error1--;
-					continue;
-				}
-			if (soap_flag_numericValue1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTodouble(soap, "numericValue", &(a->ns1__datasetParameter::numericValue), "xsd:double"))
-				{	soap_flag_numericValue1--;
-					continue;
-				}
-			if (soap_flag_parameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameter(soap, "parameter", &(a->ns1__datasetParameter::parameter), "ns1:parameter"))
-				{	soap_flag_parameter1--;
-					continue;
-				}
-			if (soap_flag_rangeBottom1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "rangeBottom", &(a->ns1__datasetParameter::rangeBottom), "xsd:string"))
-				{	soap_flag_rangeBottom1--;
-					continue;
-				}
-			if (soap_flag_rangeTop1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "rangeTop", &(a->ns1__datasetParameter::rangeTop), "xsd:string"))
-				{	soap_flag_rangeTop1--;
-					continue;
-				}
-			if (soap_flag_stringValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stringValue", &(a->ns1__datasetParameter::stringValue), "xsd:string"))
-				{	soap_flag_stringValue1--;
-					continue;
-				}
-			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__datasetParameter::valueType), "ns1:parameterValueType"))
-				{	soap_flag_valueType1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datasetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datasetParameter, 0, sizeof(ns1__datasetParameter), 0, soap_copy_ns1__datasetParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__datasetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datasetParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:datasetParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datasetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datasetParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datasetParameter * SOAP_FMAC4 soap_get_ns1__datasetParameter(struct soap *soap, ns1__datasetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datasetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datasetParameter * SOAP_FMAC2 soap_instantiate_ns1__datasetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datasetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datasetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter);
-		if (size)
-			*size = sizeof(ns1__datasetParameter);
-		((ns1__datasetParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datasetParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__datasetParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datasetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datasetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datasetParameter %p -> %p\n", q, p));
-	*(ns1__datasetParameter*)p = *(ns1__datasetParameter*)q;
-}
-
-void ns1__dataset::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__dataset::datafileCollection);
-	soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__dataset::datasetParameterCollection);
-	this->ns1__dataset::datasetStatus = NULL;
-	this->ns1__dataset::datasetType = NULL;
-	this->ns1__dataset::description = NULL;
-	this->ns1__dataset::id = NULL;
-	this->ns1__dataset::investigationId = NULL;
-	this->ns1__dataset::location = NULL;
-	this->ns1__dataset::name = NULL;
-	this->ns1__dataset::sampleId = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__dataset::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__dataset::datafileCollection);
-	soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__dataset::datasetParameterCollection);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::datasetStatus);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::datasetType);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::description);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__dataset::id);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__dataset::investigationId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::location);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::name);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__dataset::sampleId);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__dataset::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__dataset(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__dataset(struct soap *soap, const char *tag, int id, const ns1__dataset *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__dataset), "ns1:dataset"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "datafileCollection", -1, &(a->ns1__dataset::datafileCollection), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "datasetParameterCollection", -1, &(a->ns1__dataset::datasetParameterCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "datasetStatus", -1, &(a->ns1__dataset::datasetStatus), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "datasetType", -1, &(a->ns1__dataset::datasetType), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__dataset::description), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__dataset::id), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__dataset::investigationId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "location", -1, &(a->ns1__dataset::location), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__dataset::name), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__dataset::sampleId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__dataset::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__dataset(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__dataset * SOAP_FMAC4 soap_in_ns1__dataset(struct soap *soap, const char *tag, ns1__dataset *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__dataset *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__dataset, sizeof(ns1__dataset), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__dataset)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__dataset *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_datasetStatus1 = 1;
-	size_t soap_flag_datasetType1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_id1 = 1;
-	size_t soap_flag_investigationId1 = 1;
-	size_t soap_flag_location1 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_sampleId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "datafileCollection", &(a->ns1__dataset::datafileCollection), "ns1:datafile"))
-					continue;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "datasetParameterCollection", &(a->ns1__dataset::datasetParameterCollection), "ns1:datasetParameter"))
-					continue;
-			if (soap_flag_datasetStatus1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "datasetStatus", &(a->ns1__dataset::datasetStatus), "xsd:string"))
-				{	soap_flag_datasetStatus1--;
-					continue;
-				}
-			if (soap_flag_datasetType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "datasetType", &(a->ns1__dataset::datasetType), "xsd:string"))
-				{	soap_flag_datasetType1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__dataset::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__dataset::id), "xsd:long"))
-				{	soap_flag_id1--;
-					continue;
-				}
-			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__dataset::investigationId), "xsd:long"))
-				{	soap_flag_investigationId1--;
-					continue;
-				}
-			if (soap_flag_location1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "location", &(a->ns1__dataset::location), "xsd:string"))
-				{	soap_flag_location1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__dataset::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__dataset::sampleId), "xsd:long"))
-				{	soap_flag_sampleId1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__dataset *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__dataset, 0, sizeof(ns1__dataset), 0, soap_copy_ns1__dataset);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__dataset::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__dataset);
-	if (this->soap_out(soap, tag?tag:"ns1:dataset", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__dataset::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__dataset(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__dataset * SOAP_FMAC4 soap_get_ns1__dataset(struct soap *soap, ns1__dataset *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__dataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__dataset * SOAP_FMAC2 soap_instantiate_ns1__dataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__dataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__dataset, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__dataset);
-		if (size)
-			*size = sizeof(ns1__dataset);
-		((ns1__dataset*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__dataset[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__dataset);
-		for (int i = 0; i < n; i++)
-			((ns1__dataset*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__dataset*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__dataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__dataset %p -> %p\n", q, p));
-	*(ns1__dataset*)p = *(ns1__dataset*)q;
-}
-
-void ns1__investigation::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__investigation::bcatInvStr = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__investigation::datasetCollection);
-	this->ns1__investigation::facility = NULL;
-	this->ns1__investigation::facilityCycle = NULL;
-	this->ns1__investigation::grantId = NULL;
-	this->ns1__investigation::id = NULL;
-	this->ns1__investigation::instrument = NULL;
-	this->ns1__investigation::invAbstract = NULL;
-	this->ns1__investigation::invEndDate = NULL;
-	this->ns1__investigation::invNumber = NULL;
-	this->ns1__investigation::invParamName = NULL;
-	this->ns1__investigation::invParamValue = NULL;
-	this->ns1__investigation::invStartDate = NULL;
-	this->ns1__investigation::invType = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__investigator(soap, &this->ns1__investigation::investigatorCollection);
-	soap_default_std__vectorTemplateOfPointerTons1__keyword(soap, &this->ns1__investigation::keywordCollection);
-	this->ns1__investigation::prevInvNumber = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__publication(soap, &this->ns1__investigation::publicationCollection);
-	this->ns1__investigation::releaseDate = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__investigation::sampleCollection);
-	soap_default_std__vectorTemplateOfPointerTons1__shift(soap, &this->ns1__investigation::shiftCollection);
-	this->ns1__investigation::title = NULL;
-	this->ns1__investigation::visitId = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__investigation::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::bcatInvStr);
-	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__investigation::datasetCollection);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::facility);
-	soap_serialize_PointerTons1__facilityCycle(soap, &this->ns1__investigation::facilityCycle);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__investigation::grantId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__investigation::id);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::instrument);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invAbstract);
-	soap_serialize_PointerTotime(soap, &this->ns1__investigation::invEndDate);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invNumber);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invParamName);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invParamValue);
-	soap_serialize_PointerTotime(soap, &this->ns1__investigation::invStartDate);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invType);
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigator(soap, &this->ns1__investigation::investigatorCollection);
-	soap_serialize_std__vectorTemplateOfPointerTons1__keyword(soap, &this->ns1__investigation::keywordCollection);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::prevInvNumber);
-	soap_serialize_std__vectorTemplateOfPointerTons1__publication(soap, &this->ns1__investigation::publicationCollection);
-	soap_serialize_PointerTotime(soap, &this->ns1__investigation::releaseDate);
-	soap_serialize_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__investigation::sampleCollection);
-	soap_serialize_std__vectorTemplateOfPointerTons1__shift(soap, &this->ns1__investigation::shiftCollection);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::title);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::visitId);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__investigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__investigation(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigation(struct soap *soap, const char *tag, int id, const ns1__investigation *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigation), "ns1:investigation"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "bcatInvStr", -1, &(a->ns1__investigation::bcatInvStr), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "datasetCollection", -1, &(a->ns1__investigation::datasetCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "facility", -1, &(a->ns1__investigation::facility), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__facilityCycle(soap, "facilityCycle", -1, &(a->ns1__investigation::facilityCycle), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "grantId", -1, &(a->ns1__investigation::grantId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__investigation::id), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "instrument", -1, &(a->ns1__investigation::instrument), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "invAbstract", -1, &(a->ns1__investigation::invAbstract), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "invEndDate", -1, &(a->ns1__investigation::invEndDate), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "invNumber", -1, &(a->ns1__investigation::invNumber), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "invParamName", -1, &(a->ns1__investigation::invParamName), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "invParamValue", -1, &(a->ns1__investigation::invParamValue), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "invStartDate", -1, &(a->ns1__investigation::invStartDate), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "invType", -1, &(a->ns1__investigation::invType), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigator(soap, "investigatorCollection", -1, &(a->ns1__investigation::investigatorCollection), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__keyword(soap, "keywordCollection", -1, &(a->ns1__investigation::keywordCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "prevInvNumber", -1, &(a->ns1__investigation::prevInvNumber), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__publication(soap, "publicationCollection", -1, &(a->ns1__investigation::publicationCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "releaseDate", -1, &(a->ns1__investigation::releaseDate), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__sample(soap, "sampleCollection", -1, &(a->ns1__investigation::sampleCollection), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__shift(soap, "shiftCollection", -1, &(a->ns1__investigation::shiftCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "title", -1, &(a->ns1__investigation::title), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "visitId", -1, &(a->ns1__investigation::visitId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__investigation::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__investigation(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__investigation * SOAP_FMAC4 soap_in_ns1__investigation(struct soap *soap, const char *tag, ns1__investigation *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__investigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigation, sizeof(ns1__investigation), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__investigation)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__investigation *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_bcatInvStr1 = 1;
-	size_t soap_flag_facility1 = 1;
-	size_t soap_flag_facilityCycle1 = 1;
-	size_t soap_flag_grantId1 = 1;
-	size_t soap_flag_id1 = 1;
-	size_t soap_flag_instrument1 = 1;
-	size_t soap_flag_invAbstract1 = 1;
-	size_t soap_flag_invEndDate1 = 1;
-	size_t soap_flag_invNumber1 = 1;
-	size_t soap_flag_invParamName1 = 1;
-	size_t soap_flag_invParamValue1 = 1;
-	size_t soap_flag_invStartDate1 = 1;
-	size_t soap_flag_invType1 = 1;
-	size_t soap_flag_prevInvNumber1 = 1;
-	size_t soap_flag_releaseDate1 = 1;
-	size_t soap_flag_title1 = 1;
-	size_t soap_flag_visitId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_bcatInvStr1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "bcatInvStr", &(a->ns1__investigation::bcatInvStr), "xsd:string"))
-				{	soap_flag_bcatInvStr1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "datasetCollection", &(a->ns1__investigation::datasetCollection), "ns1:dataset"))
-					continue;
-			if (soap_flag_facility1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "facility", &(a->ns1__investigation::facility), "xsd:string"))
-				{	soap_flag_facility1--;
-					continue;
-				}
-			if (soap_flag_facilityCycle1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__facilityCycle(soap, "facilityCycle", &(a->ns1__investigation::facilityCycle), "ns1:facilityCycle"))
-				{	soap_flag_facilityCycle1--;
-					continue;
-				}
-			if (soap_flag_grantId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "grantId", &(a->ns1__investigation::grantId), "xsd:long"))
-				{	soap_flag_grantId1--;
-					continue;
-				}
-			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__investigation::id), "xsd:long"))
-				{	soap_flag_id1--;
-					continue;
-				}
-			if (soap_flag_instrument1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "instrument", &(a->ns1__investigation::instrument), "xsd:string"))
-				{	soap_flag_instrument1--;
-					continue;
-				}
-			if (soap_flag_invAbstract1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "invAbstract", &(a->ns1__investigation::invAbstract), "xsd:string"))
-				{	soap_flag_invAbstract1--;
-					continue;
-				}
-			if (soap_flag_invEndDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "invEndDate", &(a->ns1__investigation::invEndDate), "xsd:dateTime"))
-				{	soap_flag_invEndDate1--;
-					continue;
-				}
-			if (soap_flag_invNumber1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "invNumber", &(a->ns1__investigation::invNumber), "xsd:string"))
-				{	soap_flag_invNumber1--;
-					continue;
-				}
-			if (soap_flag_invParamName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "invParamName", &(a->ns1__investigation::invParamName), "xsd:string"))
-				{	soap_flag_invParamName1--;
-					continue;
-				}
-			if (soap_flag_invParamValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "invParamValue", &(a->ns1__investigation::invParamValue), "xsd:string"))
-				{	soap_flag_invParamValue1--;
-					continue;
-				}
-			if (soap_flag_invStartDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "invStartDate", &(a->ns1__investigation::invStartDate), "xsd:dateTime"))
-				{	soap_flag_invStartDate1--;
-					continue;
-				}
-			if (soap_flag_invType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "invType", &(a->ns1__investigation::invType), "xsd:string"))
-				{	soap_flag_invType1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigator(soap, "investigatorCollection", &(a->ns1__investigation::investigatorCollection), "ns1:investigator"))
-					continue;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__keyword(soap, "keywordCollection", &(a->ns1__investigation::keywordCollection), "ns1:keyword"))
-					continue;
-			if (soap_flag_prevInvNumber1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "prevInvNumber", &(a->ns1__investigation::prevInvNumber), "xsd:string"))
-				{	soap_flag_prevInvNumber1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__publication(soap, "publicationCollection", &(a->ns1__investigation::publicationCollection), "ns1:publication"))
-					continue;
-			if (soap_flag_releaseDate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "releaseDate", &(a->ns1__investigation::releaseDate), "xsd:dateTime"))
-				{	soap_flag_releaseDate1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__sample(soap, "sampleCollection", &(a->ns1__investigation::sampleCollection), "ns1:sample"))
-					continue;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__shift(soap, "shiftCollection", &(a->ns1__investigation::shiftCollection), "ns1:shift"))
-					continue;
-			if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "title", &(a->ns1__investigation::title), "xsd:string"))
-				{	soap_flag_title1--;
-					continue;
-				}
-			if (soap_flag_visitId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "visitId", &(a->ns1__investigation::visitId), "xsd:string"))
-				{	soap_flag_visitId1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__investigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigation, 0, sizeof(ns1__investigation), 0, soap_copy_ns1__investigation);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__investigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigation);
-	if (this->soap_out(soap, tag?tag:"ns1:investigation", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__investigation::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__investigation(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__investigation * SOAP_FMAC4 soap_get_ns1__investigation(struct soap *soap, ns1__investigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__investigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__investigation * SOAP_FMAC2 soap_instantiate_ns1__investigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigation);
-		if (size)
-			*size = sizeof(ns1__investigation);
-		((ns1__investigation*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__investigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__investigation);
-		for (int i = 0; i < n; i++)
-			((ns1__investigation*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__investigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigation %p -> %p\n", q, p));
-	*(ns1__investigation*)p = *(ns1__investigation*)q;
-}
-
-void ns1__searchByParameterComparatorsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByParameterComparatorsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchByParameterComparatorsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByParameterComparatorsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparatorsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse), "ns1:searchByParameterComparatorsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByParameterComparatorsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByParameterComparatorsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByParameterComparatorsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorsResponse * SOAP_FMAC4 soap_in_ns1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByParameterComparatorsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, sizeof(ns1__searchByParameterComparatorsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparatorsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByParameterComparatorsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByParameterComparatorsResponse::return_), "ns1:investigation"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByParameterComparatorsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, 0, sizeof(ns1__searchByParameterComparatorsResponse), 0, soap_copy_ns1__searchByParameterComparatorsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByParameterComparatorsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparatorsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparatorsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByParameterComparatorsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByParameterComparatorsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorsResponse * SOAP_FMAC4 soap_get_ns1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByParameterComparatorsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByParameterComparatorsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparatorsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparatorsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse);
-		if (size)
-			*size = sizeof(ns1__searchByParameterComparatorsResponse);
-		((ns1__searchByParameterComparatorsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByParameterComparatorsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByParameterComparatorsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparatorsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparatorsResponse %p -> %p\n", q, p));
-	*(ns1__searchByParameterComparatorsResponse*)p = *(ns1__searchByParameterComparatorsResponse*)q;
-}
-
-void ns1__parameterPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__parameterPK::name = NULL;
-	this->ns1__parameterPK::units = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__parameterPK::name);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__parameterPK::units);
-	/* transient soap skipped */
-}
-
-int ns1__parameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterPK(struct soap *soap, const char *tag, int id, const ns1__parameterPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterPK), "ns1:parameterPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__parameterPK::name), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__parameterPK::units), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__parameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterPK * SOAP_FMAC4 soap_in_ns1__parameterPK(struct soap *soap, const char *tag, ns1__parameterPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__parameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterPK, sizeof(ns1__parameterPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__parameterPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_units1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__parameterPK::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__parameterPK::units), "xsd:string"))
-				{	soap_flag_units1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__parameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterPK, 0, sizeof(ns1__parameterPK), 0, soap_copy_ns1__parameterPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__parameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterPK);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterPK * SOAP_FMAC4 soap_get_ns1__parameterPK(struct soap *soap, ns1__parameterPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterPK * SOAP_FMAC2 soap_instantiate_ns1__parameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK);
-		if (size)
-			*size = sizeof(ns1__parameterPK);
-		((ns1__parameterPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterPK);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterPK %p -> %p\n", q, p));
-	*(ns1__parameterPK*)p = *(ns1__parameterPK*)q;
-}
-
-void ns1__parameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->ns1__parameter::datafileParameter);
-	soap_default_bool(soap, &this->ns1__parameter::datasetParameter);
-	this->ns1__parameter::description = NULL;
-	this->ns1__parameter::nonNumericValueFormat = NULL;
-	this->ns1__parameter::parameterPK = NULL;
-	soap_default_bool(soap, &this->ns1__parameter::sampleParameter);
-	this->ns1__parameter::searchable = NULL;
-	this->ns1__parameter::unitsLongVersion = NULL;
-	this->ns1__parameter::valueType = NULL;
-	soap_default_bool(soap, &this->ns1__parameter::verified);
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::description);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::nonNumericValueFormat);
-	soap_serialize_PointerTons1__parameterPK(soap, &this->ns1__parameter::parameterPK);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::searchable);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::unitsLongVersion);
-	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__parameter::valueType);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__parameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameter(struct soap *soap, const char *tag, int id, const ns1__parameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameter), "ns1:parameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "datafileParameter", -1, &(a->ns1__parameter::datafileParameter), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "datasetParameter", -1, &(a->ns1__parameter::datasetParameter), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__parameter::description), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "nonNumericValueFormat", -1, &(a->ns1__parameter::nonNumericValueFormat), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterPK(soap, "parameterPK", -1, &(a->ns1__parameter::parameterPK), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "sampleParameter", -1, &(a->ns1__parameter::sampleParameter), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "searchable", -1, &(a->ns1__parameter::searchable), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "unitsLongVersion", -1, &(a->ns1__parameter::unitsLongVersion), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__parameter::valueType), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "verified", -1, &(a->ns1__parameter::verified), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__parameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameter * SOAP_FMAC4 soap_in_ns1__parameter(struct soap *soap, const char *tag, ns1__parameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__parameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameter, sizeof(ns1__parameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__parameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_datafileParameter1 = 1;
-	size_t soap_flag_datasetParameter1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_nonNumericValueFormat1 = 1;
-	size_t soap_flag_parameterPK1 = 1;
-	size_t soap_flag_sampleParameter1 = 1;
-	size_t soap_flag_searchable1 = 1;
-	size_t soap_flag_unitsLongVersion1 = 1;
-	size_t soap_flag_valueType1 = 1;
-	size_t soap_flag_verified1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_datafileParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "datafileParameter", &(a->ns1__parameter::datafileParameter), "xsd:boolean"))
-				{	soap_flag_datafileParameter1--;
-					continue;
-				}
-			if (soap_flag_datasetParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "datasetParameter", &(a->ns1__parameter::datasetParameter), "xsd:boolean"))
-				{	soap_flag_datasetParameter1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__parameter::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_nonNumericValueFormat1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "nonNumericValueFormat", &(a->ns1__parameter::nonNumericValueFormat), "xsd:string"))
-				{	soap_flag_nonNumericValueFormat1--;
-					continue;
-				}
-			if (soap_flag_parameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterPK(soap, "parameterPK", &(a->ns1__parameter::parameterPK), "ns1:parameterPK"))
-				{	soap_flag_parameterPK1--;
-					continue;
-				}
-			if (soap_flag_sampleParameter1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "sampleParameter", &(a->ns1__parameter::sampleParameter), "xsd:boolean"))
-				{	soap_flag_sampleParameter1--;
-					continue;
-				}
-			if (soap_flag_searchable1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "searchable", &(a->ns1__parameter::searchable), "xsd:string"))
-				{	soap_flag_searchable1--;
-					continue;
-				}
-			if (soap_flag_unitsLongVersion1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "unitsLongVersion", &(a->ns1__parameter::unitsLongVersion), "xsd:string"))
-				{	soap_flag_unitsLongVersion1--;
-					continue;
-				}
-			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__parameter::valueType), "ns1:parameterValueType"))
-				{	soap_flag_valueType1--;
-					continue;
-				}
-			if (soap_flag_verified1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "verified", &(a->ns1__parameter::verified), "xsd:boolean"))
-				{	soap_flag_verified1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__parameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameter, 0, sizeof(ns1__parameter), 0, soap_copy_ns1__parameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0 || soap_flag_datafileParameter1 > 0 || soap_flag_datasetParameter1 > 0 || soap_flag_sampleParameter1 > 0 || soap_flag_verified1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__parameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameter);
-	if (this->soap_out(soap, tag?tag:"ns1:parameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameter * SOAP_FMAC4 soap_get_ns1__parameter(struct soap *soap, ns1__parameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameter * SOAP_FMAC2 soap_instantiate_ns1__parameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameter);
-		if (size)
-			*size = sizeof(ns1__parameter);
-		((ns1__parameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameter);
-		for (int i = 0; i < n; i++)
-			((ns1__parameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameter %p -> %p\n", q, p));
-	*(ns1__parameter*)p = *(ns1__parameter*)q;
-}
-
-void ns1__parameterValued::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__parameterValued::param = NULL;
-	this->ns1__parameterValued::type = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterValued::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__parameter(soap, &this->ns1__parameterValued::param);
-	soap_serialize_PointerTons1__parameterType(soap, &this->ns1__parameterValued::type);
-	/* transient soap skipped */
-}
-
-int ns1__parameterValued::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterValued(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterValued(struct soap *soap, const char *tag, int id, const ns1__parameterValued *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterValued), "ns1:parameterValued"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__parameter(soap, "param", -1, &(a->ns1__parameterValued::param), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterType(soap, "type", -1, &(a->ns1__parameterValued::type), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__parameterValued::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterValued(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterValued * SOAP_FMAC4 soap_in_ns1__parameterValued(struct soap *soap, const char *tag, ns1__parameterValued *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__parameterValued *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterValued, sizeof(ns1__parameterValued), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterValued)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__parameterValued *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_param1 = 1;
-	size_t soap_flag_type1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_param1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameter(soap, "param", &(a->ns1__parameterValued::param), "ns1:parameter"))
-				{	soap_flag_param1--;
-					continue;
-				}
-			if (soap_flag_type1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterType(soap, "type", &(a->ns1__parameterValued::type), "ns1:parameterType"))
-				{	soap_flag_type1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__parameterValued *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterValued, 0, sizeof(ns1__parameterValued), 0, soap_copy_ns1__parameterValued);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__parameterValued::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterValued);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterValued", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterValued::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterValued(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterValued * SOAP_FMAC4 soap_get_ns1__parameterValued(struct soap *soap, ns1__parameterValued *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterValued(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterValued * SOAP_FMAC2 soap_instantiate_ns1__parameterValued(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterValued(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterValued, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued);
-		if (size)
-			*size = sizeof(ns1__parameterValued);
-		((ns1__parameterValued*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterValued);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterValued*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterValued*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterValued(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterValued %p -> %p\n", q, p));
-	*(ns1__parameterValued*)p = *(ns1__parameterValued*)q;
-}
-
-void ns1__parameterCondition::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterCondition::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__parameterCondition::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterCondition(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterCondition(struct soap *soap, const char *tag, int id, const ns1__parameterCondition *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:parameterCondition");
-}
-
-void *ns1__parameterCondition::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterCondition(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterCondition * SOAP_FMAC4 soap_in_ns1__parameterCondition(struct soap *soap, const char *tag, ns1__parameterCondition *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__parameterCondition *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterCondition, sizeof(ns1__parameterCondition), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterCondition)
-			return (ns1__parameterCondition *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__parameterCondition::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterCondition);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterCondition", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterCondition::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterCondition(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterCondition * SOAP_FMAC4 soap_get_ns1__parameterCondition(struct soap *soap, ns1__parameterCondition *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterCondition(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterCondition * SOAP_FMAC2 soap_instantiate_ns1__parameterCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterCondition, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (type && !soap_match_tag(soap, type, "ns1:parameterComparisonCondition"))
-	{	cp->type = SOAP_TYPE_ns1__parameterComparisonCondition;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterComparisonCondition);
-			((ns1__parameterComparisonCondition*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterComparisonCondition);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterComparisonCondition*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterComparisonCondition*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterLogicalCondition"))
-	{	cp->type = SOAP_TYPE_ns1__parameterLogicalCondition;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterLogicalCondition);
-			((ns1__parameterLogicalCondition*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterLogicalCondition);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterLogicalCondition*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterLogicalCondition*)cp->ptr;
-	}
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition);
-		if (size)
-			*size = sizeof(ns1__parameterCondition);
-		((ns1__parameterCondition*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterCondition);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterCondition*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterCondition*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterCondition %p -> %p\n", q, p));
-	*(ns1__parameterCondition*)p = *(ns1__parameterCondition*)q;
-}
-
-void ns1__parameterComparisonCondition::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__parameterComparisonCondition::comparator = NULL;
-	this->ns1__parameterComparisonCondition::parameterValued = NULL;
-	this->ns1__parameterComparisonCondition::value = NULL;
-	this->ns1__parameterComparisonCondition::value2 = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__parameterComparisonCondition::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__comparisonOperator(soap, &this->ns1__parameterComparisonCondition::comparator);
-	soap_serialize_PointerTons1__parameterValued(soap, &this->ns1__parameterComparisonCondition::parameterValued);
-	soap_serialize_PointerToxsd__anyType(soap, &this->ns1__parameterComparisonCondition::value);
-	soap_serialize_PointerToxsd__anyType(soap, &this->ns1__parameterComparisonCondition::value2);
-	/* transient soap skipped */
-}
-
-int ns1__parameterComparisonCondition::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__parameterComparisonCondition(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterComparisonCondition(struct soap *soap, const char *tag, int id, const ns1__parameterComparisonCondition *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterComparisonCondition), "ns1:parameterComparisonCondition"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__comparisonOperator(soap, "comparator", -1, &(a->ns1__parameterComparisonCondition::comparator), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterValued(soap, "parameterValued", -1, &(a->ns1__parameterComparisonCondition::parameterValued), ""))
-		return soap->error;
-	if (soap_out_PointerToxsd__anyType(soap, "value", -1, &(a->ns1__parameterComparisonCondition::value), ""))
-		return soap->error;
-	if (soap_out_PointerToxsd__anyType(soap, "value2", -1, &(a->ns1__parameterComparisonCondition::value2), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__parameterComparisonCondition::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__parameterComparisonCondition(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__parameterComparisonCondition * SOAP_FMAC4 soap_in_ns1__parameterComparisonCondition(struct soap *soap, const char *tag, ns1__parameterComparisonCondition *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__parameterComparisonCondition *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__parameterComparisonCondition)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__parameterComparisonCondition *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_comparator1 = 1;
-	size_t soap_flag_parameterValued1 = 1;
-	size_t soap_flag_value1 = 1;
-	size_t soap_flag_value21 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__comparisonOperator(soap, "comparator", &(a->ns1__parameterComparisonCondition::comparator), "ns1:comparisonOperator"))
-				{	soap_flag_comparator1--;
-					continue;
-				}
-			if (soap_flag_parameterValued1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterValued(soap, "parameterValued", &(a->ns1__parameterComparisonCondition::parameterValued), "ns1:parameterValued"))
-				{	soap_flag_parameterValued1--;
-					continue;
-				}
-			if (soap_flag_value1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToxsd__anyType(soap, "value", &(a->ns1__parameterComparisonCondition::value), "xsd:anyType"))
-				{	soap_flag_value1--;
-					continue;
-				}
-			if (soap_flag_value21 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToxsd__anyType(soap, "value2", &(a->ns1__parameterComparisonCondition::value2), "xsd:anyType"))
-				{	soap_flag_value21--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__parameterComparisonCondition *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterComparisonCondition, 0, sizeof(ns1__parameterComparisonCondition), 0, soap_copy_ns1__parameterComparisonCondition);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__parameterComparisonCondition::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterComparisonCondition);
-	if (this->soap_out(soap, tag?tag:"ns1:parameterComparisonCondition", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__parameterComparisonCondition::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__parameterComparisonCondition(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__parameterComparisonCondition * SOAP_FMAC4 soap_get_ns1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__parameterComparisonCondition(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__parameterComparisonCondition * SOAP_FMAC2 soap_instantiate_ns1__parameterComparisonCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterComparisonCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterComparisonCondition, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition);
-		if (size)
-			*size = sizeof(ns1__parameterComparisonCondition);
-		((ns1__parameterComparisonCondition*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__parameterComparisonCondition);
-		for (int i = 0; i < n; i++)
-			((ns1__parameterComparisonCondition*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__parameterComparisonCondition*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterComparisonCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterComparisonCondition %p -> %p\n", q, p));
-	*(ns1__parameterComparisonCondition*)p = *(ns1__parameterComparisonCondition*)q;
-}
-
-void ns1__searchByParameterComparators::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchByParameterComparators::sessionId = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchByParameterComparators::comparators);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchByParameterComparators::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByParameterComparators::sessionId);
-	soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchByParameterComparators::comparators);
-	/* transient soap skipped */
-}
-
-int ns1__searchByParameterComparators::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchByParameterComparators(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparators(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparators *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparators), "ns1:searchByParameterComparators"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByParameterComparators::sessionId), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", -1, &(a->ns1__searchByParameterComparators::comparators), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchByParameterComparators::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchByParameterComparators(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparators * SOAP_FMAC4 soap_in_ns1__searchByParameterComparators(struct soap *soap, const char *tag, ns1__searchByParameterComparators *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchByParameterComparators *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparators, sizeof(ns1__searchByParameterComparators), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparators)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchByParameterComparators *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByParameterComparators::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", &(a->ns1__searchByParameterComparators::comparators), "ns1:parameterComparisonCondition"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchByParameterComparators *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparators, 0, sizeof(ns1__searchByParameterComparators), 0, soap_copy_ns1__searchByParameterComparators);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchByParameterComparators::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparators);
-	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparators", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchByParameterComparators::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchByParameterComparators(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparators * SOAP_FMAC4 soap_get_ns1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchByParameterComparators * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparators, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators);
-		if (size)
-			*size = sizeof(ns1__searchByParameterComparators);
-		((ns1__searchByParameterComparators*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchByParameterComparators);
-		for (int i = 0; i < n; i++)
-			((ns1__searchByParameterComparators*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchByParameterComparators*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparators %p -> %p\n", q, p));
-	*(ns1__searchByParameterComparators*)p = *(ns1__searchByParameterComparators*)q;
-}
-
-void ns1__modifySampleResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifySampleResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__modifySampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifySampleResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySampleResponse(struct soap *soap, const char *tag, int id, const ns1__modifySampleResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifySampleResponse");
-}
-
-void *ns1__modifySampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifySampleResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleResponse * SOAP_FMAC4 soap_in_ns1__modifySampleResponse(struct soap *soap, const char *tag, ns1__modifySampleResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__modifySampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySampleResponse, sizeof(ns1__modifySampleResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifySampleResponse)
-			return (ns1__modifySampleResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__modifySampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySampleResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:modifySampleResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifySampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifySampleResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleResponse * SOAP_FMAC4 soap_get_ns1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifySampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifySampleResponse * SOAP_FMAC2 soap_instantiate_ns1__modifySampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse);
-		if (size)
-			*size = sizeof(ns1__modifySampleResponse);
-		((ns1__modifySampleResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifySampleResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__modifySampleResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifySampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySampleResponse %p -> %p\n", q, p));
-	*(ns1__modifySampleResponse*)p = *(ns1__modifySampleResponse*)q;
-}
-
-void ns1__modifySample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__modifySample::sessionId = NULL;
-	this->ns1__modifySample::sample = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__modifySample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__modifySample::sessionId);
-	soap_serialize_PointerTons1__sample(soap, &this->ns1__modifySample::sample);
-	/* transient soap skipped */
-}
-
-int ns1__modifySample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__modifySample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySample(struct soap *soap, const char *tag, int id, const ns1__modifySample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifySample), "ns1:modifySample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifySample::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sample(soap, "sample", -1, &(a->ns1__modifySample::sample), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__modifySample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__modifySample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__modifySample * SOAP_FMAC4 soap_in_ns1__modifySample(struct soap *soap, const char *tag, ns1__modifySample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__modifySample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySample, sizeof(ns1__modifySample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__modifySample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__modifySample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sample1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifySample::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sample1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sample(soap, "sample", &(a->ns1__modifySample::sample), "ns1:sample"))
-				{	soap_flag_sample1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__modifySample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifySample, 0, sizeof(ns1__modifySample), 0, soap_copy_ns1__modifySample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__modifySample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySample);
-	if (this->soap_out(soap, tag?tag:"ns1:modifySample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__modifySample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__modifySample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__modifySample * SOAP_FMAC4 soap_get_ns1__modifySample(struct soap *soap, ns1__modifySample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__modifySample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__modifySample * SOAP_FMAC2 soap_instantiate_ns1__modifySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample);
-		if (size)
-			*size = sizeof(ns1__modifySample);
-		((ns1__modifySample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__modifySample);
-		for (int i = 0; i < n; i++)
-			((ns1__modifySample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__modifySample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySample %p -> %p\n", q, p));
-	*(ns1__modifySample*)p = *(ns1__modifySample*)q;
-}
-
-void ns1__ValidationException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__ValidationException::message = NULL;
-	this->ns1__ValidationException::stackTraceAsString = NULL;
-	this->ns1__ValidationException::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__ValidationException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ValidationException::message);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ValidationException::stackTraceAsString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__ValidationException::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__ValidationException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__ValidationException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ValidationException(struct soap *soap, const char *tag, int id, const ns1__ValidationException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ValidationException), "ns1:ValidationException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__ValidationException::message), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__ValidationException::stackTraceAsString), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__ValidationException::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__ValidationException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__ValidationException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__ValidationException * SOAP_FMAC4 soap_in_ns1__ValidationException(struct soap *soap, const char *tag, ns1__ValidationException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__ValidationException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ValidationException, sizeof(ns1__ValidationException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__ValidationException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__ValidationException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	size_t soap_flag_stackTraceAsString1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__ValidationException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__ValidationException::stackTraceAsString), "xsd:string"))
-				{	soap_flag_stackTraceAsString1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__ValidationException::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__ValidationException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ValidationException, 0, sizeof(ns1__ValidationException), 0, soap_copy_ns1__ValidationException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__ValidationException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ValidationException);
-	if (this->soap_out(soap, tag?tag:"ns1:ValidationException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__ValidationException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__ValidationException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__ValidationException * SOAP_FMAC4 soap_get_ns1__ValidationException(struct soap *soap, ns1__ValidationException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__ValidationException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__ValidationException * SOAP_FMAC2 soap_instantiate_ns1__ValidationException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ValidationException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ValidationException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException);
-		if (size)
-			*size = sizeof(ns1__ValidationException);
-		((ns1__ValidationException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__ValidationException);
-		for (int i = 0; i < n; i++)
-			((ns1__ValidationException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__ValidationException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ValidationException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ValidationException %p -> %p\n", q, p));
-	*(ns1__ValidationException*)p = *(ns1__ValidationException*)q;
-}
-
-void ns1__createDataFileResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createDataFileResponse::return_ = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataFileResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datafile(soap, &this->ns1__createDataFileResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__createDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataFileResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__createDataFileResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFileResponse), "ns1:createDataFileResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTons1__datafile(soap, "return", -1, &(a->ns1__createDataFileResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataFileResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataFileResponse * SOAP_FMAC4 soap_in_ns1__createDataFileResponse(struct soap *soap, const char *tag, ns1__createDataFileResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFileResponse, sizeof(ns1__createDataFileResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataFileResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataFileResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_return_1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafile(soap, "return", &(a->ns1__createDataFileResponse::return_), "ns1:datafile"))
-				{	soap_flag_return_1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataFileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFileResponse, 0, sizeof(ns1__createDataFileResponse), 0, soap_copy_ns1__createDataFileResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFileResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataFileResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataFileResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataFileResponse * SOAP_FMAC4 soap_get_ns1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse);
-		if (size)
-			*size = sizeof(ns1__createDataFileResponse);
-		((ns1__createDataFileResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataFileResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataFileResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFileResponse %p -> %p\n", q, p));
-	*(ns1__createDataFileResponse*)p = *(ns1__createDataFileResponse*)q;
-}
-
-void ns1__relatedDatafilesPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__relatedDatafilesPK::destDatafileId = NULL;
-	this->ns1__relatedDatafilesPK::sourceDatafileId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__relatedDatafilesPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerToLONG64(soap, &this->ns1__relatedDatafilesPK::destDatafileId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__relatedDatafilesPK::sourceDatafileId);
-	/* transient soap skipped */
-}
-
-int ns1__relatedDatafilesPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__relatedDatafilesPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__relatedDatafilesPK(struct soap *soap, const char *tag, int id, const ns1__relatedDatafilesPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__relatedDatafilesPK), "ns1:relatedDatafilesPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerToLONG64(soap, "destDatafileId", -1, &(a->ns1__relatedDatafilesPK::destDatafileId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "sourceDatafileId", -1, &(a->ns1__relatedDatafilesPK::sourceDatafileId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__relatedDatafilesPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__relatedDatafilesPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__relatedDatafilesPK * SOAP_FMAC4 soap_in_ns1__relatedDatafilesPK(struct soap *soap, const char *tag, ns1__relatedDatafilesPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__relatedDatafilesPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__relatedDatafilesPK, sizeof(ns1__relatedDatafilesPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__relatedDatafilesPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__relatedDatafilesPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_destDatafileId1 = 1;
-	size_t soap_flag_sourceDatafileId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_destDatafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "destDatafileId", &(a->ns1__relatedDatafilesPK::destDatafileId), "xsd:long"))
-				{	soap_flag_destDatafileId1--;
-					continue;
-				}
-			if (soap_flag_sourceDatafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "sourceDatafileId", &(a->ns1__relatedDatafilesPK::sourceDatafileId), "xsd:long"))
-				{	soap_flag_sourceDatafileId1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__relatedDatafilesPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__relatedDatafilesPK, 0, sizeof(ns1__relatedDatafilesPK), 0, soap_copy_ns1__relatedDatafilesPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__relatedDatafilesPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__relatedDatafilesPK);
-	if (this->soap_out(soap, tag?tag:"ns1:relatedDatafilesPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__relatedDatafilesPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__relatedDatafilesPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__relatedDatafilesPK * SOAP_FMAC4 soap_get_ns1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__relatedDatafilesPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__relatedDatafilesPK * SOAP_FMAC2 soap_instantiate_ns1__relatedDatafilesPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__relatedDatafilesPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__relatedDatafilesPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK);
-		if (size)
-			*size = sizeof(ns1__relatedDatafilesPK);
-		((ns1__relatedDatafilesPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__relatedDatafilesPK);
-		for (int i = 0; i < n; i++)
-			((ns1__relatedDatafilesPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__relatedDatafilesPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__relatedDatafilesPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__relatedDatafilesPK %p -> %p\n", q, p));
-	*(ns1__relatedDatafilesPK*)p = *(ns1__relatedDatafilesPK*)q;
-}
-
-void ns1__relatedDatafiles::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__relatedDatafiles::relatedDatafilesPK = NULL;
-	this->ns1__relatedDatafiles::relation = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__relatedDatafiles::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__relatedDatafilesPK(soap, &this->ns1__relatedDatafiles::relatedDatafilesPK);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__relatedDatafiles::relation);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__relatedDatafiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__relatedDatafiles(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__relatedDatafiles(struct soap *soap, const char *tag, int id, const ns1__relatedDatafiles *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__relatedDatafiles), "ns1:relatedDatafiles"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__relatedDatafilesPK(soap, "relatedDatafilesPK", -1, &(a->ns1__relatedDatafiles::relatedDatafilesPK), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "relation", -1, &(a->ns1__relatedDatafiles::relation), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__relatedDatafiles::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__relatedDatafiles(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__relatedDatafiles * SOAP_FMAC4 soap_in_ns1__relatedDatafiles(struct soap *soap, const char *tag, ns1__relatedDatafiles *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__relatedDatafiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__relatedDatafiles, sizeof(ns1__relatedDatafiles), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__relatedDatafiles)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__relatedDatafiles *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_relatedDatafilesPK1 = 1;
-	size_t soap_flag_relation1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_relatedDatafilesPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__relatedDatafilesPK(soap, "relatedDatafilesPK", &(a->ns1__relatedDatafiles::relatedDatafilesPK), "ns1:relatedDatafilesPK"))
-				{	soap_flag_relatedDatafilesPK1--;
-					continue;
-				}
-			if (soap_flag_relation1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "relation", &(a->ns1__relatedDatafiles::relation), "xsd:string"))
-				{	soap_flag_relation1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__relatedDatafiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__relatedDatafiles, 0, sizeof(ns1__relatedDatafiles), 0, soap_copy_ns1__relatedDatafiles);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__relatedDatafiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__relatedDatafiles);
-	if (this->soap_out(soap, tag?tag:"ns1:relatedDatafiles", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__relatedDatafiles::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__relatedDatafiles(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__relatedDatafiles * SOAP_FMAC4 soap_get_ns1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__relatedDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__relatedDatafiles * SOAP_FMAC2 soap_instantiate_ns1__relatedDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__relatedDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__relatedDatafiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles);
-		if (size)
-			*size = sizeof(ns1__relatedDatafiles);
-		((ns1__relatedDatafiles*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__relatedDatafiles);
-		for (int i = 0; i < n; i++)
-			((ns1__relatedDatafiles*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__relatedDatafiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__relatedDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__relatedDatafiles %p -> %p\n", q, p));
-	*(ns1__relatedDatafiles*)p = *(ns1__relatedDatafiles*)q;
-}
-
-void ns1__datafileParameterPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datafileParameterPK::datafileId = NULL;
-	this->ns1__datafileParameterPK::name = NULL;
-	this->ns1__datafileParameterPK::units = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datafileParameterPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerToLONG64(soap, &this->ns1__datafileParameterPK::datafileId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameterPK::name);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameterPK::units);
-	/* transient soap skipped */
-}
-
-int ns1__datafileParameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datafileParameterPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileParameterPK(struct soap *soap, const char *tag, int id, const ns1__datafileParameterPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileParameterPK), "ns1:datafileParameterPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__datafileParameterPK::datafileId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datafileParameterPK::name), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__datafileParameterPK::units), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datafileParameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datafileParameterPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datafileParameterPK * SOAP_FMAC4 soap_in_ns1__datafileParameterPK(struct soap *soap, const char *tag, ns1__datafileParameterPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datafileParameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileParameterPK, sizeof(ns1__datafileParameterPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datafileParameterPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datafileParameterPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_datafileId1 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_units1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__datafileParameterPK::datafileId), "xsd:long"))
-				{	soap_flag_datafileId1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datafileParameterPK::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__datafileParameterPK::units), "xsd:string"))
-				{	soap_flag_units1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datafileParameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileParameterPK, 0, sizeof(ns1__datafileParameterPK), 0, soap_copy_ns1__datafileParameterPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__datafileParameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileParameterPK);
-	if (this->soap_out(soap, tag?tag:"ns1:datafileParameterPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datafileParameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datafileParameterPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datafileParameterPK * SOAP_FMAC4 soap_get_ns1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafileParameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datafileParameterPK * SOAP_FMAC2 soap_instantiate_ns1__datafileParameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileParameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileParameterPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK);
-		if (size)
-			*size = sizeof(ns1__datafileParameterPK);
-		((ns1__datafileParameterPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datafileParameterPK);
-		for (int i = 0; i < n; i++)
-			((ns1__datafileParameterPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datafileParameterPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileParameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileParameterPK %p -> %p\n", q, p));
-	*(ns1__datafileParameterPK*)p = *(ns1__datafileParameterPK*)q;
-}
-
-void ns1__datafileParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datafileParameter::datafileParameterPK = NULL;
-	this->ns1__datafileParameter::dateTimeValue = NULL;
-	this->ns1__datafileParameter::description = NULL;
-	this->ns1__datafileParameter::error = NULL;
-	this->ns1__datafileParameter::numericValue = NULL;
-	this->ns1__datafileParameter::rangeBottom = NULL;
-	this->ns1__datafileParameter::rangeTop = NULL;
-	this->ns1__datafileParameter::stringValue = NULL;
-	this->ns1__datafileParameter::valueType = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datafileParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datafileParameterPK(soap, &this->ns1__datafileParameter::datafileParameterPK);
-	soap_serialize_PointerTotime(soap, &this->ns1__datafileParameter::dateTimeValue);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::description);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::error);
-	soap_serialize_PointerTodouble(soap, &this->ns1__datafileParameter::numericValue);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::rangeBottom);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::rangeTop);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::stringValue);
-	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__datafileParameter::valueType);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__datafileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datafileParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileParameter(struct soap *soap, const char *tag, int id, const ns1__datafileParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileParameter), "ns1:datafileParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", -1, &(a->ns1__datafileParameter::datafileParameterPK), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "dateTimeValue", -1, &(a->ns1__datafileParameter::dateTimeValue), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datafileParameter::description), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "error", -1, &(a->ns1__datafileParameter::error), ""))
-		return soap->error;
-	if (soap_out_PointerTodouble(soap, "numericValue", -1, &(a->ns1__datafileParameter::numericValue), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "rangeBottom", -1, &(a->ns1__datafileParameter::rangeBottom), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "rangeTop", -1, &(a->ns1__datafileParameter::rangeTop), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stringValue", -1, &(a->ns1__datafileParameter::stringValue), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__datafileParameter::valueType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datafileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datafileParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datafileParameter * SOAP_FMAC4 soap_in_ns1__datafileParameter(struct soap *soap, const char *tag, ns1__datafileParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datafileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileParameter, sizeof(ns1__datafileParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datafileParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datafileParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_datafileParameterPK1 = 1;
-	size_t soap_flag_dateTimeValue1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_error1 = 1;
-	size_t soap_flag_numericValue1 = 1;
-	size_t soap_flag_rangeBottom1 = 1;
-	size_t soap_flag_rangeTop1 = 1;
-	size_t soap_flag_stringValue1 = 1;
-	size_t soap_flag_valueType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_datafileParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", &(a->ns1__datafileParameter::datafileParameterPK), "ns1:datafileParameterPK"))
-				{	soap_flag_datafileParameterPK1--;
-					continue;
-				}
-			if (soap_flag_dateTimeValue1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "dateTimeValue", &(a->ns1__datafileParameter::dateTimeValue), "xsd:dateTime"))
-				{	soap_flag_dateTimeValue1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datafileParameter::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_error1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "error", &(a->ns1__datafileParameter::error), "xsd:string"))
-				{	soap_flag_error1--;
-					continue;
-				}
-			if (soap_flag_numericValue1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTodouble(soap, "numericValue", &(a->ns1__datafileParameter::numericValue), "xsd:double"))
-				{	soap_flag_numericValue1--;
-					continue;
-				}
-			if (soap_flag_rangeBottom1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "rangeBottom", &(a->ns1__datafileParameter::rangeBottom), "xsd:string"))
-				{	soap_flag_rangeBottom1--;
-					continue;
-				}
-			if (soap_flag_rangeTop1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "rangeTop", &(a->ns1__datafileParameter::rangeTop), "xsd:string"))
-				{	soap_flag_rangeTop1--;
-					continue;
-				}
-			if (soap_flag_stringValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stringValue", &(a->ns1__datafileParameter::stringValue), "xsd:string"))
-				{	soap_flag_stringValue1--;
-					continue;
-				}
-			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__datafileParameter::valueType), "ns1:parameterValueType"))
-				{	soap_flag_valueType1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datafileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileParameter, 0, sizeof(ns1__datafileParameter), 0, soap_copy_ns1__datafileParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__datafileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:datafileParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datafileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datafileParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datafileParameter * SOAP_FMAC4 soap_get_ns1__datafileParameter(struct soap *soap, ns1__datafileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datafileParameter * SOAP_FMAC2 soap_instantiate_ns1__datafileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter);
-		if (size)
-			*size = sizeof(ns1__datafileParameter);
-		((ns1__datafileParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datafileParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__datafileParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datafileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileParameter %p -> %p\n", q, p));
-	*(ns1__datafileParameter*)p = *(ns1__datafileParameter*)q;
-}
-
-void ns1__datafileFormatPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datafileFormatPK::name = NULL;
-	this->ns1__datafileFormatPK::version = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datafileFormatPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormatPK::name);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormatPK::version);
-	/* transient soap skipped */
-}
-
-int ns1__datafileFormatPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datafileFormatPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileFormatPK(struct soap *soap, const char *tag, int id, const ns1__datafileFormatPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileFormatPK), "ns1:datafileFormatPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datafileFormatPK::name), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "version", -1, &(a->ns1__datafileFormatPK::version), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datafileFormatPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datafileFormatPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datafileFormatPK * SOAP_FMAC4 soap_in_ns1__datafileFormatPK(struct soap *soap, const char *tag, ns1__datafileFormatPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datafileFormatPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileFormatPK, sizeof(ns1__datafileFormatPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datafileFormatPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datafileFormatPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_version1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datafileFormatPK::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_version1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "version", &(a->ns1__datafileFormatPK::version), "xsd:string"))
-				{	soap_flag_version1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datafileFormatPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileFormatPK, 0, sizeof(ns1__datafileFormatPK), 0, soap_copy_ns1__datafileFormatPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__datafileFormatPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileFormatPK);
-	if (this->soap_out(soap, tag?tag:"ns1:datafileFormatPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datafileFormatPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datafileFormatPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datafileFormatPK * SOAP_FMAC4 soap_get_ns1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafileFormatPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datafileFormatPK * SOAP_FMAC2 soap_instantiate_ns1__datafileFormatPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileFormatPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileFormatPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK);
-		if (size)
-			*size = sizeof(ns1__datafileFormatPK);
-		((ns1__datafileFormatPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datafileFormatPK);
-		for (int i = 0; i < n; i++)
-			((ns1__datafileFormatPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datafileFormatPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileFormatPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileFormatPK %p -> %p\n", q, p));
-	*(ns1__datafileFormatPK*)p = *(ns1__datafileFormatPK*)q;
-}
-
-void ns1__datafileFormat::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datafileFormat::datafileFormatPK = NULL;
-	this->ns1__datafileFormat::description = NULL;
-	this->ns1__datafileFormat::formatType = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datafileFormat::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__datafileFormatPK(soap, &this->ns1__datafileFormat::datafileFormatPK);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormat::description);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormat::formatType);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__datafileFormat::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datafileFormat(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileFormat(struct soap *soap, const char *tag, int id, const ns1__datafileFormat *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileFormat), "ns1:datafileFormat"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileFormatPK(soap, "datafileFormatPK", -1, &(a->ns1__datafileFormat::datafileFormatPK), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datafileFormat::description), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "formatType", -1, &(a->ns1__datafileFormat::formatType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datafileFormat::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datafileFormat(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datafileFormat * SOAP_FMAC4 soap_in_ns1__datafileFormat(struct soap *soap, const char *tag, ns1__datafileFormat *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datafileFormat *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileFormat, sizeof(ns1__datafileFormat), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datafileFormat)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datafileFormat *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_datafileFormatPK1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_formatType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_datafileFormatPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileFormatPK(soap, "datafileFormatPK", &(a->ns1__datafileFormat::datafileFormatPK), "ns1:datafileFormatPK"))
-				{	soap_flag_datafileFormatPK1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datafileFormat::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_formatType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "formatType", &(a->ns1__datafileFormat::formatType), "xsd:string"))
-				{	soap_flag_formatType1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datafileFormat *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileFormat, 0, sizeof(ns1__datafileFormat), 0, soap_copy_ns1__datafileFormat);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__datafileFormat::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileFormat);
-	if (this->soap_out(soap, tag?tag:"ns1:datafileFormat", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datafileFormat::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datafileFormat(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datafileFormat * SOAP_FMAC4 soap_get_ns1__datafileFormat(struct soap *soap, ns1__datafileFormat *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafileFormat(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datafileFormat * SOAP_FMAC2 soap_instantiate_ns1__datafileFormat(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileFormat(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileFormat, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat);
-		if (size)
-			*size = sizeof(ns1__datafileFormat);
-		((ns1__datafileFormat*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datafileFormat);
-		for (int i = 0; i < n; i++)
-			((ns1__datafileFormat*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datafileFormat*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileFormat(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileFormat %p -> %p\n", q, p));
-	*(ns1__datafileFormat*)p = *(ns1__datafileFormat*)q;
-}
-
-void ns1__datafile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__datafile::checksum = NULL;
-	this->ns1__datafile::command = NULL;
-	this->ns1__datafile::datafileCreateTime = NULL;
-	this->ns1__datafile::datafileFormat = NULL;
-	this->ns1__datafile::datafileInclude = NULL;
-	this->ns1__datafile::datafileModifyTime = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__datafile::datafileParameterCollection);
-	this->ns1__datafile::datafileVersion = NULL;
-	this->ns1__datafile::datafileVersionComment = NULL;
-	this->ns1__datafile::datasetId = NULL;
-	this->ns1__datafile::description = NULL;
-	this->ns1__datafile::fileSize = NULL;
-	this->ns1__datafile::id = NULL;
-	this->ns1__datafile::location = NULL;
-	this->ns1__datafile::name = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection1);
-	soap_default_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection);
-	this->ns1__datafile::signature = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__datafile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::checksum);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::command);
-	soap_serialize_PointerTotime(soap, &this->ns1__datafile::datafileCreateTime);
-	soap_serialize_PointerTons1__datafileFormat(soap, &this->ns1__datafile::datafileFormat);
-	soap_serialize_PointerTons1__datafileInclude(soap, &this->ns1__datafile::datafileInclude);
-	soap_serialize_PointerTotime(soap, &this->ns1__datafile::datafileModifyTime);
-	soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__datafile::datafileParameterCollection);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::datafileVersion);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::datafileVersionComment);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__datafile::datasetId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::description);
-	soap_serialize_PointerToint(soap, &this->ns1__datafile::fileSize);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__datafile::id);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::location);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::name);
-	soap_serialize_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection1);
-	soap_serialize_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::signature);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__datafile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__datafile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafile(struct soap *soap, const char *tag, int id, const ns1__datafile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafile), "ns1:datafile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "checksum", -1, &(a->ns1__datafile::checksum), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "command", -1, &(a->ns1__datafile::command), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "datafileCreateTime", -1, &(a->ns1__datafile::datafileCreateTime), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileFormat(soap, "datafileFormat", -1, &(a->ns1__datafile::datafileFormat), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafileInclude(soap, "datafileInclude", -1, &(a->ns1__datafile::datafileInclude), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "datafileModifyTime", -1, &(a->ns1__datafile::datafileModifyTime), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "datafileParameterCollection", -1, &(a->ns1__datafile::datafileParameterCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "datafileVersion", -1, &(a->ns1__datafile::datafileVersion), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "datafileVersionComment", -1, &(a->ns1__datafile::datafileVersionComment), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__datafile::datasetId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datafile::description), ""))
-		return soap->error;
-	if (soap_out_PointerToint(soap, "fileSize", -1, &(a->ns1__datafile::fileSize), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__datafile::id), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "location", -1, &(a->ns1__datafile::location), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datafile::name), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection1", -1, &(a->ns1__datafile::relatedDatafilesCollection1), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection", -1, &(a->ns1__datafile::relatedDatafilesCollection), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "signature", -1, &(a->ns1__datafile::signature), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__datafile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__datafile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__datafile * SOAP_FMAC4 soap_in_ns1__datafile(struct soap *soap, const char *tag, ns1__datafile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__datafile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafile, sizeof(ns1__datafile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__datafile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__datafile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_checksum1 = 1;
-	size_t soap_flag_command1 = 1;
-	size_t soap_flag_datafileCreateTime1 = 1;
-	size_t soap_flag_datafileFormat1 = 1;
-	size_t soap_flag_datafileInclude1 = 1;
-	size_t soap_flag_datafileModifyTime1 = 1;
-	size_t soap_flag_datafileVersion1 = 1;
-	size_t soap_flag_datafileVersionComment1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_fileSize1 = 1;
-	size_t soap_flag_id1 = 1;
-	size_t soap_flag_location1 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_signature1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_checksum1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "checksum", &(a->ns1__datafile::checksum), "xsd:string"))
-				{	soap_flag_checksum1--;
-					continue;
-				}
-			if (soap_flag_command1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "command", &(a->ns1__datafile::command), "xsd:string"))
-				{	soap_flag_command1--;
-					continue;
-				}
-			if (soap_flag_datafileCreateTime1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "datafileCreateTime", &(a->ns1__datafile::datafileCreateTime), "xsd:dateTime"))
-				{	soap_flag_datafileCreateTime1--;
-					continue;
-				}
-			if (soap_flag_datafileFormat1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileFormat(soap, "datafileFormat", &(a->ns1__datafile::datafileFormat), "ns1:datafileFormat"))
-				{	soap_flag_datafileFormat1--;
-					continue;
-				}
-			if (soap_flag_datafileInclude1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafileInclude(soap, "datafileInclude", &(a->ns1__datafile::datafileInclude), "ns1:datafileInclude"))
-				{	soap_flag_datafileInclude1--;
-					continue;
-				}
-			if (soap_flag_datafileModifyTime1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "datafileModifyTime", &(a->ns1__datafile::datafileModifyTime), "xsd:dateTime"))
-				{	soap_flag_datafileModifyTime1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "datafileParameterCollection", &(a->ns1__datafile::datafileParameterCollection), "ns1:datafileParameter"))
-					continue;
-			if (soap_flag_datafileVersion1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "datafileVersion", &(a->ns1__datafile::datafileVersion), "xsd:string"))
-				{	soap_flag_datafileVersion1--;
-					continue;
-				}
-			if (soap_flag_datafileVersionComment1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "datafileVersionComment", &(a->ns1__datafile::datafileVersionComment), "xsd:string"))
-				{	soap_flag_datafileVersionComment1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__datafile::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datafile::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_fileSize1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToint(soap, "fileSize", &(a->ns1__datafile::fileSize), "xsd:int"))
-				{	soap_flag_fileSize1--;
-					continue;
-				}
-			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__datafile::id), "xsd:long"))
-				{	soap_flag_id1--;
-					continue;
-				}
-			if (soap_flag_location1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "location", &(a->ns1__datafile::location), "xsd:string"))
-				{	soap_flag_location1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datafile::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection1", &(a->ns1__datafile::relatedDatafilesCollection1), "ns1:relatedDatafiles"))
-					continue;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection", &(a->ns1__datafile::relatedDatafilesCollection), "ns1:relatedDatafiles"))
-					continue;
-			if (soap_flag_signature1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "signature", &(a->ns1__datafile::signature), "xsd:string"))
-				{	soap_flag_signature1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__datafile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafile, 0, sizeof(ns1__datafile), 0, soap_copy_ns1__datafile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__datafile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafile);
-	if (this->soap_out(soap, tag?tag:"ns1:datafile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__datafile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__datafile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__datafile * SOAP_FMAC4 soap_get_ns1__datafile(struct soap *soap, ns1__datafile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__datafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__datafile * SOAP_FMAC2 soap_instantiate_ns1__datafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafile);
-		if (size)
-			*size = sizeof(ns1__datafile);
-		((ns1__datafile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__datafile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__datafile);
-		for (int i = 0; i < n; i++)
-			((ns1__datafile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__datafile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafile %p -> %p\n", q, p));
-	*(ns1__datafile*)p = *(ns1__datafile*)q;
-}
-
-void ns1__createDataFile::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__createDataFile::sessionId = NULL;
-	this->ns1__createDataFile::dataFile = NULL;
-	this->ns1__createDataFile::datasetId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__createDataFile::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataFile::sessionId);
-	soap_serialize_PointerTons1__datafile(soap, &this->ns1__createDataFile::dataFile);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataFile::datasetId);
-	/* transient soap skipped */
-}
-
-int ns1__createDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__createDataFile(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFile(struct soap *soap, const char *tag, int id, const ns1__createDataFile *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFile), "ns1:createDataFile"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataFile::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__datafile(soap, "dataFile", -1, &(a->ns1__createDataFile::dataFile), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__createDataFile::datasetId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__createDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__createDataFile(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__createDataFile * SOAP_FMAC4 soap_in_ns1__createDataFile(struct soap *soap, const char *tag, ns1__createDataFile *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__createDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFile, sizeof(ns1__createDataFile), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__createDataFile)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__createDataFile *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_dataFile1 = 1;
-	size_t soap_flag_datasetId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataFile::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_dataFile1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__datafile(soap, "dataFile", &(a->ns1__createDataFile::dataFile), "ns1:datafile"))
-				{	soap_flag_dataFile1--;
-					continue;
-				}
-			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__createDataFile::datasetId), "xsd:long"))
-				{	soap_flag_datasetId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__createDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFile, 0, sizeof(ns1__createDataFile), 0, soap_copy_ns1__createDataFile);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__createDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFile);
-	if (this->soap_out(soap, tag?tag:"ns1:createDataFile", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__createDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__createDataFile(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__createDataFile * SOAP_FMAC4 soap_get_ns1__createDataFile(struct soap *soap, ns1__createDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__createDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__createDataFile * SOAP_FMAC2 soap_instantiate_ns1__createDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile);
-		if (size)
-			*size = sizeof(ns1__createDataFile);
-		((ns1__createDataFile*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__createDataFile);
-		for (int i = 0; i < n; i++)
-			((ns1__createDataFile*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__createDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFile %p -> %p\n", q, p));
-	*(ns1__createDataFile*)p = *(ns1__createDataFile*)q;
-}
-
-void ns1__listInstrumentsResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listInstrumentsResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listInstrumentsResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listInstrumentsResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listInstrumentsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listInstrumentsResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInstrumentsResponse(struct soap *soap, const char *tag, int id, const ns1__listInstrumentsResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInstrumentsResponse), "ns1:listInstrumentsResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listInstrumentsResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listInstrumentsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listInstrumentsResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listInstrumentsResponse * SOAP_FMAC4 soap_in_ns1__listInstrumentsResponse(struct soap *soap, const char *tag, ns1__listInstrumentsResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listInstrumentsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInstrumentsResponse, sizeof(ns1__listInstrumentsResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listInstrumentsResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listInstrumentsResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listInstrumentsResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listInstrumentsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInstrumentsResponse, 0, sizeof(ns1__listInstrumentsResponse), 0, soap_copy_ns1__listInstrumentsResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listInstrumentsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInstrumentsResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listInstrumentsResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listInstrumentsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listInstrumentsResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listInstrumentsResponse * SOAP_FMAC4 soap_get_ns1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listInstrumentsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listInstrumentsResponse * SOAP_FMAC2 soap_instantiate_ns1__listInstrumentsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInstrumentsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInstrumentsResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse);
-		if (size)
-			*size = sizeof(ns1__listInstrumentsResponse);
-		((ns1__listInstrumentsResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listInstrumentsResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listInstrumentsResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listInstrumentsResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInstrumentsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInstrumentsResponse %p -> %p\n", q, p));
-	*(ns1__listInstrumentsResponse*)p = *(ns1__listInstrumentsResponse*)q;
-}
-
-void ns1__listInstruments::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listInstruments::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listInstruments::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listInstruments::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listInstruments::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listInstruments(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInstruments(struct soap *soap, const char *tag, int id, const ns1__listInstruments *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInstruments), "ns1:listInstruments"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listInstruments::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listInstruments::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listInstruments(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listInstruments * SOAP_FMAC4 soap_in_ns1__listInstruments(struct soap *soap, const char *tag, ns1__listInstruments *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listInstruments *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInstruments, sizeof(ns1__listInstruments), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listInstruments)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listInstruments *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listInstruments::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listInstruments *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInstruments, 0, sizeof(ns1__listInstruments), 0, soap_copy_ns1__listInstruments);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listInstruments::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInstruments);
-	if (this->soap_out(soap, tag?tag:"ns1:listInstruments", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listInstruments::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listInstruments(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listInstruments * SOAP_FMAC4 soap_get_ns1__listInstruments(struct soap *soap, ns1__listInstruments *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listInstruments(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listInstruments * SOAP_FMAC2 soap_instantiate_ns1__listInstruments(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInstruments(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInstruments, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments);
-		if (size)
-			*size = sizeof(ns1__listInstruments);
-		((ns1__listInstruments*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listInstruments);
-		for (int i = 0; i < n; i++)
-			((ns1__listInstruments*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listInstruments*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInstruments(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInstruments %p -> %p\n", q, p));
-	*(ns1__listInstruments*)p = *(ns1__listInstruments*)q;
-}
-
-void ns1__NoSuchObjectFoundException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__NoSuchObjectFoundException::message = NULL;
-	this->ns1__NoSuchObjectFoundException::stackTraceAsString = NULL;
-	this->ns1__NoSuchObjectFoundException::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__NoSuchObjectFoundException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchObjectFoundException::message);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchObjectFoundException::stackTraceAsString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchObjectFoundException::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__NoSuchObjectFoundException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__NoSuchObjectFoundException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__NoSuchObjectFoundException(struct soap *soap, const char *tag, int id, const ns1__NoSuchObjectFoundException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__NoSuchObjectFoundException), "ns1:NoSuchObjectFoundException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__NoSuchObjectFoundException::message), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__NoSuchObjectFoundException::stackTraceAsString), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__NoSuchObjectFoundException::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__NoSuchObjectFoundException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__NoSuchObjectFoundException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__NoSuchObjectFoundException * SOAP_FMAC4 soap_in_ns1__NoSuchObjectFoundException(struct soap *soap, const char *tag, ns1__NoSuchObjectFoundException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__NoSuchObjectFoundException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__NoSuchObjectFoundException, sizeof(ns1__NoSuchObjectFoundException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__NoSuchObjectFoundException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__NoSuchObjectFoundException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	size_t soap_flag_stackTraceAsString1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__NoSuchObjectFoundException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__NoSuchObjectFoundException::stackTraceAsString), "xsd:string"))
-				{	soap_flag_stackTraceAsString1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__NoSuchObjectFoundException::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__NoSuchObjectFoundException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__NoSuchObjectFoundException, 0, sizeof(ns1__NoSuchObjectFoundException), 0, soap_copy_ns1__NoSuchObjectFoundException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__NoSuchObjectFoundException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__NoSuchObjectFoundException);
-	if (this->soap_out(soap, tag?tag:"ns1:NoSuchObjectFoundException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__NoSuchObjectFoundException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__NoSuchObjectFoundException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__NoSuchObjectFoundException * SOAP_FMAC4 soap_get_ns1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__NoSuchObjectFoundException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__NoSuchObjectFoundException * SOAP_FMAC2 soap_instantiate_ns1__NoSuchObjectFoundException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__NoSuchObjectFoundException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__NoSuchObjectFoundException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException);
-		if (size)
-			*size = sizeof(ns1__NoSuchObjectFoundException);
-		((ns1__NoSuchObjectFoundException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__NoSuchObjectFoundException);
-		for (int i = 0; i < n; i++)
-			((ns1__NoSuchObjectFoundException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__NoSuchObjectFoundException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__NoSuchObjectFoundException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__NoSuchObjectFoundException %p -> %p\n", q, p));
-	*(ns1__NoSuchObjectFoundException*)p = *(ns1__NoSuchObjectFoundException*)q;
-}
-
-void ns1__InsufficientPrivilegesException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__InsufficientPrivilegesException::message = NULL;
-	this->ns1__InsufficientPrivilegesException::stackTraceAsString = NULL;
-	this->ns1__InsufficientPrivilegesException::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__InsufficientPrivilegesException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__InsufficientPrivilegesException::message);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__InsufficientPrivilegesException::stackTraceAsString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__InsufficientPrivilegesException::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__InsufficientPrivilegesException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__InsufficientPrivilegesException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__InsufficientPrivilegesException(struct soap *soap, const char *tag, int id, const ns1__InsufficientPrivilegesException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__InsufficientPrivilegesException), "ns1:InsufficientPrivilegesException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__InsufficientPrivilegesException::message), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__InsufficientPrivilegesException::stackTraceAsString), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__InsufficientPrivilegesException::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__InsufficientPrivilegesException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__InsufficientPrivilegesException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__InsufficientPrivilegesException * SOAP_FMAC4 soap_in_ns1__InsufficientPrivilegesException(struct soap *soap, const char *tag, ns1__InsufficientPrivilegesException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__InsufficientPrivilegesException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__InsufficientPrivilegesException, sizeof(ns1__InsufficientPrivilegesException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__InsufficientPrivilegesException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__InsufficientPrivilegesException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	size_t soap_flag_stackTraceAsString1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__InsufficientPrivilegesException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__InsufficientPrivilegesException::stackTraceAsString), "xsd:string"))
-				{	soap_flag_stackTraceAsString1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__InsufficientPrivilegesException::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__InsufficientPrivilegesException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__InsufficientPrivilegesException, 0, sizeof(ns1__InsufficientPrivilegesException), 0, soap_copy_ns1__InsufficientPrivilegesException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__InsufficientPrivilegesException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__InsufficientPrivilegesException);
-	if (this->soap_out(soap, tag?tag:"ns1:InsufficientPrivilegesException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__InsufficientPrivilegesException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__InsufficientPrivilegesException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__InsufficientPrivilegesException * SOAP_FMAC4 soap_get_ns1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__InsufficientPrivilegesException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__InsufficientPrivilegesException * SOAP_FMAC2 soap_instantiate_ns1__InsufficientPrivilegesException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__InsufficientPrivilegesException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__InsufficientPrivilegesException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException);
-		if (size)
-			*size = sizeof(ns1__InsufficientPrivilegesException);
-		((ns1__InsufficientPrivilegesException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__InsufficientPrivilegesException);
-		for (int i = 0; i < n; i++)
-			((ns1__InsufficientPrivilegesException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__InsufficientPrivilegesException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__InsufficientPrivilegesException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__InsufficientPrivilegesException %p -> %p\n", q, p));
-	*(ns1__InsufficientPrivilegesException*)p = *(ns1__InsufficientPrivilegesException*)q;
-}
-
-void ns1__removeSampleResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeSampleResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__removeSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeSampleResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSampleResponse(struct soap *soap, const char *tag, int id, const ns1__removeSampleResponse *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeSampleResponse");
-}
-
-void *ns1__removeSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeSampleResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleResponse * SOAP_FMAC4 soap_in_ns1__removeSampleResponse(struct soap *soap, const char *tag, ns1__removeSampleResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__removeSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSampleResponse, sizeof(ns1__removeSampleResponse), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeSampleResponse)
-			return (ns1__removeSampleResponse *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__removeSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSampleResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:removeSampleResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeSampleResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleResponse * SOAP_FMAC4 soap_get_ns1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__removeSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse);
-		if (size)
-			*size = sizeof(ns1__removeSampleResponse);
-		((ns1__removeSampleResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeSampleResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__removeSampleResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSampleResponse %p -> %p\n", q, p));
-	*(ns1__removeSampleResponse*)p = *(ns1__removeSampleResponse*)q;
-}
-
-void ns1__removeSample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__removeSample::sessionId = NULL;
-	this->ns1__removeSample::sampleId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__removeSample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__removeSample::sessionId);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__removeSample::sampleId);
-	/* transient soap skipped */
-}
-
-int ns1__removeSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__removeSample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSample(struct soap *soap, const char *tag, int id, const ns1__removeSample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeSample), "ns1:removeSample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeSample::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__removeSample::sampleId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__removeSample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__removeSample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__removeSample * SOAP_FMAC4 soap_in_ns1__removeSample(struct soap *soap, const char *tag, ns1__removeSample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__removeSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSample, sizeof(ns1__removeSample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__removeSample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__removeSample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeSample::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__removeSample::sampleId), "xsd:long"))
-				{	soap_flag_sampleId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__removeSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeSample, 0, sizeof(ns1__removeSample), 0, soap_copy_ns1__removeSample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__removeSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSample);
-	if (this->soap_out(soap, tag?tag:"ns1:removeSample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__removeSample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__removeSample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__removeSample * SOAP_FMAC4 soap_get_ns1__removeSample(struct soap *soap, ns1__removeSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__removeSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__removeSample * SOAP_FMAC2 soap_instantiate_ns1__removeSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample);
-		if (size)
-			*size = sizeof(ns1__removeSample);
-		((ns1__removeSample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__removeSample);
-		for (int i = 0; i < n; i++)
-			((ns1__removeSample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__removeSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSample %p -> %p\n", q, p));
-	*(ns1__removeSample*)p = *(ns1__removeSample*)q;
-}
-
-void ns1__icatRole::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->ns1__icatRole::actionDelete);
-	soap_default_bool(soap, &this->ns1__icatRole::actionDownload);
-	soap_default_bool(soap, &this->ns1__icatRole::actionFacilityAcquired);
-	soap_default_bool(soap, &this->ns1__icatRole::actionInsert);
-	soap_default_bool(soap, &this->ns1__icatRole::actionManageUsers);
-	soap_default_bool(soap, &this->ns1__icatRole::actionRemove);
-	soap_default_bool(soap, &this->ns1__icatRole::actionRootInsert);
-	soap_default_bool(soap, &this->ns1__icatRole::actionRootRemove);
-	soap_default_bool(soap, &this->ns1__icatRole::actionSelect);
-	soap_default_bool(soap, &this->ns1__icatRole::actionUpdate);
-	this->ns1__icatRole::role = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__icatRole::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__icatRole::role);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__icatRole::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__icatRole(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__icatRole(struct soap *soap, const char *tag, int id, const ns1__icatRole *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__icatRole), "ns1:icatRole"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionDelete", -1, &(a->ns1__icatRole::actionDelete), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionDownload", -1, &(a->ns1__icatRole::actionDownload), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionFacilityAcquired", -1, &(a->ns1__icatRole::actionFacilityAcquired), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionInsert", -1, &(a->ns1__icatRole::actionInsert), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionManageUsers", -1, &(a->ns1__icatRole::actionManageUsers), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionRemove", -1, &(a->ns1__icatRole::actionRemove), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionRootInsert", -1, &(a->ns1__icatRole::actionRootInsert), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionRootRemove", -1, &(a->ns1__icatRole::actionRootRemove), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionSelect", -1, &(a->ns1__icatRole::actionSelect), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "actionUpdate", -1, &(a->ns1__icatRole::actionUpdate), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "role", -1, &(a->ns1__icatRole::role), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__icatRole::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__icatRole(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__icatRole * SOAP_FMAC4 soap_in_ns1__icatRole(struct soap *soap, const char *tag, ns1__icatRole *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__icatRole *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__icatRole, sizeof(ns1__icatRole), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__icatRole)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__icatRole *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_actionDelete1 = 1;
-	size_t soap_flag_actionDownload1 = 1;
-	size_t soap_flag_actionFacilityAcquired1 = 1;
-	size_t soap_flag_actionInsert1 = 1;
-	size_t soap_flag_actionManageUsers1 = 1;
-	size_t soap_flag_actionRemove1 = 1;
-	size_t soap_flag_actionRootInsert1 = 1;
-	size_t soap_flag_actionRootRemove1 = 1;
-	size_t soap_flag_actionSelect1 = 1;
-	size_t soap_flag_actionUpdate1 = 1;
-	size_t soap_flag_role1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_actionDelete1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionDelete", &(a->ns1__icatRole::actionDelete), "xsd:boolean"))
-				{	soap_flag_actionDelete1--;
-					continue;
-				}
-			if (soap_flag_actionDownload1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionDownload", &(a->ns1__icatRole::actionDownload), "xsd:boolean"))
-				{	soap_flag_actionDownload1--;
-					continue;
-				}
-			if (soap_flag_actionFacilityAcquired1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionFacilityAcquired", &(a->ns1__icatRole::actionFacilityAcquired), "xsd:boolean"))
-				{	soap_flag_actionFacilityAcquired1--;
-					continue;
-				}
-			if (soap_flag_actionInsert1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionInsert", &(a->ns1__icatRole::actionInsert), "xsd:boolean"))
-				{	soap_flag_actionInsert1--;
-					continue;
-				}
-			if (soap_flag_actionManageUsers1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionManageUsers", &(a->ns1__icatRole::actionManageUsers), "xsd:boolean"))
-				{	soap_flag_actionManageUsers1--;
-					continue;
-				}
-			if (soap_flag_actionRemove1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionRemove", &(a->ns1__icatRole::actionRemove), "xsd:boolean"))
-				{	soap_flag_actionRemove1--;
-					continue;
-				}
-			if (soap_flag_actionRootInsert1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionRootInsert", &(a->ns1__icatRole::actionRootInsert), "xsd:boolean"))
-				{	soap_flag_actionRootInsert1--;
-					continue;
-				}
-			if (soap_flag_actionRootRemove1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionRootRemove", &(a->ns1__icatRole::actionRootRemove), "xsd:boolean"))
-				{	soap_flag_actionRootRemove1--;
-					continue;
-				}
-			if (soap_flag_actionSelect1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionSelect", &(a->ns1__icatRole::actionSelect), "xsd:boolean"))
-				{	soap_flag_actionSelect1--;
-					continue;
-				}
-			if (soap_flag_actionUpdate1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "actionUpdate", &(a->ns1__icatRole::actionUpdate), "xsd:boolean"))
-				{	soap_flag_actionUpdate1--;
-					continue;
-				}
-			if (soap_flag_role1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "role", &(a->ns1__icatRole::role), "xsd:string"))
-				{	soap_flag_role1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__icatRole *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__icatRole, 0, sizeof(ns1__icatRole), 0, soap_copy_ns1__icatRole);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0 || soap_flag_actionDelete1 > 0 || soap_flag_actionDownload1 > 0 || soap_flag_actionFacilityAcquired1 > 0 || soap_flag_actionInsert1 > 0 || soap_flag_actionManageUsers1 > 0 || soap_flag_actionRemove1 > 0 || soap_flag_actionRootInsert1 > 0 || soap_flag_actionRootRemove1 > 0 || soap_flag_actionSelect1 > 0 || soap_flag_actionUpdate1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__icatRole::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__icatRole);
-	if (this->soap_out(soap, tag?tag:"ns1:icatRole", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__icatRole::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__icatRole(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__icatRole * SOAP_FMAC4 soap_get_ns1__icatRole(struct soap *soap, ns1__icatRole *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__icatRole(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__icatRole * SOAP_FMAC2 soap_instantiate_ns1__icatRole(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__icatRole(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__icatRole, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole);
-		if (size)
-			*size = sizeof(ns1__icatRole);
-		((ns1__icatRole*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__icatRole);
-		for (int i = 0; i < n; i++)
-			((ns1__icatRole*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__icatRole*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__icatRole(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__icatRole %p -> %p\n", q, p));
-	*(ns1__icatRole*)p = *(ns1__icatRole*)q;
-}
-
-void ns1__entityPrimaryKeyBaseBean::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__entityPrimaryKeyBaseBean::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int ns1__entityPrimaryKeyBaseBean::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__entityPrimaryKeyBaseBean(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__entityPrimaryKeyBaseBean(struct soap *soap, const char *tag, int id, const ns1__entityPrimaryKeyBaseBean *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:entityPrimaryKeyBaseBean");
-}
-
-void *ns1__entityPrimaryKeyBaseBean::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__entityPrimaryKeyBaseBean(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__entityPrimaryKeyBaseBean * SOAP_FMAC4 soap_in_ns1__entityPrimaryKeyBaseBean(struct soap *soap, const char *tag, ns1__entityPrimaryKeyBaseBean *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (ns1__entityPrimaryKeyBaseBean *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean, sizeof(ns1__entityPrimaryKeyBaseBean), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__entityPrimaryKeyBaseBean)
-			return (ns1__entityPrimaryKeyBaseBean *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int ns1__entityPrimaryKeyBaseBean::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean);
-	if (this->soap_out(soap, tag?tag:"ns1:entityPrimaryKeyBaseBean", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__entityPrimaryKeyBaseBean::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__entityPrimaryKeyBaseBean(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__entityPrimaryKeyBaseBean * SOAP_FMAC4 soap_get_ns1__entityPrimaryKeyBaseBean(struct soap *soap, ns1__entityPrimaryKeyBaseBean *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__entityPrimaryKeyBaseBean(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__entityPrimaryKeyBaseBean * SOAP_FMAC2 soap_instantiate_ns1__entityPrimaryKeyBaseBean(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__entityPrimaryKeyBaseBean(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (type && !soap_match_tag(soap, type, "ns1:sampleParameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__sampleParameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__sampleParameterPK);
-			((ns1__sampleParameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__sampleParameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__sampleParameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__sampleParameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileFormatPK"))
-	{	cp->type = SOAP_TYPE_ns1__datafileFormatPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileFormatPK);
-			((ns1__datafileFormatPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileFormatPK);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileFormatPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileFormatPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileParameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__datafileParameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileParameterPK);
-			((ns1__datafileParameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileParameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileParameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileParameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafilesPK"))
-	{	cp->type = SOAP_TYPE_ns1__relatedDatafilesPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__relatedDatafilesPK);
-			((ns1__relatedDatafilesPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__relatedDatafilesPK);
-			for (int i = 0; i < n; i++)
-				((ns1__relatedDatafilesPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__relatedDatafilesPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__parameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterPK);
-			((ns1__parameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datasetParameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__datasetParameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datasetParameterPK);
-			((ns1__datasetParameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__datasetParameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__datasetParameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datasetParameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigatorPK"))
-	{	cp->type = SOAP_TYPE_ns1__investigatorPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigatorPK);
-			((ns1__investigatorPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigatorPK);
-			for (int i = 0; i < n; i++)
-				((ns1__investigatorPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigatorPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:keywordPK"))
-	{	cp->type = SOAP_TYPE_ns1__keywordPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__keywordPK);
-			((ns1__keywordPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__keywordPK);
-			for (int i = 0; i < n; i++)
-				((ns1__keywordPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__keywordPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:shiftPK"))
-	{	cp->type = SOAP_TYPE_ns1__shiftPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__shiftPK);
-			((ns1__shiftPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__shiftPK);
-			for (int i = 0; i < n; i++)
-				((ns1__shiftPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__shiftPK*)cp->ptr;
-	}
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean);
-		if (size)
-			*size = sizeof(ns1__entityPrimaryKeyBaseBean);
-		((ns1__entityPrimaryKeyBaseBean*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__entityPrimaryKeyBaseBean);
-		for (int i = 0; i < n; i++)
-			((ns1__entityPrimaryKeyBaseBean*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__entityPrimaryKeyBaseBean*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__entityPrimaryKeyBaseBean(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__entityPrimaryKeyBaseBean %p -> %p\n", q, p));
-	*(ns1__entityPrimaryKeyBaseBean*)p = *(ns1__entityPrimaryKeyBaseBean*)q;
-}
-
-void ns1__sampleParameterPK::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__sampleParameterPK::name = NULL;
-	this->ns1__sampleParameterPK::sampleId = NULL;
-	this->ns1__sampleParameterPK::units = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__sampleParameterPK::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameterPK::name);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__sampleParameterPK::sampleId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameterPK::units);
-	/* transient soap skipped */
-}
-
-int ns1__sampleParameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__sampleParameterPK(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__sampleParameterPK(struct soap *soap, const char *tag, int id, const ns1__sampleParameterPK *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__sampleParameterPK), "ns1:sampleParameterPK"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__sampleParameterPK::name), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__sampleParameterPK::sampleId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__sampleParameterPK::units), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__sampleParameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__sampleParameterPK(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__sampleParameterPK * SOAP_FMAC4 soap_in_ns1__sampleParameterPK(struct soap *soap, const char *tag, ns1__sampleParameterPK *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__sampleParameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__sampleParameterPK, sizeof(ns1__sampleParameterPK), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__sampleParameterPK)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__sampleParameterPK *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_sampleId1 = 1;
-	size_t soap_flag_units1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__sampleParameterPK::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__sampleParameterPK::sampleId), "xsd:long"))
-				{	soap_flag_sampleId1--;
-					continue;
-				}
-			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__sampleParameterPK::units), "xsd:string"))
-				{	soap_flag_units1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__sampleParameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__sampleParameterPK, 0, sizeof(ns1__sampleParameterPK), 0, soap_copy_ns1__sampleParameterPK);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__sampleParameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__sampleParameterPK);
-	if (this->soap_out(soap, tag?tag:"ns1:sampleParameterPK", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__sampleParameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__sampleParameterPK(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__sampleParameterPK * SOAP_FMAC4 soap_get_ns1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__sampleParameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__sampleParameterPK * SOAP_FMAC2 soap_instantiate_ns1__sampleParameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__sampleParameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__sampleParameterPK, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK);
-		if (size)
-			*size = sizeof(ns1__sampleParameterPK);
-		((ns1__sampleParameterPK*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__sampleParameterPK);
-		for (int i = 0; i < n; i++)
-			((ns1__sampleParameterPK*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__sampleParameterPK*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__sampleParameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__sampleParameterPK %p -> %p\n", q, p));
-	*(ns1__sampleParameterPK*)p = *(ns1__sampleParameterPK*)q;
-}
-
-void ns1__sampleParameter::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__sampleParameter::dateTimeValue = NULL;
-	this->ns1__sampleParameter::description = NULL;
-	this->ns1__sampleParameter::error = NULL;
-	this->ns1__sampleParameter::numericValue = NULL;
-	this->ns1__sampleParameter::rangeBottom = NULL;
-	this->ns1__sampleParameter::rangeTop = NULL;
-	this->ns1__sampleParameter::sampleParameterPK = NULL;
-	this->ns1__sampleParameter::stringValue = NULL;
-	this->ns1__sampleParameter::valueType = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__sampleParameter::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTotime(soap, &this->ns1__sampleParameter::dateTimeValue);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::description);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::error);
-	soap_serialize_PointerTodouble(soap, &this->ns1__sampleParameter::numericValue);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::rangeBottom);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::rangeTop);
-	soap_serialize_PointerTons1__sampleParameterPK(soap, &this->ns1__sampleParameter::sampleParameterPK);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::stringValue);
-	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__sampleParameter::valueType);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__sampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__sampleParameter(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__sampleParameter(struct soap *soap, const char *tag, int id, const ns1__sampleParameter *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__sampleParameter), "ns1:sampleParameter"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTotime(soap, "dateTimeValue", -1, &(a->ns1__sampleParameter::dateTimeValue), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__sampleParameter::description), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "error", -1, &(a->ns1__sampleParameter::error), ""))
-		return soap->error;
-	if (soap_out_PointerTodouble(soap, "numericValue", -1, &(a->ns1__sampleParameter::numericValue), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "rangeBottom", -1, &(a->ns1__sampleParameter::rangeBottom), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "rangeTop", -1, &(a->ns1__sampleParameter::rangeTop), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", -1, &(a->ns1__sampleParameter::sampleParameterPK), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stringValue", -1, &(a->ns1__sampleParameter::stringValue), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__sampleParameter::valueType), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__sampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__sampleParameter(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__sampleParameter * SOAP_FMAC4 soap_in_ns1__sampleParameter(struct soap *soap, const char *tag, ns1__sampleParameter *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__sampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__sampleParameter, sizeof(ns1__sampleParameter), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__sampleParameter)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__sampleParameter *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_dateTimeValue1 = 1;
-	size_t soap_flag_description1 = 1;
-	size_t soap_flag_error1 = 1;
-	size_t soap_flag_numericValue1 = 1;
-	size_t soap_flag_rangeBottom1 = 1;
-	size_t soap_flag_rangeTop1 = 1;
-	size_t soap_flag_sampleParameterPK1 = 1;
-	size_t soap_flag_stringValue1 = 1;
-	size_t soap_flag_valueType1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_dateTimeValue1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTotime(soap, "dateTimeValue", &(a->ns1__sampleParameter::dateTimeValue), "xsd:dateTime"))
-				{	soap_flag_dateTimeValue1--;
-					continue;
-				}
-			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__sampleParameter::description), "xsd:string"))
-				{	soap_flag_description1--;
-					continue;
-				}
-			if (soap_flag_error1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "error", &(a->ns1__sampleParameter::error), "xsd:string"))
-				{	soap_flag_error1--;
-					continue;
-				}
-			if (soap_flag_numericValue1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTodouble(soap, "numericValue", &(a->ns1__sampleParameter::numericValue), "xsd:double"))
-				{	soap_flag_numericValue1--;
-					continue;
-				}
-			if (soap_flag_rangeBottom1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "rangeBottom", &(a->ns1__sampleParameter::rangeBottom), "xsd:string"))
-				{	soap_flag_rangeBottom1--;
-					continue;
-				}
-			if (soap_flag_rangeTop1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "rangeTop", &(a->ns1__sampleParameter::rangeTop), "xsd:string"))
-				{	soap_flag_rangeTop1--;
-					continue;
-				}
-			if (soap_flag_sampleParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", &(a->ns1__sampleParameter::sampleParameterPK), "ns1:sampleParameterPK"))
-				{	soap_flag_sampleParameterPK1--;
-					continue;
-				}
-			if (soap_flag_stringValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stringValue", &(a->ns1__sampleParameter::stringValue), "xsd:string"))
-				{	soap_flag_stringValue1--;
-					continue;
-				}
-			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__sampleParameter::valueType), "ns1:parameterValueType"))
-				{	soap_flag_valueType1--;
-					continue;
-				}
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__sampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__sampleParameter, 0, sizeof(ns1__sampleParameter), 0, soap_copy_ns1__sampleParameter);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__sampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__sampleParameter);
-	if (this->soap_out(soap, tag?tag:"ns1:sampleParameter", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__sampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__sampleParameter(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__sampleParameter * SOAP_FMAC4 soap_get_ns1__sampleParameter(struct soap *soap, ns1__sampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__sampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__sampleParameter * SOAP_FMAC2 soap_instantiate_ns1__sampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__sampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__sampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter);
-		if (size)
-			*size = sizeof(ns1__sampleParameter);
-		((ns1__sampleParameter*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__sampleParameter);
-		for (int i = 0; i < n; i++)
-			((ns1__sampleParameter*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__sampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__sampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__sampleParameter %p -> %p\n", q, p));
-	*(ns1__sampleParameter*)p = *(ns1__sampleParameter*)q;
-}
-
-void ns1__entityBaseBean::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__entityBaseBean::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__entityBaseBean::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__entityBaseBean(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__entityBaseBean(struct soap *soap, const char *tag, int id, const ns1__entityBaseBean *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__entityBaseBean), "ns1:entityBaseBean"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__entityBaseBean::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__entityBaseBean(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__entityBaseBean * SOAP_FMAC4 soap_in_ns1__entityBaseBean(struct soap *soap, const char *tag, ns1__entityBaseBean *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__entityBaseBean *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__entityBaseBean, sizeof(ns1__entityBaseBean), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__entityBaseBean)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__entityBaseBean *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_facilityAcquiredData1 = 1;
-	size_t soap_flag_icatRole1 = 1;
-	size_t soap_flag_selected1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData1--;
-					continue;
-				}
-			if (soap_flag_icatRole1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole1--;
-					continue;
-				}
-			if (soap_flag_selected1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__entityBaseBean *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__entityBaseBean, 0, sizeof(ns1__entityBaseBean), 0, soap_copy_ns1__entityBaseBean);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData1 > 0 || soap_flag_selected1 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__entityBaseBean::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__entityBaseBean);
-	if (this->soap_out(soap, tag?tag:"ns1:entityBaseBean", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__entityBaseBean::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__entityBaseBean(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__entityBaseBean * SOAP_FMAC4 soap_get_ns1__entityBaseBean(struct soap *soap, ns1__entityBaseBean *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__entityBaseBean(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__entityBaseBean * SOAP_FMAC2 soap_instantiate_ns1__entityBaseBean(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__entityBaseBean(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__entityBaseBean, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (type && !soap_match_tag(soap, type, "ns1:sample"))
-	{	cp->type = SOAP_TYPE_ns1__sample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__sample);
-			((ns1__sample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sample[n]);
-			if (size)
-				*size = n * sizeof(ns1__sample);
-			for (int i = 0; i < n; i++)
-				((ns1__sample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__sample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:sampleParameter"))
-	{	cp->type = SOAP_TYPE_ns1__sampleParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__sampleParameter);
-			((ns1__sampleParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__sampleParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__sampleParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__sampleParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:icatRole"))
-	{	cp->type = SOAP_TYPE_ns1__icatRole;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__icatRole);
-			((ns1__icatRole*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole[n]);
-			if (size)
-				*size = n * sizeof(ns1__icatRole);
-			for (int i = 0; i < n; i++)
-				((ns1__icatRole*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__icatRole*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafile"))
-	{	cp->type = SOAP_TYPE_ns1__datafile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafile);
-			((ns1__datafile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafile);
-			for (int i = 0; i < n; i++)
-				((ns1__datafile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileFormat"))
-	{	cp->type = SOAP_TYPE_ns1__datafileFormat;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileFormat);
-			((ns1__datafileFormat*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileFormat);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileFormat*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileFormat*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileParameter"))
-	{	cp->type = SOAP_TYPE_ns1__datafileParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileParameter);
-			((ns1__datafileParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafiles"))
-	{	cp->type = SOAP_TYPE_ns1__relatedDatafiles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__relatedDatafiles);
-			((ns1__relatedDatafiles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles[n]);
-			if (size)
-				*size = n * sizeof(ns1__relatedDatafiles);
-			for (int i = 0; i < n; i++)
-				((ns1__relatedDatafiles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__relatedDatafiles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameter"))
-	{	cp->type = SOAP_TYPE_ns1__parameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameter);
-			((ns1__parameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameter);
-			for (int i = 0; i < n; i++)
-				((ns1__parameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigation"))
-	{	cp->type = SOAP_TYPE_ns1__investigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigation);
-			((ns1__investigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigation);
-			for (int i = 0; i < n; i++)
-				((ns1__investigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:dataset"))
-	{	cp->type = SOAP_TYPE_ns1__dataset;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__dataset);
-			((ns1__dataset*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset[n]);
-			if (size)
-				*size = n * sizeof(ns1__dataset);
-			for (int i = 0; i < n; i++)
-				((ns1__dataset*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__dataset*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datasetParameter"))
-	{	cp->type = SOAP_TYPE_ns1__datasetParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datasetParameter);
-			((ns1__datasetParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__datasetParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__datasetParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datasetParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:facilityCycle"))
-	{	cp->type = SOAP_TYPE_ns1__facilityCycle;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__facilityCycle);
-			((ns1__facilityCycle*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle[n]);
-			if (size)
-				*size = n * sizeof(ns1__facilityCycle);
-			for (int i = 0; i < n; i++)
-				((ns1__facilityCycle*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__facilityCycle*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigator"))
-	{	cp->type = SOAP_TYPE_ns1__investigator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigator);
-			((ns1__investigator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigator);
-			for (int i = 0; i < n; i++)
-				((ns1__investigator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:facilityUser"))
-	{	cp->type = SOAP_TYPE_ns1__facilityUser;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__facilityUser);
-			((ns1__facilityUser*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser[n]);
-			if (size)
-				*size = n * sizeof(ns1__facilityUser);
-			for (int i = 0; i < n; i++)
-				((ns1__facilityUser*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__facilityUser*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:keyword"))
-	{	cp->type = SOAP_TYPE_ns1__keyword;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__keyword);
-			((ns1__keyword*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword[n]);
-			if (size)
-				*size = n * sizeof(ns1__keyword);
-			for (int i = 0; i < n; i++)
-				((ns1__keyword*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__keyword*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:publication"))
-	{	cp->type = SOAP_TYPE_ns1__publication;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__publication);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__publication);
-			((ns1__publication*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__publication[n]);
-			if (size)
-				*size = n * sizeof(ns1__publication);
-			for (int i = 0; i < n; i++)
-				((ns1__publication*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__publication*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:shift"))
-	{	cp->type = SOAP_TYPE_ns1__shift;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shift);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__shift);
-			((ns1__shift*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shift[n]);
-			if (size)
-				*size = n * sizeof(ns1__shift);
-			for (int i = 0; i < n; i++)
-				((ns1__shift*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__shift*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:icatAuthorisation"))
-	{	cp->type = SOAP_TYPE_ns1__icatAuthorisation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__icatAuthorisation);
-			((ns1__icatAuthorisation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation[n]);
-			if (size)
-				*size = n * sizeof(ns1__icatAuthorisation);
-			for (int i = 0; i < n; i++)
-				((ns1__icatAuthorisation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__icatAuthorisation*)cp->ptr;
-	}
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean);
-		if (size)
-			*size = sizeof(ns1__entityBaseBean);
-		((ns1__entityBaseBean*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__entityBaseBean);
-		for (int i = 0; i < n; i++)
-			((ns1__entityBaseBean*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__entityBaseBean*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__entityBaseBean(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__entityBaseBean %p -> %p\n", q, p));
-	*(ns1__entityBaseBean*)p = *(ns1__entityBaseBean*)q;
-}
-
-void ns1__sample::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__sample::chemicalFormula = NULL;
-	this->ns1__sample::id = NULL;
-	this->ns1__sample::instance = NULL;
-	this->ns1__sample::name = NULL;
-	this->ns1__sample::proposalSampleId = NULL;
-	this->ns1__sample::safetyInformation = NULL;
-	soap_default_std__vectorTemplateOfPointerTons1__sampleParameter(soap, &this->ns1__sample::sampleParameterCollection);
-	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
-	this->ns1__entityBaseBean::icatRole = NULL;
-	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
-	this->ns1__entityBaseBean::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__sample::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::chemicalFormula);
-	soap_serialize_PointerToLONG64(soap, &this->ns1__sample::id);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::instance);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::name);
-	soap_serialize_PointerToint(soap, &this->ns1__sample::proposalSampleId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::safetyInformation);
-	soap_serialize_std__vectorTemplateOfPointerTons1__sampleParameter(soap, &this->ns1__sample::sampleParameterCollection);
-	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__sample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__sample(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__sample(struct soap *soap, const char *tag, int id, const ns1__sample *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__sample), "ns1:sample"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
-		return soap->error;
-	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
-		return soap->error;
-	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "chemicalFormula", -1, &(a->ns1__sample::chemicalFormula), ""))
-		return soap->error;
-	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__sample::id), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "instance", -1, &(a->ns1__sample::instance), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__sample::name), ""))
-		return soap->error;
-	if (soap_out_PointerToint(soap, "proposalSampleId", -1, &(a->ns1__sample::proposalSampleId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "safetyInformation", -1, &(a->ns1__sample::safetyInformation), ""))
-		return soap->error;
-	if (soap_out_std__vectorTemplateOfPointerTons1__sampleParameter(soap, "sampleParameterCollection", -1, &(a->ns1__sample::sampleParameterCollection), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__sample::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__sample(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__sample * SOAP_FMAC4 soap_in_ns1__sample(struct soap *soap, const char *tag, ns1__sample *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__sample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__sample, sizeof(ns1__sample), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__sample)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__sample *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item3 = 1;
-	size_t soap_flag_facilityAcquiredData2 = 1;
-	size_t soap_flag_icatRole2 = 1;
-	size_t soap_flag_selected2 = 1;
-	size_t soap_flag_uniqueId2 = 1;
-	size_t soap_flag_chemicalFormula1 = 1;
-	size_t soap_flag_id1 = 1;
-	size_t soap_flag_instance1 = 1;
-	size_t soap_flag_name1 = 1;
-	size_t soap_flag_proposalSampleId1 = 1;
-	size_t soap_flag_safetyInformation1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
-				{	soap_flag_facilityAcquiredData2--;
-					continue;
-				}
-			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
-				{	soap_flag_icatRole2--;
-					continue;
-				}
-			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
-				{	soap_flag_selected2--;
-					continue;
-				}
-			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId2--;
-					continue;
-				}
-			if (soap_flag_chemicalFormula1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "chemicalFormula", &(a->ns1__sample::chemicalFormula), "xsd:string"))
-				{	soap_flag_chemicalFormula1--;
-					continue;
-				}
-			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__sample::id), "xsd:long"))
-				{	soap_flag_id1--;
-					continue;
-				}
-			if (soap_flag_instance1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "instance", &(a->ns1__sample::instance), "xsd:string"))
-				{	soap_flag_instance1--;
-					continue;
-				}
-			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__sample::name), "xsd:string"))
-				{	soap_flag_name1--;
-					continue;
-				}
-			if (soap_flag_proposalSampleId1 && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToint(soap, "proposalSampleId", &(a->ns1__sample::proposalSampleId), "xsd:int"))
-				{	soap_flag_proposalSampleId1--;
-					continue;
-				}
-			if (soap_flag_safetyInformation1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "safetyInformation", &(a->ns1__sample::safetyInformation), "xsd:string"))
-				{	soap_flag_safetyInformation1--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__sampleParameter(soap, "sampleParameterCollection", &(a->ns1__sample::sampleParameterCollection), "ns1:sampleParameter"))
-					continue;
-			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item3--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__sample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__sample, 0, sizeof(ns1__sample), 0, soap_copy_ns1__sample);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-int ns1__sample::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__sample);
-	if (this->soap_out(soap, tag?tag:"ns1:sample", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__sample::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__sample(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__sample * SOAP_FMAC4 soap_get_ns1__sample(struct soap *soap, ns1__sample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__sample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__sample * SOAP_FMAC2 soap_instantiate_ns1__sample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__sample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__sample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__sample);
-		if (size)
-			*size = sizeof(ns1__sample);
-		((ns1__sample*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__sample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__sample);
-		for (int i = 0; i < n; i++)
-			((ns1__sample*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__sample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__sample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__sample %p -> %p\n", q, p));
-	*(ns1__sample*)p = *(ns1__sample*)q;
-}
-
-void ns1__searchSamplesBySampleNameResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__searchSamplesBySampleNameResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchSamplesBySampleNameResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__searchSamplesBySampleNameResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__searchSamplesBySampleNameResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchSamplesBySampleNameResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, int id, const ns1__searchSamplesBySampleNameResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse), "ns1:searchSamplesBySampleNameResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfPointerTons1__sample(soap, "return", -1, &(a->ns1__searchSamplesBySampleNameResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchSamplesBySampleNameResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchSamplesBySampleNameResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse * SOAP_FMAC4 soap_in_ns1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, ns1__searchSamplesBySampleNameResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchSamplesBySampleNameResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, sizeof(ns1__searchSamplesBySampleNameResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchSamplesBySampleNameResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchSamplesBySampleNameResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfPointerTons1__sample(soap, "return", &(a->ns1__searchSamplesBySampleNameResponse::return_), "ns1:sample"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchSamplesBySampleNameResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, 0, sizeof(ns1__searchSamplesBySampleNameResponse), 0, soap_copy_ns1__searchSamplesBySampleNameResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchSamplesBySampleNameResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:searchSamplesBySampleNameResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchSamplesBySampleNameResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchSamplesBySampleNameResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse * SOAP_FMAC4 soap_get_ns1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchSamplesBySampleNameResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchSamplesBySampleNameResponse * SOAP_FMAC2 soap_instantiate_ns1__searchSamplesBySampleNameResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchSamplesBySampleNameResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse);
-		if (size)
-			*size = sizeof(ns1__searchSamplesBySampleNameResponse);
-		((ns1__searchSamplesBySampleNameResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchSamplesBySampleNameResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__searchSamplesBySampleNameResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchSamplesBySampleNameResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchSamplesBySampleNameResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchSamplesBySampleNameResponse %p -> %p\n", q, p));
-	*(ns1__searchSamplesBySampleNameResponse*)p = *(ns1__searchSamplesBySampleNameResponse*)q;
-}
-
-void ns1__searchSamplesBySampleName::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__searchSamplesBySampleName::sessionId = NULL;
-	this->ns1__searchSamplesBySampleName::sampleName = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__searchSamplesBySampleName::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchSamplesBySampleName::sessionId);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__searchSamplesBySampleName::sampleName);
-	/* transient soap skipped */
-}
-
-int ns1__searchSamplesBySampleName::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__searchSamplesBySampleName(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, int id, const ns1__searchSamplesBySampleName *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchSamplesBySampleName), "ns1:searchSamplesBySampleName"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchSamplesBySampleName::sessionId), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "sampleName", -1, &(a->ns1__searchSamplesBySampleName::sampleName), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__searchSamplesBySampleName::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__searchSamplesBySampleName(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_in_ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, ns1__searchSamplesBySampleName *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__searchSamplesBySampleName *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchSamplesBySampleName, sizeof(ns1__searchSamplesBySampleName), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__searchSamplesBySampleName)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__searchSamplesBySampleName *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	size_t soap_flag_sampleName1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchSamplesBySampleName::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag_sampleName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sampleName", &(a->ns1__searchSamplesBySampleName::sampleName), "xsd:string"))
-				{	soap_flag_sampleName1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__searchSamplesBySampleName *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchSamplesBySampleName, 0, sizeof(ns1__searchSamplesBySampleName), 0, soap_copy_ns1__searchSamplesBySampleName);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__searchSamplesBySampleName::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchSamplesBySampleName);
-	if (this->soap_out(soap, tag?tag:"ns1:searchSamplesBySampleName", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__searchSamplesBySampleName::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__searchSamplesBySampleName(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_get_ns1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__searchSamplesBySampleName(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__searchSamplesBySampleName * SOAP_FMAC2 soap_instantiate_ns1__searchSamplesBySampleName(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchSamplesBySampleName(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchSamplesBySampleName, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName);
-		if (size)
-			*size = sizeof(ns1__searchSamplesBySampleName);
-		((ns1__searchSamplesBySampleName*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__searchSamplesBySampleName);
-		for (int i = 0; i < n; i++)
-			((ns1__searchSamplesBySampleName*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__searchSamplesBySampleName*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchSamplesBySampleName(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchSamplesBySampleName %p -> %p\n", q, p));
-	*(ns1__searchSamplesBySampleName*)p = *(ns1__searchSamplesBySampleName*)q;
-}
-
-void ns1__SessionException::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__SessionException::message = NULL;
-	this->ns1__SessionException::stackTraceAsString = NULL;
-	this->ns1__SessionException::uniqueId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__SessionException::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__SessionException::message);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__SessionException::stackTraceAsString);
-	soap_serialize_PointerTostd__string(soap, &this->ns1__SessionException::uniqueId);
-	/* transient soap skipped */
-}
-
-int ns1__SessionException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__SessionException(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__SessionException(struct soap *soap, const char *tag, int id, const ns1__SessionException *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__SessionException), "ns1:SessionException"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__SessionException::message), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__SessionException::stackTraceAsString), ""))
-		return soap->error;
-	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__SessionException::uniqueId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__SessionException::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__SessionException(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__SessionException * SOAP_FMAC4 soap_in_ns1__SessionException(struct soap *soap, const char *tag, ns1__SessionException *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__SessionException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__SessionException, sizeof(ns1__SessionException), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__SessionException)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__SessionException *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_message1 = 1;
-	size_t soap_flag_stackTraceAsString1 = 1;
-	size_t soap_flag_uniqueId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__SessionException::message), "xsd:string"))
-				{	soap_flag_message1--;
-					continue;
-				}
-			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__SessionException::stackTraceAsString), "xsd:string"))
-				{	soap_flag_stackTraceAsString1--;
-					continue;
-				}
-			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__SessionException::uniqueId), "xsd:string"))
-				{	soap_flag_uniqueId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__SessionException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__SessionException, 0, sizeof(ns1__SessionException), 0, soap_copy_ns1__SessionException);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__SessionException::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__SessionException);
-	if (this->soap_out(soap, tag?tag:"ns1:SessionException", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__SessionException::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__SessionException(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__SessionException * SOAP_FMAC4 soap_get_ns1__SessionException(struct soap *soap, ns1__SessionException *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__SessionException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__SessionException * SOAP_FMAC2 soap_instantiate_ns1__SessionException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__SessionException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__SessionException, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException);
-		if (size)
-			*size = sizeof(ns1__SessionException);
-		((ns1__SessionException*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__SessionException);
-		for (int i = 0; i < n; i++)
-			((ns1__SessionException*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__SessionException*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__SessionException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__SessionException %p -> %p\n", q, p));
-	*(ns1__SessionException*)p = *(ns1__SessionException*)q;
-}
-
-void ns1__listDatasetTypesResponse::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetTypesResponse::return_);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listDatasetTypesResponse::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetTypesResponse::return_);
-	/* transient soap skipped */
-}
-
-int ns1__listDatasetTypesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listDatasetTypesResponse(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetTypesResponse(struct soap *soap, const char *tag, int id, const ns1__listDatasetTypesResponse *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetTypesResponse), "ns1:listDatasetTypesResponse"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listDatasetTypesResponse::return_), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listDatasetTypesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listDatasetTypesResponse(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypesResponse * SOAP_FMAC4 soap_in_ns1__listDatasetTypesResponse(struct soap *soap, const char *tag, ns1__listDatasetTypesResponse *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listDatasetTypesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetTypesResponse, sizeof(ns1__listDatasetTypesResponse), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetTypesResponse)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listDatasetTypesResponse *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listDatasetTypesResponse::return_), "xsd:string"))
-					continue;
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listDatasetTypesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetTypesResponse, 0, sizeof(ns1__listDatasetTypesResponse), 0, soap_copy_ns1__listDatasetTypesResponse);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listDatasetTypesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetTypesResponse);
-	if (this->soap_out(soap, tag?tag:"ns1:listDatasetTypesResponse", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listDatasetTypesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listDatasetTypesResponse(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypesResponse * SOAP_FMAC4 soap_get_ns1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listDatasetTypesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listDatasetTypesResponse * SOAP_FMAC2 soap_instantiate_ns1__listDatasetTypesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetTypesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetTypesResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse);
-		if (size)
-			*size = sizeof(ns1__listDatasetTypesResponse);
-		((ns1__listDatasetTypesResponse*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listDatasetTypesResponse);
-		for (int i = 0; i < n; i++)
-			((ns1__listDatasetTypesResponse*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listDatasetTypesResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetTypesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetTypesResponse %p -> %p\n", q, p));
-	*(ns1__listDatasetTypesResponse*)p = *(ns1__listDatasetTypesResponse*)q;
-}
-
-void ns1__listDatasetTypes::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->ns1__listDatasetTypes::sessionId = NULL;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void ns1__listDatasetTypes::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_serialize_PointerTostd__string(soap, &this->ns1__listDatasetTypes::sessionId);
-	/* transient soap skipped */
-}
-
-int ns1__listDatasetTypes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_ns1__listDatasetTypes(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetTypes(struct soap *soap, const char *tag, int id, const ns1__listDatasetTypes *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetTypes), "ns1:listDatasetTypes"))
-		return soap->error;
-	/* transient soap skipped */
-	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listDatasetTypes::sessionId), ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-void *ns1__listDatasetTypes::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_ns1__listDatasetTypes(soap, tag, this, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypes * SOAP_FMAC4 soap_in_ns1__listDatasetTypes(struct soap *soap, const char *tag, ns1__listDatasetTypes *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 0, NULL))
-		return NULL;
-	a = (ns1__listDatasetTypes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetTypes, sizeof(ns1__listDatasetTypes), soap->type, soap->arrayType);
-	if (!a)
-		return NULL;
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetTypes)
-		{	soap_revert(soap);
-			*soap->id = '\0';
-			return (ns1__listDatasetTypes *)a->soap_in(soap, tag, type);
-		}
-	}
-	size_t soap_flag___item2 = 1;
-	size_t soap_flag_sessionId1 = 1;
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			/* transient soap skipped */
-			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listDatasetTypes::sessionId), "xsd:string"))
-				{	soap_flag_sessionId1--;
-					continue;
-				}
-			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
-				{	soap_flag___item2--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (ns1__listDatasetTypes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetTypes, 0, sizeof(ns1__listDatasetTypes), 0, soap_copy_ns1__listDatasetTypes);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-int ns1__listDatasetTypes::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetTypes);
-	if (this->soap_out(soap, tag?tag:"ns1:listDatasetTypes", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *ns1__listDatasetTypes::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_ns1__listDatasetTypes(soap, this, tag, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypes * SOAP_FMAC4 soap_get_ns1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_ns1__listDatasetTypes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 ns1__listDatasetTypes * SOAP_FMAC2 soap_instantiate_ns1__listDatasetTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetTypes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes);
-		if (size)
-			*size = sizeof(ns1__listDatasetTypes);
-		((ns1__listDatasetTypes*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(ns1__listDatasetTypes);
-		for (int i = 0; i < n; i++)
-			((ns1__listDatasetTypes*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (ns1__listDatasetTypes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetTypes %p -> %p\n", q, p));
-	*(ns1__listDatasetTypes*)p = *(ns1__listDatasetTypes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__string(struct soap *soap, std::string *p)
-{
-	(void)soap; /* appease -Wall -Werror */
-	p->erase();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__string(struct soap *soap, const std::string *p)
-{	(void)soap; (void)p; /* appease -Wall -Werror */
-}
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__string(struct soap *soap, const char *tag, int id, const std::string *s, const char *type)
-{
-	if ((soap->mode & SOAP_C_NILSTRING) && s->empty())
-		return soap_element_null(soap, tag, id, type);
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, s, SOAP_TYPE_std__string), type) || soap_string_out(soap, s->c_str(), 0) || soap_element_end_out(soap, tag))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_in_std__string(struct soap *soap, const char *tag, std::string *s, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!s)
-		s = soap_new_std__string(soap, -1);
-	if (soap->null)
-		if (s)
-			s->erase();
-	if (soap->body && !*soap->href)
-	{	char *t;
-		s = (std::string*)soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType);
-		if (s)
-		{	if ((t = soap_string_in(soap, 1, -1, -1)))
-				s->assign(t);
-			else
-				return NULL;
-		}
-	}
-	else
-		s = (std::string*)soap_id_forward(soap, soap->href, soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType), 0, SOAP_TYPE_std__string, 0, sizeof(std::string), 0, soap_copy_std__string);
-	if (soap->body && soap_element_end_in(soap, tag))
-		return NULL;
-	return s;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_std__string(struct soap *soap, const std::string *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_std__string);
-	if (soap_out_std__string(soap, tag?tag:"string", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get_std__string(struct soap *soap, std::string *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_std__string(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 std::string * SOAP_FMAC2 soap_instantiate_std__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__string, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::string);
-		if (size)
-			*size = sizeof(std::string);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::string[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::string);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::string*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::string %p -> %p\n", q, p));
-	*(std::string*)p = *(std::string*)q;
-}
-
-void xsd__string::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_std__string(soap, &this->xsd__string::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__string::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->xsd__string::__item, SOAP_TYPE_std__string);
-	soap_serialize_std__string(soap, &this->xsd__string::__item);
-	/* transient soap skipped */
-}
-
-int xsd__string::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__string(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__string(struct soap *soap, const char *tag, int id, const xsd__string *a, const char *type)
-{
-	return soap_out_std__string(soap, tag, id, &(a->xsd__string::__item), "xsd:string");
-}
-
-void *xsd__string::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__string(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__string * SOAP_FMAC4 soap_in_xsd__string(struct soap *soap, const char *tag, xsd__string *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__string *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__string, sizeof(xsd__string), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__string)
-			return (xsd__string *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_std__string(soap, tag, &(a->xsd__string::__item), "xsd:string"))
-		return NULL;
-	return a;
-}
-
-int xsd__string::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__string);
-	if (this->soap_out(soap, tag?tag:"xsd:string", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__string::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__string(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__string * SOAP_FMAC4 soap_get_xsd__string(struct soap *soap, xsd__string *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__string(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__string * SOAP_FMAC2 soap_instantiate_xsd__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__string, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__string);
-		if (size)
-			*size = sizeof(xsd__string);
-		((xsd__string*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__string[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__string);
-		for (int i = 0; i < n; i++)
-			((xsd__string*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__string*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__string %p -> %p\n", q, p));
-	*(xsd__string*)p = *(xsd__string*)q;
-}
-
-void xsd__long::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_LONG64(soap, &this->xsd__long::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__long::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->xsd__long::__item, SOAP_TYPE_LONG64);
-	/* transient soap skipped */
-}
-
-int xsd__long::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__long(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__long(struct soap *soap, const char *tag, int id, const xsd__long *a, const char *type)
-{
-	return soap_out_LONG64(soap, tag, id, &(a->xsd__long::__item), "xsd:long");
-}
-
-void *xsd__long::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__long(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__long * SOAP_FMAC4 soap_in_xsd__long(struct soap *soap, const char *tag, xsd__long *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__long *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__long, sizeof(xsd__long), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__long)
-			return (xsd__long *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_LONG64(soap, tag, &(a->xsd__long::__item), "xsd:long"))
-		return NULL;
-	return a;
-}
-
-int xsd__long::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__long);
-	if (this->soap_out(soap, tag?tag:"xsd:long", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__long::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__long(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__long * SOAP_FMAC4 soap_get_xsd__long(struct soap *soap, xsd__long *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__long(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__long * SOAP_FMAC2 soap_instantiate_xsd__long(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__long(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__long, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__long);
-		if (size)
-			*size = sizeof(xsd__long);
-		((xsd__long*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__long[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__long);
-		for (int i = 0; i < n; i++)
-			((xsd__long*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__long*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__long(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__long %p -> %p\n", q, p));
-	*(xsd__long*)p = *(xsd__long*)q;
-}
-
-void xsd__int::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_int(soap, &this->xsd__int::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__int::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->xsd__int::__item, SOAP_TYPE_int);
-	/* transient soap skipped */
-}
-
-int xsd__int::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__int(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__int(struct soap *soap, const char *tag, int id, const xsd__int *a, const char *type)
-{
-	return soap_out_int(soap, tag, id, &(a->xsd__int::__item), "xsd:int");
-}
-
-void *xsd__int::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__int(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__int * SOAP_FMAC4 soap_in_xsd__int(struct soap *soap, const char *tag, xsd__int *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__int *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__int, sizeof(xsd__int), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__int)
-			return (xsd__int *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_int(soap, tag, &(a->xsd__int::__item), "xsd:int"))
-		return NULL;
-	return a;
-}
-
-int xsd__int::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__int);
-	if (this->soap_out(soap, tag?tag:"xsd:int", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__int::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__int(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__int * SOAP_FMAC4 soap_get_xsd__int(struct soap *soap, xsd__int *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__int(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__int * SOAP_FMAC2 soap_instantiate_xsd__int(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__int(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__int, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__int);
-		if (size)
-			*size = sizeof(xsd__int);
-		((xsd__int*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__int[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__int);
-		for (int i = 0; i < n; i++)
-			((xsd__int*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__int*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__int(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__int %p -> %p\n", q, p));
-	*(xsd__int*)p = *(xsd__int*)q;
-}
-
-void xsd__float::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_float(soap, &this->xsd__float::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__float::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int xsd__float::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__float(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__float(struct soap *soap, const char *tag, int id, const xsd__float *a, const char *type)
-{
-	return soap_out_float(soap, tag, id, &(a->xsd__float::__item), "xsd:float");
-}
-
-void *xsd__float::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__float(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__float * SOAP_FMAC4 soap_in_xsd__float(struct soap *soap, const char *tag, xsd__float *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__float *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__float, sizeof(xsd__float), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__float)
-			return (xsd__float *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_float(soap, tag, &(a->xsd__float::__item), "xsd:float"))
-		return NULL;
-	return a;
-}
-
-int xsd__float::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__float);
-	if (this->soap_out(soap, tag?tag:"xsd:float", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__float::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__float(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__float * SOAP_FMAC4 soap_get_xsd__float(struct soap *soap, xsd__float *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__float(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__float * SOAP_FMAC2 soap_instantiate_xsd__float(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__float(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__float, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__float);
-		if (size)
-			*size = sizeof(xsd__float);
-		((xsd__float*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__float[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__float);
-		for (int i = 0; i < n; i++)
-			((xsd__float*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__float*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__float(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__float %p -> %p\n", q, p));
-	*(xsd__float*)p = *(xsd__float*)q;
-}
-
-void xsd__double::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_double(soap, &this->xsd__double::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__double::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->xsd__double::__item, SOAP_TYPE_double);
-	/* transient soap skipped */
-}
-
-int xsd__double::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__double(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__double(struct soap *soap, const char *tag, int id, const xsd__double *a, const char *type)
-{
-	return soap_out_double(soap, tag, id, &(a->xsd__double::__item), "xsd:double");
-}
-
-void *xsd__double::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__double(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__double * SOAP_FMAC4 soap_in_xsd__double(struct soap *soap, const char *tag, xsd__double *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__double *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__double, sizeof(xsd__double), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__double)
-			return (xsd__double *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_double(soap, tag, &(a->xsd__double::__item), "xsd:double"))
-		return NULL;
-	return a;
-}
-
-int xsd__double::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__double);
-	if (this->soap_out(soap, tag?tag:"xsd:double", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__double::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__double(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__double * SOAP_FMAC4 soap_get_xsd__double(struct soap *soap, xsd__double *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__double(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__double * SOAP_FMAC2 soap_instantiate_xsd__double(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__double(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__double, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__double);
-		if (size)
-			*size = sizeof(xsd__double);
-		((xsd__double*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__double[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__double);
-		for (int i = 0; i < n; i++)
-			((xsd__double*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__double*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__double(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__double %p -> %p\n", q, p));
-	*(xsd__double*)p = *(xsd__double*)q;
-}
-
-void xsd__dateTime::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_time(soap, &this->xsd__dateTime::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__dateTime::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	soap_embedded(soap, &this->xsd__dateTime::__item, SOAP_TYPE_time);
-	/* transient soap skipped */
-}
-
-int xsd__dateTime::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__dateTime(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__dateTime(struct soap *soap, const char *tag, int id, const xsd__dateTime *a, const char *type)
-{
-	return soap_out_time(soap, tag, id, &(a->xsd__dateTime::__item), "xsd:dateTime");
-}
-
-void *xsd__dateTime::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__dateTime(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__dateTime * SOAP_FMAC4 soap_in_xsd__dateTime(struct soap *soap, const char *tag, xsd__dateTime *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__dateTime *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__dateTime, sizeof(xsd__dateTime), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__dateTime)
-			return (xsd__dateTime *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_time(soap, tag, &(a->xsd__dateTime::__item), "xsd:dateTime"))
-		return NULL;
-	return a;
-}
-
-int xsd__dateTime::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__dateTime);
-	if (this->soap_out(soap, tag?tag:"xsd:dateTime", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__dateTime::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__dateTime(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__dateTime * SOAP_FMAC4 soap_get_xsd__dateTime(struct soap *soap, xsd__dateTime *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__dateTime(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__dateTime * SOAP_FMAC2 soap_instantiate_xsd__dateTime(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__dateTime(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__dateTime, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime);
-		if (size)
-			*size = sizeof(xsd__dateTime);
-		((xsd__dateTime*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__dateTime);
-		for (int i = 0; i < n; i++)
-			((xsd__dateTime*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__dateTime*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__dateTime(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__dateTime %p -> %p\n", q, p));
-	*(xsd__dateTime*)p = *(xsd__dateTime*)q;
-}
-
-void xsd__boolean::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	soap_default_bool(soap, &this->xsd__boolean::__item);
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__boolean::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int xsd__boolean::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__boolean(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__boolean(struct soap *soap, const char *tag, int id, const xsd__boolean *a, const char *type)
-{
-	return soap_out_bool(soap, tag, id, &(a->xsd__boolean::__item), "xsd:boolean");
-}
-
-void *xsd__boolean::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__boolean(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__boolean * SOAP_FMAC4 soap_in_xsd__boolean(struct soap *soap, const char *tag, xsd__boolean *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__boolean *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__boolean, sizeof(xsd__boolean), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__boolean)
-			return (xsd__boolean *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_in_bool(soap, tag, &(a->xsd__boolean::__item), "xsd:boolean"))
-		return NULL;
-	return a;
-}
-
-int xsd__boolean::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__boolean);
-	if (this->soap_out(soap, tag?tag:"xsd:boolean", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__boolean::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__boolean(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__boolean * SOAP_FMAC4 soap_get_xsd__boolean(struct soap *soap, xsd__boolean *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__boolean(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__boolean * SOAP_FMAC2 soap_instantiate_xsd__boolean(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__boolean(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__boolean, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__boolean);
-		if (size)
-			*size = sizeof(xsd__boolean);
-		((xsd__boolean*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__boolean[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__boolean);
-		for (int i = 0; i < n; i++)
-			((xsd__boolean*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__boolean*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__boolean(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__boolean %p -> %p\n", q, p));
-	*(xsd__boolean*)p = *(xsd__boolean*)q;
-}
-
-void xsd__anyType::soap_default(struct soap *soap)
-{
-	this->soap = soap;
-	this->xsd__anyType::__item = NULL;
-	/* transient soap skipped */
-}
-
-void xsd__anyType::soap_serialize(struct soap *soap) const
-{
-	(void)soap; /* appease -Wall -Werror */
-	/* transient soap skipped */
-}
-
-int xsd__anyType::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
-{
-	return soap_out_xsd__anyType(soap, tag, id, this, type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__anyType(struct soap *soap, const char *tag, int id, const xsd__anyType *a, const char *type)
-{
-	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), NULL);
-}
-
-void *xsd__anyType::soap_in(struct soap *soap, const char *tag, const char *type)
-{	return soap_in_xsd__anyType(soap, tag, this, type);
-}
-
-SOAP_FMAC3 xsd__anyType * SOAP_FMAC4 soap_in_xsd__anyType(struct soap *soap, const char *tag, xsd__anyType *a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!(a = (xsd__anyType *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__anyType, sizeof(xsd__anyType), soap->type, soap->arrayType)))
-	{	soap->error = SOAP_TAG_MISMATCH;
-		return NULL;
-	}
-	soap_revert(soap);
-	*soap->id = '\0';
-	if (soap->alloced)
-	{	a->soap_default(soap);
-		if (soap->clist->type != SOAP_TYPE_xsd__anyType)
-			return (xsd__anyType *)a->soap_in(soap, tag, type);
-	}
-	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
-		return NULL;
-	return a;
-}
-
-int xsd__anyType::soap_put(struct soap *soap, const char *tag, const  char *type) const
-{
-	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__anyType);
-	if (this->soap_out(soap, tag?tag:"xsd:anyType", id, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-void *xsd__anyType::soap_get(struct soap *soap, const char *tag, const char *type)
-{
-	return soap_get_xsd__anyType(soap, this, tag, type);
-}
-
-SOAP_FMAC3 xsd__anyType * SOAP_FMAC4 soap_get_xsd__anyType(struct soap *soap, xsd__anyType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_xsd__anyType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 xsd__anyType * SOAP_FMAC2 soap_instantiate_xsd__anyType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__anyType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__anyType, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (type && !soap_match_tag(soap, type, "xsd:boolean"))
-	{	cp->type = SOAP_TYPE_xsd__boolean;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__boolean);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__boolean);
-			((xsd__boolean*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__boolean[n]);
-			if (size)
-				*size = n * sizeof(xsd__boolean);
-			for (int i = 0; i < n; i++)
-				((xsd__boolean*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__boolean*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "xsd:dateTime"))
-	{	cp->type = SOAP_TYPE_xsd__dateTime;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__dateTime);
-			((xsd__dateTime*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime[n]);
-			if (size)
-				*size = n * sizeof(xsd__dateTime);
-			for (int i = 0; i < n; i++)
-				((xsd__dateTime*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__dateTime*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "xsd:double"))
-	{	cp->type = SOAP_TYPE_xsd__double;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__double);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__double);
-			((xsd__double*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__double[n]);
-			if (size)
-				*size = n * sizeof(xsd__double);
-			for (int i = 0; i < n; i++)
-				((xsd__double*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__double*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "xsd:float"))
-	{	cp->type = SOAP_TYPE_xsd__float;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__float);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__float);
-			((xsd__float*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__float[n]);
-			if (size)
-				*size = n * sizeof(xsd__float);
-			for (int i = 0; i < n; i++)
-				((xsd__float*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__float*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "xsd:int"))
-	{	cp->type = SOAP_TYPE_xsd__int;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__int);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__int);
-			((xsd__int*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__int[n]);
-			if (size)
-				*size = n * sizeof(xsd__int);
-			for (int i = 0; i < n; i++)
-				((xsd__int*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__int*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "xsd:long"))
-	{	cp->type = SOAP_TYPE_xsd__long;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__long);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__long);
-			((xsd__long*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__long[n]);
-			if (size)
-				*size = n * sizeof(xsd__long);
-			for (int i = 0; i < n; i++)
-				((xsd__long*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__long*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "xsd:string"))
-	{	cp->type = SOAP_TYPE_xsd__string;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(xsd__string);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(xsd__string);
-			((xsd__string*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(xsd__string[n]);
-			if (size)
-				*size = n * sizeof(xsd__string);
-			for (int i = 0; i < n; i++)
-				((xsd__string*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (xsd__string*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterValueType"))
-	{	cp->type = SOAP_TYPE_ns1__parameterValueType_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterValueType_);
-			((ns1__parameterValueType_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterValueType_);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterValueType_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterValueType_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileInclude"))
-	{	cp->type = SOAP_TYPE_ns1__datafileInclude_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileInclude_);
-			((ns1__datafileInclude_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileInclude_);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileInclude_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileInclude_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:comparisonOperator"))
-	{	cp->type = SOAP_TYPE_ns1__comparisonOperator_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__comparisonOperator_);
-			((ns1__comparisonOperator_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_[n]);
-			if (size)
-				*size = n * sizeof(ns1__comparisonOperator_);
-			for (int i = 0; i < n; i++)
-				((ns1__comparisonOperator_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__comparisonOperator_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterType"))
-	{	cp->type = SOAP_TYPE_ns1__parameterType_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterType_);
-			((ns1__parameterType_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterType_);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterType_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterType_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:keywordType"))
-	{	cp->type = SOAP_TYPE_ns1__keywordType_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__keywordType_);
-			((ns1__keywordType_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_[n]);
-			if (size)
-				*size = n * sizeof(ns1__keywordType_);
-			for (int i = 0; i < n; i++)
-				((ns1__keywordType_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__keywordType_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigationInclude"))
-	{	cp->type = SOAP_TYPE_ns1__investigationInclude_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigationInclude_);
-			((ns1__investigationInclude_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigationInclude_);
-			for (int i = 0; i < n; i++)
-				((ns1__investigationInclude_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigationInclude_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:logicalOperator"))
-	{	cp->type = SOAP_TYPE_ns1__logicalOperator_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__logicalOperator_);
-			((ns1__logicalOperator_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_[n]);
-			if (size)
-				*size = n * sizeof(ns1__logicalOperator_);
-			for (int i = 0; i < n; i++)
-				((ns1__logicalOperator_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__logicalOperator_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:elementType"))
-	{	cp->type = SOAP_TYPE_ns1__elementType_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__elementType_);
-			((ns1__elementType_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_[n]);
-			if (size)
-				*size = n * sizeof(ns1__elementType_);
-			for (int i = 0; i < n; i++)
-				((ns1__elementType_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__elementType_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datasetInclude"))
-	{	cp->type = SOAP_TYPE_ns1__datasetInclude_;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datasetInclude_);
-			((ns1__datasetInclude_*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_[n]);
-			if (size)
-				*size = n * sizeof(ns1__datasetInclude_);
-			for (int i = 0; i < n; i++)
-				((ns1__datasetInclude_*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datasetInclude_*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listDatasetTypes"))
-	{	cp->type = SOAP_TYPE_ns1__listDatasetTypes;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listDatasetTypes);
-			((ns1__listDatasetTypes*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes[n]);
-			if (size)
-				*size = n * sizeof(ns1__listDatasetTypes);
-			for (int i = 0; i < n; i++)
-				((ns1__listDatasetTypes*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listDatasetTypes*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listDatasetTypesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listDatasetTypesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listDatasetTypesResponse);
-			((ns1__listDatasetTypesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listDatasetTypesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listDatasetTypesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listDatasetTypesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:SessionException"))
-	{	cp->type = SOAP_TYPE_ns1__SessionException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__SessionException);
-			((ns1__SessionException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException[n]);
-			if (size)
-				*size = n * sizeof(ns1__SessionException);
-			for (int i = 0; i < n; i++)
-				((ns1__SessionException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__SessionException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchSamplesBySampleName"))
-	{	cp->type = SOAP_TYPE_ns1__searchSamplesBySampleName;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchSamplesBySampleName);
-			((ns1__searchSamplesBySampleName*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchSamplesBySampleName);
-			for (int i = 0; i < n; i++)
-				((ns1__searchSamplesBySampleName*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchSamplesBySampleName*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchSamplesBySampleNameResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchSamplesBySampleNameResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchSamplesBySampleNameResponse);
-			((ns1__searchSamplesBySampleNameResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchSamplesBySampleNameResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchSamplesBySampleNameResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchSamplesBySampleNameResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:entityBaseBean"))
-	{	cp->type = SOAP_TYPE_ns1__entityBaseBean;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__entityBaseBean);
-			((ns1__entityBaseBean*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean[n]);
-			if (size)
-				*size = n * sizeof(ns1__entityBaseBean);
-			for (int i = 0; i < n; i++)
-				((ns1__entityBaseBean*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__entityBaseBean*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:entityPrimaryKeyBaseBean"))
-	{	cp->type = SOAP_TYPE_ns1__entityPrimaryKeyBaseBean;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__entityPrimaryKeyBaseBean);
-			((ns1__entityPrimaryKeyBaseBean*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean[n]);
-			if (size)
-				*size = n * sizeof(ns1__entityPrimaryKeyBaseBean);
-			for (int i = 0; i < n; i++)
-				((ns1__entityPrimaryKeyBaseBean*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__entityPrimaryKeyBaseBean*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeSample"))
-	{	cp->type = SOAP_TYPE_ns1__removeSample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeSample);
-			((ns1__removeSample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeSample);
-			for (int i = 0; i < n; i++)
-				((ns1__removeSample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeSample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeSampleResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeSampleResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeSampleResponse);
-			((ns1__removeSampleResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeSampleResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeSampleResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeSampleResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:InsufficientPrivilegesException"))
-	{	cp->type = SOAP_TYPE_ns1__InsufficientPrivilegesException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__InsufficientPrivilegesException);
-			((ns1__InsufficientPrivilegesException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException[n]);
-			if (size)
-				*size = n * sizeof(ns1__InsufficientPrivilegesException);
-			for (int i = 0; i < n; i++)
-				((ns1__InsufficientPrivilegesException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__InsufficientPrivilegesException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:NoSuchObjectFoundException"))
-	{	cp->type = SOAP_TYPE_ns1__NoSuchObjectFoundException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__NoSuchObjectFoundException);
-			((ns1__NoSuchObjectFoundException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException[n]);
-			if (size)
-				*size = n * sizeof(ns1__NoSuchObjectFoundException);
-			for (int i = 0; i < n; i++)
-				((ns1__NoSuchObjectFoundException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__NoSuchObjectFoundException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listInstruments"))
-	{	cp->type = SOAP_TYPE_ns1__listInstruments;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listInstruments);
-			((ns1__listInstruments*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments[n]);
-			if (size)
-				*size = n * sizeof(ns1__listInstruments);
-			for (int i = 0; i < n; i++)
-				((ns1__listInstruments*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listInstruments*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listInstrumentsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listInstrumentsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listInstrumentsResponse);
-			((ns1__listInstrumentsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listInstrumentsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listInstrumentsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listInstrumentsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataFile"))
-	{	cp->type = SOAP_TYPE_ns1__createDataFile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataFile);
-			((ns1__createDataFile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataFile);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataFile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataFile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataFileResponse"))
-	{	cp->type = SOAP_TYPE_ns1__createDataFileResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataFileResponse);
-			((ns1__createDataFileResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataFileResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataFileResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataFileResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:ValidationException"))
-	{	cp->type = SOAP_TYPE_ns1__ValidationException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__ValidationException);
-			((ns1__ValidationException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException[n]);
-			if (size)
-				*size = n * sizeof(ns1__ValidationException);
-			for (int i = 0; i < n; i++)
-				((ns1__ValidationException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__ValidationException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifySample"))
-	{	cp->type = SOAP_TYPE_ns1__modifySample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifySample);
-			((ns1__modifySample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifySample);
-			for (int i = 0; i < n; i++)
-				((ns1__modifySample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifySample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifySampleResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifySampleResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifySampleResponse);
-			((ns1__modifySampleResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifySampleResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifySampleResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifySampleResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparators"))
-	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparators;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByParameterComparators);
-			((ns1__searchByParameterComparators*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByParameterComparators);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByParameterComparators*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByParameterComparators*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterCondition"))
-	{	cp->type = SOAP_TYPE_ns1__parameterCondition;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterCondition);
-			((ns1__parameterCondition*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterCondition);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterCondition*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterCondition*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterValued"))
-	{	cp->type = SOAP_TYPE_ns1__parameterValued;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterValued);
-			((ns1__parameterValued*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterValued);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterValued*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterValued*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparatorsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparatorsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByParameterComparatorsResponse);
-			((ns1__searchByParameterComparatorsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByParameterComparatorsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByParameterComparatorsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:ParameterSearchException"))
-	{	cp->type = SOAP_TYPE_ns1__ParameterSearchException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__ParameterSearchException);
-			((ns1__ParameterSearchException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException[n]);
-			if (size)
-				*size = n * sizeof(ns1__ParameterSearchException);
-			for (int i = 0; i < n; i++)
-				((ns1__ParameterSearchException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__ParameterSearchException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparators"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparators;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatafilesByParameterComparators);
-			((ns1__searchDatafilesByParameterComparators*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatafilesByParameterComparators);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatafilesByParameterComparators*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatafilesByParameterComparators*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparatorsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
-			((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataFile"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataFile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataFile);
-			((ns1__removeDataFile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataFile);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataFile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataFile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataFileResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataFileResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataFileResponse);
-			((ns1__removeDataFileResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataFileResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataFileResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataFileResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeAuthorisation"))
-	{	cp->type = SOAP_TYPE_ns1__removeAuthorisation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeAuthorisation);
-			((ns1__removeAuthorisation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeAuthorisation);
-			for (int i = 0; i < n; i++)
-				((ns1__removeAuthorisation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeAuthorisation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeAuthorisationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeAuthorisationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeAuthorisationResponse);
-			((ns1__removeAuthorisationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeAuthorisationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeAuthorisationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeAuthorisationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParameters"))
-	{	cp->type = SOAP_TYPE_ns1__addDataFileParameters;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataFileParameters);
-			((ns1__addDataFileParameters*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataFileParameters);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataFileParameters*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataFileParameters*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParametersResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addDataFileParametersResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataFileParametersResponse);
-			((ns1__addDataFileParametersResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataFileParametersResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataFileParametersResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataFileParametersResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listFacilityCycles"))
-	{	cp->type = SOAP_TYPE_ns1__listFacilityCycles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listFacilityCycles);
-			((ns1__listFacilityCycles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles[n]);
-			if (size)
-				*size = n * sizeof(ns1__listFacilityCycles);
-			for (int i = 0; i < n; i++)
-				((ns1__listFacilityCycles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listFacilityCycles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listFacilityCyclesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listFacilityCyclesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listFacilityCyclesResponse);
-			((ns1__listFacilityCyclesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listFacilityCyclesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listFacilityCyclesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listFacilityCyclesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:logout"))
-	{	cp->type = SOAP_TYPE_ns1__logout;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__logout);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__logout);
-			((ns1__logout*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__logout[n]);
-			if (size)
-				*size = n * sizeof(ns1__logout);
-			for (int i = 0; i < n; i++)
-				((ns1__logout*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__logout*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:logoutResponse"))
-	{	cp->type = SOAP_TYPE_ns1__logoutResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__logoutResponse);
-			((ns1__logoutResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__logoutResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__logoutResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__logoutResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadDataset"))
-	{	cp->type = SOAP_TYPE_ns1__downloadDataset;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadDataset);
-			((ns1__downloadDataset*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadDataset);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadDataset*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadDataset*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadDatasetResponse"))
-	{	cp->type = SOAP_TYPE_ns1__downloadDatasetResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadDatasetResponse);
-			((ns1__downloadDatasetResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadDatasetResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadDatasetResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadDatasetResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFederalId"))
-	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFederalId;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getFacilityUserByFederalId);
-			((ns1__getFacilityUserByFederalId*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId[n]);
-			if (size)
-				*size = n * sizeof(ns1__getFacilityUserByFederalId);
-			for (int i = 0; i < n; i++)
-				((ns1__getFacilityUserByFederalId*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getFacilityUserByFederalId*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFederalIdResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getFacilityUserByFederalIdResponse);
-			((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getFacilityUserByFederalIdResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getFacilityUserByFederalIdResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigation"))
-	{	cp->type = SOAP_TYPE_ns1__removeInvestigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeInvestigation);
-			((ns1__removeInvestigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeInvestigation);
-			for (int i = 0; i < n; i++)
-				((ns1__removeInvestigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeInvestigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeInvestigationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeInvestigationResponse);
-			((ns1__removeInvestigationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeInvestigationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeInvestigationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeInvestigationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigator"))
-	{	cp->type = SOAP_TYPE_ns1__removeInvestigator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeInvestigator);
-			((ns1__removeInvestigator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeInvestigator);
-			for (int i = 0; i < n; i++)
-				((ns1__removeInvestigator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeInvestigator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeInvestigatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeInvestigatorResponse);
-			((ns1__removeInvestigatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeInvestigatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeInvestigatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeInvestigatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeKeyword"))
-	{	cp->type = SOAP_TYPE_ns1__removeKeyword;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeKeyword);
-			((ns1__removeKeyword*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeKeyword);
-			for (int i = 0; i < n; i++)
-				((ns1__removeKeyword*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeKeyword*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeKeywordResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeKeywordResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeKeywordResponse);
-			((ns1__removeKeywordResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeKeywordResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeKeywordResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeKeywordResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigation"))
-	{	cp->type = SOAP_TYPE_ns1__deleteInvestigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteInvestigation);
-			((ns1__deleteInvestigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteInvestigation);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteInvestigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteInvestigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteInvestigationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteInvestigationResponse);
-			((ns1__deleteInvestigationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteInvestigationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteInvestigationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteInvestigationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataSets"))
-	{	cp->type = SOAP_TYPE_ns1__createDataSets;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataSets);
-			((ns1__createDataSets*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataSets);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataSets*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataSets*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataSetsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__createDataSetsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataSetsResponse);
-			((ns1__createDataSetsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataSetsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataSetsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataSetsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removePublication"))
-	{	cp->type = SOAP_TYPE_ns1__removePublication;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removePublication);
-			((ns1__removePublication*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication[n]);
-			if (size)
-				*size = n * sizeof(ns1__removePublication);
-			for (int i = 0; i < n; i++)
-				((ns1__removePublication*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removePublication*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removePublicationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removePublicationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removePublicationResponse);
-			((ns1__removePublicationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removePublicationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removePublicationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removePublicationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getAllKeywords"))
-	{	cp->type = SOAP_TYPE_ns1__getAllKeywords;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getAllKeywords);
-			((ns1__getAllKeywords*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords[n]);
-			if (size)
-				*size = n * sizeof(ns1__getAllKeywords);
-			for (int i = 0; i < n; i++)
-				((ns1__getAllKeywords*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getAllKeywords*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getAllKeywordsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getAllKeywordsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getAllKeywordsResponse);
-			((ns1__getAllKeywordsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getAllKeywordsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getAllKeywordsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getAllKeywordsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getUserDetails"))
-	{	cp->type = SOAP_TYPE_ns1__getUserDetails;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getUserDetails);
-			((ns1__getUserDetails*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails[n]);
-			if (size)
-				*size = n * sizeof(ns1__getUserDetails);
-			for (int i = 0; i < n; i++)
-				((ns1__getUserDetails*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getUserDetails*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getUserDetailsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getUserDetailsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getUserDetailsResponse);
-			((ns1__getUserDetailsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getUserDetailsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getUserDetailsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getUserDetailsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:userDetails"))
-	{	cp->type = SOAP_TYPE_ns1__userDetails;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__userDetails);
-			((ns1__userDetails*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails[n]);
-			if (size)
-				*size = n * sizeof(ns1__userDetails);
-			for (int i = 0; i < n; i++)
-				((ns1__userDetails*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__userDetails*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:NoSuchUserException"))
-	{	cp->type = SOAP_TYPE_ns1__NoSuchUserException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__NoSuchUserException);
-			((ns1__NoSuchUserException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException[n]);
-			if (size)
-				*size = n * sizeof(ns1__NoSuchUserException);
-			for (int i = 0; i < n; i++)
-				((ns1__NoSuchUserException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__NoSuchUserException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafiles"))
-	{	cp->type = SOAP_TYPE_ns1__downloadDatafiles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadDatafiles);
-			((ns1__downloadDatafiles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadDatafiles);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadDatafiles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadDatafiles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafilesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__downloadDatafilesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadDatafilesResponse);
-			((ns1__downloadDatafilesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadDatafilesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadDatafilesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadDatafilesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSet"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataSet;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataSet);
-			((ns1__modifyDataSet*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataSet);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataSet*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataSet*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSetResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataSetResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataSetResponse);
-			((ns1__modifyDataSetResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataSetResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataSetResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataSetResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addSampleParameter"))
-	{	cp->type = SOAP_TYPE_ns1__addSampleParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addSampleParameter);
-			((ns1__addSampleParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__addSampleParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__addSampleParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addSampleParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addSampleParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addSampleParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addSampleParameterResponse);
-			((ns1__addSampleParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addSampleParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addSampleParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addSampleParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFacilityUserId"))
-	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserId;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getFacilityUserByFacilityUserId);
-			((ns1__getFacilityUserByFacilityUserId*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId[n]);
-			if (size)
-				*size = n * sizeof(ns1__getFacilityUserByFacilityUserId);
-			for (int i = 0; i < n; i++)
-				((ns1__getFacilityUserByFacilityUserId*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getFacilityUserByFacilityUserId*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFacilityUserIdResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
-			((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:checkDatafileDownloadAccess"))
-	{	cp->type = SOAP_TYPE_ns1__checkDatafileDownloadAccess;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__checkDatafileDownloadAccess);
-			((ns1__checkDatafileDownloadAccess*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess[n]);
-			if (size)
-				*size = n * sizeof(ns1__checkDatafileDownloadAccess);
-			for (int i = 0; i < n; i++)
-				((ns1__checkDatafileDownloadAccess*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__checkDatafileDownloadAccess*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:checkDatafileDownloadAccessResponse"))
-	{	cp->type = SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__checkDatafileDownloadAccessResponse);
-			((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__checkDatafileDownloadAccessResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__checkDatafileDownloadAccessResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadInfo"))
-	{	cp->type = SOAP_TYPE_ns1__downloadInfo;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadInfo);
-			((ns1__downloadInfo*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadInfo);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadInfo*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadInfo*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFile"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataFile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataFile);
-			((ns1__deleteDataFile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataFile);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataFile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataFile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFileResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataFileResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataFileResponse);
-			((ns1__deleteDataFileResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataFileResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataFileResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataFileResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurname"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserSurname;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserSurname);
-			((ns1__searchByUserSurname*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserSurname);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserSurname*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserSurname*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurnameResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserSurnameResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserSurnameResponse);
-			((ns1__searchByUserSurnameResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserSurnameResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserSurnameResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserSurnameResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurnamePagination"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserSurnamePagination;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserSurnamePagination);
-			((ns1__searchByUserSurnamePagination*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserSurnamePagination);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserSurnamePagination*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserSurnamePagination*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurnamePaginationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserSurnamePaginationResponse);
-			((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserSurnamePaginationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserSurnamePaginationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:checkDatasetDownloadAccess"))
-	{	cp->type = SOAP_TYPE_ns1__checkDatasetDownloadAccess;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__checkDatasetDownloadAccess);
-			((ns1__checkDatasetDownloadAccess*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess[n]);
-			if (size)
-				*size = n * sizeof(ns1__checkDatasetDownloadAccess);
-			for (int i = 0; i < n; i++)
-				((ns1__checkDatasetDownloadAccess*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__checkDatasetDownloadAccess*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:checkDatasetDownloadAccessResponse"))
-	{	cp->type = SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__checkDatasetDownloadAccessResponse);
-			((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__checkDatasetDownloadAccessResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__checkDatasetDownloadAccessResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywords"))
-	{	cp->type = SOAP_TYPE_ns1__searchByKeywords;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByKeywords);
-			((ns1__searchByKeywords*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByKeywords);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByKeywords*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByKeywords*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywordsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByKeywordsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByKeywordsResponse);
-			((ns1__searchByKeywordsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByKeywordsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByKeywordsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByKeywordsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywordsAll"))
-	{	cp->type = SOAP_TYPE_ns1__searchByKeywordsAll;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByKeywordsAll);
-			((ns1__searchByKeywordsAll*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByKeywordsAll);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByKeywordsAll*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByKeywordsAll*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:keywordDetails"))
-	{	cp->type = SOAP_TYPE_ns1__keywordDetails;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__keywordDetails);
-			((ns1__keywordDetails*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails[n]);
-			if (size)
-				*size = n * sizeof(ns1__keywordDetails);
-			for (int i = 0; i < n; i++)
-				((ns1__keywordDetails*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__keywordDetails*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywordsAllResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByKeywordsAllResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByKeywordsAllResponse);
-			((ns1__searchByKeywordsAllResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByKeywordsAllResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByKeywordsAllResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByKeywordsAllResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigations"))
-	{	cp->type = SOAP_TYPE_ns1__getMyInvestigations;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getMyInvestigations);
-			((ns1__getMyInvestigations*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations[n]);
-			if (size)
-				*size = n * sizeof(ns1__getMyInvestigations);
-			for (int i = 0; i < n; i++)
-				((ns1__getMyInvestigations*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getMyInvestigations*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getMyInvestigationsResponse);
-			((ns1__getMyInvestigationsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getMyInvestigationsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getMyInvestigationsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getMyInvestigationsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludes"))
-	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludes;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getMyInvestigationsIncludes);
-			((ns1__getMyInvestigationsIncludes*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes[n]);
-			if (size)
-				*size = n * sizeof(ns1__getMyInvestigationsIncludes);
-			for (int i = 0; i < n; i++)
-				((ns1__getMyInvestigationsIncludes*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getMyInvestigationsIncludes*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getMyInvestigationsIncludesResponse);
-			((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getMyInvestigationsIncludesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getMyInvestigationsIncludesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludesPagination"))
-	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getMyInvestigationsIncludesPagination);
-			((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination[n]);
-			if (size)
-				*size = n * sizeof(ns1__getMyInvestigationsIncludesPagination);
-			for (int i = 0; i < n; i++)
-				((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getMyInvestigationsIncludesPagination*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludesPaginationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
-			((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataSetParameter"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataSetParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataSetParameter);
-			((ns1__removeDataSetParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataSetParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataSetParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataSetParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataSetParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataSetParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataSetParameterResponse);
-			((ns1__removeDataSetParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataSetParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataSetParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyPublication"))
-	{	cp->type = SOAP_TYPE_ns1__modifyPublication;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyPublication);
-			((ns1__modifyPublication*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyPublication);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyPublication*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyPublication*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyPublicationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyPublicationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyPublicationResponse);
-			((ns1__modifyPublicationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyPublicationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyPublicationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyPublicationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserID"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserID;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserID);
-			((ns1__searchByUserID*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserID);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserID*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserID*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserIDResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserIDResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserIDResponse);
-			((ns1__searchByUserIDResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserIDResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserIDResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserIDResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserIDPagination"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserIDPagination;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserIDPagination);
-			((ns1__searchByUserIDPagination*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserIDPagination);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserIDPagination*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserIDPagination*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByUserIDPaginationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByUserIDPaginationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByUserIDPaginationResponse);
-			((ns1__searchByUserIDPaginationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByUserIDPaginationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByUserIDPaginationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByUserIDPaginationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataFileParameter"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataFileParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataFileParameter);
-			((ns1__removeDataFileParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataFileParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataFileParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataFileParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataFileParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataFileParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataFileParameterResponse);
-			((ns1__removeDataFileParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataFileParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataFileParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationsIncludes"))
-	{	cp->type = SOAP_TYPE_ns1__getInvestigationsIncludes;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getInvestigationsIncludes);
-			((ns1__getInvestigationsIncludes*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes[n]);
-			if (size)
-				*size = n * sizeof(ns1__getInvestigationsIncludes);
-			for (int i = 0; i < n; i++)
-				((ns1__getInvestigationsIncludes*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getInvestigationsIncludes*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationsIncludesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getInvestigationsIncludesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getInvestigationsIncludesResponse);
-			((ns1__getInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getInvestigationsIncludesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getInvestigationsIncludesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparator"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatafilesByParameterComparator);
-			((ns1__searchDatafilesByParameterComparator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatafilesByParameterComparator);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatafilesByParameterComparator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatafilesByParameterComparator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatafilesByParameterComparatorResponse);
-			((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatafilesByParameterComparatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSet"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataSet;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataSet);
-			((ns1__deleteDataSet*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataSet);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataSet*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataSet*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSetResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataSetResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataSetResponse);
-			((ns1__deleteDataSetResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataSetResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataSetResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataSetResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:isSessionValid"))
-	{	cp->type = SOAP_TYPE_ns1__isSessionValid;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__isSessionValid);
-			((ns1__isSessionValid*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid[n]);
-			if (size)
-				*size = n * sizeof(ns1__isSessionValid);
-			for (int i = 0; i < n; i++)
-				((ns1__isSessionValid*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__isSessionValid*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:isSessionValidResponse"))
-	{	cp->type = SOAP_TYPE_ns1__isSessionValidResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__isSessionValidResponse);
-			((ns1__isSessionValidResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__isSessionValidResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__isSessionValidResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__isSessionValidResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterOperator"))
-	{	cp->type = SOAP_TYPE_ns1__searchByParameterOperator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByParameterOperator);
-			((ns1__searchByParameterOperator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByParameterOperator);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByParameterOperator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByParameterOperator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterOperatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByParameterOperatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByParameterOperatorResponse);
-			((ns1__searchByParameterOperatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByParameterOperatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByParameterOperatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByParameterOperatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatafiles"))
-	{	cp->type = SOAP_TYPE_ns1__getDatafiles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatafiles);
-			((ns1__getDatafiles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatafiles);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatafiles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatafiles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatafilesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getDatafilesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatafilesResponse);
-			((ns1__getDatafilesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatafilesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatafilesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatafilesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getICATAPIVersion"))
-	{	cp->type = SOAP_TYPE_ns1__getICATAPIVersion;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getICATAPIVersion);
-			((ns1__getICATAPIVersion*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion[n]);
-			if (size)
-				*size = n * sizeof(ns1__getICATAPIVersion);
-			for (int i = 0; i < n; i++)
-				((ns1__getICATAPIVersion*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getICATAPIVersion*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getICATAPIVersionResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getICATAPIVersionResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getICATAPIVersionResponse);
-			((ns1__getICATAPIVersionResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getICATAPIVersionResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getICATAPIVersionResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getICATAPIVersionResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigator"))
-	{	cp->type = SOAP_TYPE_ns1__deleteInvestigator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteInvestigator);
-			((ns1__deleteInvestigator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteInvestigator);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteInvestigator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteInvestigator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteInvestigatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteInvestigatorResponse);
-			((ns1__deleteInvestigatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteInvestigatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteInvestigatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteInvestigatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addInvestigator"))
-	{	cp->type = SOAP_TYPE_ns1__addInvestigator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addInvestigator);
-			((ns1__addInvestigator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator[n]);
-			if (size)
-				*size = n * sizeof(ns1__addInvestigator);
-			for (int i = 0; i < n; i++)
-				((ns1__addInvestigator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addInvestigator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addInvestigatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addInvestigatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addInvestigatorResponse);
-			((ns1__addInvestigatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addInvestigatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addInvestigatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addInvestigatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataSet"))
-	{	cp->type = SOAP_TYPE_ns1__createDataSet;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataSet);
-			((ns1__createDataSet*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataSet);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataSet*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataSet*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataSetResponse"))
-	{	cp->type = SOAP_TYPE_ns1__createDataSetResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataSetResponse);
-			((ns1__createDataSetResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataSetResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataSetResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataSetResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparator"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatasetsByParameterComparator);
-			((ns1__searchDatasetsByParameterComparator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatasetsByParameterComparator);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatasetsByParameterComparator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatasetsByParameterComparator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatasetsByParameterComparatorResponse);
-			((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatasetsByParameterComparatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeSampleParameter"))
-	{	cp->type = SOAP_TYPE_ns1__removeSampleParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeSampleParameter);
-			((ns1__removeSampleParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeSampleParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__removeSampleParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeSampleParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeSampleParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeSampleParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeSampleParameterResponse);
-			((ns1__removeSampleParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeSampleParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeSampleParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeSampleParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSetParameter"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataSetParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataSetParameter);
-			((ns1__deleteDataSetParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataSetParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataSetParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataSetParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSetParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataSetParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataSetParameterResponse);
-			((ns1__deleteDataSetParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataSetParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataSetParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:setDataSetSample"))
-	{	cp->type = SOAP_TYPE_ns1__setDataSetSample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__setDataSetSample);
-			((ns1__setDataSetSample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample[n]);
-			if (size)
-				*size = n * sizeof(ns1__setDataSetSample);
-			for (int i = 0; i < n; i++)
-				((ns1__setDataSetSample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__setDataSetSample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:setDataSetSampleResponse"))
-	{	cp->type = SOAP_TYPE_ns1__setDataSetSampleResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__setDataSetSampleResponse);
-			((ns1__setDataSetSampleResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__setDataSetSampleResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__setDataSetSampleResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__setDataSetSampleResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparators"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparators;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatasetsByParameterComparators);
-			((ns1__searchDatasetsByParameterComparators*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatasetsByParameterComparators);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatasetsByParameterComparators*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatasetsByParameterComparators*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparatorsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
-			((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafile"))
-	{	cp->type = SOAP_TYPE_ns1__downloadDatafile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadDatafile);
-			((ns1__downloadDatafile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadDatafile);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadDatafile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadDatafile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafileResponse"))
-	{	cp->type = SOAP_TYPE_ns1__downloadDatafileResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__downloadDatafileResponse);
-			((ns1__downloadDatafileResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__downloadDatafileResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__downloadDatafileResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__downloadDatafileResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUser"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUser;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUser);
-			((ns1__getKeywordsForUser*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUser);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUser*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUser*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserResponse);
-			((ns1__getKeywordsForUserResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserStartWithMax"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMax;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserStartWithMax);
-			((ns1__getKeywordsForUserStartWithMax*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserStartWithMax);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserStartWithMax*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserStartWithMax*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserStartWithMaxResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
-			((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserMax"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserMax;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserMax);
-			((ns1__getKeywordsForUserMax*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserMax);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserMax*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserMax*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserMaxResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserMaxResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserMaxResponse);
-			((ns1__getKeywordsForUserMaxResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserMaxResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserMaxResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserMaxResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserType"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserType;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserType);
-			((ns1__getKeywordsForUserType*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserType);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserType*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserType*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserTypeResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserTypeResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getKeywordsForUserTypeResponse);
-			((ns1__getKeywordsForUserTypeResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getKeywordsForUserTypeResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getKeywordsForUserTypeResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getKeywordsForUserTypeResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listInvestigationTypes"))
-	{	cp->type = SOAP_TYPE_ns1__listInvestigationTypes;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listInvestigationTypes);
-			((ns1__listInvestigationTypes*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes[n]);
-			if (size)
-				*size = n * sizeof(ns1__listInvestigationTypes);
-			for (int i = 0; i < n; i++)
-				((ns1__listInvestigationTypes*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listInvestigationTypes*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listInvestigationTypesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listInvestigationTypesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listInvestigationTypesResponse);
-			((ns1__listInvestigationTypesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listInvestigationTypesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listInvestigationTypesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listInvestigationTypesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSetParameter"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataSetParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataSetParameter);
-			((ns1__modifyDataSetParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataSetParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataSetParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataSetParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSetParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataSetParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataSetParameterResponse);
-			((ns1__modifyDataSetParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataSetParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataSetParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataSet"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataSet;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataSet);
-			((ns1__removeDataSet*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataSet);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataSet*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataSet*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:removeDataSetResponse"))
-	{	cp->type = SOAP_TYPE_ns1__removeDataSetResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__removeDataSetResponse);
-			((ns1__removeDataSetResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__removeDataSetResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__removeDataSetResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__removeDataSetResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getAuthorisations"))
-	{	cp->type = SOAP_TYPE_ns1__getAuthorisations;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getAuthorisations);
-			((ns1__getAuthorisations*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations[n]);
-			if (size)
-				*size = n * sizeof(ns1__getAuthorisations);
-			for (int i = 0; i < n; i++)
-				((ns1__getAuthorisations*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getAuthorisations*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getAuthorisationsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getAuthorisationsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getAuthorisationsResponse);
-			((ns1__getAuthorisationsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getAuthorisationsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getAuthorisationsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getAuthorisationsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addKeyword"))
-	{	cp->type = SOAP_TYPE_ns1__addKeyword;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addKeyword);
-			((ns1__addKeyword*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword[n]);
-			if (size)
-				*size = n * sizeof(ns1__addKeyword);
-			for (int i = 0; i < n; i++)
-				((ns1__addKeyword*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addKeyword*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addKeywordResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addKeywordResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addKeywordResponse);
-			((ns1__addKeywordResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addKeywordResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addKeywordResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addKeywordResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigation"))
-	{	cp->type = SOAP_TYPE_ns1__modifyInvestigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyInvestigation);
-			((ns1__modifyInvestigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyInvestigation);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyInvestigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyInvestigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyInvestigationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyInvestigationResponse);
-			((ns1__modifyInvestigationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyInvestigationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyInvestigationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyInvestigationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listDatasetStatus"))
-	{	cp->type = SOAP_TYPE_ns1__listDatasetStatus;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listDatasetStatus);
-			((ns1__listDatasetStatus*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus[n]);
-			if (size)
-				*size = n * sizeof(ns1__listDatasetStatus);
-			for (int i = 0; i < n; i++)
-				((ns1__listDatasetStatus*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listDatasetStatus*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listDatasetStatusResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listDatasetStatusResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listDatasetStatusResponse);
-			((ns1__listDatasetStatusResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listDatasetStatusResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listDatasetStatusResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listDatasetStatusResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteSample"))
-	{	cp->type = SOAP_TYPE_ns1__deleteSample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteSample);
-			((ns1__deleteSample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteSample);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteSample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteSample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteSampleResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteSampleResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteSampleResponse);
-			((ns1__deleteSampleResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteSampleResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteSampleResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteSampleResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteKeyword"))
-	{	cp->type = SOAP_TYPE_ns1__deleteKeyword;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteKeyword);
-			((ns1__deleteKeyword*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteKeyword);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteKeyword*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteKeyword*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteKeywordResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteKeywordResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteKeywordResponse);
-			((ns1__deleteKeywordResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteKeywordResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteKeywordResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteKeywordResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParameters"))
-	{	cp->type = SOAP_TYPE_ns1__addDataSetParameters;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataSetParameters);
-			((ns1__addDataSetParameters*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataSetParameters);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataSetParameters*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataSetParameters*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParametersResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addDataSetParametersResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataSetParametersResponse);
-			((ns1__addDataSetParametersResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataSetParametersResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataSetParametersResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataSetParametersResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumber"))
-	{	cp->type = SOAP_TYPE_ns1__searchByRunNumber;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByRunNumber);
-			((ns1__searchByRunNumber*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByRunNumber);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByRunNumber*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByRunNumber*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumberResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByRunNumberResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByRunNumberResponse);
-			((ns1__searchByRunNumberResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByRunNumberResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByRunNumberResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByRunNumberResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumberPagination"))
-	{	cp->type = SOAP_TYPE_ns1__searchByRunNumberPagination;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByRunNumberPagination);
-			((ns1__searchByRunNumberPagination*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByRunNumberPagination);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByRunNumberPagination*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByRunNumberPagination*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumberPaginationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByRunNumberPaginationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByRunNumberPaginationResponse);
-			((ns1__searchByRunNumberPaginationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByRunNumberPaginationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByRunNumberPaginationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByRunNumberPaginationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvanced"))
-	{	cp->type = SOAP_TYPE_ns1__searchByAdvanced;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByAdvanced);
-			((ns1__searchByAdvanced*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByAdvanced);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByAdvanced*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByAdvanced*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:advancedSearchDetails"))
-	{	cp->type = SOAP_TYPE_ns1__advancedSearchDetails;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__advancedSearchDetails);
-			((ns1__advancedSearchDetails*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails[n]);
-			if (size)
-				*size = n * sizeof(ns1__advancedSearchDetails);
-			for (int i = 0; i < n; i++)
-				((ns1__advancedSearchDetails*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__advancedSearchDetails*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvancedResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByAdvancedResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByAdvancedResponse);
-			((ns1__searchByAdvancedResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByAdvancedResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByAdvancedResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByAdvancedResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvancedPagination"))
-	{	cp->type = SOAP_TYPE_ns1__searchByAdvancedPagination;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByAdvancedPagination);
-			((ns1__searchByAdvancedPagination*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByAdvancedPagination);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByAdvancedPagination*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByAdvancedPagination*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvancedPaginationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByAdvancedPaginationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByAdvancedPaginationResponse);
-			((ns1__searchByAdvancedPaginationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByAdvancedPaginationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByAdvancedPaginationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByAdvancedPaginationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listDatafileFormats"))
-	{	cp->type = SOAP_TYPE_ns1__listDatafileFormats;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listDatafileFormats);
-			((ns1__listDatafileFormats*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats[n]);
-			if (size)
-				*size = n * sizeof(ns1__listDatafileFormats);
-			for (int i = 0; i < n; i++)
-				((ns1__listDatafileFormats*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listDatafileFormats*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listDatafileFormatsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listDatafileFormatsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listDatafileFormatsResponse);
-			((ns1__listDatafileFormatsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listDatafileFormatsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listDatafileFormatsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listDatafileFormatsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifySampleParameter"))
-	{	cp->type = SOAP_TYPE_ns1__modifySampleParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifySampleParameter);
-			((ns1__modifySampleParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifySampleParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__modifySampleParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifySampleParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifySampleParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifySampleParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifySampleParameterResponse);
-			((ns1__modifySampleParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifySampleParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifySampleParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifySampleParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparator"))
-	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByParameterComparator);
-			((ns1__searchByParameterComparator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByParameterComparator);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByParameterComparator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByParameterComparator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchByParameterComparatorResponse);
-			((ns1__searchByParameterComparatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchByParameterComparatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchByParameterComparatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigator"))
-	{	cp->type = SOAP_TYPE_ns1__modifyInvestigator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyInvestigator);
-			((ns1__modifyInvestigator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyInvestigator);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyInvestigator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyInvestigator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigatorResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyInvestigatorResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyInvestigatorResponse);
-			((ns1__modifyInvestigatorResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyInvestigatorResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyInvestigatorResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyInvestigatorResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataFiles"))
-	{	cp->type = SOAP_TYPE_ns1__createDataFiles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataFiles);
-			((ns1__createDataFiles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataFiles);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataFiles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataFiles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createDataFilesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__createDataFilesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createDataFilesResponse);
-			((ns1__createDataFilesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__createDataFilesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__createDataFilesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createDataFilesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParameter"))
-	{	cp->type = SOAP_TYPE_ns1__addDataSetParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataSetParameter);
-			((ns1__addDataSetParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataSetParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataSetParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataSetParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addDataSetParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataSetParameterResponse);
-			((ns1__addDataSetParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataSetParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataSetParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataSetParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addAuthorisation"))
-	{	cp->type = SOAP_TYPE_ns1__addAuthorisation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addAuthorisation);
-			((ns1__addAuthorisation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation[n]);
-			if (size)
-				*size = n * sizeof(ns1__addAuthorisation);
-			for (int i = 0; i < n; i++)
-				((ns1__addAuthorisation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addAuthorisation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addAuthorisationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addAuthorisationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addAuthorisationResponse);
-			((ns1__addAuthorisationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addAuthorisationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addAuthorisationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addAuthorisationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addSample"))
-	{	cp->type = SOAP_TYPE_ns1__addSample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addSample);
-			((ns1__addSample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSample[n]);
-			if (size)
-				*size = n * sizeof(ns1__addSample);
-			for (int i = 0; i < n; i++)
-				((ns1__addSample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addSample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addSampleResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addSampleResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addSampleResponse);
-			((ns1__addSampleResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addSampleResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addSampleResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addSampleResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:loginLifetime"))
-	{	cp->type = SOAP_TYPE_ns1__loginLifetime;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__loginLifetime);
-			((ns1__loginLifetime*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime[n]);
-			if (size)
-				*size = n * sizeof(ns1__loginLifetime);
-			for (int i = 0; i < n; i++)
-				((ns1__loginLifetime*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__loginLifetime*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:loginLifetimeResponse"))
-	{	cp->type = SOAP_TYPE_ns1__loginLifetimeResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__loginLifetimeResponse);
-			((ns1__loginLifetimeResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__loginLifetimeResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__loginLifetimeResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__loginLifetimeResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:login"))
-	{	cp->type = SOAP_TYPE_ns1__login;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__login);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__login);
-			((ns1__login*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__login[n]);
-			if (size)
-				*size = n * sizeof(ns1__login);
-			for (int i = 0; i < n; i++)
-				((ns1__login*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__login*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:loginResponse"))
-	{	cp->type = SOAP_TYPE_ns1__loginResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__loginResponse);
-			((ns1__loginResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__loginResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__loginResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__loginResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deletePublication"))
-	{	cp->type = SOAP_TYPE_ns1__deletePublication;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deletePublication);
-			((ns1__deletePublication*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication[n]);
-			if (size)
-				*size = n * sizeof(ns1__deletePublication);
-			for (int i = 0; i < n; i++)
-				((ns1__deletePublication*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deletePublication*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deletePublicationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deletePublicationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deletePublicationResponse);
-			((ns1__deletePublicationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deletePublicationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deletePublicationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deletePublicationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteAuthorisation"))
-	{	cp->type = SOAP_TYPE_ns1__deleteAuthorisation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteAuthorisation);
-			((ns1__deleteAuthorisation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteAuthorisation);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteAuthorisation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteAuthorisation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteAuthorisationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteAuthorisationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteAuthorisationResponse);
-			((ns1__deleteAuthorisationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteAuthorisationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteAuthorisationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteAuthorisationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:updateAuthorisation"))
-	{	cp->type = SOAP_TYPE_ns1__updateAuthorisation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__updateAuthorisation);
-			((ns1__updateAuthorisation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation[n]);
-			if (size)
-				*size = n * sizeof(ns1__updateAuthorisation);
-			for (int i = 0; i < n; i++)
-				((ns1__updateAuthorisation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__updateAuthorisation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:updateAuthorisationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__updateAuthorisationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__updateAuthorisationResponse);
-			((ns1__updateAuthorisationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__updateAuthorisationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__updateAuthorisationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__updateAuthorisationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatasetIncludes"))
-	{	cp->type = SOAP_TYPE_ns1__getDatasetIncludes;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatasetIncludes);
-			((ns1__getDatasetIncludes*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatasetIncludes);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatasetIncludes*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatasetIncludes*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatasetIncludesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getDatasetIncludesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatasetIncludesResponse);
-			((ns1__getDatasetIncludesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatasetIncludesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatasetIncludesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatasetIncludesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDataset"))
-	{	cp->type = SOAP_TYPE_ns1__getDataset;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDataset);
-			((ns1__getDataset*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDataset);
-			for (int i = 0; i < n; i++)
-				((ns1__getDataset*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDataset*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatasetResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getDatasetResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatasetResponse);
-			((ns1__getDatasetResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatasetResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatasetResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatasetResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listRoles"))
-	{	cp->type = SOAP_TYPE_ns1__listRoles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listRoles);
-			((ns1__listRoles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles[n]);
-			if (size)
-				*size = n * sizeof(ns1__listRoles);
-			for (int i = 0; i < n; i++)
-				((ns1__listRoles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listRoles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listRolesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listRolesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listRolesResponse);
-			((ns1__listRolesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listRolesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listRolesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listRolesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:ingestMetadata"))
-	{	cp->type = SOAP_TYPE_ns1__ingestMetadata;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__ingestMetadata);
-			((ns1__ingestMetadata*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata[n]);
-			if (size)
-				*size = n * sizeof(ns1__ingestMetadata);
-			for (int i = 0; i < n; i++)
-				((ns1__ingestMetadata*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__ingestMetadata*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:ingestMetadataResponse"))
-	{	cp->type = SOAP_TYPE_ns1__ingestMetadataResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__ingestMetadataResponse);
-			((ns1__ingestMetadataResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__ingestMetadataResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__ingestMetadataResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__ingestMetadataResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:ICATAPIException"))
-	{	cp->type = SOAP_TYPE_ns1__ICATAPIException;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__ICATAPIException);
-			((ns1__ICATAPIException*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException[n]);
-			if (size)
-				*size = n * sizeof(ns1__ICATAPIException);
-			for (int i = 0; i < n; i++)
-				((ns1__ICATAPIException*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__ICATAPIException*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatafile"))
-	{	cp->type = SOAP_TYPE_ns1__getDatafile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatafile);
-			((ns1__getDatafile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatafile);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatafile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatafile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatafileResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getDatafileResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatafileResponse);
-			((ns1__getDatafileResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatafileResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatafileResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatafileResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFile"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataFile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataFile);
-			((ns1__modifyDataFile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataFile);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataFile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataFile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFileResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataFileResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataFileResponse);
-			((ns1__modifyDataFileResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataFileResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataFileResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataFileResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationIncludes"))
-	{	cp->type = SOAP_TYPE_ns1__getInvestigationIncludes;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getInvestigationIncludes);
-			((ns1__getInvestigationIncludes*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes[n]);
-			if (size)
-				*size = n * sizeof(ns1__getInvestigationIncludes);
-			for (int i = 0; i < n; i++)
-				((ns1__getInvestigationIncludes*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getInvestigationIncludes*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationIncludesResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getInvestigationIncludesResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getInvestigationIncludesResponse);
-			((ns1__getInvestigationIncludesResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getInvestigationIncludesResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getInvestigationIncludesResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getInvestigationIncludesResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getInvestigation"))
-	{	cp->type = SOAP_TYPE_ns1__getInvestigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getInvestigation);
-			((ns1__getInvestigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__getInvestigation);
-			for (int i = 0; i < n; i++)
-				((ns1__getInvestigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getInvestigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getInvestigationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getInvestigationResponse);
-			((ns1__getInvestigationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getInvestigationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getInvestigationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getInvestigationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFileParameter"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataFileParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataFileParameter);
-			((ns1__deleteDataFileParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataFileParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataFileParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataFileParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFileParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteDataFileParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteDataFileParameterResponse);
-			((ns1__deleteDataFileParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteDataFileParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteDataFileParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addPublication"))
-	{	cp->type = SOAP_TYPE_ns1__addPublication;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addPublication);
-			((ns1__addPublication*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication[n]);
-			if (size)
-				*size = n * sizeof(ns1__addPublication);
-			for (int i = 0; i < n; i++)
-				((ns1__addPublication*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addPublication*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addPublicationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addPublicationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addPublicationResponse);
-			((ns1__addPublicationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addPublicationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addPublicationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addPublicationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createInvestigation"))
-	{	cp->type = SOAP_TYPE_ns1__createInvestigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createInvestigation);
-			((ns1__createInvestigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__createInvestigation);
-			for (int i = 0; i < n; i++)
-				((ns1__createInvestigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createInvestigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:createInvestigationResponse"))
-	{	cp->type = SOAP_TYPE_ns1__createInvestigationResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__createInvestigationResponse);
-			((ns1__createInvestigationResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__createInvestigationResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__createInvestigationResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__createInvestigationResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsBySample"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatasetsBySample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatasetsBySample);
-			((ns1__searchDatasetsBySample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatasetsBySample);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatasetsBySample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatasetsBySample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsBySampleResponse"))
-	{	cp->type = SOAP_TYPE_ns1__searchDatasetsBySampleResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__searchDatasetsBySampleResponse);
-			((ns1__searchDatasetsBySampleResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__searchDatasetsBySampleResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__searchDatasetsBySampleResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__searchDatasetsBySampleResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParameter"))
-	{	cp->type = SOAP_TYPE_ns1__addDataFileParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataFileParameter);
-			((ns1__addDataFileParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataFileParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataFileParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataFileParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__addDataFileParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__addDataFileParameterResponse);
-			((ns1__addDataFileParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__addDataFileParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__addDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__addDataFileParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteSampleParameter"))
-	{	cp->type = SOAP_TYPE_ns1__deleteSampleParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteSampleParameter);
-			((ns1__deleteSampleParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteSampleParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteSampleParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteSampleParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:deleteSampleParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__deleteSampleParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__deleteSampleParameterResponse);
-			((ns1__deleteSampleParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__deleteSampleParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__deleteSampleParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__deleteSampleParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFileParameter"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataFileParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataFileParameter);
-			((ns1__modifyDataFileParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataFileParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataFileParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataFileParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFileParameterResponse"))
-	{	cp->type = SOAP_TYPE_ns1__modifyDataFileParameterResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__modifyDataFileParameterResponse);
-			((ns1__modifyDataFileParameterResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__modifyDataFileParameterResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__modifyDataFileParameterResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__modifyDataFileParameterResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listParameters"))
-	{	cp->type = SOAP_TYPE_ns1__listParameters;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listParameters);
-			((ns1__listParameters*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters[n]);
-			if (size)
-				*size = n * sizeof(ns1__listParameters);
-			for (int i = 0; i < n; i++)
-				((ns1__listParameters*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listParameters*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:listParametersResponse"))
-	{	cp->type = SOAP_TYPE_ns1__listParametersResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__listParametersResponse);
-			((ns1__listParametersResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__listParametersResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__listParametersResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__listParametersResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatasets"))
-	{	cp->type = SOAP_TYPE_ns1__getDatasets;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatasets);
-			((ns1__getDatasets*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatasets);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatasets*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatasets*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:getDatasetsResponse"))
-	{	cp->type = SOAP_TYPE_ns1__getDatasetsResponse;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__getDatasetsResponse);
-			((ns1__getDatasetsResponse*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse[n]);
-			if (size)
-				*size = n * sizeof(ns1__getDatasetsResponse);
-			for (int i = 0; i < n; i++)
-				((ns1__getDatasetsResponse*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__getDatasetsResponse*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:sample"))
-	{	cp->type = SOAP_TYPE_ns1__sample;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sample);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__sample);
-			((ns1__sample*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sample[n]);
-			if (size)
-				*size = n * sizeof(ns1__sample);
-			for (int i = 0; i < n; i++)
-				((ns1__sample*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__sample*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:sampleParameter"))
-	{	cp->type = SOAP_TYPE_ns1__sampleParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__sampleParameter);
-			((ns1__sampleParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__sampleParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__sampleParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__sampleParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:sampleParameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__sampleParameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__sampleParameterPK);
-			((ns1__sampleParameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__sampleParameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__sampleParameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__sampleParameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:icatRole"))
-	{	cp->type = SOAP_TYPE_ns1__icatRole;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__icatRole);
-			((ns1__icatRole*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole[n]);
-			if (size)
-				*size = n * sizeof(ns1__icatRole);
-			for (int i = 0; i < n; i++)
-				((ns1__icatRole*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__icatRole*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafile"))
-	{	cp->type = SOAP_TYPE_ns1__datafile;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafile);
-			((ns1__datafile*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafile);
-			for (int i = 0; i < n; i++)
-				((ns1__datafile*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafile*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileFormat"))
-	{	cp->type = SOAP_TYPE_ns1__datafileFormat;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileFormat);
-			((ns1__datafileFormat*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileFormat);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileFormat*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileFormat*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileFormatPK"))
-	{	cp->type = SOAP_TYPE_ns1__datafileFormatPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileFormatPK);
-			((ns1__datafileFormatPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileFormatPK);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileFormatPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileFormatPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileParameter"))
-	{	cp->type = SOAP_TYPE_ns1__datafileParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileParameter);
-			((ns1__datafileParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datafileParameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__datafileParameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datafileParameterPK);
-			((ns1__datafileParameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__datafileParameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__datafileParameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datafileParameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafiles"))
-	{	cp->type = SOAP_TYPE_ns1__relatedDatafiles;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__relatedDatafiles);
-			((ns1__relatedDatafiles*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles[n]);
-			if (size)
-				*size = n * sizeof(ns1__relatedDatafiles);
-			for (int i = 0; i < n; i++)
-				((ns1__relatedDatafiles*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__relatedDatafiles*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafilesPK"))
-	{	cp->type = SOAP_TYPE_ns1__relatedDatafilesPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__relatedDatafilesPK);
-			((ns1__relatedDatafilesPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__relatedDatafilesPK);
-			for (int i = 0; i < n; i++)
-				((ns1__relatedDatafilesPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__relatedDatafilesPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterComparisonCondition"))
-	{	cp->type = SOAP_TYPE_ns1__parameterComparisonCondition;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterComparisonCondition);
-			((ns1__parameterComparisonCondition*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterComparisonCondition);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterComparisonCondition*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterComparisonCondition*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameter"))
-	{	cp->type = SOAP_TYPE_ns1__parameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameter);
-			((ns1__parameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameter);
-			for (int i = 0; i < n; i++)
-				((ns1__parameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__parameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterPK);
-			((ns1__parameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigation"))
-	{	cp->type = SOAP_TYPE_ns1__investigation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigation);
-			((ns1__investigation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigation);
-			for (int i = 0; i < n; i++)
-				((ns1__investigation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigation*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:dataset"))
-	{	cp->type = SOAP_TYPE_ns1__dataset;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__dataset);
-			((ns1__dataset*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset[n]);
-			if (size)
-				*size = n * sizeof(ns1__dataset);
-			for (int i = 0; i < n; i++)
-				((ns1__dataset*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__dataset*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datasetParameter"))
-	{	cp->type = SOAP_TYPE_ns1__datasetParameter;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datasetParameter);
-			((ns1__datasetParameter*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter[n]);
-			if (size)
-				*size = n * sizeof(ns1__datasetParameter);
-			for (int i = 0; i < n; i++)
-				((ns1__datasetParameter*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datasetParameter*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:datasetParameterPK"))
-	{	cp->type = SOAP_TYPE_ns1__datasetParameterPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__datasetParameterPK);
-			((ns1__datasetParameterPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__datasetParameterPK);
-			for (int i = 0; i < n; i++)
-				((ns1__datasetParameterPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__datasetParameterPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:facilityCycle"))
-	{	cp->type = SOAP_TYPE_ns1__facilityCycle;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__facilityCycle);
-			((ns1__facilityCycle*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle[n]);
-			if (size)
-				*size = n * sizeof(ns1__facilityCycle);
-			for (int i = 0; i < n; i++)
-				((ns1__facilityCycle*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__facilityCycle*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigator"))
-	{	cp->type = SOAP_TYPE_ns1__investigator;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigator);
-			((ns1__investigator*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigator);
-			for (int i = 0; i < n; i++)
-				((ns1__investigator*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigator*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:facilityUser"))
-	{	cp->type = SOAP_TYPE_ns1__facilityUser;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__facilityUser);
-			((ns1__facilityUser*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser[n]);
-			if (size)
-				*size = n * sizeof(ns1__facilityUser);
-			for (int i = 0; i < n; i++)
-				((ns1__facilityUser*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__facilityUser*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:investigatorPK"))
-	{	cp->type = SOAP_TYPE_ns1__investigatorPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__investigatorPK);
-			((ns1__investigatorPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__investigatorPK);
-			for (int i = 0; i < n; i++)
-				((ns1__investigatorPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__investigatorPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:keyword"))
-	{	cp->type = SOAP_TYPE_ns1__keyword;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__keyword);
-			((ns1__keyword*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword[n]);
-			if (size)
-				*size = n * sizeof(ns1__keyword);
-			for (int i = 0; i < n; i++)
-				((ns1__keyword*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__keyword*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:keywordPK"))
-	{	cp->type = SOAP_TYPE_ns1__keywordPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__keywordPK);
-			((ns1__keywordPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__keywordPK);
-			for (int i = 0; i < n; i++)
-				((ns1__keywordPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__keywordPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:publication"))
-	{	cp->type = SOAP_TYPE_ns1__publication;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__publication);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__publication);
-			((ns1__publication*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__publication[n]);
-			if (size)
-				*size = n * sizeof(ns1__publication);
-			for (int i = 0; i < n; i++)
-				((ns1__publication*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__publication*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:shift"))
-	{	cp->type = SOAP_TYPE_ns1__shift;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shift);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__shift);
-			((ns1__shift*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shift[n]);
-			if (size)
-				*size = n * sizeof(ns1__shift);
-			for (int i = 0; i < n; i++)
-				((ns1__shift*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__shift*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:shiftPK"))
-	{	cp->type = SOAP_TYPE_ns1__shiftPK;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__shiftPK);
-			((ns1__shiftPK*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK[n]);
-			if (size)
-				*size = n * sizeof(ns1__shiftPK);
-			for (int i = 0; i < n; i++)
-				((ns1__shiftPK*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__shiftPK*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:parameterLogicalCondition"))
-	{	cp->type = SOAP_TYPE_ns1__parameterLogicalCondition;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__parameterLogicalCondition);
-			((ns1__parameterLogicalCondition*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition[n]);
-			if (size)
-				*size = n * sizeof(ns1__parameterLogicalCondition);
-			for (int i = 0; i < n; i++)
-				((ns1__parameterLogicalCondition*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__parameterLogicalCondition*)cp->ptr;
-	}
-	if (type && !soap_match_tag(soap, type, "ns1:icatAuthorisation"))
-	{	cp->type = SOAP_TYPE_ns1__icatAuthorisation;
-		if (n < 0)
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation);
-			if (!cp->ptr)
-			{	soap->error = SOAP_EOM;
-				return NULL;
-			}
-			if (size)
-				*size = sizeof(ns1__icatAuthorisation);
-			((ns1__icatAuthorisation*)cp->ptr)->soap = soap;
-		}
-		else
-		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation[n]);
-			if (size)
-				*size = n * sizeof(ns1__icatAuthorisation);
-			for (int i = 0; i < n; i++)
-				((ns1__icatAuthorisation*)cp->ptr)[i].soap = soap;
-		}
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-		return (ns1__icatAuthorisation*)cp->ptr;
-	}
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(xsd__anyType);
-		if (size)
-			*size = sizeof(xsd__anyType);
-		((xsd__anyType*)cp->ptr)->soap = soap;
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(xsd__anyType[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(xsd__anyType);
-		for (int i = 0; i < n; i++)
-			((xsd__anyType*)cp->ptr)[i].soap = soap;
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (xsd__anyType*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__anyType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__anyType %p -> %p\n", q, p));
-	*(xsd__anyType*)p = *(xsd__anyType*)q;
-}
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_default__QName(soap, &a->faultcode);
-	soap_default_string(soap, &a->faultstring);
-	soap_default_string(soap, &a->faultactor);
-	a->detail = NULL;
-	a->SOAP_ENV__Code = NULL;
-	a->SOAP_ENV__Reason = NULL;
-	soap_default_string(soap, &a->SOAP_ENV__Node);
-	soap_default_string(soap, &a->SOAP_ENV__Role);
-	a->SOAP_ENV__Detail = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize__QName(soap, &a->faultcode);
-	soap_serialize_string(soap, &a->faultstring);
-	soap_serialize_string(soap, &a->faultactor);
-	soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail);
-	soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code);
-	soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason);
-	soap_serialize_string(soap, &a->SOAP_ENV__Node);
-	soap_serialize_string(soap, &a->SOAP_ENV__Role);
-	soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Fault *a, const char *type)
-{
-	const char *soap_tmp_faultcode = soap_QName2s(soap, a->faultcode);
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Fault), type))
-		return soap->error;
-	if (soap_out__QName(soap, "faultcode", -1, (char*const*)&soap_tmp_faultcode, ""))
-		return soap->error;
-	if (soap_out_string(soap, "faultstring", -1, &a->faultstring, ""))
-		return soap->error;
-	if (soap_out_string(soap, "faultactor", -1, &a->faultactor, ""))
-		return soap->error;
-	if (soap_out_PointerToSOAP_ENV__Detail(soap, "detail", -1, &a->detail, ""))
-		return soap->error;
-	if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", -1, &a->SOAP_ENV__Code, ""))
-		return soap->error;
-	if (soap_out_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", -1, &a->SOAP_ENV__Reason, ""))
-		return soap->error;
-	if (soap_out_string(soap, "SOAP-ENV:Node", -1, &a->SOAP_ENV__Node, ""))
-		return soap->error;
-	if (soap_out_string(soap, "SOAP-ENV:Role", -1, &a->SOAP_ENV__Role, ""))
-		return soap->error;
-	if (soap_out_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", -1, &a->SOAP_ENV__Detail, ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_in_SOAP_ENV__Fault(struct soap *soap, const char *tag, struct SOAP_ENV__Fault *a, const char *type)
-{
-	size_t soap_flag_faultcode = 1;
-	size_t soap_flag_faultstring = 1;
-	size_t soap_flag_faultactor = 1;
-	size_t soap_flag_detail = 1;
-	size_t soap_flag_SOAP_ENV__Code = 1;
-	size_t soap_flag_SOAP_ENV__Reason = 1;
-	size_t soap_flag_SOAP_ENV__Node = 1;
-	size_t soap_flag_SOAP_ENV__Role = 1;
-	size_t soap_flag_SOAP_ENV__Detail = 1;
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (struct SOAP_ENV__Fault *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Fault, sizeof(struct SOAP_ENV__Fault), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_SOAP_ENV__Fault(soap, a);
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_faultcode && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in__QName(soap, "faultcode", &a->faultcode, ""))
-				{	soap_flag_faultcode--;
-					continue;
-				}
-			if (soap_flag_faultstring && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "faultstring", &a->faultstring, "xsd:string"))
-				{	soap_flag_faultstring--;
-					continue;
-				}
-			if (soap_flag_faultactor && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "faultactor", &a->faultactor, "xsd:string"))
-				{	soap_flag_faultactor--;
-					continue;
-				}
-			if (soap_flag_detail && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToSOAP_ENV__Detail(soap, "detail", &a->detail, ""))
-				{	soap_flag_detail--;
-					continue;
-				}
-			if (soap_flag_SOAP_ENV__Code && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", &a->SOAP_ENV__Code, ""))
-				{	soap_flag_SOAP_ENV__Code--;
-					continue;
-				}
-			if (soap_flag_SOAP_ENV__Reason && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", &a->SOAP_ENV__Reason, ""))
-				{	soap_flag_SOAP_ENV__Reason--;
-					continue;
-				}
-			if (soap_flag_SOAP_ENV__Node && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "SOAP-ENV:Node", &a->SOAP_ENV__Node, "xsd:string"))
-				{	soap_flag_SOAP_ENV__Node--;
-					continue;
-				}
-			if (soap_flag_SOAP_ENV__Role && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "SOAP-ENV:Role", &a->SOAP_ENV__Role, "xsd:string"))
-				{	soap_flag_SOAP_ENV__Role--;
-					continue;
-				}
-			if (soap_flag_SOAP_ENV__Detail && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", &a->SOAP_ENV__Detail, ""))
-				{	soap_flag_SOAP_ENV__Detail--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Fault);
-	if (soap_out_SOAP_ENV__Fault(soap, tag?tag:"SOAP-ENV:Fault", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_SOAP_ENV__Fault(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct SOAP_ENV__Fault * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Fault(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Fault(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Fault, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Fault);
-		if (size)
-			*size = sizeof(struct SOAP_ENV__Fault);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Fault[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct SOAP_ENV__Fault);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct SOAP_ENV__Fault*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Fault(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Fault %p -> %p\n", q, p));
-	*(struct SOAP_ENV__Fault*)p = *(struct SOAP_ENV__Fault*)q;
-}
-
-#endif
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_default_string(soap, &a->SOAP_ENV__Text);
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_string(soap, &a->SOAP_ENV__Text);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Reason *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Reason), type))
-		return soap->error;
-	if (soap->lang)
-		soap_set_attr(soap, "xml:lang", soap->lang, 1);
-	if (soap_out_string(soap, "SOAP-ENV:Text", -1, &a->SOAP_ENV__Text, ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_in_SOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason *a, const char *type)
-{
-	size_t soap_flag_SOAP_ENV__Text = 1;
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (struct SOAP_ENV__Reason *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_SOAP_ENV__Reason(soap, a);
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_SOAP_ENV__Text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in_string(soap, "SOAP-ENV:Text", &a->SOAP_ENV__Text, "xsd:string"))
-				{	soap_flag_SOAP_ENV__Text--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Reason);
-	if (soap_out_SOAP_ENV__Reason(soap, tag?tag:"SOAP-ENV:Reason", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_SOAP_ENV__Reason(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct SOAP_ENV__Reason * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Reason(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Reason(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Reason, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Reason);
-		if (size)
-			*size = sizeof(struct SOAP_ENV__Reason);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Reason[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct SOAP_ENV__Reason);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct SOAP_ENV__Reason*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Reason(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Reason %p -> %p\n", q, p));
-	*(struct SOAP_ENV__Reason*)p = *(struct SOAP_ENV__Reason*)q;
-}
-
-#endif
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_default__QName(soap, &a->SOAP_ENV__Value);
-	a->SOAP_ENV__Subcode = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize__QName(soap, &a->SOAP_ENV__Value);
-	soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Code *a, const char *type)
-{
-	const char *soap_tmp_SOAP_ENV__Value = soap_QName2s(soap, a->SOAP_ENV__Value);
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Code), type))
-		return soap->error;
-	if (soap_out__QName(soap, "SOAP-ENV:Value", -1, (char*const*)&soap_tmp_SOAP_ENV__Value, ""))
-		return soap->error;
-	if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", -1, &a->SOAP_ENV__Subcode, ""))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_in_SOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code *a, const char *type)
-{
-	size_t soap_flag_SOAP_ENV__Value = 1;
-	size_t soap_flag_SOAP_ENV__Subcode = 1;
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (struct SOAP_ENV__Code *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_SOAP_ENV__Code(soap, a);
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_SOAP_ENV__Value && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_in__QName(soap, "SOAP-ENV:Value", &a->SOAP_ENV__Value, ""))
-				{	soap_flag_SOAP_ENV__Value--;
-					continue;
-				}
-			if (soap_flag_SOAP_ENV__Subcode && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", &a->SOAP_ENV__Subcode, ""))
-				{	soap_flag_SOAP_ENV__Subcode--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Code);
-	if (soap_out_SOAP_ENV__Code(soap, tag?tag:"SOAP-ENV:Code", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_SOAP_ENV__Code(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct SOAP_ENV__Code * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Code(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Code(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Code, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Code);
-		if (size)
-			*size = sizeof(struct SOAP_ENV__Code);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Code[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct SOAP_ENV__Code);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct SOAP_ENV__Code*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Code(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Code %p -> %p\n", q, p));
-	*(struct SOAP_ENV__Code*)p = *(struct SOAP_ENV__Code*)q;
-}
-
-#endif
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Header *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Header), type))
-		return soap->error;
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_in_SOAP_ENV__Header(struct soap *soap, const char *tag, struct SOAP_ENV__Header *a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (struct SOAP_ENV__Header *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Header, sizeof(struct SOAP_ENV__Header), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_SOAP_ENV__Header(soap, a);
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Header);
-	if (soap_out_SOAP_ENV__Header(soap, tag?tag:"SOAP-ENV:Header", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_SOAP_ENV__Header(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct SOAP_ENV__Header * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Header(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Header(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Header, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Header);
-		if (size)
-			*size = sizeof(struct SOAP_ENV__Header);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Header[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct SOAP_ENV__Header);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct SOAP_ENV__Header*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Header(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Header %p -> %p\n", q, p));
-	*(struct SOAP_ENV__Header*)p = *(struct SOAP_ENV__Header*)q;
-}
-
-#endif
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatafilesByParameterComparators(struct soap *soap, struct __ns1__searchDatafilesByParameterComparators *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchDatafilesByParameterComparators_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatafilesByParameterComparators(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparators *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchDatafilesByParameterComparators(soap, &a->ns1__searchDatafilesByParameterComparators_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatafilesByParameterComparators *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchDatafilesByParameterComparators(soap, "ns1:searchDatafilesByParameterComparators", -1, &a->ns1__searchDatafilesByParameterComparators_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_in___ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, struct __ns1__searchDatafilesByParameterComparators *a, const char *type)
-{
-	size_t soap_flag_ns1__searchDatafilesByParameterComparators_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchDatafilesByParameterComparators *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatafilesByParameterComparators, sizeof(struct __ns1__searchDatafilesByParameterComparators), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchDatafilesByParameterComparators(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchDatafilesByParameterComparators_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchDatafilesByParameterComparators(soap, "ns1:searchDatafilesByParameterComparators", &a->ns1__searchDatafilesByParameterComparators_, "ns1:searchDatafilesByParameterComparators"))
-				{	soap_flag_ns1__searchDatafilesByParameterComparators_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatafilesByParameterComparators(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparators *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchDatafilesByParameterComparators(soap, tag?tag:"-ns1:searchDatafilesByParameterComparators", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_get___ns1__searchDatafilesByParameterComparators(struct soap *soap, struct __ns1__searchDatafilesByParameterComparators *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchDatafilesByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchDatafilesByParameterComparators * SOAP_FMAC2 soap_instantiate___ns1__searchDatafilesByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatafilesByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatafilesByParameterComparators, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparators);
-		if (size)
-			*size = sizeof(struct __ns1__searchDatafilesByParameterComparators);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparators[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchDatafilesByParameterComparators);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchDatafilesByParameterComparators*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatafilesByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatafilesByParameterComparators %p -> %p\n", q, p));
-	*(struct __ns1__searchDatafilesByParameterComparators*)p = *(struct __ns1__searchDatafilesByParameterComparators*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatafilesByParameterComparator(struct soap *soap, struct __ns1__searchDatafilesByParameterComparator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchDatafilesByParameterComparator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatafilesByParameterComparator(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchDatafilesByParameterComparator(soap, &a->ns1__searchDatafilesByParameterComparator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatafilesByParameterComparator *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchDatafilesByParameterComparator(soap, "ns1:searchDatafilesByParameterComparator", -1, &a->ns1__searchDatafilesByParameterComparator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_in___ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, struct __ns1__searchDatafilesByParameterComparator *a, const char *type)
-{
-	size_t soap_flag_ns1__searchDatafilesByParameterComparator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchDatafilesByParameterComparator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatafilesByParameterComparator, sizeof(struct __ns1__searchDatafilesByParameterComparator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchDatafilesByParameterComparator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchDatafilesByParameterComparator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchDatafilesByParameterComparator(soap, "ns1:searchDatafilesByParameterComparator", &a->ns1__searchDatafilesByParameterComparator_, "ns1:searchDatafilesByParameterComparator"))
-				{	soap_flag_ns1__searchDatafilesByParameterComparator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatafilesByParameterComparator(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchDatafilesByParameterComparator(soap, tag?tag:"-ns1:searchDatafilesByParameterComparator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_get___ns1__searchDatafilesByParameterComparator(struct soap *soap, struct __ns1__searchDatafilesByParameterComparator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchDatafilesByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchDatafilesByParameterComparator * SOAP_FMAC2 soap_instantiate___ns1__searchDatafilesByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatafilesByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatafilesByParameterComparator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparator);
-		if (size)
-			*size = sizeof(struct __ns1__searchDatafilesByParameterComparator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchDatafilesByParameterComparator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchDatafilesByParameterComparator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatafilesByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatafilesByParameterComparator %p -> %p\n", q, p));
-	*(struct __ns1__searchDatafilesByParameterComparator*)p = *(struct __ns1__searchDatafilesByParameterComparator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatasetsByParameterComparators(struct soap *soap, struct __ns1__searchDatasetsByParameterComparators *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchDatasetsByParameterComparators_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatasetsByParameterComparators(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparators *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchDatasetsByParameterComparators(soap, &a->ns1__searchDatasetsByParameterComparators_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatasetsByParameterComparators *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchDatasetsByParameterComparators(soap, "ns1:searchDatasetsByParameterComparators", -1, &a->ns1__searchDatasetsByParameterComparators_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_in___ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, struct __ns1__searchDatasetsByParameterComparators *a, const char *type)
-{
-	size_t soap_flag_ns1__searchDatasetsByParameterComparators_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchDatasetsByParameterComparators *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatasetsByParameterComparators, sizeof(struct __ns1__searchDatasetsByParameterComparators), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchDatasetsByParameterComparators(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchDatasetsByParameterComparators_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchDatasetsByParameterComparators(soap, "ns1:searchDatasetsByParameterComparators", &a->ns1__searchDatasetsByParameterComparators_, "ns1:searchDatasetsByParameterComparators"))
-				{	soap_flag_ns1__searchDatasetsByParameterComparators_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatasetsByParameterComparators(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparators *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchDatasetsByParameterComparators(soap, tag?tag:"-ns1:searchDatasetsByParameterComparators", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_get___ns1__searchDatasetsByParameterComparators(struct soap *soap, struct __ns1__searchDatasetsByParameterComparators *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchDatasetsByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchDatasetsByParameterComparators * SOAP_FMAC2 soap_instantiate___ns1__searchDatasetsByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatasetsByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatasetsByParameterComparators, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparators);
-		if (size)
-			*size = sizeof(struct __ns1__searchDatasetsByParameterComparators);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparators[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchDatasetsByParameterComparators);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchDatasetsByParameterComparators*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatasetsByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatasetsByParameterComparators %p -> %p\n", q, p));
-	*(struct __ns1__searchDatasetsByParameterComparators*)p = *(struct __ns1__searchDatasetsByParameterComparators*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatasetsByParameterComparator(struct soap *soap, struct __ns1__searchDatasetsByParameterComparator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchDatasetsByParameterComparator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatasetsByParameterComparator(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchDatasetsByParameterComparator(soap, &a->ns1__searchDatasetsByParameterComparator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatasetsByParameterComparator *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchDatasetsByParameterComparator(soap, "ns1:searchDatasetsByParameterComparator", -1, &a->ns1__searchDatasetsByParameterComparator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_in___ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, struct __ns1__searchDatasetsByParameterComparator *a, const char *type)
-{
-	size_t soap_flag_ns1__searchDatasetsByParameterComparator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchDatasetsByParameterComparator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatasetsByParameterComparator, sizeof(struct __ns1__searchDatasetsByParameterComparator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchDatasetsByParameterComparator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchDatasetsByParameterComparator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchDatasetsByParameterComparator(soap, "ns1:searchDatasetsByParameterComparator", &a->ns1__searchDatasetsByParameterComparator_, "ns1:searchDatasetsByParameterComparator"))
-				{	soap_flag_ns1__searchDatasetsByParameterComparator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatasetsByParameterComparator(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchDatasetsByParameterComparator(soap, tag?tag:"-ns1:searchDatasetsByParameterComparator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_get___ns1__searchDatasetsByParameterComparator(struct soap *soap, struct __ns1__searchDatasetsByParameterComparator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchDatasetsByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchDatasetsByParameterComparator * SOAP_FMAC2 soap_instantiate___ns1__searchDatasetsByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatasetsByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatasetsByParameterComparator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparator);
-		if (size)
-			*size = sizeof(struct __ns1__searchDatasetsByParameterComparator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchDatasetsByParameterComparator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchDatasetsByParameterComparator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatasetsByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatasetsByParameterComparator %p -> %p\n", q, p));
-	*(struct __ns1__searchDatasetsByParameterComparator*)p = *(struct __ns1__searchDatasetsByParameterComparator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByParameterComparators(struct soap *soap, struct __ns1__searchByParameterComparators *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByParameterComparators_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByParameterComparators(struct soap *soap, const struct __ns1__searchByParameterComparators *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByParameterComparators(soap, &a->ns1__searchByParameterComparators_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByParameterComparators(struct soap *soap, const char *tag, int id, const struct __ns1__searchByParameterComparators *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByParameterComparators(soap, "ns1:searchByParameterComparators", -1, &a->ns1__searchByParameterComparators_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByParameterComparators * SOAP_FMAC4 soap_in___ns1__searchByParameterComparators(struct soap *soap, const char *tag, struct __ns1__searchByParameterComparators *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByParameterComparators_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByParameterComparators *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByParameterComparators, sizeof(struct __ns1__searchByParameterComparators), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByParameterComparators(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByParameterComparators_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByParameterComparators(soap, "ns1:searchByParameterComparators", &a->ns1__searchByParameterComparators_, "ns1:searchByParameterComparators"))
-				{	soap_flag_ns1__searchByParameterComparators_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByParameterComparators(struct soap *soap, const struct __ns1__searchByParameterComparators *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByParameterComparators(soap, tag?tag:"-ns1:searchByParameterComparators", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByParameterComparators * SOAP_FMAC4 soap_get___ns1__searchByParameterComparators(struct soap *soap, struct __ns1__searchByParameterComparators *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByParameterComparators * SOAP_FMAC2 soap_instantiate___ns1__searchByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByParameterComparators, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparators);
-		if (size)
-			*size = sizeof(struct __ns1__searchByParameterComparators);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparators[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByParameterComparators);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByParameterComparators*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByParameterComparators %p -> %p\n", q, p));
-	*(struct __ns1__searchByParameterComparators*)p = *(struct __ns1__searchByParameterComparators*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByParameterComparator(struct soap *soap, struct __ns1__searchByParameterComparator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByParameterComparator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByParameterComparator(struct soap *soap, const struct __ns1__searchByParameterComparator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByParameterComparator(soap, &a->ns1__searchByParameterComparator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByParameterComparator(struct soap *soap, const char *tag, int id, const struct __ns1__searchByParameterComparator *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByParameterComparator(soap, "ns1:searchByParameterComparator", -1, &a->ns1__searchByParameterComparator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByParameterComparator * SOAP_FMAC4 soap_in___ns1__searchByParameterComparator(struct soap *soap, const char *tag, struct __ns1__searchByParameterComparator *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByParameterComparator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByParameterComparator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByParameterComparator, sizeof(struct __ns1__searchByParameterComparator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByParameterComparator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByParameterComparator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByParameterComparator(soap, "ns1:searchByParameterComparator", &a->ns1__searchByParameterComparator_, "ns1:searchByParameterComparator"))
-				{	soap_flag_ns1__searchByParameterComparator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByParameterComparator(struct soap *soap, const struct __ns1__searchByParameterComparator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByParameterComparator(soap, tag?tag:"-ns1:searchByParameterComparator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByParameterComparator * SOAP_FMAC4 soap_get___ns1__searchByParameterComparator(struct soap *soap, struct __ns1__searchByParameterComparator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByParameterComparator * SOAP_FMAC2 soap_instantiate___ns1__searchByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByParameterComparator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparator);
-		if (size)
-			*size = sizeof(struct __ns1__searchByParameterComparator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByParameterComparator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByParameterComparator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByParameterComparator %p -> %p\n", q, p));
-	*(struct __ns1__searchByParameterComparator*)p = *(struct __ns1__searchByParameterComparator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByParameterOperator(struct soap *soap, struct __ns1__searchByParameterOperator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByParameterOperator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByParameterOperator(struct soap *soap, const struct __ns1__searchByParameterOperator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByParameterOperator(soap, &a->ns1__searchByParameterOperator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByParameterOperator(struct soap *soap, const char *tag, int id, const struct __ns1__searchByParameterOperator *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByParameterOperator(soap, "ns1:searchByParameterOperator", -1, &a->ns1__searchByParameterOperator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByParameterOperator * SOAP_FMAC4 soap_in___ns1__searchByParameterOperator(struct soap *soap, const char *tag, struct __ns1__searchByParameterOperator *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByParameterOperator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByParameterOperator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByParameterOperator, sizeof(struct __ns1__searchByParameterOperator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByParameterOperator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByParameterOperator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByParameterOperator(soap, "ns1:searchByParameterOperator", &a->ns1__searchByParameterOperator_, "ns1:searchByParameterOperator"))
-				{	soap_flag_ns1__searchByParameterOperator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByParameterOperator(struct soap *soap, const struct __ns1__searchByParameterOperator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByParameterOperator(soap, tag?tag:"-ns1:searchByParameterOperator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByParameterOperator * SOAP_FMAC4 soap_get___ns1__searchByParameterOperator(struct soap *soap, struct __ns1__searchByParameterOperator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByParameterOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByParameterOperator * SOAP_FMAC2 soap_instantiate___ns1__searchByParameterOperator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByParameterOperator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByParameterOperator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterOperator);
-		if (size)
-			*size = sizeof(struct __ns1__searchByParameterOperator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterOperator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByParameterOperator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByParameterOperator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByParameterOperator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByParameterOperator %p -> %p\n", q, p));
-	*(struct __ns1__searchByParameterOperator*)p = *(struct __ns1__searchByParameterOperator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__isSessionValid(struct soap *soap, struct __ns1__isSessionValid *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__isSessionValid_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__isSessionValid(struct soap *soap, const struct __ns1__isSessionValid *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__isSessionValid(soap, &a->ns1__isSessionValid_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__isSessionValid(struct soap *soap, const char *tag, int id, const struct __ns1__isSessionValid *a, const char *type)
-{
-	if (soap_out_PointerTons1__isSessionValid(soap, "ns1:isSessionValid", -1, &a->ns1__isSessionValid_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__isSessionValid * SOAP_FMAC4 soap_in___ns1__isSessionValid(struct soap *soap, const char *tag, struct __ns1__isSessionValid *a, const char *type)
-{
-	size_t soap_flag_ns1__isSessionValid_ = 1;
-	short soap_flag;
-	a = (struct __ns1__isSessionValid *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__isSessionValid, sizeof(struct __ns1__isSessionValid), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__isSessionValid(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__isSessionValid_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__isSessionValid(soap, "ns1:isSessionValid", &a->ns1__isSessionValid_, "ns1:isSessionValid"))
-				{	soap_flag_ns1__isSessionValid_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__isSessionValid(struct soap *soap, const struct __ns1__isSessionValid *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__isSessionValid(soap, tag?tag:"-ns1:isSessionValid", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__isSessionValid * SOAP_FMAC4 soap_get___ns1__isSessionValid(struct soap *soap, struct __ns1__isSessionValid *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__isSessionValid(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__isSessionValid * SOAP_FMAC2 soap_instantiate___ns1__isSessionValid(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__isSessionValid(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__isSessionValid, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__isSessionValid);
-		if (size)
-			*size = sizeof(struct __ns1__isSessionValid);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__isSessionValid[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__isSessionValid);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__isSessionValid*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__isSessionValid(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__isSessionValid %p -> %p\n", q, p));
-	*(struct __ns1__isSessionValid*)p = *(struct __ns1__isSessionValid*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getFacilityUserByFederalId(struct soap *soap, struct __ns1__getFacilityUserByFederalId *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getFacilityUserByFederalId_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getFacilityUserByFederalId(struct soap *soap, const struct __ns1__getFacilityUserByFederalId *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getFacilityUserByFederalId(soap, &a->ns1__getFacilityUserByFederalId_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, int id, const struct __ns1__getFacilityUserByFederalId *a, const char *type)
-{
-	if (soap_out_PointerTons1__getFacilityUserByFederalId(soap, "ns1:getFacilityUserByFederalId", -1, &a->ns1__getFacilityUserByFederalId_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_in___ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, struct __ns1__getFacilityUserByFederalId *a, const char *type)
-{
-	size_t soap_flag_ns1__getFacilityUserByFederalId_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getFacilityUserByFederalId *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getFacilityUserByFederalId, sizeof(struct __ns1__getFacilityUserByFederalId), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getFacilityUserByFederalId(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getFacilityUserByFederalId_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getFacilityUserByFederalId(soap, "ns1:getFacilityUserByFederalId", &a->ns1__getFacilityUserByFederalId_, "ns1:getFacilityUserByFederalId"))
-				{	soap_flag_ns1__getFacilityUserByFederalId_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getFacilityUserByFederalId(struct soap *soap, const struct __ns1__getFacilityUserByFederalId *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getFacilityUserByFederalId(soap, tag?tag:"-ns1:getFacilityUserByFederalId", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_get___ns1__getFacilityUserByFederalId(struct soap *soap, struct __ns1__getFacilityUserByFederalId *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getFacilityUserByFederalId(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getFacilityUserByFederalId * SOAP_FMAC2 soap_instantiate___ns1__getFacilityUserByFederalId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getFacilityUserByFederalId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getFacilityUserByFederalId, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFederalId);
-		if (size)
-			*size = sizeof(struct __ns1__getFacilityUserByFederalId);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFederalId[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getFacilityUserByFederalId);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getFacilityUserByFederalId*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getFacilityUserByFederalId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getFacilityUserByFederalId %p -> %p\n", q, p));
-	*(struct __ns1__getFacilityUserByFederalId*)p = *(struct __ns1__getFacilityUserByFederalId*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getFacilityUserByFacilityUserId(struct soap *soap, struct __ns1__getFacilityUserByFacilityUserId *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getFacilityUserByFacilityUserId_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const struct __ns1__getFacilityUserByFacilityUserId *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getFacilityUserByFacilityUserId(soap, &a->ns1__getFacilityUserByFacilityUserId_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, int id, const struct __ns1__getFacilityUserByFacilityUserId *a, const char *type)
-{
-	if (soap_out_PointerTons1__getFacilityUserByFacilityUserId(soap, "ns1:getFacilityUserByFacilityUserId", -1, &a->ns1__getFacilityUserByFacilityUserId_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_in___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, struct __ns1__getFacilityUserByFacilityUserId *a, const char *type)
-{
-	size_t soap_flag_ns1__getFacilityUserByFacilityUserId_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getFacilityUserByFacilityUserId *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getFacilityUserByFacilityUserId, sizeof(struct __ns1__getFacilityUserByFacilityUserId), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getFacilityUserByFacilityUserId(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getFacilityUserByFacilityUserId_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getFacilityUserByFacilityUserId(soap, "ns1:getFacilityUserByFacilityUserId", &a->ns1__getFacilityUserByFacilityUserId_, "ns1:getFacilityUserByFacilityUserId"))
-				{	soap_flag_ns1__getFacilityUserByFacilityUserId_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const struct __ns1__getFacilityUserByFacilityUserId *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getFacilityUserByFacilityUserId(soap, tag?tag:"-ns1:getFacilityUserByFacilityUserId", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_get___ns1__getFacilityUserByFacilityUserId(struct soap *soap, struct __ns1__getFacilityUserByFacilityUserId *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getFacilityUserByFacilityUserId(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getFacilityUserByFacilityUserId * SOAP_FMAC2 soap_instantiate___ns1__getFacilityUserByFacilityUserId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getFacilityUserByFacilityUserId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getFacilityUserByFacilityUserId, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFacilityUserId);
-		if (size)
-			*size = sizeof(struct __ns1__getFacilityUserByFacilityUserId);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFacilityUserId[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getFacilityUserByFacilityUserId);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getFacilityUserByFacilityUserId*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getFacilityUserByFacilityUserId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getFacilityUserByFacilityUserId %p -> %p\n", q, p));
-	*(struct __ns1__getFacilityUserByFacilityUserId*)p = *(struct __ns1__getFacilityUserByFacilityUserId*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getICATAPIVersion(struct soap *soap, struct __ns1__getICATAPIVersion *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getICATAPIVersion_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getICATAPIVersion(struct soap *soap, const struct __ns1__getICATAPIVersion *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getICATAPIVersion(soap, &a->ns1__getICATAPIVersion_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getICATAPIVersion(struct soap *soap, const char *tag, int id, const struct __ns1__getICATAPIVersion *a, const char *type)
-{
-	if (soap_out_PointerTons1__getICATAPIVersion(soap, "ns1:getICATAPIVersion", -1, &a->ns1__getICATAPIVersion_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getICATAPIVersion * SOAP_FMAC4 soap_in___ns1__getICATAPIVersion(struct soap *soap, const char *tag, struct __ns1__getICATAPIVersion *a, const char *type)
-{
-	size_t soap_flag_ns1__getICATAPIVersion_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getICATAPIVersion *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getICATAPIVersion, sizeof(struct __ns1__getICATAPIVersion), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getICATAPIVersion(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getICATAPIVersion_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getICATAPIVersion(soap, "ns1:getICATAPIVersion", &a->ns1__getICATAPIVersion_, "ns1:getICATAPIVersion"))
-				{	soap_flag_ns1__getICATAPIVersion_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getICATAPIVersion(struct soap *soap, const struct __ns1__getICATAPIVersion *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getICATAPIVersion(soap, tag?tag:"-ns1:getICATAPIVersion", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getICATAPIVersion * SOAP_FMAC4 soap_get___ns1__getICATAPIVersion(struct soap *soap, struct __ns1__getICATAPIVersion *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getICATAPIVersion(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getICATAPIVersion * SOAP_FMAC2 soap_instantiate___ns1__getICATAPIVersion(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getICATAPIVersion(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getICATAPIVersion, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getICATAPIVersion);
-		if (size)
-			*size = sizeof(struct __ns1__getICATAPIVersion);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getICATAPIVersion[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getICATAPIVersion);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getICATAPIVersion*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getICATAPIVersion(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getICATAPIVersion %p -> %p\n", q, p));
-	*(struct __ns1__getICATAPIVersion*)p = *(struct __ns1__getICATAPIVersion*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__ingestMetadata(struct soap *soap, struct __ns1__ingestMetadata *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__ingestMetadata_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__ingestMetadata(struct soap *soap, const struct __ns1__ingestMetadata *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__ingestMetadata(soap, &a->ns1__ingestMetadata_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__ingestMetadata(struct soap *soap, const char *tag, int id, const struct __ns1__ingestMetadata *a, const char *type)
-{
-	if (soap_out_PointerTons1__ingestMetadata(soap, "ns1:ingestMetadata", -1, &a->ns1__ingestMetadata_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__ingestMetadata * SOAP_FMAC4 soap_in___ns1__ingestMetadata(struct soap *soap, const char *tag, struct __ns1__ingestMetadata *a, const char *type)
-{
-	size_t soap_flag_ns1__ingestMetadata_ = 1;
-	short soap_flag;
-	a = (struct __ns1__ingestMetadata *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__ingestMetadata, sizeof(struct __ns1__ingestMetadata), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__ingestMetadata(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__ingestMetadata_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__ingestMetadata(soap, "ns1:ingestMetadata", &a->ns1__ingestMetadata_, "ns1:ingestMetadata"))
-				{	soap_flag_ns1__ingestMetadata_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__ingestMetadata(struct soap *soap, const struct __ns1__ingestMetadata *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__ingestMetadata(soap, tag?tag:"-ns1:ingestMetadata", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__ingestMetadata * SOAP_FMAC4 soap_get___ns1__ingestMetadata(struct soap *soap, struct __ns1__ingestMetadata *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__ingestMetadata(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__ingestMetadata * SOAP_FMAC2 soap_instantiate___ns1__ingestMetadata(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__ingestMetadata(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__ingestMetadata, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__ingestMetadata);
-		if (size)
-			*size = sizeof(struct __ns1__ingestMetadata);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__ingestMetadata[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__ingestMetadata);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__ingestMetadata*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__ingestMetadata(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__ingestMetadata %p -> %p\n", q, p));
-	*(struct __ns1__ingestMetadata*)p = *(struct __ns1__ingestMetadata*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSetParameter(struct soap *soap, struct __ns1__removeDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataSetParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSetParameter(struct soap *soap, const struct __ns1__removeDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataSetParameter(soap, &a->ns1__removeDataSetParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSetParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeDataSetParameter(soap, "ns1:removeDataSetParameter", -1, &a->ns1__removeDataSetParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSetParameter * SOAP_FMAC4 soap_in___ns1__removeDataSetParameter(struct soap *soap, const char *tag, struct __ns1__removeDataSetParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataSetParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSetParameter, sizeof(struct __ns1__removeDataSetParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataSetParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataSetParameter(soap, "ns1:removeDataSetParameter", &a->ns1__removeDataSetParameter_, "ns1:removeDataSetParameter"))
-				{	soap_flag_ns1__removeDataSetParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSetParameter(struct soap *soap, const struct __ns1__removeDataSetParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataSetParameter(soap, tag?tag:"-ns1:removeDataSetParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSetParameter * SOAP_FMAC4 soap_get___ns1__removeDataSetParameter(struct soap *soap, struct __ns1__removeDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__removeDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameter);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataSetParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataSetParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSetParameter %p -> %p\n", q, p));
-	*(struct __ns1__removeDataSetParameter*)p = *(struct __ns1__removeDataSetParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSetParameterResponse(struct soap *soap, struct __ns1__removeDataSetParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataSetParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSetParameterResponse(struct soap *soap, const struct __ns1__removeDataSetParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataSetParameterResponse(soap, &a->ns1__removeDataSetParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSetParameterResponse *a, const char *type)
-{
-	if (a->ns1__removeDataSetParameterResponse_)
-		soap_element_result(soap, "ns1:removeDataSetParameterResponse");
-	if (soap_out_PointerTons1__removeDataSetParameterResponse(soap, "ns1:removeDataSetParameterResponse", -1, &a->ns1__removeDataSetParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_in___ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, struct __ns1__removeDataSetParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataSetParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataSetParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSetParameterResponse, sizeof(struct __ns1__removeDataSetParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataSetParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataSetParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataSetParameterResponse(soap, "ns1:removeDataSetParameterResponse", &a->ns1__removeDataSetParameterResponse_, "ns1:removeDataSetParameterResponse"))
-				{	soap_flag_ns1__removeDataSetParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeDataSetParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSetParameterResponse(struct soap *soap, const struct __ns1__removeDataSetParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataSetParameterResponse(soap, tag?tag:"-ns1:removeDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_get___ns1__removeDataSetParameterResponse(struct soap *soap, struct __ns1__removeDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataSetParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataSetParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataSetParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSetParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeDataSetParameterResponse*)p = *(struct __ns1__removeDataSetParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSet(struct soap *soap, struct __ns1__removeDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataSet_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSet(struct soap *soap, const struct __ns1__removeDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataSet(soap, &a->ns1__removeDataSet_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSet *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeDataSet(soap, "ns1:removeDataSet", -1, &a->ns1__removeDataSet_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSet * SOAP_FMAC4 soap_in___ns1__removeDataSet(struct soap *soap, const char *tag, struct __ns1__removeDataSet *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataSet_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSet, sizeof(struct __ns1__removeDataSet), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataSet(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataSet_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataSet(soap, "ns1:removeDataSet", &a->ns1__removeDataSet_, "ns1:removeDataSet"))
-				{	soap_flag_ns1__removeDataSet_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSet(struct soap *soap, const struct __ns1__removeDataSet *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataSet(soap, tag?tag:"-ns1:removeDataSet", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSet * SOAP_FMAC4 soap_get___ns1__removeDataSet(struct soap *soap, struct __ns1__removeDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataSet * SOAP_FMAC2 soap_instantiate___ns1__removeDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSet);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataSet);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataSet);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSet %p -> %p\n", q, p));
-	*(struct __ns1__removeDataSet*)p = *(struct __ns1__removeDataSet*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSetResponse(struct soap *soap, struct __ns1__removeDataSetResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataSetResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSetResponse(struct soap *soap, const struct __ns1__removeDataSetResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataSetResponse(soap, &a->ns1__removeDataSetResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSetResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSetResponse *a, const char *type)
-{
-	if (a->ns1__removeDataSetResponse_)
-		soap_element_result(soap, "ns1:removeDataSetResponse");
-	if (soap_out_PointerTons1__removeDataSetResponse(soap, "ns1:removeDataSetResponse", -1, &a->ns1__removeDataSetResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSetResponse * SOAP_FMAC4 soap_in___ns1__removeDataSetResponse(struct soap *soap, const char *tag, struct __ns1__removeDataSetResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataSetResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataSetResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSetResponse, sizeof(struct __ns1__removeDataSetResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataSetResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataSetResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataSetResponse(soap, "ns1:removeDataSetResponse", &a->ns1__removeDataSetResponse_, "ns1:removeDataSetResponse"))
-				{	soap_flag_ns1__removeDataSetResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeDataSetResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSetResponse(struct soap *soap, const struct __ns1__removeDataSetResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataSetResponse(soap, tag?tag:"-ns1:removeDataSetResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataSetResponse * SOAP_FMAC4 soap_get___ns1__removeDataSetResponse(struct soap *soap, struct __ns1__removeDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataSetResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataSetResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataSetResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSetResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeDataSetResponse*)p = *(struct __ns1__removeDataSetResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataSetParameters(struct soap *soap, struct __ns1__addDataSetParameters *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addDataSetParameters_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataSetParameters(struct soap *soap, const struct __ns1__addDataSetParameters *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addDataSetParameters(soap, &a->ns1__addDataSetParameters_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataSetParameters(struct soap *soap, const char *tag, int id, const struct __ns1__addDataSetParameters *a, const char *type)
-{
-	if (soap_out_PointerTons1__addDataSetParameters(soap, "ns1:addDataSetParameters", -1, &a->ns1__addDataSetParameters_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataSetParameters * SOAP_FMAC4 soap_in___ns1__addDataSetParameters(struct soap *soap, const char *tag, struct __ns1__addDataSetParameters *a, const char *type)
-{
-	size_t soap_flag_ns1__addDataSetParameters_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addDataSetParameters *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataSetParameters, sizeof(struct __ns1__addDataSetParameters), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addDataSetParameters(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addDataSetParameters_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addDataSetParameters(soap, "ns1:addDataSetParameters", &a->ns1__addDataSetParameters_, "ns1:addDataSetParameters"))
-				{	soap_flag_ns1__addDataSetParameters_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataSetParameters(struct soap *soap, const struct __ns1__addDataSetParameters *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addDataSetParameters(soap, tag?tag:"-ns1:addDataSetParameters", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataSetParameters * SOAP_FMAC4 soap_get___ns1__addDataSetParameters(struct soap *soap, struct __ns1__addDataSetParameters *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addDataSetParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addDataSetParameters * SOAP_FMAC2 soap_instantiate___ns1__addDataSetParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataSetParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataSetParameters, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameters);
-		if (size)
-			*size = sizeof(struct __ns1__addDataSetParameters);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameters[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addDataSetParameters);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addDataSetParameters*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataSetParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataSetParameters %p -> %p\n", q, p));
-	*(struct __ns1__addDataSetParameters*)p = *(struct __ns1__addDataSetParameters*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataSetParameter(struct soap *soap, struct __ns1__addDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addDataSetParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataSetParameter(struct soap *soap, const struct __ns1__addDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addDataSetParameter(soap, &a->ns1__addDataSetParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__addDataSetParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__addDataSetParameter(soap, "ns1:addDataSetParameter", -1, &a->ns1__addDataSetParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataSetParameter * SOAP_FMAC4 soap_in___ns1__addDataSetParameter(struct soap *soap, const char *tag, struct __ns1__addDataSetParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__addDataSetParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataSetParameter, sizeof(struct __ns1__addDataSetParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addDataSetParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addDataSetParameter(soap, "ns1:addDataSetParameter", &a->ns1__addDataSetParameter_, "ns1:addDataSetParameter"))
-				{	soap_flag_ns1__addDataSetParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataSetParameter(struct soap *soap, const struct __ns1__addDataSetParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addDataSetParameter(soap, tag?tag:"-ns1:addDataSetParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataSetParameter * SOAP_FMAC4 soap_get___ns1__addDataSetParameter(struct soap *soap, struct __ns1__addDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__addDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameter);
-		if (size)
-			*size = sizeof(struct __ns1__addDataSetParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addDataSetParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataSetParameter %p -> %p\n", q, p));
-	*(struct __ns1__addDataSetParameter*)p = *(struct __ns1__addDataSetParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__setDataSetSample(struct soap *soap, struct __ns1__setDataSetSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__setDataSetSample_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__setDataSetSample(struct soap *soap, const struct __ns1__setDataSetSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__setDataSetSample(soap, &a->ns1__setDataSetSample_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__setDataSetSample(struct soap *soap, const char *tag, int id, const struct __ns1__setDataSetSample *a, const char *type)
-{
-	if (soap_out_PointerTons1__setDataSetSample(soap, "ns1:setDataSetSample", -1, &a->ns1__setDataSetSample_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__setDataSetSample * SOAP_FMAC4 soap_in___ns1__setDataSetSample(struct soap *soap, const char *tag, struct __ns1__setDataSetSample *a, const char *type)
-{
-	size_t soap_flag_ns1__setDataSetSample_ = 1;
-	short soap_flag;
-	a = (struct __ns1__setDataSetSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__setDataSetSample, sizeof(struct __ns1__setDataSetSample), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__setDataSetSample(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__setDataSetSample_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__setDataSetSample(soap, "ns1:setDataSetSample", &a->ns1__setDataSetSample_, "ns1:setDataSetSample"))
-				{	soap_flag_ns1__setDataSetSample_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__setDataSetSample(struct soap *soap, const struct __ns1__setDataSetSample *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__setDataSetSample(soap, tag?tag:"-ns1:setDataSetSample", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__setDataSetSample * SOAP_FMAC4 soap_get___ns1__setDataSetSample(struct soap *soap, struct __ns1__setDataSetSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__setDataSetSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__setDataSetSample * SOAP_FMAC2 soap_instantiate___ns1__setDataSetSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__setDataSetSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__setDataSetSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSample);
-		if (size)
-			*size = sizeof(struct __ns1__setDataSetSample);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__setDataSetSample);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__setDataSetSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__setDataSetSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__setDataSetSample %p -> %p\n", q, p));
-	*(struct __ns1__setDataSetSample*)p = *(struct __ns1__setDataSetSample*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__setDataSetSampleResponse(struct soap *soap, struct __ns1__setDataSetSampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__setDataSetSampleResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__setDataSetSampleResponse(struct soap *soap, const struct __ns1__setDataSetSampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__setDataSetSampleResponse(soap, &a->ns1__setDataSetSampleResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__setDataSetSampleResponse *a, const char *type)
-{
-	if (a->ns1__setDataSetSampleResponse_)
-		soap_element_result(soap, "ns1:setDataSetSampleResponse");
-	if (soap_out_PointerTons1__setDataSetSampleResponse(soap, "ns1:setDataSetSampleResponse", -1, &a->ns1__setDataSetSampleResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_in___ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, struct __ns1__setDataSetSampleResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__setDataSetSampleResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__setDataSetSampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__setDataSetSampleResponse, sizeof(struct __ns1__setDataSetSampleResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__setDataSetSampleResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__setDataSetSampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__setDataSetSampleResponse(soap, "ns1:setDataSetSampleResponse", &a->ns1__setDataSetSampleResponse_, "ns1:setDataSetSampleResponse"))
-				{	soap_flag_ns1__setDataSetSampleResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:setDataSetSampleResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__setDataSetSampleResponse(struct soap *soap, const struct __ns1__setDataSetSampleResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__setDataSetSampleResponse(soap, tag?tag:"-ns1:setDataSetSampleResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_get___ns1__setDataSetSampleResponse(struct soap *soap, struct __ns1__setDataSetSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__setDataSetSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__setDataSetSampleResponse * SOAP_FMAC2 soap_instantiate___ns1__setDataSetSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__setDataSetSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__setDataSetSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSampleResponse);
-		if (size)
-			*size = sizeof(struct __ns1__setDataSetSampleResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__setDataSetSampleResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__setDataSetSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__setDataSetSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__setDataSetSampleResponse %p -> %p\n", q, p));
-	*(struct __ns1__setDataSetSampleResponse*)p = *(struct __ns1__setDataSetSampleResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSetParameter(struct soap *soap, struct __ns1__modifyDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataSetParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSetParameter(struct soap *soap, const struct __ns1__modifyDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataSetParameter(soap, &a->ns1__modifyDataSetParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSetParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyDataSetParameter(soap, "ns1:modifyDataSetParameter", -1, &a->ns1__modifyDataSetParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSetParameter * SOAP_FMAC4 soap_in___ns1__modifyDataSetParameter(struct soap *soap, const char *tag, struct __ns1__modifyDataSetParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataSetParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSetParameter, sizeof(struct __ns1__modifyDataSetParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataSetParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataSetParameter(soap, "ns1:modifyDataSetParameter", &a->ns1__modifyDataSetParameter_, "ns1:modifyDataSetParameter"))
-				{	soap_flag_ns1__modifyDataSetParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSetParameter(struct soap *soap, const struct __ns1__modifyDataSetParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataSetParameter(soap, tag?tag:"-ns1:modifyDataSetParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSetParameter * SOAP_FMAC4 soap_get___ns1__modifyDataSetParameter(struct soap *soap, struct __ns1__modifyDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameter);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataSetParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataSetParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSetParameter %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataSetParameter*)p = *(struct __ns1__modifyDataSetParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSetParameterResponse(struct soap *soap, struct __ns1__modifyDataSetParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataSetParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSetParameterResponse(struct soap *soap, const struct __ns1__modifyDataSetParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataSetParameterResponse(soap, &a->ns1__modifyDataSetParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSetParameterResponse *a, const char *type)
-{
-	if (a->ns1__modifyDataSetParameterResponse_)
-		soap_element_result(soap, "ns1:modifyDataSetParameterResponse");
-	if (soap_out_PointerTons1__modifyDataSetParameterResponse(soap, "ns1:modifyDataSetParameterResponse", -1, &a->ns1__modifyDataSetParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_in___ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataSetParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataSetParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataSetParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSetParameterResponse, sizeof(struct __ns1__modifyDataSetParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataSetParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataSetParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataSetParameterResponse(soap, "ns1:modifyDataSetParameterResponse", &a->ns1__modifyDataSetParameterResponse_, "ns1:modifyDataSetParameterResponse"))
-				{	soap_flag_ns1__modifyDataSetParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyDataSetParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSetParameterResponse(struct soap *soap, const struct __ns1__modifyDataSetParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataSetParameterResponse(soap, tag?tag:"-ns1:modifyDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_get___ns1__modifyDataSetParameterResponse(struct soap *soap, struct __ns1__modifyDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataSetParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataSetParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataSetParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSetParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataSetParameterResponse*)p = *(struct __ns1__modifyDataSetParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSet(struct soap *soap, struct __ns1__modifyDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataSet_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSet(struct soap *soap, const struct __ns1__modifyDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataSet(soap, &a->ns1__modifyDataSet_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSet *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyDataSet(soap, "ns1:modifyDataSet", -1, &a->ns1__modifyDataSet_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSet * SOAP_FMAC4 soap_in___ns1__modifyDataSet(struct soap *soap, const char *tag, struct __ns1__modifyDataSet *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataSet_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSet, sizeof(struct __ns1__modifyDataSet), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataSet(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataSet_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataSet(soap, "ns1:modifyDataSet", &a->ns1__modifyDataSet_, "ns1:modifyDataSet"))
-				{	soap_flag_ns1__modifyDataSet_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSet(struct soap *soap, const struct __ns1__modifyDataSet *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataSet(soap, tag?tag:"-ns1:modifyDataSet", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSet * SOAP_FMAC4 soap_get___ns1__modifyDataSet(struct soap *soap, struct __ns1__modifyDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataSet * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSet);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataSet);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataSet);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSet %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataSet*)p = *(struct __ns1__modifyDataSet*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSetResponse(struct soap *soap, struct __ns1__modifyDataSetResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataSetResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSetResponse(struct soap *soap, const struct __ns1__modifyDataSetResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataSetResponse(soap, &a->ns1__modifyDataSetResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSetResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSetResponse *a, const char *type)
-{
-	if (a->ns1__modifyDataSetResponse_)
-		soap_element_result(soap, "ns1:modifyDataSetResponse");
-	if (soap_out_PointerTons1__modifyDataSetResponse(soap, "ns1:modifyDataSetResponse", -1, &a->ns1__modifyDataSetResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSetResponse * SOAP_FMAC4 soap_in___ns1__modifyDataSetResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataSetResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataSetResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataSetResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSetResponse, sizeof(struct __ns1__modifyDataSetResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataSetResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataSetResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataSetResponse(soap, "ns1:modifyDataSetResponse", &a->ns1__modifyDataSetResponse_, "ns1:modifyDataSetResponse"))
-				{	soap_flag_ns1__modifyDataSetResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyDataSetResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSetResponse(struct soap *soap, const struct __ns1__modifyDataSetResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataSetResponse(soap, tag?tag:"-ns1:modifyDataSetResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataSetResponse * SOAP_FMAC4 soap_get___ns1__modifyDataSetResponse(struct soap *soap, struct __ns1__modifyDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataSetResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataSetResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataSetResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSetResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataSetResponse*)p = *(struct __ns1__modifyDataSetResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSetParameter(struct soap *soap, struct __ns1__deleteDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataSetParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSetParameter(struct soap *soap, const struct __ns1__deleteDataSetParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataSetParameter(soap, &a->ns1__deleteDataSetParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSetParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteDataSetParameter(soap, "ns1:deleteDataSetParameter", -1, &a->ns1__deleteDataSetParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSetParameter * SOAP_FMAC4 soap_in___ns1__deleteDataSetParameter(struct soap *soap, const char *tag, struct __ns1__deleteDataSetParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataSetParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSetParameter, sizeof(struct __ns1__deleteDataSetParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataSetParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataSetParameter(soap, "ns1:deleteDataSetParameter", &a->ns1__deleteDataSetParameter_, "ns1:deleteDataSetParameter"))
-				{	soap_flag_ns1__deleteDataSetParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSetParameter(struct soap *soap, const struct __ns1__deleteDataSetParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataSetParameter(soap, tag?tag:"-ns1:deleteDataSetParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSetParameter * SOAP_FMAC4 soap_get___ns1__deleteDataSetParameter(struct soap *soap, struct __ns1__deleteDataSetParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameter);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataSetParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataSetParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataSetParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSetParameter %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataSetParameter*)p = *(struct __ns1__deleteDataSetParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSetParameterResponse(struct soap *soap, struct __ns1__deleteDataSetParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataSetParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSetParameterResponse(struct soap *soap, const struct __ns1__deleteDataSetParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataSetParameterResponse(soap, &a->ns1__deleteDataSetParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSetParameterResponse *a, const char *type)
-{
-	if (a->ns1__deleteDataSetParameterResponse_)
-		soap_element_result(soap, "ns1:deleteDataSetParameterResponse");
-	if (soap_out_PointerTons1__deleteDataSetParameterResponse(soap, "ns1:deleteDataSetParameterResponse", -1, &a->ns1__deleteDataSetParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_in___ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataSetParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataSetParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataSetParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSetParameterResponse, sizeof(struct __ns1__deleteDataSetParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataSetParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataSetParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataSetParameterResponse(soap, "ns1:deleteDataSetParameterResponse", &a->ns1__deleteDataSetParameterResponse_, "ns1:deleteDataSetParameterResponse"))
-				{	soap_flag_ns1__deleteDataSetParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteDataSetParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSetParameterResponse(struct soap *soap, const struct __ns1__deleteDataSetParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataSetParameterResponse(soap, tag?tag:"-ns1:deleteDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_get___ns1__deleteDataSetParameterResponse(struct soap *soap, struct __ns1__deleteDataSetParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataSetParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSetParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataSetParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataSetParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataSetParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSetParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataSetParameterResponse*)p = *(struct __ns1__deleteDataSetParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSet(struct soap *soap, struct __ns1__deleteDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataSet_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSet(struct soap *soap, const struct __ns1__deleteDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataSet(soap, &a->ns1__deleteDataSet_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSet *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteDataSet(soap, "ns1:deleteDataSet", -1, &a->ns1__deleteDataSet_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSet * SOAP_FMAC4 soap_in___ns1__deleteDataSet(struct soap *soap, const char *tag, struct __ns1__deleteDataSet *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataSet_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSet, sizeof(struct __ns1__deleteDataSet), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataSet(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataSet_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataSet(soap, "ns1:deleteDataSet", &a->ns1__deleteDataSet_, "ns1:deleteDataSet"))
-				{	soap_flag_ns1__deleteDataSet_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSet(struct soap *soap, const struct __ns1__deleteDataSet *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataSet(soap, tag?tag:"-ns1:deleteDataSet", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSet * SOAP_FMAC4 soap_get___ns1__deleteDataSet(struct soap *soap, struct __ns1__deleteDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataSet * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSet);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataSet);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataSet);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSet %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataSet*)p = *(struct __ns1__deleteDataSet*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSetResponse(struct soap *soap, struct __ns1__deleteDataSetResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataSetResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSetResponse(struct soap *soap, const struct __ns1__deleteDataSetResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataSetResponse(soap, &a->ns1__deleteDataSetResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSetResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSetResponse *a, const char *type)
-{
-	if (a->ns1__deleteDataSetResponse_)
-		soap_element_result(soap, "ns1:deleteDataSetResponse");
-	if (soap_out_PointerTons1__deleteDataSetResponse(soap, "ns1:deleteDataSetResponse", -1, &a->ns1__deleteDataSetResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSetResponse * SOAP_FMAC4 soap_in___ns1__deleteDataSetResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataSetResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataSetResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataSetResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSetResponse, sizeof(struct __ns1__deleteDataSetResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataSetResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataSetResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataSetResponse(soap, "ns1:deleteDataSetResponse", &a->ns1__deleteDataSetResponse_, "ns1:deleteDataSetResponse"))
-				{	soap_flag_ns1__deleteDataSetResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteDataSetResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSetResponse(struct soap *soap, const struct __ns1__deleteDataSetResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataSetResponse(soap, tag?tag:"-ns1:deleteDataSetResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataSetResponse * SOAP_FMAC4 soap_get___ns1__deleteDataSetResponse(struct soap *soap, struct __ns1__deleteDataSetResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataSetResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSetResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataSetResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataSetResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataSetResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSetResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataSetResponse*)p = *(struct __ns1__deleteDataSetResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataSets(struct soap *soap, struct __ns1__createDataSets *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__createDataSets_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataSets(struct soap *soap, const struct __ns1__createDataSets *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__createDataSets(soap, &a->ns1__createDataSets_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataSets(struct soap *soap, const char *tag, int id, const struct __ns1__createDataSets *a, const char *type)
-{
-	if (soap_out_PointerTons1__createDataSets(soap, "ns1:createDataSets", -1, &a->ns1__createDataSets_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataSets * SOAP_FMAC4 soap_in___ns1__createDataSets(struct soap *soap, const char *tag, struct __ns1__createDataSets *a, const char *type)
-{
-	size_t soap_flag_ns1__createDataSets_ = 1;
-	short soap_flag;
-	a = (struct __ns1__createDataSets *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataSets, sizeof(struct __ns1__createDataSets), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__createDataSets(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__createDataSets_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__createDataSets(soap, "ns1:createDataSets", &a->ns1__createDataSets_, "ns1:createDataSets"))
-				{	soap_flag_ns1__createDataSets_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataSets(struct soap *soap, const struct __ns1__createDataSets *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__createDataSets(soap, tag?tag:"-ns1:createDataSets", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataSets * SOAP_FMAC4 soap_get___ns1__createDataSets(struct soap *soap, struct __ns1__createDataSets *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__createDataSets(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__createDataSets * SOAP_FMAC2 soap_instantiate___ns1__createDataSets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataSets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataSets, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSets);
-		if (size)
-			*size = sizeof(struct __ns1__createDataSets);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSets[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__createDataSets);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__createDataSets*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataSets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataSets %p -> %p\n", q, p));
-	*(struct __ns1__createDataSets*)p = *(struct __ns1__createDataSets*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataSet(struct soap *soap, struct __ns1__createDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__createDataSet_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataSet(struct soap *soap, const struct __ns1__createDataSet *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__createDataSet(soap, &a->ns1__createDataSet_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__createDataSet *a, const char *type)
-{
-	if (soap_out_PointerTons1__createDataSet(soap, "ns1:createDataSet", -1, &a->ns1__createDataSet_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataSet * SOAP_FMAC4 soap_in___ns1__createDataSet(struct soap *soap, const char *tag, struct __ns1__createDataSet *a, const char *type)
-{
-	size_t soap_flag_ns1__createDataSet_ = 1;
-	short soap_flag;
-	a = (struct __ns1__createDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataSet, sizeof(struct __ns1__createDataSet), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__createDataSet(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__createDataSet_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__createDataSet(soap, "ns1:createDataSet", &a->ns1__createDataSet_, "ns1:createDataSet"))
-				{	soap_flag_ns1__createDataSet_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataSet(struct soap *soap, const struct __ns1__createDataSet *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__createDataSet(soap, tag?tag:"-ns1:createDataSet", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataSet * SOAP_FMAC4 soap_get___ns1__createDataSet(struct soap *soap, struct __ns1__createDataSet *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__createDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__createDataSet * SOAP_FMAC2 soap_instantiate___ns1__createDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataSet, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSet);
-		if (size)
-			*size = sizeof(struct __ns1__createDataSet);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSet[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__createDataSet);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__createDataSet*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataSet %p -> %p\n", q, p));
-	*(struct __ns1__createDataSet*)p = *(struct __ns1__createDataSet*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatasets(struct soap *soap, struct __ns1__getDatasets *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getDatasets_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatasets(struct soap *soap, const struct __ns1__getDatasets *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getDatasets(soap, &a->ns1__getDatasets_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatasets(struct soap *soap, const char *tag, int id, const struct __ns1__getDatasets *a, const char *type)
-{
-	if (soap_out_PointerTons1__getDatasets(soap, "ns1:getDatasets", -1, &a->ns1__getDatasets_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatasets * SOAP_FMAC4 soap_in___ns1__getDatasets(struct soap *soap, const char *tag, struct __ns1__getDatasets *a, const char *type)
-{
-	size_t soap_flag_ns1__getDatasets_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getDatasets *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatasets, sizeof(struct __ns1__getDatasets), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getDatasets(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getDatasets_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getDatasets(soap, "ns1:getDatasets", &a->ns1__getDatasets_, "ns1:getDatasets"))
-				{	soap_flag_ns1__getDatasets_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatasets(struct soap *soap, const struct __ns1__getDatasets *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getDatasets(soap, tag?tag:"-ns1:getDatasets", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatasets * SOAP_FMAC4 soap_get___ns1__getDatasets(struct soap *soap, struct __ns1__getDatasets *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getDatasets(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getDatasets * SOAP_FMAC2 soap_instantiate___ns1__getDatasets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatasets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatasets, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasets);
-		if (size)
-			*size = sizeof(struct __ns1__getDatasets);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasets[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getDatasets);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getDatasets*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatasets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatasets %p -> %p\n", q, p));
-	*(struct __ns1__getDatasets*)p = *(struct __ns1__getDatasets*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listDatafileFormats(struct soap *soap, struct __ns1__listDatafileFormats *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listDatafileFormats_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listDatafileFormats(struct soap *soap, const struct __ns1__listDatafileFormats *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listDatafileFormats(soap, &a->ns1__listDatafileFormats_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listDatafileFormats(struct soap *soap, const char *tag, int id, const struct __ns1__listDatafileFormats *a, const char *type)
-{
-	if (soap_out_PointerTons1__listDatafileFormats(soap, "ns1:listDatafileFormats", -1, &a->ns1__listDatafileFormats_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listDatafileFormats * SOAP_FMAC4 soap_in___ns1__listDatafileFormats(struct soap *soap, const char *tag, struct __ns1__listDatafileFormats *a, const char *type)
-{
-	size_t soap_flag_ns1__listDatafileFormats_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listDatafileFormats *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listDatafileFormats, sizeof(struct __ns1__listDatafileFormats), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listDatafileFormats(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listDatafileFormats_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listDatafileFormats(soap, "ns1:listDatafileFormats", &a->ns1__listDatafileFormats_, "ns1:listDatafileFormats"))
-				{	soap_flag_ns1__listDatafileFormats_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listDatafileFormats(struct soap *soap, const struct __ns1__listDatafileFormats *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listDatafileFormats(soap, tag?tag:"-ns1:listDatafileFormats", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listDatafileFormats * SOAP_FMAC4 soap_get___ns1__listDatafileFormats(struct soap *soap, struct __ns1__listDatafileFormats *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listDatafileFormats(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listDatafileFormats * SOAP_FMAC2 soap_instantiate___ns1__listDatafileFormats(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listDatafileFormats(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listDatafileFormats, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatafileFormats);
-		if (size)
-			*size = sizeof(struct __ns1__listDatafileFormats);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatafileFormats[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listDatafileFormats);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listDatafileFormats*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listDatafileFormats(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listDatafileFormats %p -> %p\n", q, p));
-	*(struct __ns1__listDatafileFormats*)p = *(struct __ns1__listDatafileFormats*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByRunNumberPagination(struct soap *soap, struct __ns1__searchByRunNumberPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByRunNumberPagination_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByRunNumberPagination(struct soap *soap, const struct __ns1__searchByRunNumberPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByRunNumberPagination(soap, &a->ns1__searchByRunNumberPagination_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByRunNumberPagination *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByRunNumberPagination(soap, "ns1:searchByRunNumberPagination", -1, &a->ns1__searchByRunNumberPagination_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_in___ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, struct __ns1__searchByRunNumberPagination *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByRunNumberPagination_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByRunNumberPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByRunNumberPagination, sizeof(struct __ns1__searchByRunNumberPagination), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByRunNumberPagination(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByRunNumberPagination_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByRunNumberPagination(soap, "ns1:searchByRunNumberPagination", &a->ns1__searchByRunNumberPagination_, "ns1:searchByRunNumberPagination"))
-				{	soap_flag_ns1__searchByRunNumberPagination_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByRunNumberPagination(struct soap *soap, const struct __ns1__searchByRunNumberPagination *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByRunNumberPagination(soap, tag?tag:"-ns1:searchByRunNumberPagination", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_get___ns1__searchByRunNumberPagination(struct soap *soap, struct __ns1__searchByRunNumberPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByRunNumberPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByRunNumberPagination * SOAP_FMAC2 soap_instantiate___ns1__searchByRunNumberPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByRunNumberPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByRunNumberPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumberPagination);
-		if (size)
-			*size = sizeof(struct __ns1__searchByRunNumberPagination);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumberPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByRunNumberPagination);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByRunNumberPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByRunNumberPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByRunNumberPagination %p -> %p\n", q, p));
-	*(struct __ns1__searchByRunNumberPagination*)p = *(struct __ns1__searchByRunNumberPagination*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByRunNumber(struct soap *soap, struct __ns1__searchByRunNumber *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByRunNumber_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByRunNumber(struct soap *soap, const struct __ns1__searchByRunNumber *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByRunNumber(soap, &a->ns1__searchByRunNumber_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByRunNumber(struct soap *soap, const char *tag, int id, const struct __ns1__searchByRunNumber *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByRunNumber(soap, "ns1:searchByRunNumber", -1, &a->ns1__searchByRunNumber_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByRunNumber * SOAP_FMAC4 soap_in___ns1__searchByRunNumber(struct soap *soap, const char *tag, struct __ns1__searchByRunNumber *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByRunNumber_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByRunNumber *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByRunNumber, sizeof(struct __ns1__searchByRunNumber), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByRunNumber(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByRunNumber_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByRunNumber(soap, "ns1:searchByRunNumber", &a->ns1__searchByRunNumber_, "ns1:searchByRunNumber"))
-				{	soap_flag_ns1__searchByRunNumber_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByRunNumber(struct soap *soap, const struct __ns1__searchByRunNumber *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByRunNumber(soap, tag?tag:"-ns1:searchByRunNumber", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByRunNumber * SOAP_FMAC4 soap_get___ns1__searchByRunNumber(struct soap *soap, struct __ns1__searchByRunNumber *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByRunNumber(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByRunNumber * SOAP_FMAC2 soap_instantiate___ns1__searchByRunNumber(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByRunNumber(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByRunNumber, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumber);
-		if (size)
-			*size = sizeof(struct __ns1__searchByRunNumber);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumber[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByRunNumber);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByRunNumber*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByRunNumber(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByRunNumber %p -> %p\n", q, p));
-	*(struct __ns1__searchByRunNumber*)p = *(struct __ns1__searchByRunNumber*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listDatasetStatus(struct soap *soap, struct __ns1__listDatasetStatus *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listDatasetStatus_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listDatasetStatus(struct soap *soap, const struct __ns1__listDatasetStatus *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listDatasetStatus(soap, &a->ns1__listDatasetStatus_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listDatasetStatus(struct soap *soap, const char *tag, int id, const struct __ns1__listDatasetStatus *a, const char *type)
-{
-	if (soap_out_PointerTons1__listDatasetStatus(soap, "ns1:listDatasetStatus", -1, &a->ns1__listDatasetStatus_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listDatasetStatus * SOAP_FMAC4 soap_in___ns1__listDatasetStatus(struct soap *soap, const char *tag, struct __ns1__listDatasetStatus *a, const char *type)
-{
-	size_t soap_flag_ns1__listDatasetStatus_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listDatasetStatus *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listDatasetStatus, sizeof(struct __ns1__listDatasetStatus), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listDatasetStatus(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listDatasetStatus_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listDatasetStatus(soap, "ns1:listDatasetStatus", &a->ns1__listDatasetStatus_, "ns1:listDatasetStatus"))
-				{	soap_flag_ns1__listDatasetStatus_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listDatasetStatus(struct soap *soap, const struct __ns1__listDatasetStatus *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listDatasetStatus(soap, tag?tag:"-ns1:listDatasetStatus", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listDatasetStatus * SOAP_FMAC4 soap_get___ns1__listDatasetStatus(struct soap *soap, struct __ns1__listDatasetStatus *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listDatasetStatus(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listDatasetStatus * SOAP_FMAC2 soap_instantiate___ns1__listDatasetStatus(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listDatasetStatus(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listDatasetStatus, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetStatus);
-		if (size)
-			*size = sizeof(struct __ns1__listDatasetStatus);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetStatus[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listDatasetStatus);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listDatasetStatus*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listDatasetStatus(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listDatasetStatus %p -> %p\n", q, p));
-	*(struct __ns1__listDatasetStatus*)p = *(struct __ns1__listDatasetStatus*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listDatasetTypes(struct soap *soap, struct __ns1__listDatasetTypes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listDatasetTypes_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listDatasetTypes(struct soap *soap, const struct __ns1__listDatasetTypes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listDatasetTypes(soap, &a->ns1__listDatasetTypes_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listDatasetTypes(struct soap *soap, const char *tag, int id, const struct __ns1__listDatasetTypes *a, const char *type)
-{
-	if (soap_out_PointerTons1__listDatasetTypes(soap, "ns1:listDatasetTypes", -1, &a->ns1__listDatasetTypes_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listDatasetTypes * SOAP_FMAC4 soap_in___ns1__listDatasetTypes(struct soap *soap, const char *tag, struct __ns1__listDatasetTypes *a, const char *type)
-{
-	size_t soap_flag_ns1__listDatasetTypes_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listDatasetTypes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listDatasetTypes, sizeof(struct __ns1__listDatasetTypes), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listDatasetTypes(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listDatasetTypes_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listDatasetTypes(soap, "ns1:listDatasetTypes", &a->ns1__listDatasetTypes_, "ns1:listDatasetTypes"))
-				{	soap_flag_ns1__listDatasetTypes_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listDatasetTypes(struct soap *soap, const struct __ns1__listDatasetTypes *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listDatasetTypes(soap, tag?tag:"-ns1:listDatasetTypes", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listDatasetTypes * SOAP_FMAC4 soap_get___ns1__listDatasetTypes(struct soap *soap, struct __ns1__listDatasetTypes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listDatasetTypes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listDatasetTypes * SOAP_FMAC2 soap_instantiate___ns1__listDatasetTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listDatasetTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listDatasetTypes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetTypes);
-		if (size)
-			*size = sizeof(struct __ns1__listDatasetTypes);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetTypes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listDatasetTypes);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listDatasetTypes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listDatasetTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listDatasetTypes %p -> %p\n", q, p));
-	*(struct __ns1__listDatasetTypes*)p = *(struct __ns1__listDatasetTypes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatasetsBySample(struct soap *soap, struct __ns1__searchDatasetsBySample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchDatasetsBySample_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatasetsBySample(struct soap *soap, const struct __ns1__searchDatasetsBySample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchDatasetsBySample(soap, &a->ns1__searchDatasetsBySample_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatasetsBySample(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatasetsBySample *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchDatasetsBySample(soap, "ns1:searchDatasetsBySample", -1, &a->ns1__searchDatasetsBySample_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatasetsBySample * SOAP_FMAC4 soap_in___ns1__searchDatasetsBySample(struct soap *soap, const char *tag, struct __ns1__searchDatasetsBySample *a, const char *type)
-{
-	size_t soap_flag_ns1__searchDatasetsBySample_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchDatasetsBySample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatasetsBySample, sizeof(struct __ns1__searchDatasetsBySample), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchDatasetsBySample(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchDatasetsBySample_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchDatasetsBySample(soap, "ns1:searchDatasetsBySample", &a->ns1__searchDatasetsBySample_, "ns1:searchDatasetsBySample"))
-				{	soap_flag_ns1__searchDatasetsBySample_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatasetsBySample(struct soap *soap, const struct __ns1__searchDatasetsBySample *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchDatasetsBySample(soap, tag?tag:"-ns1:searchDatasetsBySample", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchDatasetsBySample * SOAP_FMAC4 soap_get___ns1__searchDatasetsBySample(struct soap *soap, struct __ns1__searchDatasetsBySample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchDatasetsBySample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchDatasetsBySample * SOAP_FMAC2 soap_instantiate___ns1__searchDatasetsBySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatasetsBySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatasetsBySample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsBySample);
-		if (size)
-			*size = sizeof(struct __ns1__searchDatasetsBySample);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsBySample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchDatasetsBySample);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchDatasetsBySample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatasetsBySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatasetsBySample %p -> %p\n", q, p));
-	*(struct __ns1__searchDatasetsBySample*)p = *(struct __ns1__searchDatasetsBySample*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchSamplesBySampleName(struct soap *soap, struct __ns1__searchSamplesBySampleName *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchSamplesBySampleName_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchSamplesBySampleName(struct soap *soap, const struct __ns1__searchSamplesBySampleName *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchSamplesBySampleName(soap, &a->ns1__searchSamplesBySampleName_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, int id, const struct __ns1__searchSamplesBySampleName *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchSamplesBySampleName(soap, "ns1:searchSamplesBySampleName", -1, &a->ns1__searchSamplesBySampleName_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_in___ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, struct __ns1__searchSamplesBySampleName *a, const char *type)
-{
-	size_t soap_flag_ns1__searchSamplesBySampleName_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchSamplesBySampleName *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchSamplesBySampleName, sizeof(struct __ns1__searchSamplesBySampleName), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchSamplesBySampleName(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchSamplesBySampleName_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchSamplesBySampleName(soap, "ns1:searchSamplesBySampleName", &a->ns1__searchSamplesBySampleName_, "ns1:searchSamplesBySampleName"))
-				{	soap_flag_ns1__searchSamplesBySampleName_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchSamplesBySampleName(struct soap *soap, const struct __ns1__searchSamplesBySampleName *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchSamplesBySampleName(soap, tag?tag:"-ns1:searchSamplesBySampleName", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_get___ns1__searchSamplesBySampleName(struct soap *soap, struct __ns1__searchSamplesBySampleName *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchSamplesBySampleName(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchSamplesBySampleName * SOAP_FMAC2 soap_instantiate___ns1__searchSamplesBySampleName(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchSamplesBySampleName(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchSamplesBySampleName, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchSamplesBySampleName);
-		if (size)
-			*size = sizeof(struct __ns1__searchSamplesBySampleName);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchSamplesBySampleName[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchSamplesBySampleName);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchSamplesBySampleName*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchSamplesBySampleName(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchSamplesBySampleName %p -> %p\n", q, p));
-	*(struct __ns1__searchSamplesBySampleName*)p = *(struct __ns1__searchSamplesBySampleName*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listInvestigationTypes(struct soap *soap, struct __ns1__listInvestigationTypes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listInvestigationTypes_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listInvestigationTypes(struct soap *soap, const struct __ns1__listInvestigationTypes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listInvestigationTypes(soap, &a->ns1__listInvestigationTypes_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listInvestigationTypes(struct soap *soap, const char *tag, int id, const struct __ns1__listInvestigationTypes *a, const char *type)
-{
-	if (soap_out_PointerTons1__listInvestigationTypes(soap, "ns1:listInvestigationTypes", -1, &a->ns1__listInvestigationTypes_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listInvestigationTypes * SOAP_FMAC4 soap_in___ns1__listInvestigationTypes(struct soap *soap, const char *tag, struct __ns1__listInvestigationTypes *a, const char *type)
-{
-	size_t soap_flag_ns1__listInvestigationTypes_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listInvestigationTypes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listInvestigationTypes, sizeof(struct __ns1__listInvestigationTypes), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listInvestigationTypes(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listInvestigationTypes_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listInvestigationTypes(soap, "ns1:listInvestigationTypes", &a->ns1__listInvestigationTypes_, "ns1:listInvestigationTypes"))
-				{	soap_flag_ns1__listInvestigationTypes_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listInvestigationTypes(struct soap *soap, const struct __ns1__listInvestigationTypes *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listInvestigationTypes(soap, tag?tag:"-ns1:listInvestigationTypes", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listInvestigationTypes * SOAP_FMAC4 soap_get___ns1__listInvestigationTypes(struct soap *soap, struct __ns1__listInvestigationTypes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listInvestigationTypes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listInvestigationTypes * SOAP_FMAC2 soap_instantiate___ns1__listInvestigationTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listInvestigationTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listInvestigationTypes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInvestigationTypes);
-		if (size)
-			*size = sizeof(struct __ns1__listInvestigationTypes);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInvestigationTypes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listInvestigationTypes);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listInvestigationTypes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listInvestigationTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listInvestigationTypes %p -> %p\n", q, p));
-	*(struct __ns1__listInvestigationTypes*)p = *(struct __ns1__listInvestigationTypes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listFacilityCycles(struct soap *soap, struct __ns1__listFacilityCycles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listFacilityCycles_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listFacilityCycles(struct soap *soap, const struct __ns1__listFacilityCycles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listFacilityCycles(soap, &a->ns1__listFacilityCycles_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listFacilityCycles(struct soap *soap, const char *tag, int id, const struct __ns1__listFacilityCycles *a, const char *type)
-{
-	if (soap_out_PointerTons1__listFacilityCycles(soap, "ns1:listFacilityCycles", -1, &a->ns1__listFacilityCycles_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listFacilityCycles * SOAP_FMAC4 soap_in___ns1__listFacilityCycles(struct soap *soap, const char *tag, struct __ns1__listFacilityCycles *a, const char *type)
-{
-	size_t soap_flag_ns1__listFacilityCycles_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listFacilityCycles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listFacilityCycles, sizeof(struct __ns1__listFacilityCycles), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listFacilityCycles(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listFacilityCycles_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listFacilityCycles(soap, "ns1:listFacilityCycles", &a->ns1__listFacilityCycles_, "ns1:listFacilityCycles"))
-				{	soap_flag_ns1__listFacilityCycles_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listFacilityCycles(struct soap *soap, const struct __ns1__listFacilityCycles *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listFacilityCycles(soap, tag?tag:"-ns1:listFacilityCycles", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listFacilityCycles * SOAP_FMAC4 soap_get___ns1__listFacilityCycles(struct soap *soap, struct __ns1__listFacilityCycles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listFacilityCycles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listFacilityCycles * SOAP_FMAC2 soap_instantiate___ns1__listFacilityCycles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listFacilityCycles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listFacilityCycles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listFacilityCycles);
-		if (size)
-			*size = sizeof(struct __ns1__listFacilityCycles);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listFacilityCycles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listFacilityCycles);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listFacilityCycles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listFacilityCycles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listFacilityCycles %p -> %p\n", q, p));
-	*(struct __ns1__listFacilityCycles*)p = *(struct __ns1__listFacilityCycles*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listParameters(struct soap *soap, struct __ns1__listParameters *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listParameters_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listParameters(struct soap *soap, const struct __ns1__listParameters *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listParameters(soap, &a->ns1__listParameters_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listParameters(struct soap *soap, const char *tag, int id, const struct __ns1__listParameters *a, const char *type)
-{
-	if (soap_out_PointerTons1__listParameters(soap, "ns1:listParameters", -1, &a->ns1__listParameters_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listParameters * SOAP_FMAC4 soap_in___ns1__listParameters(struct soap *soap, const char *tag, struct __ns1__listParameters *a, const char *type)
-{
-	size_t soap_flag_ns1__listParameters_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listParameters *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listParameters, sizeof(struct __ns1__listParameters), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listParameters(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listParameters_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listParameters(soap, "ns1:listParameters", &a->ns1__listParameters_, "ns1:listParameters"))
-				{	soap_flag_ns1__listParameters_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listParameters(struct soap *soap, const struct __ns1__listParameters *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listParameters(soap, tag?tag:"-ns1:listParameters", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listParameters * SOAP_FMAC4 soap_get___ns1__listParameters(struct soap *soap, struct __ns1__listParameters *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listParameters * SOAP_FMAC2 soap_instantiate___ns1__listParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listParameters, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listParameters);
-		if (size)
-			*size = sizeof(struct __ns1__listParameters);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listParameters[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listParameters);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listParameters*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listParameters %p -> %p\n", q, p));
-	*(struct __ns1__listParameters*)p = *(struct __ns1__listParameters*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listRoles(struct soap *soap, struct __ns1__listRoles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listRoles_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listRoles(struct soap *soap, const struct __ns1__listRoles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listRoles(soap, &a->ns1__listRoles_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listRoles(struct soap *soap, const char *tag, int id, const struct __ns1__listRoles *a, const char *type)
-{
-	if (soap_out_PointerTons1__listRoles(soap, "ns1:listRoles", -1, &a->ns1__listRoles_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listRoles * SOAP_FMAC4 soap_in___ns1__listRoles(struct soap *soap, const char *tag, struct __ns1__listRoles *a, const char *type)
-{
-	size_t soap_flag_ns1__listRoles_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listRoles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listRoles, sizeof(struct __ns1__listRoles), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listRoles(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listRoles_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listRoles(soap, "ns1:listRoles", &a->ns1__listRoles_, "ns1:listRoles"))
-				{	soap_flag_ns1__listRoles_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listRoles(struct soap *soap, const struct __ns1__listRoles *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listRoles(soap, tag?tag:"-ns1:listRoles", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listRoles * SOAP_FMAC4 soap_get___ns1__listRoles(struct soap *soap, struct __ns1__listRoles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listRoles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listRoles * SOAP_FMAC2 soap_instantiate___ns1__listRoles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listRoles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listRoles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listRoles);
-		if (size)
-			*size = sizeof(struct __ns1__listRoles);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listRoles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listRoles);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listRoles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listRoles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listRoles %p -> %p\n", q, p));
-	*(struct __ns1__listRoles*)p = *(struct __ns1__listRoles*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listInstruments(struct soap *soap, struct __ns1__listInstruments *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__listInstruments_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listInstruments(struct soap *soap, const struct __ns1__listInstruments *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__listInstruments(soap, &a->ns1__listInstruments_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listInstruments(struct soap *soap, const char *tag, int id, const struct __ns1__listInstruments *a, const char *type)
-{
-	if (soap_out_PointerTons1__listInstruments(soap, "ns1:listInstruments", -1, &a->ns1__listInstruments_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listInstruments * SOAP_FMAC4 soap_in___ns1__listInstruments(struct soap *soap, const char *tag, struct __ns1__listInstruments *a, const char *type)
-{
-	size_t soap_flag_ns1__listInstruments_ = 1;
-	short soap_flag;
-	a = (struct __ns1__listInstruments *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listInstruments, sizeof(struct __ns1__listInstruments), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__listInstruments(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__listInstruments_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__listInstruments(soap, "ns1:listInstruments", &a->ns1__listInstruments_, "ns1:listInstruments"))
-				{	soap_flag_ns1__listInstruments_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listInstruments(struct soap *soap, const struct __ns1__listInstruments *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__listInstruments(soap, tag?tag:"-ns1:listInstruments", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__listInstruments * SOAP_FMAC4 soap_get___ns1__listInstruments(struct soap *soap, struct __ns1__listInstruments *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__listInstruments(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__listInstruments * SOAP_FMAC2 soap_instantiate___ns1__listInstruments(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listInstruments(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listInstruments, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInstruments);
-		if (size)
-			*size = sizeof(struct __ns1__listInstruments);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInstruments[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__listInstruments);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__listInstruments*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listInstruments(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listInstruments %p -> %p\n", q, p));
-	*(struct __ns1__listInstruments*)p = *(struct __ns1__listInstruments*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserSurnamePagination(struct soap *soap, struct __ns1__searchByUserSurnamePagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByUserSurnamePagination_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserSurnamePagination(struct soap *soap, const struct __ns1__searchByUserSurnamePagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByUserSurnamePagination(soap, &a->ns1__searchByUserSurnamePagination_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserSurnamePagination *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByUserSurnamePagination(soap, "ns1:searchByUserSurnamePagination", -1, &a->ns1__searchByUserSurnamePagination_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_in___ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, struct __ns1__searchByUserSurnamePagination *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByUserSurnamePagination_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByUserSurnamePagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserSurnamePagination, sizeof(struct __ns1__searchByUserSurnamePagination), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByUserSurnamePagination(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByUserSurnamePagination_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByUserSurnamePagination(soap, "ns1:searchByUserSurnamePagination", &a->ns1__searchByUserSurnamePagination_, "ns1:searchByUserSurnamePagination"))
-				{	soap_flag_ns1__searchByUserSurnamePagination_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserSurnamePagination(struct soap *soap, const struct __ns1__searchByUserSurnamePagination *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByUserSurnamePagination(soap, tag?tag:"-ns1:searchByUserSurnamePagination", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_get___ns1__searchByUserSurnamePagination(struct soap *soap, struct __ns1__searchByUserSurnamePagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByUserSurnamePagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByUserSurnamePagination * SOAP_FMAC2 soap_instantiate___ns1__searchByUserSurnamePagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserSurnamePagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserSurnamePagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurnamePagination);
-		if (size)
-			*size = sizeof(struct __ns1__searchByUserSurnamePagination);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurnamePagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByUserSurnamePagination);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByUserSurnamePagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserSurnamePagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserSurnamePagination %p -> %p\n", q, p));
-	*(struct __ns1__searchByUserSurnamePagination*)p = *(struct __ns1__searchByUserSurnamePagination*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserSurname(struct soap *soap, struct __ns1__searchByUserSurname *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByUserSurname_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserSurname(struct soap *soap, const struct __ns1__searchByUserSurname *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByUserSurname(soap, &a->ns1__searchByUserSurname_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserSurname(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserSurname *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByUserSurname(soap, "ns1:searchByUserSurname", -1, &a->ns1__searchByUserSurname_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserSurname * SOAP_FMAC4 soap_in___ns1__searchByUserSurname(struct soap *soap, const char *tag, struct __ns1__searchByUserSurname *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByUserSurname_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByUserSurname *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserSurname, sizeof(struct __ns1__searchByUserSurname), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByUserSurname(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByUserSurname_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByUserSurname(soap, "ns1:searchByUserSurname", &a->ns1__searchByUserSurname_, "ns1:searchByUserSurname"))
-				{	soap_flag_ns1__searchByUserSurname_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserSurname(struct soap *soap, const struct __ns1__searchByUserSurname *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByUserSurname(soap, tag?tag:"-ns1:searchByUserSurname", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserSurname * SOAP_FMAC4 soap_get___ns1__searchByUserSurname(struct soap *soap, struct __ns1__searchByUserSurname *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByUserSurname(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByUserSurname * SOAP_FMAC2 soap_instantiate___ns1__searchByUserSurname(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserSurname(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserSurname, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurname);
-		if (size)
-			*size = sizeof(struct __ns1__searchByUserSurname);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurname[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByUserSurname);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByUserSurname*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserSurname(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserSurname %p -> %p\n", q, p));
-	*(struct __ns1__searchByUserSurname*)p = *(struct __ns1__searchByUserSurname*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserIDPagination(struct soap *soap, struct __ns1__searchByUserIDPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByUserIDPagination_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserIDPagination(struct soap *soap, const struct __ns1__searchByUserIDPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByUserIDPagination(soap, &a->ns1__searchByUserIDPagination_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserIDPagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserIDPagination *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByUserIDPagination(soap, "ns1:searchByUserIDPagination", -1, &a->ns1__searchByUserIDPagination_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserIDPagination * SOAP_FMAC4 soap_in___ns1__searchByUserIDPagination(struct soap *soap, const char *tag, struct __ns1__searchByUserIDPagination *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByUserIDPagination_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByUserIDPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserIDPagination, sizeof(struct __ns1__searchByUserIDPagination), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByUserIDPagination(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByUserIDPagination_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByUserIDPagination(soap, "ns1:searchByUserIDPagination", &a->ns1__searchByUserIDPagination_, "ns1:searchByUserIDPagination"))
-				{	soap_flag_ns1__searchByUserIDPagination_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserIDPagination(struct soap *soap, const struct __ns1__searchByUserIDPagination *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByUserIDPagination(soap, tag?tag:"-ns1:searchByUserIDPagination", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserIDPagination * SOAP_FMAC4 soap_get___ns1__searchByUserIDPagination(struct soap *soap, struct __ns1__searchByUserIDPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByUserIDPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByUserIDPagination * SOAP_FMAC2 soap_instantiate___ns1__searchByUserIDPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserIDPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserIDPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserIDPagination);
-		if (size)
-			*size = sizeof(struct __ns1__searchByUserIDPagination);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserIDPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByUserIDPagination);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByUserIDPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserIDPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserIDPagination %p -> %p\n", q, p));
-	*(struct __ns1__searchByUserIDPagination*)p = *(struct __ns1__searchByUserIDPagination*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserID(struct soap *soap, struct __ns1__searchByUserID *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByUserID_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserID(struct soap *soap, const struct __ns1__searchByUserID *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByUserID(soap, &a->ns1__searchByUserID_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserID(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserID *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByUserID(soap, "ns1:searchByUserID", -1, &a->ns1__searchByUserID_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserID * SOAP_FMAC4 soap_in___ns1__searchByUserID(struct soap *soap, const char *tag, struct __ns1__searchByUserID *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByUserID_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByUserID *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserID, sizeof(struct __ns1__searchByUserID), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByUserID(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByUserID_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByUserID(soap, "ns1:searchByUserID", &a->ns1__searchByUserID_, "ns1:searchByUserID"))
-				{	soap_flag_ns1__searchByUserID_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserID(struct soap *soap, const struct __ns1__searchByUserID *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByUserID(soap, tag?tag:"-ns1:searchByUserID", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByUserID * SOAP_FMAC4 soap_get___ns1__searchByUserID(struct soap *soap, struct __ns1__searchByUserID *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByUserID(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByUserID * SOAP_FMAC2 soap_instantiate___ns1__searchByUserID(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserID(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserID, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserID);
-		if (size)
-			*size = sizeof(struct __ns1__searchByUserID);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserID[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByUserID);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByUserID*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserID(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserID %p -> %p\n", q, p));
-	*(struct __ns1__searchByUserID*)p = *(struct __ns1__searchByUserID*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, struct __ns1__getMyInvestigationsIncludesPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getMyInvestigationsIncludesPagination_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const struct __ns1__getMyInvestigationsIncludesPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getMyInvestigationsIncludesPagination(soap, &a->ns1__getMyInvestigationsIncludesPagination_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, int id, const struct __ns1__getMyInvestigationsIncludesPagination *a, const char *type)
-{
-	if (soap_out_PointerTons1__getMyInvestigationsIncludesPagination(soap, "ns1:getMyInvestigationsIncludesPagination", -1, &a->ns1__getMyInvestigationsIncludesPagination_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_in___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, struct __ns1__getMyInvestigationsIncludesPagination *a, const char *type)
-{
-	size_t soap_flag_ns1__getMyInvestigationsIncludesPagination_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getMyInvestigationsIncludesPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination, sizeof(struct __ns1__getMyInvestigationsIncludesPagination), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getMyInvestigationsIncludesPagination(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getMyInvestigationsIncludesPagination_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getMyInvestigationsIncludesPagination(soap, "ns1:getMyInvestigationsIncludesPagination", &a->ns1__getMyInvestigationsIncludesPagination_, "ns1:getMyInvestigationsIncludesPagination"))
-				{	soap_flag_ns1__getMyInvestigationsIncludesPagination_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const struct __ns1__getMyInvestigationsIncludesPagination *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getMyInvestigationsIncludesPagination(soap, tag?tag:"-ns1:getMyInvestigationsIncludesPagination", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_get___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, struct __ns1__getMyInvestigationsIncludesPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getMyInvestigationsIncludesPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC2 soap_instantiate___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getMyInvestigationsIncludesPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludesPagination);
-		if (size)
-			*size = sizeof(struct __ns1__getMyInvestigationsIncludesPagination);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludesPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getMyInvestigationsIncludesPagination);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getMyInvestigationsIncludesPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getMyInvestigationsIncludesPagination %p -> %p\n", q, p));
-	*(struct __ns1__getMyInvestigationsIncludesPagination*)p = *(struct __ns1__getMyInvestigationsIncludesPagination*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMyInvestigationsIncludes(struct soap *soap, struct __ns1__getMyInvestigationsIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getMyInvestigationsIncludes_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMyInvestigationsIncludes(struct soap *soap, const struct __ns1__getMyInvestigationsIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getMyInvestigationsIncludes(soap, &a->ns1__getMyInvestigationsIncludes_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getMyInvestigationsIncludes *a, const char *type)
-{
-	if (soap_out_PointerTons1__getMyInvestigationsIncludes(soap, "ns1:getMyInvestigationsIncludes", -1, &a->ns1__getMyInvestigationsIncludes_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_in___ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, struct __ns1__getMyInvestigationsIncludes *a, const char *type)
-{
-	size_t soap_flag_ns1__getMyInvestigationsIncludes_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getMyInvestigationsIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMyInvestigationsIncludes, sizeof(struct __ns1__getMyInvestigationsIncludes), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getMyInvestigationsIncludes(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getMyInvestigationsIncludes_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getMyInvestigationsIncludes(soap, "ns1:getMyInvestigationsIncludes", &a->ns1__getMyInvestigationsIncludes_, "ns1:getMyInvestigationsIncludes"))
-				{	soap_flag_ns1__getMyInvestigationsIncludes_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMyInvestigationsIncludes(struct soap *soap, const struct __ns1__getMyInvestigationsIncludes *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getMyInvestigationsIncludes(soap, tag?tag:"-ns1:getMyInvestigationsIncludes", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_get___ns1__getMyInvestigationsIncludes(struct soap *soap, struct __ns1__getMyInvestigationsIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getMyInvestigationsIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getMyInvestigationsIncludes * SOAP_FMAC2 soap_instantiate___ns1__getMyInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getMyInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getMyInvestigationsIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludes);
-		if (size)
-			*size = sizeof(struct __ns1__getMyInvestigationsIncludes);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getMyInvestigationsIncludes);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getMyInvestigationsIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getMyInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getMyInvestigationsIncludes %p -> %p\n", q, p));
-	*(struct __ns1__getMyInvestigationsIncludes*)p = *(struct __ns1__getMyInvestigationsIncludes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMyInvestigations(struct soap *soap, struct __ns1__getMyInvestigations *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getMyInvestigations_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMyInvestigations(struct soap *soap, const struct __ns1__getMyInvestigations *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getMyInvestigations(soap, &a->ns1__getMyInvestigations_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMyInvestigations(struct soap *soap, const char *tag, int id, const struct __ns1__getMyInvestigations *a, const char *type)
-{
-	if (soap_out_PointerTons1__getMyInvestigations(soap, "ns1:getMyInvestigations", -1, &a->ns1__getMyInvestigations_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getMyInvestigations * SOAP_FMAC4 soap_in___ns1__getMyInvestigations(struct soap *soap, const char *tag, struct __ns1__getMyInvestigations *a, const char *type)
-{
-	size_t soap_flag_ns1__getMyInvestigations_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getMyInvestigations *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMyInvestigations, sizeof(struct __ns1__getMyInvestigations), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getMyInvestigations(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getMyInvestigations_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getMyInvestigations(soap, "ns1:getMyInvestigations", &a->ns1__getMyInvestigations_, "ns1:getMyInvestigations"))
-				{	soap_flag_ns1__getMyInvestigations_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMyInvestigations(struct soap *soap, const struct __ns1__getMyInvestigations *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getMyInvestigations(soap, tag?tag:"-ns1:getMyInvestigations", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getMyInvestigations * SOAP_FMAC4 soap_get___ns1__getMyInvestigations(struct soap *soap, struct __ns1__getMyInvestigations *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getMyInvestigations(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getMyInvestigations * SOAP_FMAC2 soap_instantiate___ns1__getMyInvestigations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getMyInvestigations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getMyInvestigations, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigations);
-		if (size)
-			*size = sizeof(struct __ns1__getMyInvestigations);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigations[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getMyInvestigations);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getMyInvestigations*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getMyInvestigations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getMyInvestigations %p -> %p\n", q, p));
-	*(struct __ns1__getMyInvestigations*)p = *(struct __ns1__getMyInvestigations*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByKeywordsAll(struct soap *soap, struct __ns1__searchByKeywordsAll *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByKeywordsAll_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByKeywordsAll(struct soap *soap, const struct __ns1__searchByKeywordsAll *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByKeywordsAll(soap, &a->ns1__searchByKeywordsAll_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByKeywordsAll(struct soap *soap, const char *tag, int id, const struct __ns1__searchByKeywordsAll *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByKeywordsAll(soap, "ns1:searchByKeywordsAll", -1, &a->ns1__searchByKeywordsAll_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByKeywordsAll * SOAP_FMAC4 soap_in___ns1__searchByKeywordsAll(struct soap *soap, const char *tag, struct __ns1__searchByKeywordsAll *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByKeywordsAll_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByKeywordsAll *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByKeywordsAll, sizeof(struct __ns1__searchByKeywordsAll), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByKeywordsAll(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByKeywordsAll_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByKeywordsAll(soap, "ns1:searchByKeywordsAll", &a->ns1__searchByKeywordsAll_, "ns1:searchByKeywordsAll"))
-				{	soap_flag_ns1__searchByKeywordsAll_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByKeywordsAll(struct soap *soap, const struct __ns1__searchByKeywordsAll *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByKeywordsAll(soap, tag?tag:"-ns1:searchByKeywordsAll", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByKeywordsAll * SOAP_FMAC4 soap_get___ns1__searchByKeywordsAll(struct soap *soap, struct __ns1__searchByKeywordsAll *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByKeywordsAll(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByKeywordsAll * SOAP_FMAC2 soap_instantiate___ns1__searchByKeywordsAll(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByKeywordsAll(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByKeywordsAll, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywordsAll);
-		if (size)
-			*size = sizeof(struct __ns1__searchByKeywordsAll);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywordsAll[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByKeywordsAll);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByKeywordsAll*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByKeywordsAll(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByKeywordsAll %p -> %p\n", q, p));
-	*(struct __ns1__searchByKeywordsAll*)p = *(struct __ns1__searchByKeywordsAll*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByKeywords(struct soap *soap, struct __ns1__searchByKeywords *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByKeywords_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByKeywords(struct soap *soap, const struct __ns1__searchByKeywords *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByKeywords(soap, &a->ns1__searchByKeywords_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByKeywords(struct soap *soap, const char *tag, int id, const struct __ns1__searchByKeywords *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByKeywords(soap, "ns1:searchByKeywords", -1, &a->ns1__searchByKeywords_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByKeywords * SOAP_FMAC4 soap_in___ns1__searchByKeywords(struct soap *soap, const char *tag, struct __ns1__searchByKeywords *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByKeywords_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByKeywords *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByKeywords, sizeof(struct __ns1__searchByKeywords), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByKeywords(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByKeywords_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByKeywords(soap, "ns1:searchByKeywords", &a->ns1__searchByKeywords_, "ns1:searchByKeywords"))
-				{	soap_flag_ns1__searchByKeywords_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByKeywords(struct soap *soap, const struct __ns1__searchByKeywords *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByKeywords(soap, tag?tag:"-ns1:searchByKeywords", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByKeywords * SOAP_FMAC4 soap_get___ns1__searchByKeywords(struct soap *soap, struct __ns1__searchByKeywords *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByKeywords(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByKeywords * SOAP_FMAC2 soap_instantiate___ns1__searchByKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByKeywords, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywords);
-		if (size)
-			*size = sizeof(struct __ns1__searchByKeywords);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywords[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByKeywords);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByKeywords*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByKeywords %p -> %p\n", q, p));
-	*(struct __ns1__searchByKeywords*)p = *(struct __ns1__searchByKeywords*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByAdvancedPagination(struct soap *soap, struct __ns1__searchByAdvancedPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByAdvancedPagination_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByAdvancedPagination(struct soap *soap, const struct __ns1__searchByAdvancedPagination *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByAdvancedPagination(soap, &a->ns1__searchByAdvancedPagination_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByAdvancedPagination *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByAdvancedPagination(soap, "ns1:searchByAdvancedPagination", -1, &a->ns1__searchByAdvancedPagination_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_in___ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, struct __ns1__searchByAdvancedPagination *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByAdvancedPagination_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByAdvancedPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByAdvancedPagination, sizeof(struct __ns1__searchByAdvancedPagination), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByAdvancedPagination(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByAdvancedPagination_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByAdvancedPagination(soap, "ns1:searchByAdvancedPagination", &a->ns1__searchByAdvancedPagination_, "ns1:searchByAdvancedPagination"))
-				{	soap_flag_ns1__searchByAdvancedPagination_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByAdvancedPagination(struct soap *soap, const struct __ns1__searchByAdvancedPagination *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByAdvancedPagination(soap, tag?tag:"-ns1:searchByAdvancedPagination", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_get___ns1__searchByAdvancedPagination(struct soap *soap, struct __ns1__searchByAdvancedPagination *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByAdvancedPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByAdvancedPagination * SOAP_FMAC2 soap_instantiate___ns1__searchByAdvancedPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByAdvancedPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByAdvancedPagination, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvancedPagination);
-		if (size)
-			*size = sizeof(struct __ns1__searchByAdvancedPagination);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvancedPagination[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByAdvancedPagination);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByAdvancedPagination*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByAdvancedPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByAdvancedPagination %p -> %p\n", q, p));
-	*(struct __ns1__searchByAdvancedPagination*)p = *(struct __ns1__searchByAdvancedPagination*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByAdvanced(struct soap *soap, struct __ns1__searchByAdvanced *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__searchByAdvanced_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByAdvanced(struct soap *soap, const struct __ns1__searchByAdvanced *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__searchByAdvanced(soap, &a->ns1__searchByAdvanced_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByAdvanced(struct soap *soap, const char *tag, int id, const struct __ns1__searchByAdvanced *a, const char *type)
-{
-	if (soap_out_PointerTons1__searchByAdvanced(soap, "ns1:searchByAdvanced", -1, &a->ns1__searchByAdvanced_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByAdvanced * SOAP_FMAC4 soap_in___ns1__searchByAdvanced(struct soap *soap, const char *tag, struct __ns1__searchByAdvanced *a, const char *type)
-{
-	size_t soap_flag_ns1__searchByAdvanced_ = 1;
-	short soap_flag;
-	a = (struct __ns1__searchByAdvanced *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByAdvanced, sizeof(struct __ns1__searchByAdvanced), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__searchByAdvanced(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__searchByAdvanced_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__searchByAdvanced(soap, "ns1:searchByAdvanced", &a->ns1__searchByAdvanced_, "ns1:searchByAdvanced"))
-				{	soap_flag_ns1__searchByAdvanced_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByAdvanced(struct soap *soap, const struct __ns1__searchByAdvanced *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__searchByAdvanced(soap, tag?tag:"-ns1:searchByAdvanced", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__searchByAdvanced * SOAP_FMAC4 soap_get___ns1__searchByAdvanced(struct soap *soap, struct __ns1__searchByAdvanced *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__searchByAdvanced(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__searchByAdvanced * SOAP_FMAC2 soap_instantiate___ns1__searchByAdvanced(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByAdvanced(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByAdvanced, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvanced);
-		if (size)
-			*size = sizeof(struct __ns1__searchByAdvanced);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvanced[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__searchByAdvanced);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__searchByAdvanced*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByAdvanced(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByAdvanced %p -> %p\n", q, p));
-	*(struct __ns1__searchByAdvanced*)p = *(struct __ns1__searchByAdvanced*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__checkDatasetDownloadAccess(struct soap *soap, struct __ns1__checkDatasetDownloadAccess *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__checkDatasetDownloadAccess_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__checkDatasetDownloadAccess(struct soap *soap, const struct __ns1__checkDatasetDownloadAccess *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__checkDatasetDownloadAccess(soap, &a->ns1__checkDatasetDownloadAccess_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, int id, const struct __ns1__checkDatasetDownloadAccess *a, const char *type)
-{
-	if (soap_out_PointerTons1__checkDatasetDownloadAccess(soap, "ns1:checkDatasetDownloadAccess", -1, &a->ns1__checkDatasetDownloadAccess_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_in___ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, struct __ns1__checkDatasetDownloadAccess *a, const char *type)
-{
-	size_t soap_flag_ns1__checkDatasetDownloadAccess_ = 1;
-	short soap_flag;
-	a = (struct __ns1__checkDatasetDownloadAccess *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__checkDatasetDownloadAccess, sizeof(struct __ns1__checkDatasetDownloadAccess), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__checkDatasetDownloadAccess(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__checkDatasetDownloadAccess_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__checkDatasetDownloadAccess(soap, "ns1:checkDatasetDownloadAccess", &a->ns1__checkDatasetDownloadAccess_, "ns1:checkDatasetDownloadAccess"))
-				{	soap_flag_ns1__checkDatasetDownloadAccess_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__checkDatasetDownloadAccess(struct soap *soap, const struct __ns1__checkDatasetDownloadAccess *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__checkDatasetDownloadAccess(soap, tag?tag:"-ns1:checkDatasetDownloadAccess", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_get___ns1__checkDatasetDownloadAccess(struct soap *soap, struct __ns1__checkDatasetDownloadAccess *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__checkDatasetDownloadAccess(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__checkDatasetDownloadAccess * SOAP_FMAC2 soap_instantiate___ns1__checkDatasetDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__checkDatasetDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__checkDatasetDownloadAccess, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatasetDownloadAccess);
-		if (size)
-			*size = sizeof(struct __ns1__checkDatasetDownloadAccess);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatasetDownloadAccess[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__checkDatasetDownloadAccess);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__checkDatasetDownloadAccess*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__checkDatasetDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__checkDatasetDownloadAccess %p -> %p\n", q, p));
-	*(struct __ns1__checkDatasetDownloadAccess*)p = *(struct __ns1__checkDatasetDownloadAccess*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__checkDatafileDownloadAccess(struct soap *soap, struct __ns1__checkDatafileDownloadAccess *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__checkDatafileDownloadAccess_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__checkDatafileDownloadAccess(struct soap *soap, const struct __ns1__checkDatafileDownloadAccess *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__checkDatafileDownloadAccess(soap, &a->ns1__checkDatafileDownloadAccess_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, int id, const struct __ns1__checkDatafileDownloadAccess *a, const char *type)
-{
-	if (soap_out_PointerTons1__checkDatafileDownloadAccess(soap, "ns1:checkDatafileDownloadAccess", -1, &a->ns1__checkDatafileDownloadAccess_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_in___ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, struct __ns1__checkDatafileDownloadAccess *a, const char *type)
-{
-	size_t soap_flag_ns1__checkDatafileDownloadAccess_ = 1;
-	short soap_flag;
-	a = (struct __ns1__checkDatafileDownloadAccess *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__checkDatafileDownloadAccess, sizeof(struct __ns1__checkDatafileDownloadAccess), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__checkDatafileDownloadAccess(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__checkDatafileDownloadAccess_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__checkDatafileDownloadAccess(soap, "ns1:checkDatafileDownloadAccess", &a->ns1__checkDatafileDownloadAccess_, "ns1:checkDatafileDownloadAccess"))
-				{	soap_flag_ns1__checkDatafileDownloadAccess_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__checkDatafileDownloadAccess(struct soap *soap, const struct __ns1__checkDatafileDownloadAccess *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__checkDatafileDownloadAccess(soap, tag?tag:"-ns1:checkDatafileDownloadAccess", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_get___ns1__checkDatafileDownloadAccess(struct soap *soap, struct __ns1__checkDatafileDownloadAccess *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__checkDatafileDownloadAccess(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__checkDatafileDownloadAccess * SOAP_FMAC2 soap_instantiate___ns1__checkDatafileDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__checkDatafileDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__checkDatafileDownloadAccess, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatafileDownloadAccess);
-		if (size)
-			*size = sizeof(struct __ns1__checkDatafileDownloadAccess);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatafileDownloadAccess[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__checkDatafileDownloadAccess);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__checkDatafileDownloadAccess*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__checkDatafileDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__checkDatafileDownloadAccess %p -> %p\n", q, p));
-	*(struct __ns1__checkDatafileDownloadAccess*)p = *(struct __ns1__checkDatafileDownloadAccess*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadDataset(struct soap *soap, struct __ns1__downloadDataset *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__downloadDataset_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadDataset(struct soap *soap, const struct __ns1__downloadDataset *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__downloadDataset(soap, &a->ns1__downloadDataset_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadDataset(struct soap *soap, const char *tag, int id, const struct __ns1__downloadDataset *a, const char *type)
-{
-	if (soap_out_PointerTons1__downloadDataset(soap, "ns1:downloadDataset", -1, &a->ns1__downloadDataset_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__downloadDataset * SOAP_FMAC4 soap_in___ns1__downloadDataset(struct soap *soap, const char *tag, struct __ns1__downloadDataset *a, const char *type)
-{
-	size_t soap_flag_ns1__downloadDataset_ = 1;
-	short soap_flag;
-	a = (struct __ns1__downloadDataset *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadDataset, sizeof(struct __ns1__downloadDataset), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__downloadDataset(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__downloadDataset_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__downloadDataset(soap, "ns1:downloadDataset", &a->ns1__downloadDataset_, "ns1:downloadDataset"))
-				{	soap_flag_ns1__downloadDataset_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadDataset(struct soap *soap, const struct __ns1__downloadDataset *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__downloadDataset(soap, tag?tag:"-ns1:downloadDataset", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__downloadDataset * SOAP_FMAC4 soap_get___ns1__downloadDataset(struct soap *soap, struct __ns1__downloadDataset *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__downloadDataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__downloadDataset * SOAP_FMAC2 soap_instantiate___ns1__downloadDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__downloadDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__downloadDataset, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDataset);
-		if (size)
-			*size = sizeof(struct __ns1__downloadDataset);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDataset[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__downloadDataset);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__downloadDataset*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__downloadDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__downloadDataset %p -> %p\n", q, p));
-	*(struct __ns1__downloadDataset*)p = *(struct __ns1__downloadDataset*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadDatafiles(struct soap *soap, struct __ns1__downloadDatafiles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__downloadDatafiles_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadDatafiles(struct soap *soap, const struct __ns1__downloadDatafiles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__downloadDatafiles(soap, &a->ns1__downloadDatafiles_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadDatafiles(struct soap *soap, const char *tag, int id, const struct __ns1__downloadDatafiles *a, const char *type)
-{
-	if (soap_out_PointerTons1__downloadDatafiles(soap, "ns1:downloadDatafiles", -1, &a->ns1__downloadDatafiles_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__downloadDatafiles * SOAP_FMAC4 soap_in___ns1__downloadDatafiles(struct soap *soap, const char *tag, struct __ns1__downloadDatafiles *a, const char *type)
-{
-	size_t soap_flag_ns1__downloadDatafiles_ = 1;
-	short soap_flag;
-	a = (struct __ns1__downloadDatafiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadDatafiles, sizeof(struct __ns1__downloadDatafiles), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__downloadDatafiles(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__downloadDatafiles_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__downloadDatafiles(soap, "ns1:downloadDatafiles", &a->ns1__downloadDatafiles_, "ns1:downloadDatafiles"))
-				{	soap_flag_ns1__downloadDatafiles_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadDatafiles(struct soap *soap, const struct __ns1__downloadDatafiles *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__downloadDatafiles(soap, tag?tag:"-ns1:downloadDatafiles", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__downloadDatafiles * SOAP_FMAC4 soap_get___ns1__downloadDatafiles(struct soap *soap, struct __ns1__downloadDatafiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__downloadDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__downloadDatafiles * SOAP_FMAC2 soap_instantiate___ns1__downloadDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__downloadDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__downloadDatafiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafiles);
-		if (size)
-			*size = sizeof(struct __ns1__downloadDatafiles);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__downloadDatafiles);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__downloadDatafiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__downloadDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__downloadDatafiles %p -> %p\n", q, p));
-	*(struct __ns1__downloadDatafiles*)p = *(struct __ns1__downloadDatafiles*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadDatafile(struct soap *soap, struct __ns1__downloadDatafile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__downloadDatafile_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadDatafile(struct soap *soap, const struct __ns1__downloadDatafile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__downloadDatafile(soap, &a->ns1__downloadDatafile_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadDatafile(struct soap *soap, const char *tag, int id, const struct __ns1__downloadDatafile *a, const char *type)
-{
-	if (soap_out_PointerTons1__downloadDatafile(soap, "ns1:downloadDatafile", -1, &a->ns1__downloadDatafile_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__downloadDatafile * SOAP_FMAC4 soap_in___ns1__downloadDatafile(struct soap *soap, const char *tag, struct __ns1__downloadDatafile *a, const char *type)
-{
-	size_t soap_flag_ns1__downloadDatafile_ = 1;
-	short soap_flag;
-	a = (struct __ns1__downloadDatafile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadDatafile, sizeof(struct __ns1__downloadDatafile), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__downloadDatafile(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__downloadDatafile_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__downloadDatafile(soap, "ns1:downloadDatafile", &a->ns1__downloadDatafile_, "ns1:downloadDatafile"))
-				{	soap_flag_ns1__downloadDatafile_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadDatafile(struct soap *soap, const struct __ns1__downloadDatafile *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__downloadDatafile(soap, tag?tag:"-ns1:downloadDatafile", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__downloadDatafile * SOAP_FMAC4 soap_get___ns1__downloadDatafile(struct soap *soap, struct __ns1__downloadDatafile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__downloadDatafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__downloadDatafile * SOAP_FMAC2 soap_instantiate___ns1__downloadDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__downloadDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__downloadDatafile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafile);
-		if (size)
-			*size = sizeof(struct __ns1__downloadDatafile);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__downloadDatafile);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__downloadDatafile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__downloadDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__downloadDatafile %p -> %p\n", q, p));
-	*(struct __ns1__downloadDatafile*)p = *(struct __ns1__downloadDatafile*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllKeywords(struct soap *soap, struct __ns1__getAllKeywords *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getAllKeywords_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllKeywords(struct soap *soap, const struct __ns1__getAllKeywords *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getAllKeywords(soap, &a->ns1__getAllKeywords_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllKeywords(struct soap *soap, const char *tag, int id, const struct __ns1__getAllKeywords *a, const char *type)
-{
-	if (soap_out_PointerTons1__getAllKeywords(soap, "ns1:getAllKeywords", -1, &a->ns1__getAllKeywords_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getAllKeywords * SOAP_FMAC4 soap_in___ns1__getAllKeywords(struct soap *soap, const char *tag, struct __ns1__getAllKeywords *a, const char *type)
-{
-	size_t soap_flag_ns1__getAllKeywords_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getAllKeywords *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllKeywords, sizeof(struct __ns1__getAllKeywords), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getAllKeywords(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getAllKeywords_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getAllKeywords(soap, "ns1:getAllKeywords", &a->ns1__getAllKeywords_, "ns1:getAllKeywords"))
-				{	soap_flag_ns1__getAllKeywords_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllKeywords(struct soap *soap, const struct __ns1__getAllKeywords *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getAllKeywords(soap, tag?tag:"-ns1:getAllKeywords", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getAllKeywords * SOAP_FMAC4 soap_get___ns1__getAllKeywords(struct soap *soap, struct __ns1__getAllKeywords *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getAllKeywords(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getAllKeywords * SOAP_FMAC2 soap_instantiate___ns1__getAllKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getAllKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getAllKeywords, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAllKeywords);
-		if (size)
-			*size = sizeof(struct __ns1__getAllKeywords);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAllKeywords[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getAllKeywords);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getAllKeywords*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getAllKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getAllKeywords %p -> %p\n", q, p));
-	*(struct __ns1__getAllKeywords*)p = *(struct __ns1__getAllKeywords*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUserType(struct soap *soap, struct __ns1__getKeywordsForUserType *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getKeywordsForUserType_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUserType(struct soap *soap, const struct __ns1__getKeywordsForUserType *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getKeywordsForUserType(soap, &a->ns1__getKeywordsForUserType_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUserType(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUserType *a, const char *type)
-{
-	if (soap_out_PointerTons1__getKeywordsForUserType(soap, "ns1:getKeywordsForUserType", -1, &a->ns1__getKeywordsForUserType_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUserType * SOAP_FMAC4 soap_in___ns1__getKeywordsForUserType(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUserType *a, const char *type)
-{
-	size_t soap_flag_ns1__getKeywordsForUserType_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getKeywordsForUserType *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUserType, sizeof(struct __ns1__getKeywordsForUserType), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getKeywordsForUserType(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getKeywordsForUserType_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getKeywordsForUserType(soap, "ns1:getKeywordsForUserType", &a->ns1__getKeywordsForUserType_, "ns1:getKeywordsForUserType"))
-				{	soap_flag_ns1__getKeywordsForUserType_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUserType(struct soap *soap, const struct __ns1__getKeywordsForUserType *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getKeywordsForUserType(soap, tag?tag:"-ns1:getKeywordsForUserType", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUserType * SOAP_FMAC4 soap_get___ns1__getKeywordsForUserType(struct soap *soap, struct __ns1__getKeywordsForUserType *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getKeywordsForUserType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getKeywordsForUserType * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUserType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUserType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUserType, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserType);
-		if (size)
-			*size = sizeof(struct __ns1__getKeywordsForUserType);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserType[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getKeywordsForUserType);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getKeywordsForUserType*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUserType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUserType %p -> %p\n", q, p));
-	*(struct __ns1__getKeywordsForUserType*)p = *(struct __ns1__getKeywordsForUserType*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUserMax(struct soap *soap, struct __ns1__getKeywordsForUserMax *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getKeywordsForUserMax_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUserMax(struct soap *soap, const struct __ns1__getKeywordsForUserMax *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getKeywordsForUserMax(soap, &a->ns1__getKeywordsForUserMax_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUserMax *a, const char *type)
-{
-	if (soap_out_PointerTons1__getKeywordsForUserMax(soap, "ns1:getKeywordsForUserMax", -1, &a->ns1__getKeywordsForUserMax_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_in___ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUserMax *a, const char *type)
-{
-	size_t soap_flag_ns1__getKeywordsForUserMax_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getKeywordsForUserMax *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUserMax, sizeof(struct __ns1__getKeywordsForUserMax), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getKeywordsForUserMax(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getKeywordsForUserMax_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getKeywordsForUserMax(soap, "ns1:getKeywordsForUserMax", &a->ns1__getKeywordsForUserMax_, "ns1:getKeywordsForUserMax"))
-				{	soap_flag_ns1__getKeywordsForUserMax_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUserMax(struct soap *soap, const struct __ns1__getKeywordsForUserMax *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getKeywordsForUserMax(soap, tag?tag:"-ns1:getKeywordsForUserMax", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_get___ns1__getKeywordsForUserMax(struct soap *soap, struct __ns1__getKeywordsForUserMax *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getKeywordsForUserMax(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getKeywordsForUserMax * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUserMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUserMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUserMax, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserMax);
-		if (size)
-			*size = sizeof(struct __ns1__getKeywordsForUserMax);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserMax[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getKeywordsForUserMax);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getKeywordsForUserMax*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUserMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUserMax %p -> %p\n", q, p));
-	*(struct __ns1__getKeywordsForUserMax*)p = *(struct __ns1__getKeywordsForUserMax*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUserStartWithMax(struct soap *soap, struct __ns1__getKeywordsForUserStartWithMax *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getKeywordsForUserStartWithMax_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const struct __ns1__getKeywordsForUserStartWithMax *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getKeywordsForUserStartWithMax(soap, &a->ns1__getKeywordsForUserStartWithMax_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUserStartWithMax *a, const char *type)
-{
-	if (soap_out_PointerTons1__getKeywordsForUserStartWithMax(soap, "ns1:getKeywordsForUserStartWithMax", -1, &a->ns1__getKeywordsForUserStartWithMax_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_in___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUserStartWithMax *a, const char *type)
-{
-	size_t soap_flag_ns1__getKeywordsForUserStartWithMax_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getKeywordsForUserStartWithMax *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUserStartWithMax, sizeof(struct __ns1__getKeywordsForUserStartWithMax), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getKeywordsForUserStartWithMax(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getKeywordsForUserStartWithMax_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getKeywordsForUserStartWithMax(soap, "ns1:getKeywordsForUserStartWithMax", &a->ns1__getKeywordsForUserStartWithMax_, "ns1:getKeywordsForUserStartWithMax"))
-				{	soap_flag_ns1__getKeywordsForUserStartWithMax_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const struct __ns1__getKeywordsForUserStartWithMax *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getKeywordsForUserStartWithMax(soap, tag?tag:"-ns1:getKeywordsForUserStartWithMax", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_get___ns1__getKeywordsForUserStartWithMax(struct soap *soap, struct __ns1__getKeywordsForUserStartWithMax *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getKeywordsForUserStartWithMax(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getKeywordsForUserStartWithMax * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUserStartWithMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUserStartWithMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUserStartWithMax, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserStartWithMax);
-		if (size)
-			*size = sizeof(struct __ns1__getKeywordsForUserStartWithMax);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserStartWithMax[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getKeywordsForUserStartWithMax);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getKeywordsForUserStartWithMax*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUserStartWithMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUserStartWithMax %p -> %p\n", q, p));
-	*(struct __ns1__getKeywordsForUserStartWithMax*)p = *(struct __ns1__getKeywordsForUserStartWithMax*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUser(struct soap *soap, struct __ns1__getKeywordsForUser *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getKeywordsForUser_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUser(struct soap *soap, const struct __ns1__getKeywordsForUser *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getKeywordsForUser(soap, &a->ns1__getKeywordsForUser_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUser(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUser *a, const char *type)
-{
-	if (soap_out_PointerTons1__getKeywordsForUser(soap, "ns1:getKeywordsForUser", -1, &a->ns1__getKeywordsForUser_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUser * SOAP_FMAC4 soap_in___ns1__getKeywordsForUser(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUser *a, const char *type)
-{
-	size_t soap_flag_ns1__getKeywordsForUser_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getKeywordsForUser *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUser, sizeof(struct __ns1__getKeywordsForUser), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getKeywordsForUser(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getKeywordsForUser_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getKeywordsForUser(soap, "ns1:getKeywordsForUser", &a->ns1__getKeywordsForUser_, "ns1:getKeywordsForUser"))
-				{	soap_flag_ns1__getKeywordsForUser_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUser(struct soap *soap, const struct __ns1__getKeywordsForUser *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getKeywordsForUser(soap, tag?tag:"-ns1:getKeywordsForUser", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getKeywordsForUser * SOAP_FMAC4 soap_get___ns1__getKeywordsForUser(struct soap *soap, struct __ns1__getKeywordsForUser *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getKeywordsForUser(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getKeywordsForUser * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUser(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUser(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUser, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUser);
-		if (size)
-			*size = sizeof(struct __ns1__getKeywordsForUser);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUser[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getKeywordsForUser);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getKeywordsForUser*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUser(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUser %p -> %p\n", q, p));
-	*(struct __ns1__getKeywordsForUser*)p = *(struct __ns1__getKeywordsForUser*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFileParameter(struct soap *soap, struct __ns1__deleteDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataFileParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFileParameter(struct soap *soap, const struct __ns1__deleteDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataFileParameter(soap, &a->ns1__deleteDataFileParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFileParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteDataFileParameter(soap, "ns1:deleteDataFileParameter", -1, &a->ns1__deleteDataFileParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFileParameter * SOAP_FMAC4 soap_in___ns1__deleteDataFileParameter(struct soap *soap, const char *tag, struct __ns1__deleteDataFileParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataFileParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFileParameter, sizeof(struct __ns1__deleteDataFileParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataFileParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataFileParameter(soap, "ns1:deleteDataFileParameter", &a->ns1__deleteDataFileParameter_, "ns1:deleteDataFileParameter"))
-				{	soap_flag_ns1__deleteDataFileParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFileParameter(struct soap *soap, const struct __ns1__deleteDataFileParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataFileParameter(soap, tag?tag:"-ns1:deleteDataFileParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFileParameter * SOAP_FMAC4 soap_get___ns1__deleteDataFileParameter(struct soap *soap, struct __ns1__deleteDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameter);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataFileParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataFileParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFileParameter %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataFileParameter*)p = *(struct __ns1__deleteDataFileParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFileParameterResponse(struct soap *soap, struct __ns1__deleteDataFileParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataFileParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFileParameterResponse(struct soap *soap, const struct __ns1__deleteDataFileParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataFileParameterResponse(soap, &a->ns1__deleteDataFileParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFileParameterResponse *a, const char *type)
-{
-	if (a->ns1__deleteDataFileParameterResponse_)
-		soap_element_result(soap, "ns1:deleteDataFileParameterResponse");
-	if (soap_out_PointerTons1__deleteDataFileParameterResponse(soap, "ns1:deleteDataFileParameterResponse", -1, &a->ns1__deleteDataFileParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_in___ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataFileParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataFileParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataFileParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFileParameterResponse, sizeof(struct __ns1__deleteDataFileParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataFileParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataFileParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataFileParameterResponse(soap, "ns1:deleteDataFileParameterResponse", &a->ns1__deleteDataFileParameterResponse_, "ns1:deleteDataFileParameterResponse"))
-				{	soap_flag_ns1__deleteDataFileParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteDataFileParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFileParameterResponse(struct soap *soap, const struct __ns1__deleteDataFileParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataFileParameterResponse(soap, tag?tag:"-ns1:deleteDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_get___ns1__deleteDataFileParameterResponse(struct soap *soap, struct __ns1__deleteDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataFileParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataFileParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataFileParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFileParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataFileParameterResponse*)p = *(struct __ns1__deleteDataFileParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFileParameter(struct soap *soap, struct __ns1__removeDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataFileParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFileParameter(struct soap *soap, const struct __ns1__removeDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataFileParameter(soap, &a->ns1__removeDataFileParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFileParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeDataFileParameter(soap, "ns1:removeDataFileParameter", -1, &a->ns1__removeDataFileParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFileParameter * SOAP_FMAC4 soap_in___ns1__removeDataFileParameter(struct soap *soap, const char *tag, struct __ns1__removeDataFileParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataFileParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFileParameter, sizeof(struct __ns1__removeDataFileParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataFileParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataFileParameter(soap, "ns1:removeDataFileParameter", &a->ns1__removeDataFileParameter_, "ns1:removeDataFileParameter"))
-				{	soap_flag_ns1__removeDataFileParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFileParameter(struct soap *soap, const struct __ns1__removeDataFileParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataFileParameter(soap, tag?tag:"-ns1:removeDataFileParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFileParameter * SOAP_FMAC4 soap_get___ns1__removeDataFileParameter(struct soap *soap, struct __ns1__removeDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__removeDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameter);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataFileParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataFileParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFileParameter %p -> %p\n", q, p));
-	*(struct __ns1__removeDataFileParameter*)p = *(struct __ns1__removeDataFileParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFileParameterResponse(struct soap *soap, struct __ns1__removeDataFileParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataFileParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFileParameterResponse(struct soap *soap, const struct __ns1__removeDataFileParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataFileParameterResponse(soap, &a->ns1__removeDataFileParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFileParameterResponse *a, const char *type)
-{
-	if (a->ns1__removeDataFileParameterResponse_)
-		soap_element_result(soap, "ns1:removeDataFileParameterResponse");
-	if (soap_out_PointerTons1__removeDataFileParameterResponse(soap, "ns1:removeDataFileParameterResponse", -1, &a->ns1__removeDataFileParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_in___ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, struct __ns1__removeDataFileParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataFileParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataFileParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFileParameterResponse, sizeof(struct __ns1__removeDataFileParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataFileParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataFileParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataFileParameterResponse(soap, "ns1:removeDataFileParameterResponse", &a->ns1__removeDataFileParameterResponse_, "ns1:removeDataFileParameterResponse"))
-				{	soap_flag_ns1__removeDataFileParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeDataFileParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFileParameterResponse(struct soap *soap, const struct __ns1__removeDataFileParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataFileParameterResponse(soap, tag?tag:"-ns1:removeDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_get___ns1__removeDataFileParameterResponse(struct soap *soap, struct __ns1__removeDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataFileParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataFileParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataFileParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFileParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeDataFileParameterResponse*)p = *(struct __ns1__removeDataFileParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFileParameter(struct soap *soap, struct __ns1__modifyDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataFileParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFileParameter(struct soap *soap, const struct __ns1__modifyDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataFileParameter(soap, &a->ns1__modifyDataFileParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFileParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyDataFileParameter(soap, "ns1:modifyDataFileParameter", -1, &a->ns1__modifyDataFileParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFileParameter * SOAP_FMAC4 soap_in___ns1__modifyDataFileParameter(struct soap *soap, const char *tag, struct __ns1__modifyDataFileParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataFileParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFileParameter, sizeof(struct __ns1__modifyDataFileParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataFileParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataFileParameter(soap, "ns1:modifyDataFileParameter", &a->ns1__modifyDataFileParameter_, "ns1:modifyDataFileParameter"))
-				{	soap_flag_ns1__modifyDataFileParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFileParameter(struct soap *soap, const struct __ns1__modifyDataFileParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataFileParameter(soap, tag?tag:"-ns1:modifyDataFileParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFileParameter * SOAP_FMAC4 soap_get___ns1__modifyDataFileParameter(struct soap *soap, struct __ns1__modifyDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameter);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataFileParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataFileParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFileParameter %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataFileParameter*)p = *(struct __ns1__modifyDataFileParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFileParameterResponse(struct soap *soap, struct __ns1__modifyDataFileParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataFileParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFileParameterResponse(struct soap *soap, const struct __ns1__modifyDataFileParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataFileParameterResponse(soap, &a->ns1__modifyDataFileParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFileParameterResponse *a, const char *type)
-{
-	if (a->ns1__modifyDataFileParameterResponse_)
-		soap_element_result(soap, "ns1:modifyDataFileParameterResponse");
-	if (soap_out_PointerTons1__modifyDataFileParameterResponse(soap, "ns1:modifyDataFileParameterResponse", -1, &a->ns1__modifyDataFileParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_in___ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataFileParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataFileParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataFileParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFileParameterResponse, sizeof(struct __ns1__modifyDataFileParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataFileParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataFileParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataFileParameterResponse(soap, "ns1:modifyDataFileParameterResponse", &a->ns1__modifyDataFileParameterResponse_, "ns1:modifyDataFileParameterResponse"))
-				{	soap_flag_ns1__modifyDataFileParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyDataFileParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFileParameterResponse(struct soap *soap, const struct __ns1__modifyDataFileParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataFileParameterResponse(soap, tag?tag:"-ns1:modifyDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_get___ns1__modifyDataFileParameterResponse(struct soap *soap, struct __ns1__modifyDataFileParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataFileParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFileParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataFileParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataFileParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataFileParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFileParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataFileParameterResponse*)p = *(struct __ns1__modifyDataFileParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataFileParameters(struct soap *soap, struct __ns1__addDataFileParameters *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addDataFileParameters_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataFileParameters(struct soap *soap, const struct __ns1__addDataFileParameters *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addDataFileParameters(soap, &a->ns1__addDataFileParameters_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataFileParameters(struct soap *soap, const char *tag, int id, const struct __ns1__addDataFileParameters *a, const char *type)
-{
-	if (soap_out_PointerTons1__addDataFileParameters(soap, "ns1:addDataFileParameters", -1, &a->ns1__addDataFileParameters_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataFileParameters * SOAP_FMAC4 soap_in___ns1__addDataFileParameters(struct soap *soap, const char *tag, struct __ns1__addDataFileParameters *a, const char *type)
-{
-	size_t soap_flag_ns1__addDataFileParameters_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addDataFileParameters *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataFileParameters, sizeof(struct __ns1__addDataFileParameters), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addDataFileParameters(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addDataFileParameters_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addDataFileParameters(soap, "ns1:addDataFileParameters", &a->ns1__addDataFileParameters_, "ns1:addDataFileParameters"))
-				{	soap_flag_ns1__addDataFileParameters_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataFileParameters(struct soap *soap, const struct __ns1__addDataFileParameters *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addDataFileParameters(soap, tag?tag:"-ns1:addDataFileParameters", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataFileParameters * SOAP_FMAC4 soap_get___ns1__addDataFileParameters(struct soap *soap, struct __ns1__addDataFileParameters *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addDataFileParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addDataFileParameters * SOAP_FMAC2 soap_instantiate___ns1__addDataFileParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataFileParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataFileParameters, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameters);
-		if (size)
-			*size = sizeof(struct __ns1__addDataFileParameters);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameters[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addDataFileParameters);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addDataFileParameters*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataFileParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataFileParameters %p -> %p\n", q, p));
-	*(struct __ns1__addDataFileParameters*)p = *(struct __ns1__addDataFileParameters*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFile(struct soap *soap, struct __ns1__modifyDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataFile_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFile(struct soap *soap, const struct __ns1__modifyDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataFile(soap, &a->ns1__modifyDataFile_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFile *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyDataFile(soap, "ns1:modifyDataFile", -1, &a->ns1__modifyDataFile_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFile * SOAP_FMAC4 soap_in___ns1__modifyDataFile(struct soap *soap, const char *tag, struct __ns1__modifyDataFile *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataFile_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFile, sizeof(struct __ns1__modifyDataFile), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataFile(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataFile_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataFile(soap, "ns1:modifyDataFile", &a->ns1__modifyDataFile_, "ns1:modifyDataFile"))
-				{	soap_flag_ns1__modifyDataFile_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFile(struct soap *soap, const struct __ns1__modifyDataFile *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataFile(soap, tag?tag:"-ns1:modifyDataFile", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFile * SOAP_FMAC4 soap_get___ns1__modifyDataFile(struct soap *soap, struct __ns1__modifyDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataFile * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFile);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataFile);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataFile);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFile %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataFile*)p = *(struct __ns1__modifyDataFile*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFileResponse(struct soap *soap, struct __ns1__modifyDataFileResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyDataFileResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFileResponse(struct soap *soap, const struct __ns1__modifyDataFileResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyDataFileResponse(soap, &a->ns1__modifyDataFileResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFileResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFileResponse *a, const char *type)
-{
-	if (a->ns1__modifyDataFileResponse_)
-		soap_element_result(soap, "ns1:modifyDataFileResponse");
-	if (soap_out_PointerTons1__modifyDataFileResponse(soap, "ns1:modifyDataFileResponse", -1, &a->ns1__modifyDataFileResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFileResponse * SOAP_FMAC4 soap_in___ns1__modifyDataFileResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataFileResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyDataFileResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyDataFileResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFileResponse, sizeof(struct __ns1__modifyDataFileResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyDataFileResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyDataFileResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyDataFileResponse(soap, "ns1:modifyDataFileResponse", &a->ns1__modifyDataFileResponse_, "ns1:modifyDataFileResponse"))
-				{	soap_flag_ns1__modifyDataFileResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyDataFileResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFileResponse(struct soap *soap, const struct __ns1__modifyDataFileResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyDataFileResponse(soap, tag?tag:"-ns1:modifyDataFileResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyDataFileResponse * SOAP_FMAC4 soap_get___ns1__modifyDataFileResponse(struct soap *soap, struct __ns1__modifyDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyDataFileResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyDataFileResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyDataFileResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFileResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyDataFileResponse*)p = *(struct __ns1__modifyDataFileResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFile(struct soap *soap, struct __ns1__removeDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataFile_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFile(struct soap *soap, const struct __ns1__removeDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataFile(soap, &a->ns1__removeDataFile_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFile *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeDataFile(soap, "ns1:removeDataFile", -1, &a->ns1__removeDataFile_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFile * SOAP_FMAC4 soap_in___ns1__removeDataFile(struct soap *soap, const char *tag, struct __ns1__removeDataFile *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataFile_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFile, sizeof(struct __ns1__removeDataFile), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataFile(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataFile_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataFile(soap, "ns1:removeDataFile", &a->ns1__removeDataFile_, "ns1:removeDataFile"))
-				{	soap_flag_ns1__removeDataFile_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFile(struct soap *soap, const struct __ns1__removeDataFile *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataFile(soap, tag?tag:"-ns1:removeDataFile", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFile * SOAP_FMAC4 soap_get___ns1__removeDataFile(struct soap *soap, struct __ns1__removeDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataFile * SOAP_FMAC2 soap_instantiate___ns1__removeDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFile);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataFile);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataFile);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFile %p -> %p\n", q, p));
-	*(struct __ns1__removeDataFile*)p = *(struct __ns1__removeDataFile*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFileResponse(struct soap *soap, struct __ns1__removeDataFileResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeDataFileResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFileResponse(struct soap *soap, const struct __ns1__removeDataFileResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeDataFileResponse(soap, &a->ns1__removeDataFileResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFileResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFileResponse *a, const char *type)
-{
-	if (a->ns1__removeDataFileResponse_)
-		soap_element_result(soap, "ns1:removeDataFileResponse");
-	if (soap_out_PointerTons1__removeDataFileResponse(soap, "ns1:removeDataFileResponse", -1, &a->ns1__removeDataFileResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFileResponse * SOAP_FMAC4 soap_in___ns1__removeDataFileResponse(struct soap *soap, const char *tag, struct __ns1__removeDataFileResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeDataFileResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeDataFileResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFileResponse, sizeof(struct __ns1__removeDataFileResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeDataFileResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeDataFileResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeDataFileResponse(soap, "ns1:removeDataFileResponse", &a->ns1__removeDataFileResponse_, "ns1:removeDataFileResponse"))
-				{	soap_flag_ns1__removeDataFileResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeDataFileResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFileResponse(struct soap *soap, const struct __ns1__removeDataFileResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeDataFileResponse(soap, tag?tag:"-ns1:removeDataFileResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeDataFileResponse * SOAP_FMAC4 soap_get___ns1__removeDataFileResponse(struct soap *soap, struct __ns1__removeDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeDataFileResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeDataFileResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeDataFileResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFileResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeDataFileResponse*)p = *(struct __ns1__removeDataFileResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFile(struct soap *soap, struct __ns1__deleteDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataFile_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFile(struct soap *soap, const struct __ns1__deleteDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataFile(soap, &a->ns1__deleteDataFile_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFile *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteDataFile(soap, "ns1:deleteDataFile", -1, &a->ns1__deleteDataFile_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFile * SOAP_FMAC4 soap_in___ns1__deleteDataFile(struct soap *soap, const char *tag, struct __ns1__deleteDataFile *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataFile_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFile, sizeof(struct __ns1__deleteDataFile), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataFile(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataFile_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataFile(soap, "ns1:deleteDataFile", &a->ns1__deleteDataFile_, "ns1:deleteDataFile"))
-				{	soap_flag_ns1__deleteDataFile_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFile(struct soap *soap, const struct __ns1__deleteDataFile *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataFile(soap, tag?tag:"-ns1:deleteDataFile", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFile * SOAP_FMAC4 soap_get___ns1__deleteDataFile(struct soap *soap, struct __ns1__deleteDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataFile * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFile);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataFile);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataFile);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFile %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataFile*)p = *(struct __ns1__deleteDataFile*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFileResponse(struct soap *soap, struct __ns1__deleteDataFileResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteDataFileResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFileResponse(struct soap *soap, const struct __ns1__deleteDataFileResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteDataFileResponse(soap, &a->ns1__deleteDataFileResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFileResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFileResponse *a, const char *type)
-{
-	if (a->ns1__deleteDataFileResponse_)
-		soap_element_result(soap, "ns1:deleteDataFileResponse");
-	if (soap_out_PointerTons1__deleteDataFileResponse(soap, "ns1:deleteDataFileResponse", -1, &a->ns1__deleteDataFileResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFileResponse * SOAP_FMAC4 soap_in___ns1__deleteDataFileResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataFileResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteDataFileResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteDataFileResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFileResponse, sizeof(struct __ns1__deleteDataFileResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteDataFileResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteDataFileResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteDataFileResponse(soap, "ns1:deleteDataFileResponse", &a->ns1__deleteDataFileResponse_, "ns1:deleteDataFileResponse"))
-				{	soap_flag_ns1__deleteDataFileResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteDataFileResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFileResponse(struct soap *soap, const struct __ns1__deleteDataFileResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteDataFileResponse(soap, tag?tag:"-ns1:deleteDataFileResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteDataFileResponse * SOAP_FMAC4 soap_get___ns1__deleteDataFileResponse(struct soap *soap, struct __ns1__deleteDataFileResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteDataFileResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFileResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteDataFileResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteDataFileResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteDataFileResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFileResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteDataFileResponse*)p = *(struct __ns1__deleteDataFileResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataFiles(struct soap *soap, struct __ns1__createDataFiles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__createDataFiles_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataFiles(struct soap *soap, const struct __ns1__createDataFiles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__createDataFiles(soap, &a->ns1__createDataFiles_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataFiles(struct soap *soap, const char *tag, int id, const struct __ns1__createDataFiles *a, const char *type)
-{
-	if (soap_out_PointerTons1__createDataFiles(soap, "ns1:createDataFiles", -1, &a->ns1__createDataFiles_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataFiles * SOAP_FMAC4 soap_in___ns1__createDataFiles(struct soap *soap, const char *tag, struct __ns1__createDataFiles *a, const char *type)
-{
-	size_t soap_flag_ns1__createDataFiles_ = 1;
-	short soap_flag;
-	a = (struct __ns1__createDataFiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataFiles, sizeof(struct __ns1__createDataFiles), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__createDataFiles(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__createDataFiles_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__createDataFiles(soap, "ns1:createDataFiles", &a->ns1__createDataFiles_, "ns1:createDataFiles"))
-				{	soap_flag_ns1__createDataFiles_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataFiles(struct soap *soap, const struct __ns1__createDataFiles *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__createDataFiles(soap, tag?tag:"-ns1:createDataFiles", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataFiles * SOAP_FMAC4 soap_get___ns1__createDataFiles(struct soap *soap, struct __ns1__createDataFiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__createDataFiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__createDataFiles * SOAP_FMAC2 soap_instantiate___ns1__createDataFiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataFiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataFiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFiles);
-		if (size)
-			*size = sizeof(struct __ns1__createDataFiles);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__createDataFiles);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__createDataFiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataFiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataFiles %p -> %p\n", q, p));
-	*(struct __ns1__createDataFiles*)p = *(struct __ns1__createDataFiles*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataFile(struct soap *soap, struct __ns1__createDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__createDataFile_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataFile(struct soap *soap, const struct __ns1__createDataFile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__createDataFile(soap, &a->ns1__createDataFile_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__createDataFile *a, const char *type)
-{
-	if (soap_out_PointerTons1__createDataFile(soap, "ns1:createDataFile", -1, &a->ns1__createDataFile_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataFile * SOAP_FMAC4 soap_in___ns1__createDataFile(struct soap *soap, const char *tag, struct __ns1__createDataFile *a, const char *type)
-{
-	size_t soap_flag_ns1__createDataFile_ = 1;
-	short soap_flag;
-	a = (struct __ns1__createDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataFile, sizeof(struct __ns1__createDataFile), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__createDataFile(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__createDataFile_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__createDataFile(soap, "ns1:createDataFile", &a->ns1__createDataFile_, "ns1:createDataFile"))
-				{	soap_flag_ns1__createDataFile_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataFile(struct soap *soap, const struct __ns1__createDataFile *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__createDataFile(soap, tag?tag:"-ns1:createDataFile", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createDataFile * SOAP_FMAC4 soap_get___ns1__createDataFile(struct soap *soap, struct __ns1__createDataFile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__createDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__createDataFile * SOAP_FMAC2 soap_instantiate___ns1__createDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataFile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFile);
-		if (size)
-			*size = sizeof(struct __ns1__createDataFile);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__createDataFile);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__createDataFile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataFile %p -> %p\n", q, p));
-	*(struct __ns1__createDataFile*)p = *(struct __ns1__createDataFile*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatafiles(struct soap *soap, struct __ns1__getDatafiles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getDatafiles_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatafiles(struct soap *soap, const struct __ns1__getDatafiles *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getDatafiles(soap, &a->ns1__getDatafiles_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatafiles(struct soap *soap, const char *tag, int id, const struct __ns1__getDatafiles *a, const char *type)
-{
-	if (soap_out_PointerTons1__getDatafiles(soap, "ns1:getDatafiles", -1, &a->ns1__getDatafiles_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatafiles * SOAP_FMAC4 soap_in___ns1__getDatafiles(struct soap *soap, const char *tag, struct __ns1__getDatafiles *a, const char *type)
-{
-	size_t soap_flag_ns1__getDatafiles_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getDatafiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatafiles, sizeof(struct __ns1__getDatafiles), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getDatafiles(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getDatafiles_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getDatafiles(soap, "ns1:getDatafiles", &a->ns1__getDatafiles_, "ns1:getDatafiles"))
-				{	soap_flag_ns1__getDatafiles_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatafiles(struct soap *soap, const struct __ns1__getDatafiles *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getDatafiles(soap, tag?tag:"-ns1:getDatafiles", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatafiles * SOAP_FMAC4 soap_get___ns1__getDatafiles(struct soap *soap, struct __ns1__getDatafiles *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getDatafiles * SOAP_FMAC2 soap_instantiate___ns1__getDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatafiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafiles);
-		if (size)
-			*size = sizeof(struct __ns1__getDatafiles);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafiles[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getDatafiles);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getDatafiles*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatafiles %p -> %p\n", q, p));
-	*(struct __ns1__getDatafiles*)p = *(struct __ns1__getDatafiles*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getUserDetails(struct soap *soap, struct __ns1__getUserDetails *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getUserDetails_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getUserDetails(struct soap *soap, const struct __ns1__getUserDetails *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getUserDetails(soap, &a->ns1__getUserDetails_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getUserDetails(struct soap *soap, const char *tag, int id, const struct __ns1__getUserDetails *a, const char *type)
-{
-	if (soap_out_PointerTons1__getUserDetails(soap, "ns1:getUserDetails", -1, &a->ns1__getUserDetails_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getUserDetails * SOAP_FMAC4 soap_in___ns1__getUserDetails(struct soap *soap, const char *tag, struct __ns1__getUserDetails *a, const char *type)
-{
-	size_t soap_flag_ns1__getUserDetails_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getUserDetails *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getUserDetails, sizeof(struct __ns1__getUserDetails), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getUserDetails(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getUserDetails_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getUserDetails(soap, "ns1:getUserDetails", &a->ns1__getUserDetails_, "ns1:getUserDetails"))
-				{	soap_flag_ns1__getUserDetails_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getUserDetails(struct soap *soap, const struct __ns1__getUserDetails *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getUserDetails(soap, tag?tag:"-ns1:getUserDetails", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getUserDetails * SOAP_FMAC4 soap_get___ns1__getUserDetails(struct soap *soap, struct __ns1__getUserDetails *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getUserDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getUserDetails * SOAP_FMAC2 soap_instantiate___ns1__getUserDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getUserDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getUserDetails, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getUserDetails);
-		if (size)
-			*size = sizeof(struct __ns1__getUserDetails);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getUserDetails[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getUserDetails);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getUserDetails*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getUserDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getUserDetails %p -> %p\n", q, p));
-	*(struct __ns1__getUserDetails*)p = *(struct __ns1__getUserDetails*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__updateAuthorisation(struct soap *soap, struct __ns1__updateAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__updateAuthorisation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__updateAuthorisation(struct soap *soap, const struct __ns1__updateAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__updateAuthorisation(soap, &a->ns1__updateAuthorisation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__updateAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__updateAuthorisation *a, const char *type)
-{
-	if (soap_out_PointerTons1__updateAuthorisation(soap, "ns1:updateAuthorisation", -1, &a->ns1__updateAuthorisation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__updateAuthorisation * SOAP_FMAC4 soap_in___ns1__updateAuthorisation(struct soap *soap, const char *tag, struct __ns1__updateAuthorisation *a, const char *type)
-{
-	size_t soap_flag_ns1__updateAuthorisation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__updateAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__updateAuthorisation, sizeof(struct __ns1__updateAuthorisation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__updateAuthorisation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__updateAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__updateAuthorisation(soap, "ns1:updateAuthorisation", &a->ns1__updateAuthorisation_, "ns1:updateAuthorisation"))
-				{	soap_flag_ns1__updateAuthorisation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__updateAuthorisation(struct soap *soap, const struct __ns1__updateAuthorisation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__updateAuthorisation(soap, tag?tag:"-ns1:updateAuthorisation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__updateAuthorisation * SOAP_FMAC4 soap_get___ns1__updateAuthorisation(struct soap *soap, struct __ns1__updateAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__updateAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__updateAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__updateAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__updateAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__updateAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisation);
-		if (size)
-			*size = sizeof(struct __ns1__updateAuthorisation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__updateAuthorisation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__updateAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__updateAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__updateAuthorisation %p -> %p\n", q, p));
-	*(struct __ns1__updateAuthorisation*)p = *(struct __ns1__updateAuthorisation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__updateAuthorisationResponse(struct soap *soap, struct __ns1__updateAuthorisationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__updateAuthorisationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__updateAuthorisationResponse(struct soap *soap, const struct __ns1__updateAuthorisationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__updateAuthorisationResponse(soap, &a->ns1__updateAuthorisationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__updateAuthorisationResponse *a, const char *type)
-{
-	if (a->ns1__updateAuthorisationResponse_)
-		soap_element_result(soap, "ns1:updateAuthorisationResponse");
-	if (soap_out_PointerTons1__updateAuthorisationResponse(soap, "ns1:updateAuthorisationResponse", -1, &a->ns1__updateAuthorisationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_in___ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, struct __ns1__updateAuthorisationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__updateAuthorisationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__updateAuthorisationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__updateAuthorisationResponse, sizeof(struct __ns1__updateAuthorisationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__updateAuthorisationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__updateAuthorisationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__updateAuthorisationResponse(soap, "ns1:updateAuthorisationResponse", &a->ns1__updateAuthorisationResponse_, "ns1:updateAuthorisationResponse"))
-				{	soap_flag_ns1__updateAuthorisationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:updateAuthorisationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__updateAuthorisationResponse(struct soap *soap, const struct __ns1__updateAuthorisationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__updateAuthorisationResponse(soap, tag?tag:"-ns1:updateAuthorisationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_get___ns1__updateAuthorisationResponse(struct soap *soap, struct __ns1__updateAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__updateAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__updateAuthorisationResponse * SOAP_FMAC2 soap_instantiate___ns1__updateAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__updateAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__updateAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__updateAuthorisationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__updateAuthorisationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__updateAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__updateAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__updateAuthorisationResponse %p -> %p\n", q, p));
-	*(struct __ns1__updateAuthorisationResponse*)p = *(struct __ns1__updateAuthorisationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeAuthorisation(struct soap *soap, struct __ns1__removeAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeAuthorisation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeAuthorisation(struct soap *soap, const struct __ns1__removeAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeAuthorisation(soap, &a->ns1__removeAuthorisation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__removeAuthorisation *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeAuthorisation(soap, "ns1:removeAuthorisation", -1, &a->ns1__removeAuthorisation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeAuthorisation * SOAP_FMAC4 soap_in___ns1__removeAuthorisation(struct soap *soap, const char *tag, struct __ns1__removeAuthorisation *a, const char *type)
-{
-	size_t soap_flag_ns1__removeAuthorisation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeAuthorisation, sizeof(struct __ns1__removeAuthorisation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeAuthorisation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeAuthorisation(soap, "ns1:removeAuthorisation", &a->ns1__removeAuthorisation_, "ns1:removeAuthorisation"))
-				{	soap_flag_ns1__removeAuthorisation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeAuthorisation(struct soap *soap, const struct __ns1__removeAuthorisation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeAuthorisation(soap, tag?tag:"-ns1:removeAuthorisation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeAuthorisation * SOAP_FMAC4 soap_get___ns1__removeAuthorisation(struct soap *soap, struct __ns1__removeAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__removeAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisation);
-		if (size)
-			*size = sizeof(struct __ns1__removeAuthorisation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeAuthorisation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeAuthorisation %p -> %p\n", q, p));
-	*(struct __ns1__removeAuthorisation*)p = *(struct __ns1__removeAuthorisation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeAuthorisationResponse(struct soap *soap, struct __ns1__removeAuthorisationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeAuthorisationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeAuthorisationResponse(struct soap *soap, const struct __ns1__removeAuthorisationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeAuthorisationResponse(soap, &a->ns1__removeAuthorisationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeAuthorisationResponse *a, const char *type)
-{
-	if (a->ns1__removeAuthorisationResponse_)
-		soap_element_result(soap, "ns1:removeAuthorisationResponse");
-	if (soap_out_PointerTons1__removeAuthorisationResponse(soap, "ns1:removeAuthorisationResponse", -1, &a->ns1__removeAuthorisationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_in___ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, struct __ns1__removeAuthorisationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeAuthorisationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeAuthorisationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeAuthorisationResponse, sizeof(struct __ns1__removeAuthorisationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeAuthorisationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeAuthorisationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeAuthorisationResponse(soap, "ns1:removeAuthorisationResponse", &a->ns1__removeAuthorisationResponse_, "ns1:removeAuthorisationResponse"))
-				{	soap_flag_ns1__removeAuthorisationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeAuthorisationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeAuthorisationResponse(struct soap *soap, const struct __ns1__removeAuthorisationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeAuthorisationResponse(soap, tag?tag:"-ns1:removeAuthorisationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_get___ns1__removeAuthorisationResponse(struct soap *soap, struct __ns1__removeAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeAuthorisationResponse * SOAP_FMAC2 soap_instantiate___ns1__removeAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeAuthorisationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeAuthorisationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeAuthorisationResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeAuthorisationResponse*)p = *(struct __ns1__removeAuthorisationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteAuthorisation(struct soap *soap, struct __ns1__deleteAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteAuthorisation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteAuthorisation(struct soap *soap, const struct __ns1__deleteAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteAuthorisation(soap, &a->ns1__deleteAuthorisation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__deleteAuthorisation *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteAuthorisation(soap, "ns1:deleteAuthorisation", -1, &a->ns1__deleteAuthorisation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteAuthorisation * SOAP_FMAC4 soap_in___ns1__deleteAuthorisation(struct soap *soap, const char *tag, struct __ns1__deleteAuthorisation *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteAuthorisation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteAuthorisation, sizeof(struct __ns1__deleteAuthorisation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteAuthorisation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteAuthorisation(soap, "ns1:deleteAuthorisation", &a->ns1__deleteAuthorisation_, "ns1:deleteAuthorisation"))
-				{	soap_flag_ns1__deleteAuthorisation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteAuthorisation(struct soap *soap, const struct __ns1__deleteAuthorisation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteAuthorisation(soap, tag?tag:"-ns1:deleteAuthorisation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteAuthorisation * SOAP_FMAC4 soap_get___ns1__deleteAuthorisation(struct soap *soap, struct __ns1__deleteAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__deleteAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisation);
-		if (size)
-			*size = sizeof(struct __ns1__deleteAuthorisation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteAuthorisation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteAuthorisation %p -> %p\n", q, p));
-	*(struct __ns1__deleteAuthorisation*)p = *(struct __ns1__deleteAuthorisation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteAuthorisationResponse(struct soap *soap, struct __ns1__deleteAuthorisationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteAuthorisationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteAuthorisationResponse(struct soap *soap, const struct __ns1__deleteAuthorisationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteAuthorisationResponse(soap, &a->ns1__deleteAuthorisationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteAuthorisationResponse *a, const char *type)
-{
-	if (a->ns1__deleteAuthorisationResponse_)
-		soap_element_result(soap, "ns1:deleteAuthorisationResponse");
-	if (soap_out_PointerTons1__deleteAuthorisationResponse(soap, "ns1:deleteAuthorisationResponse", -1, &a->ns1__deleteAuthorisationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_in___ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, struct __ns1__deleteAuthorisationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteAuthorisationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteAuthorisationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteAuthorisationResponse, sizeof(struct __ns1__deleteAuthorisationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteAuthorisationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteAuthorisationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteAuthorisationResponse(soap, "ns1:deleteAuthorisationResponse", &a->ns1__deleteAuthorisationResponse_, "ns1:deleteAuthorisationResponse"))
-				{	soap_flag_ns1__deleteAuthorisationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteAuthorisationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteAuthorisationResponse(struct soap *soap, const struct __ns1__deleteAuthorisationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteAuthorisationResponse(soap, tag?tag:"-ns1:deleteAuthorisationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_get___ns1__deleteAuthorisationResponse(struct soap *soap, struct __ns1__deleteAuthorisationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteAuthorisationResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteAuthorisationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteAuthorisationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteAuthorisationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteAuthorisationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteAuthorisationResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteAuthorisationResponse*)p = *(struct __ns1__deleteAuthorisationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addAuthorisation(struct soap *soap, struct __ns1__addAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addAuthorisation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addAuthorisation(struct soap *soap, const struct __ns1__addAuthorisation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addAuthorisation(soap, &a->ns1__addAuthorisation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__addAuthorisation *a, const char *type)
-{
-	if (soap_out_PointerTons1__addAuthorisation(soap, "ns1:addAuthorisation", -1, &a->ns1__addAuthorisation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addAuthorisation * SOAP_FMAC4 soap_in___ns1__addAuthorisation(struct soap *soap, const char *tag, struct __ns1__addAuthorisation *a, const char *type)
-{
-	size_t soap_flag_ns1__addAuthorisation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addAuthorisation, sizeof(struct __ns1__addAuthorisation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addAuthorisation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addAuthorisation(soap, "ns1:addAuthorisation", &a->ns1__addAuthorisation_, "ns1:addAuthorisation"))
-				{	soap_flag_ns1__addAuthorisation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addAuthorisation(struct soap *soap, const struct __ns1__addAuthorisation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addAuthorisation(soap, tag?tag:"-ns1:addAuthorisation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addAuthorisation * SOAP_FMAC4 soap_get___ns1__addAuthorisation(struct soap *soap, struct __ns1__addAuthorisation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__addAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addAuthorisation);
-		if (size)
-			*size = sizeof(struct __ns1__addAuthorisation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addAuthorisation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addAuthorisation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addAuthorisation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addAuthorisation %p -> %p\n", q, p));
-	*(struct __ns1__addAuthorisation*)p = *(struct __ns1__addAuthorisation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAuthorisations(struct soap *soap, struct __ns1__getAuthorisations *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getAuthorisations_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAuthorisations(struct soap *soap, const struct __ns1__getAuthorisations *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getAuthorisations(soap, &a->ns1__getAuthorisations_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAuthorisations(struct soap *soap, const char *tag, int id, const struct __ns1__getAuthorisations *a, const char *type)
-{
-	if (soap_out_PointerTons1__getAuthorisations(soap, "ns1:getAuthorisations", -1, &a->ns1__getAuthorisations_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getAuthorisations * SOAP_FMAC4 soap_in___ns1__getAuthorisations(struct soap *soap, const char *tag, struct __ns1__getAuthorisations *a, const char *type)
-{
-	size_t soap_flag_ns1__getAuthorisations_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getAuthorisations *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAuthorisations, sizeof(struct __ns1__getAuthorisations), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getAuthorisations(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getAuthorisations_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getAuthorisations(soap, "ns1:getAuthorisations", &a->ns1__getAuthorisations_, "ns1:getAuthorisations"))
-				{	soap_flag_ns1__getAuthorisations_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAuthorisations(struct soap *soap, const struct __ns1__getAuthorisations *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getAuthorisations(soap, tag?tag:"-ns1:getAuthorisations", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getAuthorisations * SOAP_FMAC4 soap_get___ns1__getAuthorisations(struct soap *soap, struct __ns1__getAuthorisations *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getAuthorisations(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getAuthorisations * SOAP_FMAC2 soap_instantiate___ns1__getAuthorisations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getAuthorisations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getAuthorisations, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAuthorisations);
-		if (size)
-			*size = sizeof(struct __ns1__getAuthorisations);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAuthorisations[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getAuthorisations);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getAuthorisations*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getAuthorisations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getAuthorisations %p -> %p\n", q, p));
-	*(struct __ns1__getAuthorisations*)p = *(struct __ns1__getAuthorisations*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySampleParameter(struct soap *soap, struct __ns1__modifySampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifySampleParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySampleParameter(struct soap *soap, const struct __ns1__modifySampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifySampleParameter(soap, &a->ns1__modifySampleParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__modifySampleParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifySampleParameter(soap, "ns1:modifySampleParameter", -1, &a->ns1__modifySampleParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySampleParameter * SOAP_FMAC4 soap_in___ns1__modifySampleParameter(struct soap *soap, const char *tag, struct __ns1__modifySampleParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__modifySampleParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifySampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySampleParameter, sizeof(struct __ns1__modifySampleParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifySampleParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifySampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifySampleParameter(soap, "ns1:modifySampleParameter", &a->ns1__modifySampleParameter_, "ns1:modifySampleParameter"))
-				{	soap_flag_ns1__modifySampleParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySampleParameter(struct soap *soap, const struct __ns1__modifySampleParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifySampleParameter(soap, tag?tag:"-ns1:modifySampleParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySampleParameter * SOAP_FMAC4 soap_get___ns1__modifySampleParameter(struct soap *soap, struct __ns1__modifySampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifySampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifySampleParameter * SOAP_FMAC2 soap_instantiate___ns1__modifySampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameter);
-		if (size)
-			*size = sizeof(struct __ns1__modifySampleParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifySampleParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifySampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySampleParameter %p -> %p\n", q, p));
-	*(struct __ns1__modifySampleParameter*)p = *(struct __ns1__modifySampleParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySampleParameterResponse(struct soap *soap, struct __ns1__modifySampleParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifySampleParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySampleParameterResponse(struct soap *soap, const struct __ns1__modifySampleParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifySampleParameterResponse(soap, &a->ns1__modifySampleParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifySampleParameterResponse *a, const char *type)
-{
-	if (a->ns1__modifySampleParameterResponse_)
-		soap_element_result(soap, "ns1:modifySampleParameterResponse");
-	if (soap_out_PointerTons1__modifySampleParameterResponse(soap, "ns1:modifySampleParameterResponse", -1, &a->ns1__modifySampleParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_in___ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, struct __ns1__modifySampleParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifySampleParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifySampleParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySampleParameterResponse, sizeof(struct __ns1__modifySampleParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifySampleParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifySampleParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifySampleParameterResponse(soap, "ns1:modifySampleParameterResponse", &a->ns1__modifySampleParameterResponse_, "ns1:modifySampleParameterResponse"))
-				{	soap_flag_ns1__modifySampleParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifySampleParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySampleParameterResponse(struct soap *soap, const struct __ns1__modifySampleParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifySampleParameterResponse(soap, tag?tag:"-ns1:modifySampleParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_get___ns1__modifySampleParameterResponse(struct soap *soap, struct __ns1__modifySampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifySampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifySampleParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__modifySampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifySampleParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifySampleParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifySampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySampleParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifySampleParameterResponse*)p = *(struct __ns1__modifySampleParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSampleParameter(struct soap *soap, struct __ns1__deleteSampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteSampleParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSampleParameter(struct soap *soap, const struct __ns1__deleteSampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteSampleParameter(soap, &a->ns1__deleteSampleParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSampleParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteSampleParameter(soap, "ns1:deleteSampleParameter", -1, &a->ns1__deleteSampleParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSampleParameter * SOAP_FMAC4 soap_in___ns1__deleteSampleParameter(struct soap *soap, const char *tag, struct __ns1__deleteSampleParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteSampleParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteSampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSampleParameter, sizeof(struct __ns1__deleteSampleParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteSampleParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteSampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteSampleParameter(soap, "ns1:deleteSampleParameter", &a->ns1__deleteSampleParameter_, "ns1:deleteSampleParameter"))
-				{	soap_flag_ns1__deleteSampleParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSampleParameter(struct soap *soap, const struct __ns1__deleteSampleParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteSampleParameter(soap, tag?tag:"-ns1:deleteSampleParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSampleParameter * SOAP_FMAC4 soap_get___ns1__deleteSampleParameter(struct soap *soap, struct __ns1__deleteSampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteSampleParameter * SOAP_FMAC2 soap_instantiate___ns1__deleteSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameter);
-		if (size)
-			*size = sizeof(struct __ns1__deleteSampleParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteSampleParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteSampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSampleParameter %p -> %p\n", q, p));
-	*(struct __ns1__deleteSampleParameter*)p = *(struct __ns1__deleteSampleParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSampleParameterResponse(struct soap *soap, struct __ns1__deleteSampleParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteSampleParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSampleParameterResponse(struct soap *soap, const struct __ns1__deleteSampleParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteSampleParameterResponse(soap, &a->ns1__deleteSampleParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSampleParameterResponse *a, const char *type)
-{
-	if (a->ns1__deleteSampleParameterResponse_)
-		soap_element_result(soap, "ns1:deleteSampleParameterResponse");
-	if (soap_out_PointerTons1__deleteSampleParameterResponse(soap, "ns1:deleteSampleParameterResponse", -1, &a->ns1__deleteSampleParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_in___ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, struct __ns1__deleteSampleParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteSampleParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteSampleParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSampleParameterResponse, sizeof(struct __ns1__deleteSampleParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteSampleParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteSampleParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteSampleParameterResponse(soap, "ns1:deleteSampleParameterResponse", &a->ns1__deleteSampleParameterResponse_, "ns1:deleteSampleParameterResponse"))
-				{	soap_flag_ns1__deleteSampleParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteSampleParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSampleParameterResponse(struct soap *soap, const struct __ns1__deleteSampleParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteSampleParameterResponse(soap, tag?tag:"-ns1:deleteSampleParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_get___ns1__deleteSampleParameterResponse(struct soap *soap, struct __ns1__deleteSampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteSampleParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteSampleParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteSampleParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteSampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSampleParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteSampleParameterResponse*)p = *(struct __ns1__deleteSampleParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSampleParameter(struct soap *soap, struct __ns1__removeSampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeSampleParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSampleParameter(struct soap *soap, const struct __ns1__removeSampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeSampleParameter(soap, &a->ns1__removeSampleParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__removeSampleParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeSampleParameter(soap, "ns1:removeSampleParameter", -1, &a->ns1__removeSampleParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSampleParameter * SOAP_FMAC4 soap_in___ns1__removeSampleParameter(struct soap *soap, const char *tag, struct __ns1__removeSampleParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__removeSampleParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeSampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSampleParameter, sizeof(struct __ns1__removeSampleParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeSampleParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeSampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeSampleParameter(soap, "ns1:removeSampleParameter", &a->ns1__removeSampleParameter_, "ns1:removeSampleParameter"))
-				{	soap_flag_ns1__removeSampleParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSampleParameter(struct soap *soap, const struct __ns1__removeSampleParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeSampleParameter(soap, tag?tag:"-ns1:removeSampleParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSampleParameter * SOAP_FMAC4 soap_get___ns1__removeSampleParameter(struct soap *soap, struct __ns1__removeSampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeSampleParameter * SOAP_FMAC2 soap_instantiate___ns1__removeSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameter);
-		if (size)
-			*size = sizeof(struct __ns1__removeSampleParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeSampleParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeSampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSampleParameter %p -> %p\n", q, p));
-	*(struct __ns1__removeSampleParameter*)p = *(struct __ns1__removeSampleParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSampleParameterResponse(struct soap *soap, struct __ns1__removeSampleParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeSampleParameterResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSampleParameterResponse(struct soap *soap, const struct __ns1__removeSampleParameterResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeSampleParameterResponse(soap, &a->ns1__removeSampleParameterResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeSampleParameterResponse *a, const char *type)
-{
-	if (a->ns1__removeSampleParameterResponse_)
-		soap_element_result(soap, "ns1:removeSampleParameterResponse");
-	if (soap_out_PointerTons1__removeSampleParameterResponse(soap, "ns1:removeSampleParameterResponse", -1, &a->ns1__removeSampleParameterResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_in___ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, struct __ns1__removeSampleParameterResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeSampleParameterResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeSampleParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSampleParameterResponse, sizeof(struct __ns1__removeSampleParameterResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeSampleParameterResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeSampleParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeSampleParameterResponse(soap, "ns1:removeSampleParameterResponse", &a->ns1__removeSampleParameterResponse_, "ns1:removeSampleParameterResponse"))
-				{	soap_flag_ns1__removeSampleParameterResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeSampleParameterResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSampleParameterResponse(struct soap *soap, const struct __ns1__removeSampleParameterResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeSampleParameterResponse(soap, tag?tag:"-ns1:removeSampleParameterResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_get___ns1__removeSampleParameterResponse(struct soap *soap, struct __ns1__removeSampleParameterResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeSampleParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__removeSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSampleParameterResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameterResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeSampleParameterResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameterResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeSampleParameterResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeSampleParameterResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSampleParameterResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeSampleParameterResponse*)p = *(struct __ns1__removeSampleParameterResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySample(struct soap *soap, struct __ns1__modifySample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifySample_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySample(struct soap *soap, const struct __ns1__modifySample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifySample(soap, &a->ns1__modifySample_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySample(struct soap *soap, const char *tag, int id, const struct __ns1__modifySample *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifySample(soap, "ns1:modifySample", -1, &a->ns1__modifySample_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySample * SOAP_FMAC4 soap_in___ns1__modifySample(struct soap *soap, const char *tag, struct __ns1__modifySample *a, const char *type)
-{
-	size_t soap_flag_ns1__modifySample_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifySample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySample, sizeof(struct __ns1__modifySample), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifySample(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifySample_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifySample(soap, "ns1:modifySample", &a->ns1__modifySample_, "ns1:modifySample"))
-				{	soap_flag_ns1__modifySample_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySample(struct soap *soap, const struct __ns1__modifySample *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifySample(soap, tag?tag:"-ns1:modifySample", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySample * SOAP_FMAC4 soap_get___ns1__modifySample(struct soap *soap, struct __ns1__modifySample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifySample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifySample * SOAP_FMAC2 soap_instantiate___ns1__modifySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySample);
-		if (size)
-			*size = sizeof(struct __ns1__modifySample);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifySample);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifySample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySample %p -> %p\n", q, p));
-	*(struct __ns1__modifySample*)p = *(struct __ns1__modifySample*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySampleResponse(struct soap *soap, struct __ns1__modifySampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifySampleResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySampleResponse(struct soap *soap, const struct __ns1__modifySampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifySampleResponse(soap, &a->ns1__modifySampleResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifySampleResponse *a, const char *type)
-{
-	if (a->ns1__modifySampleResponse_)
-		soap_element_result(soap, "ns1:modifySampleResponse");
-	if (soap_out_PointerTons1__modifySampleResponse(soap, "ns1:modifySampleResponse", -1, &a->ns1__modifySampleResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySampleResponse * SOAP_FMAC4 soap_in___ns1__modifySampleResponse(struct soap *soap, const char *tag, struct __ns1__modifySampleResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifySampleResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifySampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySampleResponse, sizeof(struct __ns1__modifySampleResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifySampleResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifySampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifySampleResponse(soap, "ns1:modifySampleResponse", &a->ns1__modifySampleResponse_, "ns1:modifySampleResponse"))
-				{	soap_flag_ns1__modifySampleResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifySampleResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySampleResponse(struct soap *soap, const struct __ns1__modifySampleResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifySampleResponse(soap, tag?tag:"-ns1:modifySampleResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifySampleResponse * SOAP_FMAC4 soap_get___ns1__modifySampleResponse(struct soap *soap, struct __ns1__modifySampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifySampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifySampleResponse * SOAP_FMAC2 soap_instantiate___ns1__modifySampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifySampleResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifySampleResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifySampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySampleResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifySampleResponse*)p = *(struct __ns1__modifySampleResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSample(struct soap *soap, struct __ns1__deleteSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteSample_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSample(struct soap *soap, const struct __ns1__deleteSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteSample(soap, &a->ns1__deleteSample_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSample(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSample *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteSample(soap, "ns1:deleteSample", -1, &a->ns1__deleteSample_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSample * SOAP_FMAC4 soap_in___ns1__deleteSample(struct soap *soap, const char *tag, struct __ns1__deleteSample *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteSample_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSample, sizeof(struct __ns1__deleteSample), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteSample(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteSample_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteSample(soap, "ns1:deleteSample", &a->ns1__deleteSample_, "ns1:deleteSample"))
-				{	soap_flag_ns1__deleteSample_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSample(struct soap *soap, const struct __ns1__deleteSample *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteSample(soap, tag?tag:"-ns1:deleteSample", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSample * SOAP_FMAC4 soap_get___ns1__deleteSample(struct soap *soap, struct __ns1__deleteSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteSample * SOAP_FMAC2 soap_instantiate___ns1__deleteSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSample);
-		if (size)
-			*size = sizeof(struct __ns1__deleteSample);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteSample);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSample %p -> %p\n", q, p));
-	*(struct __ns1__deleteSample*)p = *(struct __ns1__deleteSample*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSampleResponse(struct soap *soap, struct __ns1__deleteSampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteSampleResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSampleResponse(struct soap *soap, const struct __ns1__deleteSampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteSampleResponse(soap, &a->ns1__deleteSampleResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSampleResponse *a, const char *type)
-{
-	if (a->ns1__deleteSampleResponse_)
-		soap_element_result(soap, "ns1:deleteSampleResponse");
-	if (soap_out_PointerTons1__deleteSampleResponse(soap, "ns1:deleteSampleResponse", -1, &a->ns1__deleteSampleResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSampleResponse * SOAP_FMAC4 soap_in___ns1__deleteSampleResponse(struct soap *soap, const char *tag, struct __ns1__deleteSampleResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteSampleResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteSampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSampleResponse, sizeof(struct __ns1__deleteSampleResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteSampleResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteSampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteSampleResponse(soap, "ns1:deleteSampleResponse", &a->ns1__deleteSampleResponse_, "ns1:deleteSampleResponse"))
-				{	soap_flag_ns1__deleteSampleResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteSampleResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSampleResponse(struct soap *soap, const struct __ns1__deleteSampleResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteSampleResponse(soap, tag?tag:"-ns1:deleteSampleResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteSampleResponse * SOAP_FMAC4 soap_get___ns1__deleteSampleResponse(struct soap *soap, struct __ns1__deleteSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteSampleResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteSampleResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteSampleResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSampleResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteSampleResponse*)p = *(struct __ns1__deleteSampleResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSample(struct soap *soap, struct __ns1__removeSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeSample_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSample(struct soap *soap, const struct __ns1__removeSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeSample(soap, &a->ns1__removeSample_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSample(struct soap *soap, const char *tag, int id, const struct __ns1__removeSample *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeSample(soap, "ns1:removeSample", -1, &a->ns1__removeSample_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSample * SOAP_FMAC4 soap_in___ns1__removeSample(struct soap *soap, const char *tag, struct __ns1__removeSample *a, const char *type)
-{
-	size_t soap_flag_ns1__removeSample_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSample, sizeof(struct __ns1__removeSample), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeSample(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeSample_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeSample(soap, "ns1:removeSample", &a->ns1__removeSample_, "ns1:removeSample"))
-				{	soap_flag_ns1__removeSample_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSample(struct soap *soap, const struct __ns1__removeSample *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeSample(soap, tag?tag:"-ns1:removeSample", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSample * SOAP_FMAC4 soap_get___ns1__removeSample(struct soap *soap, struct __ns1__removeSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeSample * SOAP_FMAC2 soap_instantiate___ns1__removeSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSample);
-		if (size)
-			*size = sizeof(struct __ns1__removeSample);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeSample);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSample %p -> %p\n", q, p));
-	*(struct __ns1__removeSample*)p = *(struct __ns1__removeSample*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSampleResponse(struct soap *soap, struct __ns1__removeSampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeSampleResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSampleResponse(struct soap *soap, const struct __ns1__removeSampleResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeSampleResponse(soap, &a->ns1__removeSampleResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeSampleResponse *a, const char *type)
-{
-	if (a->ns1__removeSampleResponse_)
-		soap_element_result(soap, "ns1:removeSampleResponse");
-	if (soap_out_PointerTons1__removeSampleResponse(soap, "ns1:removeSampleResponse", -1, &a->ns1__removeSampleResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSampleResponse * SOAP_FMAC4 soap_in___ns1__removeSampleResponse(struct soap *soap, const char *tag, struct __ns1__removeSampleResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeSampleResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeSampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSampleResponse, sizeof(struct __ns1__removeSampleResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeSampleResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeSampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeSampleResponse(soap, "ns1:removeSampleResponse", &a->ns1__removeSampleResponse_, "ns1:removeSampleResponse"))
-				{	soap_flag_ns1__removeSampleResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeSampleResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSampleResponse(struct soap *soap, const struct __ns1__removeSampleResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeSampleResponse(soap, tag?tag:"-ns1:removeSampleResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeSampleResponse * SOAP_FMAC4 soap_get___ns1__removeSampleResponse(struct soap *soap, struct __ns1__removeSampleResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeSampleResponse * SOAP_FMAC2 soap_instantiate___ns1__removeSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSampleResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeSampleResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeSampleResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeSampleResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSampleResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeSampleResponse*)p = *(struct __ns1__removeSampleResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigator(struct soap *soap, struct __ns1__deleteInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteInvestigator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigator(struct soap *soap, const struct __ns1__deleteInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteInvestigator(soap, &a->ns1__deleteInvestigator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigator *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteInvestigator(soap, "ns1:deleteInvestigator", -1, &a->ns1__deleteInvestigator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigator * SOAP_FMAC4 soap_in___ns1__deleteInvestigator(struct soap *soap, const char *tag, struct __ns1__deleteInvestigator *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteInvestigator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigator, sizeof(struct __ns1__deleteInvestigator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteInvestigator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteInvestigator(soap, "ns1:deleteInvestigator", &a->ns1__deleteInvestigator_, "ns1:deleteInvestigator"))
-				{	soap_flag_ns1__deleteInvestigator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigator(struct soap *soap, const struct __ns1__deleteInvestigator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteInvestigator(soap, tag?tag:"-ns1:deleteInvestigator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigator * SOAP_FMAC4 soap_get___ns1__deleteInvestigator(struct soap *soap, struct __ns1__deleteInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteInvestigator * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigator);
-		if (size)
-			*size = sizeof(struct __ns1__deleteInvestigator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteInvestigator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigator %p -> %p\n", q, p));
-	*(struct __ns1__deleteInvestigator*)p = *(struct __ns1__deleteInvestigator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigatorResponse(struct soap *soap, struct __ns1__deleteInvestigatorResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteInvestigatorResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigatorResponse(struct soap *soap, const struct __ns1__deleteInvestigatorResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteInvestigatorResponse(soap, &a->ns1__deleteInvestigatorResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigatorResponse *a, const char *type)
-{
-	if (a->ns1__deleteInvestigatorResponse_)
-		soap_element_result(soap, "ns1:deleteInvestigatorResponse");
-	if (soap_out_PointerTons1__deleteInvestigatorResponse(soap, "ns1:deleteInvestigatorResponse", -1, &a->ns1__deleteInvestigatorResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_in___ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, struct __ns1__deleteInvestigatorResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteInvestigatorResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteInvestigatorResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigatorResponse, sizeof(struct __ns1__deleteInvestigatorResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteInvestigatorResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteInvestigatorResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteInvestigatorResponse(soap, "ns1:deleteInvestigatorResponse", &a->ns1__deleteInvestigatorResponse_, "ns1:deleteInvestigatorResponse"))
-				{	soap_flag_ns1__deleteInvestigatorResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteInvestigatorResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigatorResponse(struct soap *soap, const struct __ns1__deleteInvestigatorResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteInvestigatorResponse(soap, tag?tag:"-ns1:deleteInvestigatorResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_get___ns1__deleteInvestigatorResponse(struct soap *soap, struct __ns1__deleteInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteInvestigatorResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigatorResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteInvestigatorResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteInvestigatorResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigatorResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteInvestigatorResponse*)p = *(struct __ns1__deleteInvestigatorResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigator(struct soap *soap, struct __ns1__modifyInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyInvestigator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigator(struct soap *soap, const struct __ns1__modifyInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyInvestigator(soap, &a->ns1__modifyInvestigator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigator *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyInvestigator(soap, "ns1:modifyInvestigator", -1, &a->ns1__modifyInvestigator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigator * SOAP_FMAC4 soap_in___ns1__modifyInvestigator(struct soap *soap, const char *tag, struct __ns1__modifyInvestigator *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyInvestigator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigator, sizeof(struct __ns1__modifyInvestigator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyInvestigator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyInvestigator(soap, "ns1:modifyInvestigator", &a->ns1__modifyInvestigator_, "ns1:modifyInvestigator"))
-				{	soap_flag_ns1__modifyInvestigator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigator(struct soap *soap, const struct __ns1__modifyInvestigator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyInvestigator(soap, tag?tag:"-ns1:modifyInvestigator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigator * SOAP_FMAC4 soap_get___ns1__modifyInvestigator(struct soap *soap, struct __ns1__modifyInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyInvestigator * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigator);
-		if (size)
-			*size = sizeof(struct __ns1__modifyInvestigator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyInvestigator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigator %p -> %p\n", q, p));
-	*(struct __ns1__modifyInvestigator*)p = *(struct __ns1__modifyInvestigator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigatorResponse(struct soap *soap, struct __ns1__modifyInvestigatorResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyInvestigatorResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigatorResponse(struct soap *soap, const struct __ns1__modifyInvestigatorResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyInvestigatorResponse(soap, &a->ns1__modifyInvestigatorResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigatorResponse *a, const char *type)
-{
-	if (a->ns1__modifyInvestigatorResponse_)
-		soap_element_result(soap, "ns1:modifyInvestigatorResponse");
-	if (soap_out_PointerTons1__modifyInvestigatorResponse(soap, "ns1:modifyInvestigatorResponse", -1, &a->ns1__modifyInvestigatorResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_in___ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, struct __ns1__modifyInvestigatorResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyInvestigatorResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyInvestigatorResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigatorResponse, sizeof(struct __ns1__modifyInvestigatorResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyInvestigatorResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyInvestigatorResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyInvestigatorResponse(soap, "ns1:modifyInvestigatorResponse", &a->ns1__modifyInvestigatorResponse_, "ns1:modifyInvestigatorResponse"))
-				{	soap_flag_ns1__modifyInvestigatorResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyInvestigatorResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigatorResponse(struct soap *soap, const struct __ns1__modifyInvestigatorResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyInvestigatorResponse(soap, tag?tag:"-ns1:modifyInvestigatorResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_get___ns1__modifyInvestigatorResponse(struct soap *soap, struct __ns1__modifyInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyInvestigatorResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigatorResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyInvestigatorResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyInvestigatorResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigatorResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyInvestigatorResponse*)p = *(struct __ns1__modifyInvestigatorResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigator(struct soap *soap, struct __ns1__removeInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeInvestigator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigator(struct soap *soap, const struct __ns1__removeInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeInvestigator(soap, &a->ns1__removeInvestigator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigator *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeInvestigator(soap, "ns1:removeInvestigator", -1, &a->ns1__removeInvestigator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigator * SOAP_FMAC4 soap_in___ns1__removeInvestigator(struct soap *soap, const char *tag, struct __ns1__removeInvestigator *a, const char *type)
-{
-	size_t soap_flag_ns1__removeInvestigator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigator, sizeof(struct __ns1__removeInvestigator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeInvestigator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeInvestigator(soap, "ns1:removeInvestigator", &a->ns1__removeInvestigator_, "ns1:removeInvestigator"))
-				{	soap_flag_ns1__removeInvestigator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigator(struct soap *soap, const struct __ns1__removeInvestigator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeInvestigator(soap, tag?tag:"-ns1:removeInvestigator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigator * SOAP_FMAC4 soap_get___ns1__removeInvestigator(struct soap *soap, struct __ns1__removeInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeInvestigator * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigator);
-		if (size)
-			*size = sizeof(struct __ns1__removeInvestigator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeInvestigator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigator %p -> %p\n", q, p));
-	*(struct __ns1__removeInvestigator*)p = *(struct __ns1__removeInvestigator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigatorResponse(struct soap *soap, struct __ns1__removeInvestigatorResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeInvestigatorResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigatorResponse(struct soap *soap, const struct __ns1__removeInvestigatorResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeInvestigatorResponse(soap, &a->ns1__removeInvestigatorResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigatorResponse *a, const char *type)
-{
-	if (a->ns1__removeInvestigatorResponse_)
-		soap_element_result(soap, "ns1:removeInvestigatorResponse");
-	if (soap_out_PointerTons1__removeInvestigatorResponse(soap, "ns1:removeInvestigatorResponse", -1, &a->ns1__removeInvestigatorResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_in___ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, struct __ns1__removeInvestigatorResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeInvestigatorResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeInvestigatorResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigatorResponse, sizeof(struct __ns1__removeInvestigatorResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeInvestigatorResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeInvestigatorResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeInvestigatorResponse(soap, "ns1:removeInvestigatorResponse", &a->ns1__removeInvestigatorResponse_, "ns1:removeInvestigatorResponse"))
-				{	soap_flag_ns1__removeInvestigatorResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeInvestigatorResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigatorResponse(struct soap *soap, const struct __ns1__removeInvestigatorResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeInvestigatorResponse(soap, tag?tag:"-ns1:removeInvestigatorResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_get___ns1__removeInvestigatorResponse(struct soap *soap, struct __ns1__removeInvestigatorResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeInvestigatorResponse * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigatorResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigatorResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeInvestigatorResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigatorResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeInvestigatorResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeInvestigatorResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigatorResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeInvestigatorResponse*)p = *(struct __ns1__removeInvestigatorResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyPublication(struct soap *soap, struct __ns1__modifyPublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyPublication_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyPublication(struct soap *soap, const struct __ns1__modifyPublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyPublication(soap, &a->ns1__modifyPublication_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyPublication(struct soap *soap, const char *tag, int id, const struct __ns1__modifyPublication *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyPublication(soap, "ns1:modifyPublication", -1, &a->ns1__modifyPublication_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyPublication * SOAP_FMAC4 soap_in___ns1__modifyPublication(struct soap *soap, const char *tag, struct __ns1__modifyPublication *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyPublication_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyPublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyPublication, sizeof(struct __ns1__modifyPublication), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyPublication(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyPublication_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyPublication(soap, "ns1:modifyPublication", &a->ns1__modifyPublication_, "ns1:modifyPublication"))
-				{	soap_flag_ns1__modifyPublication_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyPublication(struct soap *soap, const struct __ns1__modifyPublication *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyPublication(soap, tag?tag:"-ns1:modifyPublication", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyPublication * SOAP_FMAC4 soap_get___ns1__modifyPublication(struct soap *soap, struct __ns1__modifyPublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyPublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyPublication * SOAP_FMAC2 soap_instantiate___ns1__modifyPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyPublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublication);
-		if (size)
-			*size = sizeof(struct __ns1__modifyPublication);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyPublication);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyPublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyPublication %p -> %p\n", q, p));
-	*(struct __ns1__modifyPublication*)p = *(struct __ns1__modifyPublication*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyPublicationResponse(struct soap *soap, struct __ns1__modifyPublicationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyPublicationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyPublicationResponse(struct soap *soap, const struct __ns1__modifyPublicationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyPublicationResponse(soap, &a->ns1__modifyPublicationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyPublicationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyPublicationResponse *a, const char *type)
-{
-	if (a->ns1__modifyPublicationResponse_)
-		soap_element_result(soap, "ns1:modifyPublicationResponse");
-	if (soap_out_PointerTons1__modifyPublicationResponse(soap, "ns1:modifyPublicationResponse", -1, &a->ns1__modifyPublicationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyPublicationResponse * SOAP_FMAC4 soap_in___ns1__modifyPublicationResponse(struct soap *soap, const char *tag, struct __ns1__modifyPublicationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyPublicationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyPublicationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyPublicationResponse, sizeof(struct __ns1__modifyPublicationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyPublicationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyPublicationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyPublicationResponse(soap, "ns1:modifyPublicationResponse", &a->ns1__modifyPublicationResponse_, "ns1:modifyPublicationResponse"))
-				{	soap_flag_ns1__modifyPublicationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyPublicationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyPublicationResponse(struct soap *soap, const struct __ns1__modifyPublicationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyPublicationResponse(soap, tag?tag:"-ns1:modifyPublicationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyPublicationResponse * SOAP_FMAC4 soap_get___ns1__modifyPublicationResponse(struct soap *soap, struct __ns1__modifyPublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyPublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyPublicationResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyPublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyPublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyPublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublicationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyPublicationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyPublicationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyPublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyPublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyPublicationResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyPublicationResponse*)p = *(struct __ns1__modifyPublicationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deletePublication(struct soap *soap, struct __ns1__deletePublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deletePublication_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deletePublication(struct soap *soap, const struct __ns1__deletePublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deletePublication(soap, &a->ns1__deletePublication_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deletePublication(struct soap *soap, const char *tag, int id, const struct __ns1__deletePublication *a, const char *type)
-{
-	if (soap_out_PointerTons1__deletePublication(soap, "ns1:deletePublication", -1, &a->ns1__deletePublication_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deletePublication * SOAP_FMAC4 soap_in___ns1__deletePublication(struct soap *soap, const char *tag, struct __ns1__deletePublication *a, const char *type)
-{
-	size_t soap_flag_ns1__deletePublication_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deletePublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deletePublication, sizeof(struct __ns1__deletePublication), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deletePublication(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deletePublication_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deletePublication(soap, "ns1:deletePublication", &a->ns1__deletePublication_, "ns1:deletePublication"))
-				{	soap_flag_ns1__deletePublication_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deletePublication(struct soap *soap, const struct __ns1__deletePublication *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deletePublication(soap, tag?tag:"-ns1:deletePublication", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deletePublication * SOAP_FMAC4 soap_get___ns1__deletePublication(struct soap *soap, struct __ns1__deletePublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deletePublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deletePublication * SOAP_FMAC2 soap_instantiate___ns1__deletePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deletePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deletePublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublication);
-		if (size)
-			*size = sizeof(struct __ns1__deletePublication);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deletePublication);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deletePublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deletePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deletePublication %p -> %p\n", q, p));
-	*(struct __ns1__deletePublication*)p = *(struct __ns1__deletePublication*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deletePublicationResponse(struct soap *soap, struct __ns1__deletePublicationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deletePublicationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deletePublicationResponse(struct soap *soap, const struct __ns1__deletePublicationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deletePublicationResponse(soap, &a->ns1__deletePublicationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deletePublicationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deletePublicationResponse *a, const char *type)
-{
-	if (a->ns1__deletePublicationResponse_)
-		soap_element_result(soap, "ns1:deletePublicationResponse");
-	if (soap_out_PointerTons1__deletePublicationResponse(soap, "ns1:deletePublicationResponse", -1, &a->ns1__deletePublicationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deletePublicationResponse * SOAP_FMAC4 soap_in___ns1__deletePublicationResponse(struct soap *soap, const char *tag, struct __ns1__deletePublicationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deletePublicationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deletePublicationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deletePublicationResponse, sizeof(struct __ns1__deletePublicationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deletePublicationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deletePublicationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deletePublicationResponse(soap, "ns1:deletePublicationResponse", &a->ns1__deletePublicationResponse_, "ns1:deletePublicationResponse"))
-				{	soap_flag_ns1__deletePublicationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deletePublicationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deletePublicationResponse(struct soap *soap, const struct __ns1__deletePublicationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deletePublicationResponse(soap, tag?tag:"-ns1:deletePublicationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deletePublicationResponse * SOAP_FMAC4 soap_get___ns1__deletePublicationResponse(struct soap *soap, struct __ns1__deletePublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deletePublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deletePublicationResponse * SOAP_FMAC2 soap_instantiate___ns1__deletePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deletePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deletePublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublicationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deletePublicationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deletePublicationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deletePublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deletePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deletePublicationResponse %p -> %p\n", q, p));
-	*(struct __ns1__deletePublicationResponse*)p = *(struct __ns1__deletePublicationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removePublication(struct soap *soap, struct __ns1__removePublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removePublication_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removePublication(struct soap *soap, const struct __ns1__removePublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removePublication(soap, &a->ns1__removePublication_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removePublication(struct soap *soap, const char *tag, int id, const struct __ns1__removePublication *a, const char *type)
-{
-	if (soap_out_PointerTons1__removePublication(soap, "ns1:removePublication", -1, &a->ns1__removePublication_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removePublication * SOAP_FMAC4 soap_in___ns1__removePublication(struct soap *soap, const char *tag, struct __ns1__removePublication *a, const char *type)
-{
-	size_t soap_flag_ns1__removePublication_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removePublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removePublication, sizeof(struct __ns1__removePublication), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removePublication(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removePublication_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removePublication(soap, "ns1:removePublication", &a->ns1__removePublication_, "ns1:removePublication"))
-				{	soap_flag_ns1__removePublication_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removePublication(struct soap *soap, const struct __ns1__removePublication *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removePublication(soap, tag?tag:"-ns1:removePublication", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removePublication * SOAP_FMAC4 soap_get___ns1__removePublication(struct soap *soap, struct __ns1__removePublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removePublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removePublication * SOAP_FMAC2 soap_instantiate___ns1__removePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removePublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublication);
-		if (size)
-			*size = sizeof(struct __ns1__removePublication);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removePublication);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removePublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removePublication %p -> %p\n", q, p));
-	*(struct __ns1__removePublication*)p = *(struct __ns1__removePublication*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removePublicationResponse(struct soap *soap, struct __ns1__removePublicationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removePublicationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removePublicationResponse(struct soap *soap, const struct __ns1__removePublicationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removePublicationResponse(soap, &a->ns1__removePublicationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removePublicationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removePublicationResponse *a, const char *type)
-{
-	if (a->ns1__removePublicationResponse_)
-		soap_element_result(soap, "ns1:removePublicationResponse");
-	if (soap_out_PointerTons1__removePublicationResponse(soap, "ns1:removePublicationResponse", -1, &a->ns1__removePublicationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removePublicationResponse * SOAP_FMAC4 soap_in___ns1__removePublicationResponse(struct soap *soap, const char *tag, struct __ns1__removePublicationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removePublicationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removePublicationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removePublicationResponse, sizeof(struct __ns1__removePublicationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removePublicationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removePublicationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removePublicationResponse(soap, "ns1:removePublicationResponse", &a->ns1__removePublicationResponse_, "ns1:removePublicationResponse"))
-				{	soap_flag_ns1__removePublicationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removePublicationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removePublicationResponse(struct soap *soap, const struct __ns1__removePublicationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removePublicationResponse(soap, tag?tag:"-ns1:removePublicationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removePublicationResponse * SOAP_FMAC4 soap_get___ns1__removePublicationResponse(struct soap *soap, struct __ns1__removePublicationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removePublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removePublicationResponse * SOAP_FMAC2 soap_instantiate___ns1__removePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removePublicationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublicationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removePublicationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublicationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removePublicationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removePublicationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removePublicationResponse %p -> %p\n", q, p));
-	*(struct __ns1__removePublicationResponse*)p = *(struct __ns1__removePublicationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteKeyword(struct soap *soap, struct __ns1__deleteKeyword *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteKeyword_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteKeyword(struct soap *soap, const struct __ns1__deleteKeyword *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteKeyword(soap, &a->ns1__deleteKeyword_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteKeyword(struct soap *soap, const char *tag, int id, const struct __ns1__deleteKeyword *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteKeyword(soap, "ns1:deleteKeyword", -1, &a->ns1__deleteKeyword_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteKeyword * SOAP_FMAC4 soap_in___ns1__deleteKeyword(struct soap *soap, const char *tag, struct __ns1__deleteKeyword *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteKeyword_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteKeyword *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteKeyword, sizeof(struct __ns1__deleteKeyword), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteKeyword(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteKeyword_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteKeyword(soap, "ns1:deleteKeyword", &a->ns1__deleteKeyword_, "ns1:deleteKeyword"))
-				{	soap_flag_ns1__deleteKeyword_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteKeyword(struct soap *soap, const struct __ns1__deleteKeyword *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteKeyword(soap, tag?tag:"-ns1:deleteKeyword", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteKeyword * SOAP_FMAC4 soap_get___ns1__deleteKeyword(struct soap *soap, struct __ns1__deleteKeyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteKeyword * SOAP_FMAC2 soap_instantiate___ns1__deleteKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteKeyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeyword);
-		if (size)
-			*size = sizeof(struct __ns1__deleteKeyword);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteKeyword);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteKeyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteKeyword %p -> %p\n", q, p));
-	*(struct __ns1__deleteKeyword*)p = *(struct __ns1__deleteKeyword*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteKeywordResponse(struct soap *soap, struct __ns1__deleteKeywordResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteKeywordResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteKeywordResponse(struct soap *soap, const struct __ns1__deleteKeywordResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteKeywordResponse(soap, &a->ns1__deleteKeywordResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteKeywordResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteKeywordResponse *a, const char *type)
-{
-	if (a->ns1__deleteKeywordResponse_)
-		soap_element_result(soap, "ns1:deleteKeywordResponse");
-	if (soap_out_PointerTons1__deleteKeywordResponse(soap, "ns1:deleteKeywordResponse", -1, &a->ns1__deleteKeywordResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteKeywordResponse * SOAP_FMAC4 soap_in___ns1__deleteKeywordResponse(struct soap *soap, const char *tag, struct __ns1__deleteKeywordResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteKeywordResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteKeywordResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteKeywordResponse, sizeof(struct __ns1__deleteKeywordResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteKeywordResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteKeywordResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteKeywordResponse(soap, "ns1:deleteKeywordResponse", &a->ns1__deleteKeywordResponse_, "ns1:deleteKeywordResponse"))
-				{	soap_flag_ns1__deleteKeywordResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteKeywordResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteKeywordResponse(struct soap *soap, const struct __ns1__deleteKeywordResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteKeywordResponse(soap, tag?tag:"-ns1:deleteKeywordResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteKeywordResponse * SOAP_FMAC4 soap_get___ns1__deleteKeywordResponse(struct soap *soap, struct __ns1__deleteKeywordResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteKeywordResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteKeywordResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeywordResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteKeywordResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeywordResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteKeywordResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteKeywordResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteKeywordResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteKeywordResponse*)p = *(struct __ns1__deleteKeywordResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeKeyword(struct soap *soap, struct __ns1__removeKeyword *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeKeyword_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeKeyword(struct soap *soap, const struct __ns1__removeKeyword *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeKeyword(soap, &a->ns1__removeKeyword_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeKeyword(struct soap *soap, const char *tag, int id, const struct __ns1__removeKeyword *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeKeyword(soap, "ns1:removeKeyword", -1, &a->ns1__removeKeyword_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeKeyword * SOAP_FMAC4 soap_in___ns1__removeKeyword(struct soap *soap, const char *tag, struct __ns1__removeKeyword *a, const char *type)
-{
-	size_t soap_flag_ns1__removeKeyword_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeKeyword *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeKeyword, sizeof(struct __ns1__removeKeyword), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeKeyword(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeKeyword_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeKeyword(soap, "ns1:removeKeyword", &a->ns1__removeKeyword_, "ns1:removeKeyword"))
-				{	soap_flag_ns1__removeKeyword_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeKeyword(struct soap *soap, const struct __ns1__removeKeyword *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeKeyword(soap, tag?tag:"-ns1:removeKeyword", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeKeyword * SOAP_FMAC4 soap_get___ns1__removeKeyword(struct soap *soap, struct __ns1__removeKeyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeKeyword * SOAP_FMAC2 soap_instantiate___ns1__removeKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeKeyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeyword);
-		if (size)
-			*size = sizeof(struct __ns1__removeKeyword);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeKeyword);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeKeyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeKeyword %p -> %p\n", q, p));
-	*(struct __ns1__removeKeyword*)p = *(struct __ns1__removeKeyword*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeKeywordResponse(struct soap *soap, struct __ns1__removeKeywordResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeKeywordResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeKeywordResponse(struct soap *soap, const struct __ns1__removeKeywordResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeKeywordResponse(soap, &a->ns1__removeKeywordResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeKeywordResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeKeywordResponse *a, const char *type)
-{
-	if (a->ns1__removeKeywordResponse_)
-		soap_element_result(soap, "ns1:removeKeywordResponse");
-	if (soap_out_PointerTons1__removeKeywordResponse(soap, "ns1:removeKeywordResponse", -1, &a->ns1__removeKeywordResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeKeywordResponse * SOAP_FMAC4 soap_in___ns1__removeKeywordResponse(struct soap *soap, const char *tag, struct __ns1__removeKeywordResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeKeywordResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeKeywordResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeKeywordResponse, sizeof(struct __ns1__removeKeywordResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeKeywordResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeKeywordResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeKeywordResponse(soap, "ns1:removeKeywordResponse", &a->ns1__removeKeywordResponse_, "ns1:removeKeywordResponse"))
-				{	soap_flag_ns1__removeKeywordResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeKeywordResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeKeywordResponse(struct soap *soap, const struct __ns1__removeKeywordResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeKeywordResponse(soap, tag?tag:"-ns1:removeKeywordResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeKeywordResponse * SOAP_FMAC4 soap_get___ns1__removeKeywordResponse(struct soap *soap, struct __ns1__removeKeywordResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeKeywordResponse * SOAP_FMAC2 soap_instantiate___ns1__removeKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeKeywordResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeywordResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeKeywordResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeywordResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeKeywordResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeKeywordResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeKeywordResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeKeywordResponse*)p = *(struct __ns1__removeKeywordResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigation(struct soap *soap, struct __ns1__modifyInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyInvestigation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigation(struct soap *soap, const struct __ns1__modifyInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyInvestigation(soap, &a->ns1__modifyInvestigation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigation *a, const char *type)
-{
-	if (soap_out_PointerTons1__modifyInvestigation(soap, "ns1:modifyInvestigation", -1, &a->ns1__modifyInvestigation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigation * SOAP_FMAC4 soap_in___ns1__modifyInvestigation(struct soap *soap, const char *tag, struct __ns1__modifyInvestigation *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyInvestigation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigation, sizeof(struct __ns1__modifyInvestigation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyInvestigation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyInvestigation(soap, "ns1:modifyInvestigation", &a->ns1__modifyInvestigation_, "ns1:modifyInvestigation"))
-				{	soap_flag_ns1__modifyInvestigation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigation(struct soap *soap, const struct __ns1__modifyInvestigation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyInvestigation(soap, tag?tag:"-ns1:modifyInvestigation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigation * SOAP_FMAC4 soap_get___ns1__modifyInvestigation(struct soap *soap, struct __ns1__modifyInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyInvestigation * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigation);
-		if (size)
-			*size = sizeof(struct __ns1__modifyInvestigation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyInvestigation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigation %p -> %p\n", q, p));
-	*(struct __ns1__modifyInvestigation*)p = *(struct __ns1__modifyInvestigation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigationResponse(struct soap *soap, struct __ns1__modifyInvestigationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__modifyInvestigationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigationResponse(struct soap *soap, const struct __ns1__modifyInvestigationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__modifyInvestigationResponse(soap, &a->ns1__modifyInvestigationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigationResponse *a, const char *type)
-{
-	if (a->ns1__modifyInvestigationResponse_)
-		soap_element_result(soap, "ns1:modifyInvestigationResponse");
-	if (soap_out_PointerTons1__modifyInvestigationResponse(soap, "ns1:modifyInvestigationResponse", -1, &a->ns1__modifyInvestigationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_in___ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, struct __ns1__modifyInvestigationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__modifyInvestigationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__modifyInvestigationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigationResponse, sizeof(struct __ns1__modifyInvestigationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__modifyInvestigationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__modifyInvestigationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__modifyInvestigationResponse(soap, "ns1:modifyInvestigationResponse", &a->ns1__modifyInvestigationResponse_, "ns1:modifyInvestigationResponse"))
-				{	soap_flag_ns1__modifyInvestigationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:modifyInvestigationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigationResponse(struct soap *soap, const struct __ns1__modifyInvestigationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__modifyInvestigationResponse(soap, tag?tag:"-ns1:modifyInvestigationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_get___ns1__modifyInvestigationResponse(struct soap *soap, struct __ns1__modifyInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__modifyInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__modifyInvestigationResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__modifyInvestigationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__modifyInvestigationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__modifyInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigationResponse %p -> %p\n", q, p));
-	*(struct __ns1__modifyInvestigationResponse*)p = *(struct __ns1__modifyInvestigationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigation(struct soap *soap, struct __ns1__deleteInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteInvestigation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigation(struct soap *soap, const struct __ns1__deleteInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteInvestigation(soap, &a->ns1__deleteInvestigation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigation *a, const char *type)
-{
-	if (soap_out_PointerTons1__deleteInvestigation(soap, "ns1:deleteInvestigation", -1, &a->ns1__deleteInvestigation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigation * SOAP_FMAC4 soap_in___ns1__deleteInvestigation(struct soap *soap, const char *tag, struct __ns1__deleteInvestigation *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteInvestigation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigation, sizeof(struct __ns1__deleteInvestigation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteInvestigation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteInvestigation(soap, "ns1:deleteInvestigation", &a->ns1__deleteInvestigation_, "ns1:deleteInvestigation"))
-				{	soap_flag_ns1__deleteInvestigation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigation(struct soap *soap, const struct __ns1__deleteInvestigation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteInvestigation(soap, tag?tag:"-ns1:deleteInvestigation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigation * SOAP_FMAC4 soap_get___ns1__deleteInvestigation(struct soap *soap, struct __ns1__deleteInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteInvestigation * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigation);
-		if (size)
-			*size = sizeof(struct __ns1__deleteInvestigation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteInvestigation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigation %p -> %p\n", q, p));
-	*(struct __ns1__deleteInvestigation*)p = *(struct __ns1__deleteInvestigation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigationResponse(struct soap *soap, struct __ns1__deleteInvestigationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__deleteInvestigationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigationResponse(struct soap *soap, const struct __ns1__deleteInvestigationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__deleteInvestigationResponse(soap, &a->ns1__deleteInvestigationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigationResponse *a, const char *type)
-{
-	if (a->ns1__deleteInvestigationResponse_)
-		soap_element_result(soap, "ns1:deleteInvestigationResponse");
-	if (soap_out_PointerTons1__deleteInvestigationResponse(soap, "ns1:deleteInvestigationResponse", -1, &a->ns1__deleteInvestigationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_in___ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, struct __ns1__deleteInvestigationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__deleteInvestigationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__deleteInvestigationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigationResponse, sizeof(struct __ns1__deleteInvestigationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__deleteInvestigationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__deleteInvestigationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__deleteInvestigationResponse(soap, "ns1:deleteInvestigationResponse", &a->ns1__deleteInvestigationResponse_, "ns1:deleteInvestigationResponse"))
-				{	soap_flag_ns1__deleteInvestigationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:deleteInvestigationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigationResponse(struct soap *soap, const struct __ns1__deleteInvestigationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__deleteInvestigationResponse(soap, tag?tag:"-ns1:deleteInvestigationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_get___ns1__deleteInvestigationResponse(struct soap *soap, struct __ns1__deleteInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__deleteInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__deleteInvestigationResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__deleteInvestigationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__deleteInvestigationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__deleteInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigationResponse %p -> %p\n", q, p));
-	*(struct __ns1__deleteInvestigationResponse*)p = *(struct __ns1__deleteInvestigationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigation(struct soap *soap, struct __ns1__removeInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeInvestigation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigation(struct soap *soap, const struct __ns1__removeInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeInvestigation(soap, &a->ns1__removeInvestigation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigation *a, const char *type)
-{
-	if (soap_out_PointerTons1__removeInvestigation(soap, "ns1:removeInvestigation", -1, &a->ns1__removeInvestigation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigation * SOAP_FMAC4 soap_in___ns1__removeInvestigation(struct soap *soap, const char *tag, struct __ns1__removeInvestigation *a, const char *type)
-{
-	size_t soap_flag_ns1__removeInvestigation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigation, sizeof(struct __ns1__removeInvestigation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeInvestigation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeInvestigation(soap, "ns1:removeInvestigation", &a->ns1__removeInvestigation_, "ns1:removeInvestigation"))
-				{	soap_flag_ns1__removeInvestigation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigation(struct soap *soap, const struct __ns1__removeInvestigation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeInvestigation(soap, tag?tag:"-ns1:removeInvestigation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigation * SOAP_FMAC4 soap_get___ns1__removeInvestigation(struct soap *soap, struct __ns1__removeInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeInvestigation * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigation);
-		if (size)
-			*size = sizeof(struct __ns1__removeInvestigation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeInvestigation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigation %p -> %p\n", q, p));
-	*(struct __ns1__removeInvestigation*)p = *(struct __ns1__removeInvestigation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigationResponse(struct soap *soap, struct __ns1__removeInvestigationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__removeInvestigationResponse_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigationResponse(struct soap *soap, const struct __ns1__removeInvestigationResponse *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__removeInvestigationResponse(soap, &a->ns1__removeInvestigationResponse_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigationResponse *a, const char *type)
-{
-	if (a->ns1__removeInvestigationResponse_)
-		soap_element_result(soap, "ns1:removeInvestigationResponse");
-	if (soap_out_PointerTons1__removeInvestigationResponse(soap, "ns1:removeInvestigationResponse", -1, &a->ns1__removeInvestigationResponse_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigationResponse * SOAP_FMAC4 soap_in___ns1__removeInvestigationResponse(struct soap *soap, const char *tag, struct __ns1__removeInvestigationResponse *a, const char *type)
-{
-	size_t soap_flag_ns1__removeInvestigationResponse_ = 1;
-	short soap_flag;
-	a = (struct __ns1__removeInvestigationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigationResponse, sizeof(struct __ns1__removeInvestigationResponse), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__removeInvestigationResponse(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__removeInvestigationResponse_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__removeInvestigationResponse(soap, "ns1:removeInvestigationResponse", &a->ns1__removeInvestigationResponse_, "ns1:removeInvestigationResponse"))
-				{	soap_flag_ns1__removeInvestigationResponse_--;
-					continue;
-				}
-			soap_check_result(soap, "ns1:removeInvestigationResponse");
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigationResponse(struct soap *soap, const struct __ns1__removeInvestigationResponse *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__removeInvestigationResponse(soap, tag?tag:"-ns1:removeInvestigationResponse", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__removeInvestigationResponse * SOAP_FMAC4 soap_get___ns1__removeInvestigationResponse(struct soap *soap, struct __ns1__removeInvestigationResponse *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__removeInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__removeInvestigationResponse * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigationResponse, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigationResponse);
-		if (size)
-			*size = sizeof(struct __ns1__removeInvestigationResponse);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigationResponse[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__removeInvestigationResponse);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__removeInvestigationResponse*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigationResponse %p -> %p\n", q, p));
-	*(struct __ns1__removeInvestigationResponse*)p = *(struct __ns1__removeInvestigationResponse*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createInvestigation(struct soap *soap, struct __ns1__createInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__createInvestigation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createInvestigation(struct soap *soap, const struct __ns1__createInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__createInvestigation(soap, &a->ns1__createInvestigation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__createInvestigation *a, const char *type)
-{
-	if (soap_out_PointerTons1__createInvestigation(soap, "ns1:createInvestigation", -1, &a->ns1__createInvestigation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createInvestigation * SOAP_FMAC4 soap_in___ns1__createInvestigation(struct soap *soap, const char *tag, struct __ns1__createInvestigation *a, const char *type)
-{
-	size_t soap_flag_ns1__createInvestigation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__createInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createInvestigation, sizeof(struct __ns1__createInvestigation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__createInvestigation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__createInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__createInvestigation(soap, "ns1:createInvestigation", &a->ns1__createInvestigation_, "ns1:createInvestigation"))
-				{	soap_flag_ns1__createInvestigation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createInvestigation(struct soap *soap, const struct __ns1__createInvestigation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__createInvestigation(soap, tag?tag:"-ns1:createInvestigation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__createInvestigation * SOAP_FMAC4 soap_get___ns1__createInvestigation(struct soap *soap, struct __ns1__createInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__createInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__createInvestigation * SOAP_FMAC2 soap_instantiate___ns1__createInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createInvestigation);
-		if (size)
-			*size = sizeof(struct __ns1__createInvestigation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__createInvestigation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__createInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createInvestigation %p -> %p\n", q, p));
-	*(struct __ns1__createInvestigation*)p = *(struct __ns1__createInvestigation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInvestigationsIncludes(struct soap *soap, struct __ns1__getInvestigationsIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getInvestigationsIncludes_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInvestigationsIncludes(struct soap *soap, const struct __ns1__getInvestigationsIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getInvestigationsIncludes(soap, &a->ns1__getInvestigationsIncludes_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getInvestigationsIncludes *a, const char *type)
-{
-	if (soap_out_PointerTons1__getInvestigationsIncludes(soap, "ns1:getInvestigationsIncludes", -1, &a->ns1__getInvestigationsIncludes_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_in___ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, struct __ns1__getInvestigationsIncludes *a, const char *type)
-{
-	size_t soap_flag_ns1__getInvestigationsIncludes_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getInvestigationsIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInvestigationsIncludes, sizeof(struct __ns1__getInvestigationsIncludes), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getInvestigationsIncludes(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getInvestigationsIncludes_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getInvestigationsIncludes(soap, "ns1:getInvestigationsIncludes", &a->ns1__getInvestigationsIncludes_, "ns1:getInvestigationsIncludes"))
-				{	soap_flag_ns1__getInvestigationsIncludes_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInvestigationsIncludes(struct soap *soap, const struct __ns1__getInvestigationsIncludes *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getInvestigationsIncludes(soap, tag?tag:"-ns1:getInvestigationsIncludes", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_get___ns1__getInvestigationsIncludes(struct soap *soap, struct __ns1__getInvestigationsIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getInvestigationsIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getInvestigationsIncludes * SOAP_FMAC2 soap_instantiate___ns1__getInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getInvestigationsIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationsIncludes);
-		if (size)
-			*size = sizeof(struct __ns1__getInvestigationsIncludes);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationsIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getInvestigationsIncludes);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getInvestigationsIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getInvestigationsIncludes %p -> %p\n", q, p));
-	*(struct __ns1__getInvestigationsIncludes*)p = *(struct __ns1__getInvestigationsIncludes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataFileParameter(struct soap *soap, struct __ns1__addDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addDataFileParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataFileParameter(struct soap *soap, const struct __ns1__addDataFileParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addDataFileParameter(soap, &a->ns1__addDataFileParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__addDataFileParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__addDataFileParameter(soap, "ns1:addDataFileParameter", -1, &a->ns1__addDataFileParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataFileParameter * SOAP_FMAC4 soap_in___ns1__addDataFileParameter(struct soap *soap, const char *tag, struct __ns1__addDataFileParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__addDataFileParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataFileParameter, sizeof(struct __ns1__addDataFileParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addDataFileParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addDataFileParameter(soap, "ns1:addDataFileParameter", &a->ns1__addDataFileParameter_, "ns1:addDataFileParameter"))
-				{	soap_flag_ns1__addDataFileParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataFileParameter(struct soap *soap, const struct __ns1__addDataFileParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addDataFileParameter(soap, tag?tag:"-ns1:addDataFileParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addDataFileParameter * SOAP_FMAC4 soap_get___ns1__addDataFileParameter(struct soap *soap, struct __ns1__addDataFileParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__addDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataFileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameter);
-		if (size)
-			*size = sizeof(struct __ns1__addDataFileParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addDataFileParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addDataFileParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataFileParameter %p -> %p\n", q, p));
-	*(struct __ns1__addDataFileParameter*)p = *(struct __ns1__addDataFileParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatafile(struct soap *soap, struct __ns1__getDatafile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getDatafile_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatafile(struct soap *soap, const struct __ns1__getDatafile *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getDatafile(soap, &a->ns1__getDatafile_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatafile(struct soap *soap, const char *tag, int id, const struct __ns1__getDatafile *a, const char *type)
-{
-	if (soap_out_PointerTons1__getDatafile(soap, "ns1:getDatafile", -1, &a->ns1__getDatafile_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatafile * SOAP_FMAC4 soap_in___ns1__getDatafile(struct soap *soap, const char *tag, struct __ns1__getDatafile *a, const char *type)
-{
-	size_t soap_flag_ns1__getDatafile_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getDatafile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatafile, sizeof(struct __ns1__getDatafile), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getDatafile(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getDatafile_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getDatafile(soap, "ns1:getDatafile", &a->ns1__getDatafile_, "ns1:getDatafile"))
-				{	soap_flag_ns1__getDatafile_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatafile(struct soap *soap, const struct __ns1__getDatafile *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getDatafile(soap, tag?tag:"-ns1:getDatafile", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatafile * SOAP_FMAC4 soap_get___ns1__getDatafile(struct soap *soap, struct __ns1__getDatafile *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getDatafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getDatafile * SOAP_FMAC2 soap_instantiate___ns1__getDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatafile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafile);
-		if (size)
-			*size = sizeof(struct __ns1__getDatafile);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafile[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getDatafile);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getDatafile*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatafile %p -> %p\n", q, p));
-	*(struct __ns1__getDatafile*)p = *(struct __ns1__getDatafile*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatasetIncludes(struct soap *soap, struct __ns1__getDatasetIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getDatasetIncludes_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatasetIncludes(struct soap *soap, const struct __ns1__getDatasetIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getDatasetIncludes(soap, &a->ns1__getDatasetIncludes_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatasetIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getDatasetIncludes *a, const char *type)
-{
-	if (soap_out_PointerTons1__getDatasetIncludes(soap, "ns1:getDatasetIncludes", -1, &a->ns1__getDatasetIncludes_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatasetIncludes * SOAP_FMAC4 soap_in___ns1__getDatasetIncludes(struct soap *soap, const char *tag, struct __ns1__getDatasetIncludes *a, const char *type)
-{
-	size_t soap_flag_ns1__getDatasetIncludes_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getDatasetIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatasetIncludes, sizeof(struct __ns1__getDatasetIncludes), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getDatasetIncludes(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getDatasetIncludes_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getDatasetIncludes(soap, "ns1:getDatasetIncludes", &a->ns1__getDatasetIncludes_, "ns1:getDatasetIncludes"))
-				{	soap_flag_ns1__getDatasetIncludes_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatasetIncludes(struct soap *soap, const struct __ns1__getDatasetIncludes *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getDatasetIncludes(soap, tag?tag:"-ns1:getDatasetIncludes", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDatasetIncludes * SOAP_FMAC4 soap_get___ns1__getDatasetIncludes(struct soap *soap, struct __ns1__getDatasetIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getDatasetIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getDatasetIncludes * SOAP_FMAC2 soap_instantiate___ns1__getDatasetIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatasetIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatasetIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasetIncludes);
-		if (size)
-			*size = sizeof(struct __ns1__getDatasetIncludes);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasetIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getDatasetIncludes);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getDatasetIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatasetIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatasetIncludes %p -> %p\n", q, p));
-	*(struct __ns1__getDatasetIncludes*)p = *(struct __ns1__getDatasetIncludes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDataset(struct soap *soap, struct __ns1__getDataset *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getDataset_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDataset(struct soap *soap, const struct __ns1__getDataset *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getDataset(soap, &a->ns1__getDataset_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDataset(struct soap *soap, const char *tag, int id, const struct __ns1__getDataset *a, const char *type)
-{
-	if (soap_out_PointerTons1__getDataset(soap, "ns1:getDataset", -1, &a->ns1__getDataset_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDataset * SOAP_FMAC4 soap_in___ns1__getDataset(struct soap *soap, const char *tag, struct __ns1__getDataset *a, const char *type)
-{
-	size_t soap_flag_ns1__getDataset_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getDataset *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDataset, sizeof(struct __ns1__getDataset), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getDataset(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getDataset_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getDataset(soap, "ns1:getDataset", &a->ns1__getDataset_, "ns1:getDataset"))
-				{	soap_flag_ns1__getDataset_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDataset(struct soap *soap, const struct __ns1__getDataset *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getDataset(soap, tag?tag:"-ns1:getDataset", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getDataset * SOAP_FMAC4 soap_get___ns1__getDataset(struct soap *soap, struct __ns1__getDataset *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getDataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getDataset * SOAP_FMAC2 soap_instantiate___ns1__getDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDataset, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDataset);
-		if (size)
-			*size = sizeof(struct __ns1__getDataset);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDataset[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getDataset);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getDataset*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDataset %p -> %p\n", q, p));
-	*(struct __ns1__getDataset*)p = *(struct __ns1__getDataset*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInvestigationIncludes(struct soap *soap, struct __ns1__getInvestigationIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getInvestigationIncludes_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInvestigationIncludes(struct soap *soap, const struct __ns1__getInvestigationIncludes *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getInvestigationIncludes(soap, &a->ns1__getInvestigationIncludes_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInvestigationIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getInvestigationIncludes *a, const char *type)
-{
-	if (soap_out_PointerTons1__getInvestigationIncludes(soap, "ns1:getInvestigationIncludes", -1, &a->ns1__getInvestigationIncludes_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getInvestigationIncludes * SOAP_FMAC4 soap_in___ns1__getInvestigationIncludes(struct soap *soap, const char *tag, struct __ns1__getInvestigationIncludes *a, const char *type)
-{
-	size_t soap_flag_ns1__getInvestigationIncludes_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getInvestigationIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInvestigationIncludes, sizeof(struct __ns1__getInvestigationIncludes), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getInvestigationIncludes(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getInvestigationIncludes_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getInvestigationIncludes(soap, "ns1:getInvestigationIncludes", &a->ns1__getInvestigationIncludes_, "ns1:getInvestigationIncludes"))
-				{	soap_flag_ns1__getInvestigationIncludes_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInvestigationIncludes(struct soap *soap, const struct __ns1__getInvestigationIncludes *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getInvestigationIncludes(soap, tag?tag:"-ns1:getInvestigationIncludes", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getInvestigationIncludes * SOAP_FMAC4 soap_get___ns1__getInvestigationIncludes(struct soap *soap, struct __ns1__getInvestigationIncludes *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getInvestigationIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getInvestigationIncludes * SOAP_FMAC2 soap_instantiate___ns1__getInvestigationIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getInvestigationIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getInvestigationIncludes, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationIncludes);
-		if (size)
-			*size = sizeof(struct __ns1__getInvestigationIncludes);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationIncludes[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getInvestigationIncludes);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getInvestigationIncludes*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getInvestigationIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getInvestigationIncludes %p -> %p\n", q, p));
-	*(struct __ns1__getInvestigationIncludes*)p = *(struct __ns1__getInvestigationIncludes*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInvestigation(struct soap *soap, struct __ns1__getInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__getInvestigation_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInvestigation(struct soap *soap, const struct __ns1__getInvestigation *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__getInvestigation(soap, &a->ns1__getInvestigation_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__getInvestigation *a, const char *type)
-{
-	if (soap_out_PointerTons1__getInvestigation(soap, "ns1:getInvestigation", -1, &a->ns1__getInvestigation_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getInvestigation * SOAP_FMAC4 soap_in___ns1__getInvestigation(struct soap *soap, const char *tag, struct __ns1__getInvestigation *a, const char *type)
-{
-	size_t soap_flag_ns1__getInvestigation_ = 1;
-	short soap_flag;
-	a = (struct __ns1__getInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInvestigation, sizeof(struct __ns1__getInvestigation), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__getInvestigation(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__getInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__getInvestigation(soap, "ns1:getInvestigation", &a->ns1__getInvestigation_, "ns1:getInvestigation"))
-				{	soap_flag_ns1__getInvestigation_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInvestigation(struct soap *soap, const struct __ns1__getInvestigation *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__getInvestigation(soap, tag?tag:"-ns1:getInvestigation", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__getInvestigation * SOAP_FMAC4 soap_get___ns1__getInvestigation(struct soap *soap, struct __ns1__getInvestigation *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__getInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__getInvestigation * SOAP_FMAC2 soap_instantiate___ns1__getInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getInvestigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigation);
-		if (size)
-			*size = sizeof(struct __ns1__getInvestigation);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigation[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__getInvestigation);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__getInvestigation*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getInvestigation %p -> %p\n", q, p));
-	*(struct __ns1__getInvestigation*)p = *(struct __ns1__getInvestigation*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addInvestigator(struct soap *soap, struct __ns1__addInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addInvestigator_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addInvestigator(struct soap *soap, const struct __ns1__addInvestigator *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addInvestigator(soap, &a->ns1__addInvestigator_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__addInvestigator *a, const char *type)
-{
-	if (soap_out_PointerTons1__addInvestigator(soap, "ns1:addInvestigator", -1, &a->ns1__addInvestigator_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addInvestigator * SOAP_FMAC4 soap_in___ns1__addInvestigator(struct soap *soap, const char *tag, struct __ns1__addInvestigator *a, const char *type)
-{
-	size_t soap_flag_ns1__addInvestigator_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addInvestigator, sizeof(struct __ns1__addInvestigator), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addInvestigator(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addInvestigator(soap, "ns1:addInvestigator", &a->ns1__addInvestigator_, "ns1:addInvestigator"))
-				{	soap_flag_ns1__addInvestigator_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addInvestigator(struct soap *soap, const struct __ns1__addInvestigator *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addInvestigator(soap, tag?tag:"-ns1:addInvestigator", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addInvestigator * SOAP_FMAC4 soap_get___ns1__addInvestigator(struct soap *soap, struct __ns1__addInvestigator *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addInvestigator * SOAP_FMAC2 soap_instantiate___ns1__addInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addInvestigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addInvestigator);
-		if (size)
-			*size = sizeof(struct __ns1__addInvestigator);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addInvestigator[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addInvestigator);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addInvestigator*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addInvestigator %p -> %p\n", q, p));
-	*(struct __ns1__addInvestigator*)p = *(struct __ns1__addInvestigator*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addKeyword(struct soap *soap, struct __ns1__addKeyword *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addKeyword_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addKeyword(struct soap *soap, const struct __ns1__addKeyword *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addKeyword(soap, &a->ns1__addKeyword_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addKeyword(struct soap *soap, const char *tag, int id, const struct __ns1__addKeyword *a, const char *type)
-{
-	if (soap_out_PointerTons1__addKeyword(soap, "ns1:addKeyword", -1, &a->ns1__addKeyword_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addKeyword * SOAP_FMAC4 soap_in___ns1__addKeyword(struct soap *soap, const char *tag, struct __ns1__addKeyword *a, const char *type)
-{
-	size_t soap_flag_ns1__addKeyword_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addKeyword *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addKeyword, sizeof(struct __ns1__addKeyword), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addKeyword(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addKeyword_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addKeyword(soap, "ns1:addKeyword", &a->ns1__addKeyword_, "ns1:addKeyword"))
-				{	soap_flag_ns1__addKeyword_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addKeyword(struct soap *soap, const struct __ns1__addKeyword *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addKeyword(soap, tag?tag:"-ns1:addKeyword", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addKeyword * SOAP_FMAC4 soap_get___ns1__addKeyword(struct soap *soap, struct __ns1__addKeyword *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addKeyword * SOAP_FMAC2 soap_instantiate___ns1__addKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addKeyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addKeyword);
-		if (size)
-			*size = sizeof(struct __ns1__addKeyword);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addKeyword[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addKeyword);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addKeyword*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addKeyword %p -> %p\n", q, p));
-	*(struct __ns1__addKeyword*)p = *(struct __ns1__addKeyword*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addPublication(struct soap *soap, struct __ns1__addPublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addPublication_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addPublication(struct soap *soap, const struct __ns1__addPublication *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addPublication(soap, &a->ns1__addPublication_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addPublication(struct soap *soap, const char *tag, int id, const struct __ns1__addPublication *a, const char *type)
-{
-	if (soap_out_PointerTons1__addPublication(soap, "ns1:addPublication", -1, &a->ns1__addPublication_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addPublication * SOAP_FMAC4 soap_in___ns1__addPublication(struct soap *soap, const char *tag, struct __ns1__addPublication *a, const char *type)
-{
-	size_t soap_flag_ns1__addPublication_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addPublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addPublication, sizeof(struct __ns1__addPublication), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addPublication(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addPublication_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addPublication(soap, "ns1:addPublication", &a->ns1__addPublication_, "ns1:addPublication"))
-				{	soap_flag_ns1__addPublication_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addPublication(struct soap *soap, const struct __ns1__addPublication *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addPublication(soap, tag?tag:"-ns1:addPublication", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addPublication * SOAP_FMAC4 soap_get___ns1__addPublication(struct soap *soap, struct __ns1__addPublication *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addPublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addPublication * SOAP_FMAC2 soap_instantiate___ns1__addPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addPublication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addPublication);
-		if (size)
-			*size = sizeof(struct __ns1__addPublication);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addPublication[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addPublication);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addPublication*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addPublication %p -> %p\n", q, p));
-	*(struct __ns1__addPublication*)p = *(struct __ns1__addPublication*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addSampleParameter(struct soap *soap, struct __ns1__addSampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addSampleParameter_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addSampleParameter(struct soap *soap, const struct __ns1__addSampleParameter *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addSampleParameter(soap, &a->ns1__addSampleParameter_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addSampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__addSampleParameter *a, const char *type)
-{
-	if (soap_out_PointerTons1__addSampleParameter(soap, "ns1:addSampleParameter", -1, &a->ns1__addSampleParameter_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addSampleParameter * SOAP_FMAC4 soap_in___ns1__addSampleParameter(struct soap *soap, const char *tag, struct __ns1__addSampleParameter *a, const char *type)
-{
-	size_t soap_flag_ns1__addSampleParameter_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addSampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addSampleParameter, sizeof(struct __ns1__addSampleParameter), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addSampleParameter(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addSampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addSampleParameter(soap, "ns1:addSampleParameter", &a->ns1__addSampleParameter_, "ns1:addSampleParameter"))
-				{	soap_flag_ns1__addSampleParameter_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addSampleParameter(struct soap *soap, const struct __ns1__addSampleParameter *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addSampleParameter(soap, tag?tag:"-ns1:addSampleParameter", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addSampleParameter * SOAP_FMAC4 soap_get___ns1__addSampleParameter(struct soap *soap, struct __ns1__addSampleParameter *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addSampleParameter * SOAP_FMAC2 soap_instantiate___ns1__addSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addSampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSampleParameter);
-		if (size)
-			*size = sizeof(struct __ns1__addSampleParameter);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSampleParameter[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addSampleParameter);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addSampleParameter*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addSampleParameter %p -> %p\n", q, p));
-	*(struct __ns1__addSampleParameter*)p = *(struct __ns1__addSampleParameter*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__logout(struct soap *soap, struct __ns1__logout *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__logout_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__logout(struct soap *soap, const struct __ns1__logout *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__logout(soap, &a->ns1__logout_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__logout(struct soap *soap, const char *tag, int id, const struct __ns1__logout *a, const char *type)
-{
-	if (soap_out_PointerTons1__logout(soap, "ns1:logout", -1, &a->ns1__logout_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__logout * SOAP_FMAC4 soap_in___ns1__logout(struct soap *soap, const char *tag, struct __ns1__logout *a, const char *type)
-{
-	size_t soap_flag_ns1__logout_ = 1;
-	short soap_flag;
-	a = (struct __ns1__logout *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__logout, sizeof(struct __ns1__logout), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__logout(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__logout_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__logout(soap, "ns1:logout", &a->ns1__logout_, "ns1:logout"))
-				{	soap_flag_ns1__logout_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__logout(struct soap *soap, const struct __ns1__logout *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__logout(soap, tag?tag:"-ns1:logout", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__logout * SOAP_FMAC4 soap_get___ns1__logout(struct soap *soap, struct __ns1__logout *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__logout(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__logout * SOAP_FMAC2 soap_instantiate___ns1__logout(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__logout(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__logout, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__logout);
-		if (size)
-			*size = sizeof(struct __ns1__logout);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__logout[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__logout);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__logout*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__logout(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__logout %p -> %p\n", q, p));
-	*(struct __ns1__logout*)p = *(struct __ns1__logout*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addSample(struct soap *soap, struct __ns1__addSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__addSample_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addSample(struct soap *soap, const struct __ns1__addSample *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__addSample(soap, &a->ns1__addSample_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addSample(struct soap *soap, const char *tag, int id, const struct __ns1__addSample *a, const char *type)
-{
-	if (soap_out_PointerTons1__addSample(soap, "ns1:addSample", -1, &a->ns1__addSample_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addSample * SOAP_FMAC4 soap_in___ns1__addSample(struct soap *soap, const char *tag, struct __ns1__addSample *a, const char *type)
-{
-	size_t soap_flag_ns1__addSample_ = 1;
-	short soap_flag;
-	a = (struct __ns1__addSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addSample, sizeof(struct __ns1__addSample), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__addSample(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__addSample_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__addSample(soap, "ns1:addSample", &a->ns1__addSample_, "ns1:addSample"))
-				{	soap_flag_ns1__addSample_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addSample(struct soap *soap, const struct __ns1__addSample *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__addSample(soap, tag?tag:"-ns1:addSample", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__addSample * SOAP_FMAC4 soap_get___ns1__addSample(struct soap *soap, struct __ns1__addSample *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__addSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__addSample * SOAP_FMAC2 soap_instantiate___ns1__addSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addSample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSample);
-		if (size)
-			*size = sizeof(struct __ns1__addSample);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSample[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__addSample);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__addSample*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addSample %p -> %p\n", q, p));
-	*(struct __ns1__addSample*)p = *(struct __ns1__addSample*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__loginLifetime(struct soap *soap, struct __ns1__loginLifetime *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__loginLifetime_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__loginLifetime(struct soap *soap, const struct __ns1__loginLifetime *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__loginLifetime(soap, &a->ns1__loginLifetime_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__loginLifetime(struct soap *soap, const char *tag, int id, const struct __ns1__loginLifetime *a, const char *type)
-{
-	if (soap_out_PointerTons1__loginLifetime(soap, "ns1:loginLifetime", -1, &a->ns1__loginLifetime_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__loginLifetime * SOAP_FMAC4 soap_in___ns1__loginLifetime(struct soap *soap, const char *tag, struct __ns1__loginLifetime *a, const char *type)
-{
-	size_t soap_flag_ns1__loginLifetime_ = 1;
-	short soap_flag;
-	a = (struct __ns1__loginLifetime *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__loginLifetime, sizeof(struct __ns1__loginLifetime), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__loginLifetime(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__loginLifetime_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__loginLifetime(soap, "ns1:loginLifetime", &a->ns1__loginLifetime_, "ns1:loginLifetime"))
-				{	soap_flag_ns1__loginLifetime_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__loginLifetime(struct soap *soap, const struct __ns1__loginLifetime *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__loginLifetime(soap, tag?tag:"-ns1:loginLifetime", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__loginLifetime * SOAP_FMAC4 soap_get___ns1__loginLifetime(struct soap *soap, struct __ns1__loginLifetime *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__loginLifetime(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__loginLifetime * SOAP_FMAC2 soap_instantiate___ns1__loginLifetime(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__loginLifetime(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__loginLifetime, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__loginLifetime);
-		if (size)
-			*size = sizeof(struct __ns1__loginLifetime);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__loginLifetime[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__loginLifetime);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__loginLifetime*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__loginLifetime(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__loginLifetime %p -> %p\n", q, p));
-	*(struct __ns1__loginLifetime*)p = *(struct __ns1__loginLifetime*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__login(struct soap *soap, struct __ns1__login *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__login_ = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__login(struct soap *soap, const struct __ns1__login *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__login(soap, &a->ns1__login_);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__login(struct soap *soap, const char *tag, int id, const struct __ns1__login *a, const char *type)
-{
-	if (soap_out_PointerTons1__login(soap, "ns1:login", -1, &a->ns1__login_, ""))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__login * SOAP_FMAC4 soap_in___ns1__login(struct soap *soap, const char *tag, struct __ns1__login *a, const char *type)
-{
-	size_t soap_flag_ns1__login_ = 1;
-	short soap_flag;
-	a = (struct __ns1__login *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__login, sizeof(struct __ns1__login), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default___ns1__login(soap, a);
-		for (soap_flag = 0;; soap_flag = 1)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__login_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__login(soap, "ns1:login", &a->ns1__login_, "ns1:login"))
-				{	soap_flag_ns1__login_--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				if (soap_flag)
-				{	soap->error = SOAP_OK;
-					break;
-				}
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__login(struct soap *soap, const struct __ns1__login *a, const char *tag, const char *type)
-{
-	register int id = 0;
-	if (soap_out___ns1__login(soap, tag?tag:"-ns1:login", id, a, type))
-		return soap->error;
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 struct __ns1__login * SOAP_FMAC4 soap_get___ns1__login(struct soap *soap, struct __ns1__login *p, const char *tag, const char *type)
-{
-	if ((p = soap_in___ns1__login(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct __ns1__login * SOAP_FMAC2 soap_instantiate___ns1__login(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__login(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__login, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__login);
-		if (size)
-			*size = sizeof(struct __ns1__login);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__login[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct __ns1__login);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct __ns1__login*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__login(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__login %p -> %p\n", q, p));
-	*(struct __ns1__login*)p = *(struct __ns1__login*)q;
-}
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	a->ns1__ICATAPIException_ = NULL;
-	a->ns1__InsufficientPrivilegesException_ = NULL;
-	a->ns1__NoSuchObjectFoundException_ = NULL;
-	a->ns1__NoSuchUserException_ = NULL;
-	a->ns1__ParameterSearchException_ = NULL;
-	a->ns1__SessionException_ = NULL;
-	a->ns1__ValidationException_ = NULL;
-	a->__type = 0;
-	a->fault = NULL;
-	a->__any = NULL;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a)
-{
-	(void)soap; (void)a; /* appease -Wall -Werror */
-	soap_serialize_PointerTons1__ICATAPIException(soap, &a->ns1__ICATAPIException_);
-	soap_serialize_PointerTons1__InsufficientPrivilegesException(soap, &a->ns1__InsufficientPrivilegesException_);
-	soap_serialize_PointerTons1__NoSuchObjectFoundException(soap, &a->ns1__NoSuchObjectFoundException_);
-	soap_serialize_PointerTons1__NoSuchUserException(soap, &a->ns1__NoSuchUserException_);
-	soap_serialize_PointerTons1__ParameterSearchException(soap, &a->ns1__ParameterSearchException_);
-	soap_serialize_PointerTons1__SessionException(soap, &a->ns1__SessionException_);
-	soap_serialize_PointerTons1__ValidationException(soap, &a->ns1__ValidationException_);
-	soap_markelement(soap, a->fault, a->__type);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Detail *a, const char *type)
-{
-	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Detail), type))
-		return soap->error;
-	if (soap_out_PointerTons1__ICATAPIException(soap, "ns1:ICATAPIException", -1, &a->ns1__ICATAPIException_, ""))
-		return soap->error;
-	if (soap_out_PointerTons1__InsufficientPrivilegesException(soap, "ns1:InsufficientPrivilegesException", -1, &a->ns1__InsufficientPrivilegesException_, ""))
-		return soap->error;
-	if (soap_out_PointerTons1__NoSuchObjectFoundException(soap, "ns1:NoSuchObjectFoundException", -1, &a->ns1__NoSuchObjectFoundException_, ""))
-		return soap->error;
-	if (soap_out_PointerTons1__NoSuchUserException(soap, "ns1:NoSuchUserException", -1, &a->ns1__NoSuchUserException_, ""))
-		return soap->error;
-	if (soap_out_PointerTons1__ParameterSearchException(soap, "ns1:ParameterSearchException", -1, &a->ns1__ParameterSearchException_, ""))
-		return soap->error;
-	if (soap_out_PointerTons1__SessionException(soap, "ns1:SessionException", -1, &a->ns1__SessionException_, ""))
-		return soap->error;
-	if (soap_out_PointerTons1__ValidationException(soap, "ns1:ValidationException", -1, &a->ns1__ValidationException_, ""))
-		return soap->error;
-	if (soap_putelement(soap, a->fault, "fault", -1, a->__type))
-		return soap->error;
-	soap_outliteral(soap, "-any", &a->__any, NULL);
-	return soap_element_end_out(soap, tag);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_in_SOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail *a, const char *type)
-{
-	size_t soap_flag_ns1__ICATAPIException_ = 1;
-	size_t soap_flag_ns1__InsufficientPrivilegesException_ = 1;
-	size_t soap_flag_ns1__NoSuchObjectFoundException_ = 1;
-	size_t soap_flag_ns1__NoSuchUserException_ = 1;
-	size_t soap_flag_ns1__ParameterSearchException_ = 1;
-	size_t soap_flag_ns1__SessionException_ = 1;
-	size_t soap_flag_ns1__ValidationException_ = 1;
-	size_t soap_flag_fault = 1;
-	size_t soap_flag___any = 1;
-	if (soap_element_begin_in(soap, tag, 0, type))
-		return NULL;
-	a = (struct SOAP_ENV__Detail *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0, NULL, NULL, NULL);
-	if (!a)
-		return NULL;
-	soap_default_SOAP_ENV__Detail(soap, a);
-	if (soap->body && !*soap->href)
-	{
-		for (;;)
-		{	soap->error = SOAP_TAG_MISMATCH;
-			if (soap_flag_ns1__ICATAPIException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__ICATAPIException(soap, "ns1:ICATAPIException", &a->ns1__ICATAPIException_, "ns1:ICATAPIException"))
-				{	soap_flag_ns1__ICATAPIException_--;
-					continue;
-				}
-			if (soap_flag_ns1__InsufficientPrivilegesException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__InsufficientPrivilegesException(soap, "ns1:InsufficientPrivilegesException", &a->ns1__InsufficientPrivilegesException_, "ns1:InsufficientPrivilegesException"))
-				{	soap_flag_ns1__InsufficientPrivilegesException_--;
-					continue;
-				}
-			if (soap_flag_ns1__NoSuchObjectFoundException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__NoSuchObjectFoundException(soap, "ns1:NoSuchObjectFoundException", &a->ns1__NoSuchObjectFoundException_, "ns1:NoSuchObjectFoundException"))
-				{	soap_flag_ns1__NoSuchObjectFoundException_--;
-					continue;
-				}
-			if (soap_flag_ns1__NoSuchUserException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__NoSuchUserException(soap, "ns1:NoSuchUserException", &a->ns1__NoSuchUserException_, "ns1:NoSuchUserException"))
-				{	soap_flag_ns1__NoSuchUserException_--;
-					continue;
-				}
-			if (soap_flag_ns1__ParameterSearchException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__ParameterSearchException(soap, "ns1:ParameterSearchException", &a->ns1__ParameterSearchException_, "ns1:ParameterSearchException"))
-				{	soap_flag_ns1__ParameterSearchException_--;
-					continue;
-				}
-			if (soap_flag_ns1__SessionException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__SessionException(soap, "ns1:SessionException", &a->ns1__SessionException_, "ns1:SessionException"))
-				{	soap_flag_ns1__SessionException_--;
-					continue;
-				}
-			if (soap_flag_ns1__ValidationException_ && soap->error == SOAP_TAG_MISMATCH)
-				if (soap_in_PointerTons1__ValidationException(soap, "ns1:ValidationException", &a->ns1__ValidationException_, "ns1:ValidationException"))
-				{	soap_flag_ns1__ValidationException_--;
-					continue;
-				}
-			if (soap_flag_fault && soap->error == SOAP_TAG_MISMATCH)
-				if ((a->fault = soap_getelement(soap, &a->__type)))
-				{	soap_flag_fault = 0;
-					continue;
-				}
-			if (soap_flag___any && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-				if (soap_inliteral(soap, "-any", &a->__any))
-				{	soap_flag___any--;
-					continue;
-				}
-			if (soap->error == SOAP_TAG_MISMATCH)
-				soap->error = soap_ignore_element(soap);
-			if (soap->error == SOAP_NO_TAG)
-				break;
-			if (soap->error)
-				return NULL;
-		}
-		if (soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fault > 1))
-	{	soap->error = SOAP_OCCURS;
-		return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Detail);
-	if (soap_out_SOAP_ENV__Detail(soap, tag?tag:"SOAP-ENV:Detail", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *p, const char *tag, const char *type)
-{
-	if ((p = soap_in_SOAP_ENV__Detail(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC1 struct SOAP_ENV__Detail * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Detail(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Detail(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Detail, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Detail);
-		if (size)
-			*size = sizeof(struct SOAP_ENV__Detail);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Detail[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(struct SOAP_ENV__Detail);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (struct SOAP_ENV__Detail*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Detail(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Detail %p -> %p\n", q, p));
-	*(struct SOAP_ENV__Detail*)p = *(struct SOAP_ENV__Detail*)q;
-}
-
-#endif
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Reason))
-		soap_serialize_SOAP_ENV__Reason(soap, *a);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Reason *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Reason);
-	if (id < 0)
-		return soap->error;
-	return soap_out_SOAP_ENV__Reason(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (struct SOAP_ENV__Reason **)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_SOAP_ENV__Reason(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Reason **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Reason);
-	if (soap_out_PointerToSOAP_ENV__Reason(soap, tag?tag:"SOAP-ENV:Reason", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerToSOAP_ENV__Reason(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-#endif
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Detail))
-		soap_serialize_SOAP_ENV__Detail(soap, *a);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Detail *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Detail);
-	if (id < 0)
-		return soap->error;
-	return soap_out_SOAP_ENV__Detail(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (struct SOAP_ENV__Detail **)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_SOAP_ENV__Detail(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Detail **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Detail);
-	if (soap_out_PointerToSOAP_ENV__Detail(soap, tag?tag:"SOAP-ENV:Detail", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerToSOAP_ENV__Detail(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-#endif
-
-#ifndef WITH_NOGLOBAL
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Code))
-		soap_serialize_SOAP_ENV__Code(soap, *a);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Code *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Code);
-	if (id < 0)
-		return soap->error;
-	return soap_out_SOAP_ENV__Code(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (struct SOAP_ENV__Code **)soap_malloc(soap, sizeof(struct SOAP_ENV__Code *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_SOAP_ENV__Code(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (struct SOAP_ENV__Code **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Code);
-	if (soap_out_PointerToSOAP_ENV__Code(soap, tag?tag:"SOAP-ENV:Code", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerToSOAP_ENV__Code(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-#endif
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparatorsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatafilesByParameterComparatorsResponse **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparatorsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatafilesByParameterComparatorsResponse *)soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatafilesByParameterComparatorsResponse ** p = (ns1__searchDatafilesByParameterComparatorsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse);
-	if (soap_out_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparators *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparators);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparators ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparators **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatafilesByParameterComparators **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparators *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatafilesByParameterComparators *)soap_instantiate_ns1__searchDatafilesByParameterComparators(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatafilesByParameterComparators ** p = (ns1__searchDatafilesByParameterComparators **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, sizeof(ns1__searchDatafilesByParameterComparators), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators);
-	if (soap_out_PointerTons1__searchDatafilesByParameterComparators(soap, tag?tag:"ns1:searchDatafilesByParameterComparators", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparators ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatafilesByParameterComparatorResponse **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatafilesByParameterComparatorResponse *)soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatafilesByParameterComparatorResponse ** p = (ns1__searchDatafilesByParameterComparatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, sizeof(ns1__searchDatafilesByParameterComparatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse);
-	if (soap_out_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparator ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatafilesByParameterComparator **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatafilesByParameterComparator *)soap_instantiate_ns1__searchDatafilesByParameterComparator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatafilesByParameterComparator ** p = (ns1__searchDatafilesByParameterComparator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, sizeof(ns1__searchDatafilesByParameterComparator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator);
-	if (soap_out_PointerTons1__searchDatafilesByParameterComparator(soap, tag?tag:"ns1:searchDatafilesByParameterComparator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatafilesByParameterComparator ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparatorsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatasetsByParameterComparatorsResponse **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparatorsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatasetsByParameterComparatorsResponse *)soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatasetsByParameterComparatorsResponse ** p = (ns1__searchDatasetsByParameterComparatorsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse);
-	if (soap_out_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparators *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparators);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparators ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparators **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatasetsByParameterComparators **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparators *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatasetsByParameterComparators *)soap_instantiate_ns1__searchDatasetsByParameterComparators(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatasetsByParameterComparators ** p = (ns1__searchDatasetsByParameterComparators **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, sizeof(ns1__searchDatasetsByParameterComparators), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators);
-	if (soap_out_PointerTons1__searchDatasetsByParameterComparators(soap, tag?tag:"ns1:searchDatasetsByParameterComparators", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparators ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatasetsByParameterComparatorResponse **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatasetsByParameterComparatorResponse *)soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatasetsByParameterComparatorResponse ** p = (ns1__searchDatasetsByParameterComparatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, sizeof(ns1__searchDatasetsByParameterComparatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse);
-	if (soap_out_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparator ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatasetsByParameterComparator **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatasetsByParameterComparator *)soap_instantiate_ns1__searchDatasetsByParameterComparator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatasetsByParameterComparator ** p = (ns1__searchDatasetsByParameterComparator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, sizeof(ns1__searchDatasetsByParameterComparator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator);
-	if (soap_out_PointerTons1__searchDatasetsByParameterComparator(soap, tag?tag:"ns1:searchDatasetsByParameterComparator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsByParameterComparator ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparatorsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparatorsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByParameterComparatorsResponse **)soap_malloc(soap, sizeof(ns1__searchByParameterComparatorsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByParameterComparatorsResponse *)soap_instantiate_ns1__searchByParameterComparatorsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByParameterComparatorsResponse ** p = (ns1__searchByParameterComparatorsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, sizeof(ns1__searchByParameterComparatorsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse);
-	if (soap_out_PointerTons1__searchByParameterComparatorsResponse(soap, tag?tag:"ns1:searchByParameterComparatorsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByParameterComparatorsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparators))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparators(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparators *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparators);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparators ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparators(struct soap *soap, const char *tag, ns1__searchByParameterComparators **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByParameterComparators **)soap_malloc(soap, sizeof(ns1__searchByParameterComparators *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByParameterComparators *)soap_instantiate_ns1__searchByParameterComparators(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByParameterComparators ** p = (ns1__searchByParameterComparators **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparators, sizeof(ns1__searchByParameterComparators), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparators);
-	if (soap_out_PointerTons1__searchByParameterComparators(soap, tag?tag:"ns1:searchByParameterComparators", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparators ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByParameterComparators(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByParameterComparatorResponse **)soap_malloc(soap, sizeof(ns1__searchByParameterComparatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByParameterComparatorResponse *)soap_instantiate_ns1__searchByParameterComparatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByParameterComparatorResponse ** p = (ns1__searchByParameterComparatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorResponse, sizeof(ns1__searchByParameterComparatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse);
-	if (soap_out_PointerTons1__searchByParameterComparatorResponse(soap, tag?tag:"ns1:searchByParameterComparatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByParameterComparatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparator(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparator ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparator(struct soap *soap, const char *tag, ns1__searchByParameterComparator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByParameterComparator **)soap_malloc(soap, sizeof(ns1__searchByParameterComparator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByParameterComparator *)soap_instantiate_ns1__searchByParameterComparator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByParameterComparator ** p = (ns1__searchByParameterComparator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparator, sizeof(ns1__searchByParameterComparator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparator);
-	if (soap_out_PointerTons1__searchByParameterComparator(soap, tag?tag:"ns1:searchByParameterComparator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByParameterComparator ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByParameterComparator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterOperatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, int id, ns1__searchByParameterOperatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterOperatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterOperatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByParameterOperatorResponse **)soap_malloc(soap, sizeof(ns1__searchByParameterOperatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByParameterOperatorResponse *)soap_instantiate_ns1__searchByParameterOperatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByParameterOperatorResponse ** p = (ns1__searchByParameterOperatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperatorResponse, sizeof(ns1__searchByParameterOperatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse);
-	if (soap_out_PointerTons1__searchByParameterOperatorResponse(soap, tag?tag:"ns1:searchByParameterOperatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByParameterOperatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterOperator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterOperator(struct soap *soap, const char *tag, int id, ns1__searchByParameterOperator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterOperator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperator ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterOperator(struct soap *soap, const char *tag, ns1__searchByParameterOperator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByParameterOperator **)soap_malloc(soap, sizeof(ns1__searchByParameterOperator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByParameterOperator *)soap_instantiate_ns1__searchByParameterOperator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByParameterOperator ** p = (ns1__searchByParameterOperator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperator, sizeof(ns1__searchByParameterOperator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterOperator);
-	if (soap_out_PointerTons1__searchByParameterOperator(soap, tag?tag:"ns1:searchByParameterOperator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByParameterOperator ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByParameterOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__isSessionValidResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__isSessionValidResponse(struct soap *soap, const char *tag, int id, ns1__isSessionValidResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__isSessionValidResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__isSessionValidResponse ** SOAP_FMAC4 soap_in_PointerTons1__isSessionValidResponse(struct soap *soap, const char *tag, ns1__isSessionValidResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__isSessionValidResponse **)soap_malloc(soap, sizeof(ns1__isSessionValidResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__isSessionValidResponse *)soap_instantiate_ns1__isSessionValidResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__isSessionValidResponse ** p = (ns1__isSessionValidResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValidResponse, sizeof(ns1__isSessionValidResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__isSessionValidResponse);
-	if (soap_out_PointerTons1__isSessionValidResponse(soap, tag?tag:"ns1:isSessionValidResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__isSessionValidResponse ** SOAP_FMAC4 soap_get_PointerTons1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__isSessionValidResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__isSessionValid(struct soap *soap, ns1__isSessionValid *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__isSessionValid))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__isSessionValid(struct soap *soap, const char *tag, int id, ns1__isSessionValid *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__isSessionValid);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__isSessionValid ** SOAP_FMAC4 soap_in_PointerTons1__isSessionValid(struct soap *soap, const char *tag, ns1__isSessionValid **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__isSessionValid **)soap_malloc(soap, sizeof(ns1__isSessionValid *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__isSessionValid *)soap_instantiate_ns1__isSessionValid(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__isSessionValid ** p = (ns1__isSessionValid **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValid, sizeof(ns1__isSessionValid), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__isSessionValid(struct soap *soap, ns1__isSessionValid *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__isSessionValid);
-	if (soap_out_PointerTons1__isSessionValid(soap, tag?tag:"ns1:isSessionValid", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__isSessionValid ** SOAP_FMAC4 soap_get_PointerTons1__isSessionValid(struct soap *soap, ns1__isSessionValid **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__isSessionValid(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFederalIdResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalIdResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getFacilityUserByFederalIdResponse **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFederalIdResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getFacilityUserByFederalIdResponse *)soap_instantiate_ns1__getFacilityUserByFederalIdResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getFacilityUserByFederalIdResponse ** p = (ns1__getFacilityUserByFederalIdResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, sizeof(ns1__getFacilityUserByFederalIdResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse);
-	if (soap_out_PointerTons1__getFacilityUserByFederalIdResponse(soap, tag?tag:"ns1:getFacilityUserByFederalIdResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getFacilityUserByFederalIdResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFederalId))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFederalId(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFederalId *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFederalId);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalId ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFederalId(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalId **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getFacilityUserByFederalId **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFederalId *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getFacilityUserByFederalId *)soap_instantiate_ns1__getFacilityUserByFederalId(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getFacilityUserByFederalId ** p = (ns1__getFacilityUserByFederalId **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalId, sizeof(ns1__getFacilityUserByFederalId), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFederalId);
-	if (soap_out_PointerTons1__getFacilityUserByFederalId(soap, tag?tag:"ns1:getFacilityUserByFederalId", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFederalId ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getFacilityUserByFederalId(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFacilityUserIdResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserIdResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getFacilityUserByFacilityUserIdResponse **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFacilityUserIdResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getFacilityUserByFacilityUserIdResponse *)soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getFacilityUserByFacilityUserIdResponse ** p = (ns1__getFacilityUserByFacilityUserIdResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse);
-	if (soap_out_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, tag?tag:"ns1:getFacilityUserByFacilityUserIdResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFacilityUserId *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserId **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getFacilityUserByFacilityUserId **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFacilityUserId *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getFacilityUserByFacilityUserId *)soap_instantiate_ns1__getFacilityUserByFacilityUserId(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getFacilityUserByFacilityUserId ** p = (ns1__getFacilityUserByFacilityUserId **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, sizeof(ns1__getFacilityUserByFacilityUserId), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId);
-	if (soap_out_PointerTons1__getFacilityUserByFacilityUserId(soap, tag?tag:"ns1:getFacilityUserByFacilityUserId", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getFacilityUserByFacilityUserId(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getICATAPIVersionResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getICATAPIVersionResponse(struct soap *soap, const char *tag, int id, ns1__getICATAPIVersionResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getICATAPIVersionResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersionResponse ** SOAP_FMAC4 soap_in_PointerTons1__getICATAPIVersionResponse(struct soap *soap, const char *tag, ns1__getICATAPIVersionResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getICATAPIVersionResponse **)soap_malloc(soap, sizeof(ns1__getICATAPIVersionResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getICATAPIVersionResponse *)soap_instantiate_ns1__getICATAPIVersionResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getICATAPIVersionResponse ** p = (ns1__getICATAPIVersionResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersionResponse, sizeof(ns1__getICATAPIVersionResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getICATAPIVersionResponse);
-	if (soap_out_PointerTons1__getICATAPIVersionResponse(soap, tag?tag:"ns1:getICATAPIVersionResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersionResponse ** SOAP_FMAC4 soap_get_PointerTons1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getICATAPIVersionResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getICATAPIVersion))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getICATAPIVersion(struct soap *soap, const char *tag, int id, ns1__getICATAPIVersion *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getICATAPIVersion);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersion ** SOAP_FMAC4 soap_in_PointerTons1__getICATAPIVersion(struct soap *soap, const char *tag, ns1__getICATAPIVersion **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getICATAPIVersion **)soap_malloc(soap, sizeof(ns1__getICATAPIVersion *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getICATAPIVersion *)soap_instantiate_ns1__getICATAPIVersion(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getICATAPIVersion ** p = (ns1__getICATAPIVersion **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersion, sizeof(ns1__getICATAPIVersion), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getICATAPIVersion);
-	if (soap_out_PointerTons1__getICATAPIVersion(soap, tag?tag:"ns1:getICATAPIVersion", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getICATAPIVersion ** SOAP_FMAC4 soap_get_PointerTons1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getICATAPIVersion(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ingestMetadataResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ingestMetadataResponse(struct soap *soap, const char *tag, int id, ns1__ingestMetadataResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ingestMetadataResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__ingestMetadataResponse ** SOAP_FMAC4 soap_in_PointerTons1__ingestMetadataResponse(struct soap *soap, const char *tag, ns1__ingestMetadataResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__ingestMetadataResponse **)soap_malloc(soap, sizeof(ns1__ingestMetadataResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__ingestMetadataResponse *)soap_instantiate_ns1__ingestMetadataResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__ingestMetadataResponse ** p = (ns1__ingestMetadataResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadataResponse, sizeof(ns1__ingestMetadataResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ingestMetadataResponse);
-	if (soap_out_PointerTons1__ingestMetadataResponse(soap, tag?tag:"ns1:ingestMetadataResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__ingestMetadataResponse ** SOAP_FMAC4 soap_get_PointerTons1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__ingestMetadataResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ingestMetadata(struct soap *soap, ns1__ingestMetadata *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ingestMetadata))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ingestMetadata(struct soap *soap, const char *tag, int id, ns1__ingestMetadata *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ingestMetadata);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__ingestMetadata ** SOAP_FMAC4 soap_in_PointerTons1__ingestMetadata(struct soap *soap, const char *tag, ns1__ingestMetadata **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__ingestMetadata **)soap_malloc(soap, sizeof(ns1__ingestMetadata *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__ingestMetadata *)soap_instantiate_ns1__ingestMetadata(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__ingestMetadata ** p = (ns1__ingestMetadata **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadata, sizeof(ns1__ingestMetadata), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ingestMetadata(struct soap *soap, ns1__ingestMetadata *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ingestMetadata);
-	if (soap_out_PointerTons1__ingestMetadata(soap, tag?tag:"ns1:ingestMetadata", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__ingestMetadata ** SOAP_FMAC4 soap_get_PointerTons1__ingestMetadata(struct soap *soap, ns1__ingestMetadata **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__ingestMetadata(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSetParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__removeDataSetParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSetParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSetParameterResponse(struct soap *soap, const char *tag, ns1__removeDataSetParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__removeDataSetParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataSetParameterResponse *)soap_instantiate_ns1__removeDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataSetParameterResponse ** p = (ns1__removeDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameterResponse, sizeof(ns1__removeDataSetParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSetParameterResponse);
-	if (soap_out_PointerTons1__removeDataSetParameterResponse(soap, tag?tag:"ns1:removeDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSetParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSetParameter(struct soap *soap, const char *tag, int id, ns1__removeDataSetParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSetParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSetParameter(struct soap *soap, const char *tag, ns1__removeDataSetParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataSetParameter **)soap_malloc(soap, sizeof(ns1__removeDataSetParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataSetParameter *)soap_instantiate_ns1__removeDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataSetParameter ** p = (ns1__removeDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameter, sizeof(ns1__removeDataSetParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSetParameter);
-	if (soap_out_PointerTons1__removeDataSetParameter(soap, tag?tag:"ns1:removeDataSetParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSetResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSetResponse(struct soap *soap, const char *tag, int id, ns1__removeDataSetResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSetResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSetResponse(struct soap *soap, const char *tag, ns1__removeDataSetResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataSetResponse **)soap_malloc(soap, sizeof(ns1__removeDataSetResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataSetResponse *)soap_instantiate_ns1__removeDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataSetResponse ** p = (ns1__removeDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetResponse, sizeof(ns1__removeDataSetResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSetResponse);
-	if (soap_out_PointerTons1__removeDataSetResponse(soap, tag?tag:"ns1:removeDataSetResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSet(struct soap *soap, ns1__removeDataSet *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSet))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSet(struct soap *soap, const char *tag, int id, ns1__removeDataSet *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSet);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataSet ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSet(struct soap *soap, const char *tag, ns1__removeDataSet **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataSet **)soap_malloc(soap, sizeof(ns1__removeDataSet *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataSet *)soap_instantiate_ns1__removeDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataSet ** p = (ns1__removeDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSet, sizeof(ns1__removeDataSet), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSet(struct soap *soap, ns1__removeDataSet *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSet);
-	if (soap_out_PointerTons1__removeDataSet(soap, tag?tag:"ns1:removeDataSet", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataSet ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSet(struct soap *soap, ns1__removeDataSet **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParametersResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParametersResponse(struct soap *soap, const char *tag, int id, ns1__addDataSetParametersResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParametersResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParametersResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParametersResponse(struct soap *soap, const char *tag, ns1__addDataSetParametersResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataSetParametersResponse **)soap_malloc(soap, sizeof(ns1__addDataSetParametersResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataSetParametersResponse *)soap_instantiate_ns1__addDataSetParametersResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataSetParametersResponse ** p = (ns1__addDataSetParametersResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParametersResponse, sizeof(ns1__addDataSetParametersResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParametersResponse);
-	if (soap_out_PointerTons1__addDataSetParametersResponse(soap, tag?tag:"ns1:addDataSetParametersResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataSetParametersResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataSetParametersResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParameters))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParameters(struct soap *soap, const char *tag, int id, ns1__addDataSetParameters *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParameters);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameters ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParameters(struct soap *soap, const char *tag, ns1__addDataSetParameters **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataSetParameters **)soap_malloc(soap, sizeof(ns1__addDataSetParameters *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataSetParameters *)soap_instantiate_ns1__addDataSetParameters(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataSetParameters ** p = (ns1__addDataSetParameters **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameters, sizeof(ns1__addDataSetParameters), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParameters);
-	if (soap_out_PointerTons1__addDataSetParameters(soap, tag?tag:"ns1:addDataSetParameters", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameters ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataSetParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__addDataSetParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParameterResponse(struct soap *soap, const char *tag, ns1__addDataSetParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__addDataSetParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataSetParameterResponse *)soap_instantiate_ns1__addDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataSetParameterResponse ** p = (ns1__addDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameterResponse, sizeof(ns1__addDataSetParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParameterResponse);
-	if (soap_out_PointerTons1__addDataSetParameterResponse(soap, tag?tag:"ns1:addDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParameter(struct soap *soap, const char *tag, int id, ns1__addDataSetParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParameter(struct soap *soap, const char *tag, ns1__addDataSetParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataSetParameter **)soap_malloc(soap, sizeof(ns1__addDataSetParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataSetParameter *)soap_instantiate_ns1__addDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataSetParameter ** p = (ns1__addDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameter, sizeof(ns1__addDataSetParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParameter);
-	if (soap_out_PointerTons1__addDataSetParameter(soap, tag?tag:"ns1:addDataSetParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__setDataSetSampleResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__setDataSetSampleResponse(struct soap *soap, const char *tag, int id, ns1__setDataSetSampleResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__setDataSetSampleResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__setDataSetSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__setDataSetSampleResponse(struct soap *soap, const char *tag, ns1__setDataSetSampleResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__setDataSetSampleResponse **)soap_malloc(soap, sizeof(ns1__setDataSetSampleResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__setDataSetSampleResponse *)soap_instantiate_ns1__setDataSetSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__setDataSetSampleResponse ** p = (ns1__setDataSetSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSampleResponse, sizeof(ns1__setDataSetSampleResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__setDataSetSampleResponse);
-	if (soap_out_PointerTons1__setDataSetSampleResponse(soap, tag?tag:"ns1:setDataSetSampleResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__setDataSetSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__setDataSetSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__setDataSetSample(struct soap *soap, ns1__setDataSetSample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__setDataSetSample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__setDataSetSample(struct soap *soap, const char *tag, int id, ns1__setDataSetSample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__setDataSetSample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__setDataSetSample ** SOAP_FMAC4 soap_in_PointerTons1__setDataSetSample(struct soap *soap, const char *tag, ns1__setDataSetSample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__setDataSetSample **)soap_malloc(soap, sizeof(ns1__setDataSetSample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__setDataSetSample *)soap_instantiate_ns1__setDataSetSample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__setDataSetSample ** p = (ns1__setDataSetSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSample, sizeof(ns1__setDataSetSample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__setDataSetSample(struct soap *soap, ns1__setDataSetSample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__setDataSetSample);
-	if (soap_out_PointerTons1__setDataSetSample(soap, tag?tag:"ns1:setDataSetSample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__setDataSetSample ** SOAP_FMAC4 soap_get_PointerTons1__setDataSetSample(struct soap *soap, ns1__setDataSetSample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__setDataSetSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSetParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataSetParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSetParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataSetParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__modifyDataSetParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataSetParameterResponse *)soap_instantiate_ns1__modifyDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataSetParameterResponse ** p = (ns1__modifyDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameterResponse, sizeof(ns1__modifyDataSetParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse);
-	if (soap_out_PointerTons1__modifyDataSetParameterResponse(soap, tag?tag:"ns1:modifyDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSetParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSetParameter(struct soap *soap, const char *tag, int id, ns1__modifyDataSetParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSetParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSetParameter(struct soap *soap, const char *tag, ns1__modifyDataSetParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataSetParameter **)soap_malloc(soap, sizeof(ns1__modifyDataSetParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataSetParameter *)soap_instantiate_ns1__modifyDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataSetParameter ** p = (ns1__modifyDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameter, sizeof(ns1__modifyDataSetParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSetParameter);
-	if (soap_out_PointerTons1__modifyDataSetParameter(soap, tag?tag:"ns1:modifyDataSetParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSetResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSetResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataSetResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSetResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSetResponse(struct soap *soap, const char *tag, ns1__modifyDataSetResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataSetResponse **)soap_malloc(soap, sizeof(ns1__modifyDataSetResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataSetResponse *)soap_instantiate_ns1__modifyDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataSetResponse ** p = (ns1__modifyDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetResponse, sizeof(ns1__modifyDataSetResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSetResponse);
-	if (soap_out_PointerTons1__modifyDataSetResponse(soap, tag?tag:"ns1:modifyDataSetResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSet(struct soap *soap, ns1__modifyDataSet *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSet))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSet(struct soap *soap, const char *tag, int id, ns1__modifyDataSet *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSet);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataSet ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSet(struct soap *soap, const char *tag, ns1__modifyDataSet **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataSet **)soap_malloc(soap, sizeof(ns1__modifyDataSet *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataSet *)soap_instantiate_ns1__modifyDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataSet ** p = (ns1__modifyDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSet, sizeof(ns1__modifyDataSet), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSet(struct soap *soap, ns1__modifyDataSet *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSet);
-	if (soap_out_PointerTons1__modifyDataSet(soap, tag?tag:"ns1:modifyDataSet", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataSet ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSet(struct soap *soap, ns1__modifyDataSet **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSetParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataSetParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSetParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataSetParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__deleteDataSetParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataSetParameterResponse *)soap_instantiate_ns1__deleteDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataSetParameterResponse ** p = (ns1__deleteDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameterResponse, sizeof(ns1__deleteDataSetParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse);
-	if (soap_out_PointerTons1__deleteDataSetParameterResponse(soap, tag?tag:"ns1:deleteDataSetParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataSetParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSetParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSetParameter(struct soap *soap, const char *tag, int id, ns1__deleteDataSetParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSetParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSetParameter(struct soap *soap, const char *tag, ns1__deleteDataSetParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataSetParameter **)soap_malloc(soap, sizeof(ns1__deleteDataSetParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataSetParameter *)soap_instantiate_ns1__deleteDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataSetParameter ** p = (ns1__deleteDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameter, sizeof(ns1__deleteDataSetParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSetParameter);
-	if (soap_out_PointerTons1__deleteDataSetParameter(soap, tag?tag:"ns1:deleteDataSetParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataSetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSetResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSetResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataSetResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSetResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSetResponse(struct soap *soap, const char *tag, ns1__deleteDataSetResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataSetResponse **)soap_malloc(soap, sizeof(ns1__deleteDataSetResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataSetResponse *)soap_instantiate_ns1__deleteDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataSetResponse ** p = (ns1__deleteDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetResponse, sizeof(ns1__deleteDataSetResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSetResponse);
-	if (soap_out_PointerTons1__deleteDataSetResponse(soap, tag?tag:"ns1:deleteDataSetResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSet(struct soap *soap, ns1__deleteDataSet *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSet))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSet(struct soap *soap, const char *tag, int id, ns1__deleteDataSet *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSet);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataSet ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSet(struct soap *soap, const char *tag, ns1__deleteDataSet **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataSet **)soap_malloc(soap, sizeof(ns1__deleteDataSet *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataSet *)soap_instantiate_ns1__deleteDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataSet ** p = (ns1__deleteDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSet, sizeof(ns1__deleteDataSet), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSet(struct soap *soap, ns1__deleteDataSet *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSet);
-	if (soap_out_PointerTons1__deleteDataSet(soap, tag?tag:"ns1:deleteDataSet", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataSet ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSet(struct soap *soap, ns1__deleteDataSet **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSetsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSetsResponse(struct soap *soap, const char *tag, int id, ns1__createDataSetsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSetsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataSetsResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataSetsResponse(struct soap *soap, const char *tag, ns1__createDataSetsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataSetsResponse **)soap_malloc(soap, sizeof(ns1__createDataSetsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataSetsResponse *)soap_instantiate_ns1__createDataSetsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataSetsResponse ** p = (ns1__createDataSetsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetsResponse, sizeof(ns1__createDataSetsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSetsResponse);
-	if (soap_out_PointerTons1__createDataSetsResponse(soap, tag?tag:"ns1:createDataSetsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataSetsResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataSetsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSets(struct soap *soap, ns1__createDataSets *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSets))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSets(struct soap *soap, const char *tag, int id, ns1__createDataSets *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSets);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataSets ** SOAP_FMAC4 soap_in_PointerTons1__createDataSets(struct soap *soap, const char *tag, ns1__createDataSets **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataSets **)soap_malloc(soap, sizeof(ns1__createDataSets *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataSets *)soap_instantiate_ns1__createDataSets(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataSets ** p = (ns1__createDataSets **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSets, sizeof(ns1__createDataSets), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSets(struct soap *soap, ns1__createDataSets *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSets);
-	if (soap_out_PointerTons1__createDataSets(soap, tag?tag:"ns1:createDataSets", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataSets ** SOAP_FMAC4 soap_get_PointerTons1__createDataSets(struct soap *soap, ns1__createDataSets **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataSets(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSetResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSetResponse(struct soap *soap, const char *tag, int id, ns1__createDataSetResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSetResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataSetResponse(struct soap *soap, const char *tag, ns1__createDataSetResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataSetResponse **)soap_malloc(soap, sizeof(ns1__createDataSetResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataSetResponse *)soap_instantiate_ns1__createDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataSetResponse ** p = (ns1__createDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetResponse, sizeof(ns1__createDataSetResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSetResponse);
-	if (soap_out_PointerTons1__createDataSetResponse(soap, tag?tag:"ns1:createDataSetResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataSetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSet(struct soap *soap, ns1__createDataSet *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSet))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSet(struct soap *soap, const char *tag, int id, ns1__createDataSet *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSet);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataSet ** SOAP_FMAC4 soap_in_PointerTons1__createDataSet(struct soap *soap, const char *tag, ns1__createDataSet **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataSet **)soap_malloc(soap, sizeof(ns1__createDataSet *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataSet *)soap_instantiate_ns1__createDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataSet ** p = (ns1__createDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSet, sizeof(ns1__createDataSet), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSet(struct soap *soap, ns1__createDataSet *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSet);
-	if (soap_out_PointerTons1__createDataSet(soap, tag?tag:"ns1:createDataSet", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataSet ** SOAP_FMAC4 soap_get_PointerTons1__createDataSet(struct soap *soap, ns1__createDataSet **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataSet(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetsResponse(struct soap *soap, const char *tag, int id, ns1__getDatasetsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetsResponse(struct soap *soap, const char *tag, ns1__getDatasetsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatasetsResponse **)soap_malloc(soap, sizeof(ns1__getDatasetsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatasetsResponse *)soap_instantiate_ns1__getDatasetsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatasetsResponse ** p = (ns1__getDatasetsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetsResponse, sizeof(ns1__getDatasetsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetsResponse);
-	if (soap_out_PointerTons1__getDatasetsResponse(soap, tag?tag:"ns1:getDatasetsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatasetsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatasetsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasets(struct soap *soap, ns1__getDatasets *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasets))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasets(struct soap *soap, const char *tag, int id, ns1__getDatasets *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasets);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatasets ** SOAP_FMAC4 soap_in_PointerTons1__getDatasets(struct soap *soap, const char *tag, ns1__getDatasets **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatasets **)soap_malloc(soap, sizeof(ns1__getDatasets *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatasets *)soap_instantiate_ns1__getDatasets(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatasets ** p = (ns1__getDatasets **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasets, sizeof(ns1__getDatasets), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasets(struct soap *soap, ns1__getDatasets *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasets);
-	if (soap_out_PointerTons1__getDatasets(soap, tag?tag:"ns1:getDatasets", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatasets ** SOAP_FMAC4 soap_get_PointerTons1__getDatasets(struct soap *soap, ns1__getDatasets **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatasets(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatafileFormatsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatafileFormatsResponse(struct soap *soap, const char *tag, int id, ns1__listDatafileFormatsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatafileFormatsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormatsResponse ** SOAP_FMAC4 soap_in_PointerTons1__listDatafileFormatsResponse(struct soap *soap, const char *tag, ns1__listDatafileFormatsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listDatafileFormatsResponse **)soap_malloc(soap, sizeof(ns1__listDatafileFormatsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listDatafileFormatsResponse *)soap_instantiate_ns1__listDatafileFormatsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listDatafileFormatsResponse ** p = (ns1__listDatafileFormatsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormatsResponse, sizeof(ns1__listDatafileFormatsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatafileFormatsResponse);
-	if (soap_out_PointerTons1__listDatafileFormatsResponse(soap, tag?tag:"ns1:listDatafileFormatsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormatsResponse ** SOAP_FMAC4 soap_get_PointerTons1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listDatafileFormatsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatafileFormats))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatafileFormats(struct soap *soap, const char *tag, int id, ns1__listDatafileFormats *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatafileFormats);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormats ** SOAP_FMAC4 soap_in_PointerTons1__listDatafileFormats(struct soap *soap, const char *tag, ns1__listDatafileFormats **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listDatafileFormats **)soap_malloc(soap, sizeof(ns1__listDatafileFormats *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listDatafileFormats *)soap_instantiate_ns1__listDatafileFormats(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listDatafileFormats ** p = (ns1__listDatafileFormats **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormats, sizeof(ns1__listDatafileFormats), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatafileFormats);
-	if (soap_out_PointerTons1__listDatafileFormats(soap, tag?tag:"ns1:listDatafileFormats", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listDatafileFormats ** SOAP_FMAC4 soap_get_PointerTons1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listDatafileFormats(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByRunNumberPaginationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberPaginationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByRunNumberPaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByRunNumberPaginationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByRunNumberPaginationResponse *)soap_instantiate_ns1__searchByRunNumberPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByRunNumberPaginationResponse ** p = (ns1__searchByRunNumberPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, sizeof(ns1__searchByRunNumberPaginationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse);
-	if (soap_out_PointerTons1__searchByRunNumberPaginationResponse(soap, tag?tag:"ns1:searchByRunNumberPaginationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByRunNumberPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumberPagination))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumberPagination(struct soap *soap, const char *tag, int id, ns1__searchByRunNumberPagination *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumberPagination);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumberPagination(struct soap *soap, const char *tag, ns1__searchByRunNumberPagination **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByRunNumberPagination **)soap_malloc(soap, sizeof(ns1__searchByRunNumberPagination *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByRunNumberPagination *)soap_instantiate_ns1__searchByRunNumberPagination(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByRunNumberPagination ** p = (ns1__searchByRunNumberPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPagination, sizeof(ns1__searchByRunNumberPagination), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumberPagination);
-	if (soap_out_PointerTons1__searchByRunNumberPagination(soap, tag?tag:"ns1:searchByRunNumberPagination", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberPagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByRunNumberPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumberResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumberResponse(struct soap *soap, const char *tag, int id, ns1__searchByRunNumberResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumberResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumberResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByRunNumberResponse **)soap_malloc(soap, sizeof(ns1__searchByRunNumberResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByRunNumberResponse *)soap_instantiate_ns1__searchByRunNumberResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByRunNumberResponse ** p = (ns1__searchByRunNumberResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberResponse, sizeof(ns1__searchByRunNumberResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumberResponse);
-	if (soap_out_PointerTons1__searchByRunNumberResponse(soap, tag?tag:"ns1:searchByRunNumberResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumberResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByRunNumberResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumber))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumber(struct soap *soap, const char *tag, int id, ns1__searchByRunNumber *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumber);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumber ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumber(struct soap *soap, const char *tag, ns1__searchByRunNumber **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByRunNumber **)soap_malloc(soap, sizeof(ns1__searchByRunNumber *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByRunNumber *)soap_instantiate_ns1__searchByRunNumber(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByRunNumber ** p = (ns1__searchByRunNumber **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumber, sizeof(ns1__searchByRunNumber), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumber);
-	if (soap_out_PointerTons1__searchByRunNumber(soap, tag?tag:"ns1:searchByRunNumber", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByRunNumber ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByRunNumber(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetStatusResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetStatusResponse(struct soap *soap, const char *tag, int id, ns1__listDatasetStatusResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetStatusResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatusResponse ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetStatusResponse(struct soap *soap, const char *tag, ns1__listDatasetStatusResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listDatasetStatusResponse **)soap_malloc(soap, sizeof(ns1__listDatasetStatusResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listDatasetStatusResponse *)soap_instantiate_ns1__listDatasetStatusResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listDatasetStatusResponse ** p = (ns1__listDatasetStatusResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatusResponse, sizeof(ns1__listDatasetStatusResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetStatusResponse);
-	if (soap_out_PointerTons1__listDatasetStatusResponse(soap, tag?tag:"ns1:listDatasetStatusResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatusResponse ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listDatasetStatusResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetStatus))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetStatus(struct soap *soap, const char *tag, int id, ns1__listDatasetStatus *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetStatus);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatus ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetStatus(struct soap *soap, const char *tag, ns1__listDatasetStatus **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listDatasetStatus **)soap_malloc(soap, sizeof(ns1__listDatasetStatus *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listDatasetStatus *)soap_instantiate_ns1__listDatasetStatus(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listDatasetStatus ** p = (ns1__listDatasetStatus **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatus, sizeof(ns1__listDatasetStatus), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetStatus);
-	if (soap_out_PointerTons1__listDatasetStatus(soap, tag?tag:"ns1:listDatasetStatus", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listDatasetStatus ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listDatasetStatus(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetTypesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetTypesResponse(struct soap *soap, const char *tag, int id, ns1__listDatasetTypesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetTypesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetTypesResponse(struct soap *soap, const char *tag, ns1__listDatasetTypesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listDatasetTypesResponse **)soap_malloc(soap, sizeof(ns1__listDatasetTypesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listDatasetTypesResponse *)soap_instantiate_ns1__listDatasetTypesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listDatasetTypesResponse ** p = (ns1__listDatasetTypesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypesResponse, sizeof(ns1__listDatasetTypesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetTypesResponse);
-	if (soap_out_PointerTons1__listDatasetTypesResponse(soap, tag?tag:"ns1:listDatasetTypesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listDatasetTypesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetTypes))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetTypes(struct soap *soap, const char *tag, int id, ns1__listDatasetTypes *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetTypes);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypes ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetTypes(struct soap *soap, const char *tag, ns1__listDatasetTypes **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listDatasetTypes **)soap_malloc(soap, sizeof(ns1__listDatasetTypes *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listDatasetTypes *)soap_instantiate_ns1__listDatasetTypes(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listDatasetTypes ** p = (ns1__listDatasetTypes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypes, sizeof(ns1__listDatasetTypes), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetTypes);
-	if (soap_out_PointerTons1__listDatasetTypes(soap, tag?tag:"ns1:listDatasetTypes", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listDatasetTypes ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listDatasetTypes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, int id, ns1__searchDatasetsBySampleResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsBySampleResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, ns1__searchDatasetsBySampleResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatasetsBySampleResponse **)soap_malloc(soap, sizeof(ns1__searchDatasetsBySampleResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatasetsBySampleResponse *)soap_instantiate_ns1__searchDatasetsBySampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatasetsBySampleResponse ** p = (ns1__searchDatasetsBySampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, sizeof(ns1__searchDatasetsBySampleResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse);
-	if (soap_out_PointerTons1__searchDatasetsBySampleResponse(soap, tag?tag:"ns1:searchDatasetsBySampleResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatasetsBySampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsBySample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsBySample(struct soap *soap, const char *tag, int id, ns1__searchDatasetsBySample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsBySample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySample ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsBySample(struct soap *soap, const char *tag, ns1__searchDatasetsBySample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchDatasetsBySample **)soap_malloc(soap, sizeof(ns1__searchDatasetsBySample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchDatasetsBySample *)soap_instantiate_ns1__searchDatasetsBySample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchDatasetsBySample ** p = (ns1__searchDatasetsBySample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySample, sizeof(ns1__searchDatasetsBySample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsBySample);
-	if (soap_out_PointerTons1__searchDatasetsBySample(soap, tag?tag:"ns1:searchDatasetsBySample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchDatasetsBySample ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchDatasetsBySample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, int id, ns1__searchSamplesBySampleNameResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, ns1__searchSamplesBySampleNameResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchSamplesBySampleNameResponse **)soap_malloc(soap, sizeof(ns1__searchSamplesBySampleNameResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchSamplesBySampleNameResponse *)soap_instantiate_ns1__searchSamplesBySampleNameResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchSamplesBySampleNameResponse ** p = (ns1__searchSamplesBySampleNameResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, sizeof(ns1__searchSamplesBySampleNameResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse);
-	if (soap_out_PointerTons1__searchSamplesBySampleNameResponse(soap, tag?tag:"ns1:searchSamplesBySampleNameResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchSamplesBySampleNameResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchSamplesBySampleName))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchSamplesBySampleName(struct soap *soap, const char *tag, int id, ns1__searchSamplesBySampleName *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchSamplesBySampleName);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleName ** SOAP_FMAC4 soap_in_PointerTons1__searchSamplesBySampleName(struct soap *soap, const char *tag, ns1__searchSamplesBySampleName **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchSamplesBySampleName **)soap_malloc(soap, sizeof(ns1__searchSamplesBySampleName *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchSamplesBySampleName *)soap_instantiate_ns1__searchSamplesBySampleName(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchSamplesBySampleName ** p = (ns1__searchSamplesBySampleName **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleName, sizeof(ns1__searchSamplesBySampleName), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchSamplesBySampleName);
-	if (soap_out_PointerTons1__searchSamplesBySampleName(soap, tag?tag:"ns1:searchSamplesBySampleName", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchSamplesBySampleName ** SOAP_FMAC4 soap_get_PointerTons1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchSamplesBySampleName(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInvestigationTypesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInvestigationTypesResponse(struct soap *soap, const char *tag, int id, ns1__listInvestigationTypesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInvestigationTypesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listInvestigationTypesResponse(struct soap *soap, const char *tag, ns1__listInvestigationTypesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listInvestigationTypesResponse **)soap_malloc(soap, sizeof(ns1__listInvestigationTypesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listInvestigationTypesResponse *)soap_instantiate_ns1__listInvestigationTypesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listInvestigationTypesResponse ** p = (ns1__listInvestigationTypesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypesResponse, sizeof(ns1__listInvestigationTypesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInvestigationTypesResponse);
-	if (soap_out_PointerTons1__listInvestigationTypesResponse(soap, tag?tag:"ns1:listInvestigationTypesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listInvestigationTypesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInvestigationTypes))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInvestigationTypes(struct soap *soap, const char *tag, int id, ns1__listInvestigationTypes *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInvestigationTypes);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypes ** SOAP_FMAC4 soap_in_PointerTons1__listInvestigationTypes(struct soap *soap, const char *tag, ns1__listInvestigationTypes **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listInvestigationTypes **)soap_malloc(soap, sizeof(ns1__listInvestigationTypes *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listInvestigationTypes *)soap_instantiate_ns1__listInvestigationTypes(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listInvestigationTypes ** p = (ns1__listInvestigationTypes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypes, sizeof(ns1__listInvestigationTypes), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInvestigationTypes);
-	if (soap_out_PointerTons1__listInvestigationTypes(soap, tag?tag:"ns1:listInvestigationTypes", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listInvestigationTypes ** SOAP_FMAC4 soap_get_PointerTons1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listInvestigationTypes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listFacilityCyclesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listFacilityCyclesResponse(struct soap *soap, const char *tag, int id, ns1__listFacilityCyclesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listFacilityCyclesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listFacilityCyclesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listFacilityCyclesResponse(struct soap *soap, const char *tag, ns1__listFacilityCyclesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listFacilityCyclesResponse **)soap_malloc(soap, sizeof(ns1__listFacilityCyclesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listFacilityCyclesResponse *)soap_instantiate_ns1__listFacilityCyclesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listFacilityCyclesResponse ** p = (ns1__listFacilityCyclesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCyclesResponse, sizeof(ns1__listFacilityCyclesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listFacilityCyclesResponse);
-	if (soap_out_PointerTons1__listFacilityCyclesResponse(soap, tag?tag:"ns1:listFacilityCyclesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listFacilityCyclesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listFacilityCyclesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listFacilityCycles))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listFacilityCycles(struct soap *soap, const char *tag, int id, ns1__listFacilityCycles *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listFacilityCycles);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listFacilityCycles ** SOAP_FMAC4 soap_in_PointerTons1__listFacilityCycles(struct soap *soap, const char *tag, ns1__listFacilityCycles **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listFacilityCycles **)soap_malloc(soap, sizeof(ns1__listFacilityCycles *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listFacilityCycles *)soap_instantiate_ns1__listFacilityCycles(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listFacilityCycles ** p = (ns1__listFacilityCycles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCycles, sizeof(ns1__listFacilityCycles), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listFacilityCycles);
-	if (soap_out_PointerTons1__listFacilityCycles(soap, tag?tag:"ns1:listFacilityCycles", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listFacilityCycles ** SOAP_FMAC4 soap_get_PointerTons1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listFacilityCycles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listParametersResponse(struct soap *soap, ns1__listParametersResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listParametersResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listParametersResponse(struct soap *soap, const char *tag, int id, ns1__listParametersResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listParametersResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listParametersResponse ** SOAP_FMAC4 soap_in_PointerTons1__listParametersResponse(struct soap *soap, const char *tag, ns1__listParametersResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listParametersResponse **)soap_malloc(soap, sizeof(ns1__listParametersResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listParametersResponse *)soap_instantiate_ns1__listParametersResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listParametersResponse ** p = (ns1__listParametersResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParametersResponse, sizeof(ns1__listParametersResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listParametersResponse(struct soap *soap, ns1__listParametersResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listParametersResponse);
-	if (soap_out_PointerTons1__listParametersResponse(soap, tag?tag:"ns1:listParametersResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listParametersResponse ** SOAP_FMAC4 soap_get_PointerTons1__listParametersResponse(struct soap *soap, ns1__listParametersResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listParametersResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listParameters(struct soap *soap, ns1__listParameters *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listParameters))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listParameters(struct soap *soap, const char *tag, int id, ns1__listParameters *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listParameters);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listParameters ** SOAP_FMAC4 soap_in_PointerTons1__listParameters(struct soap *soap, const char *tag, ns1__listParameters **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listParameters **)soap_malloc(soap, sizeof(ns1__listParameters *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listParameters *)soap_instantiate_ns1__listParameters(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listParameters ** p = (ns1__listParameters **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParameters, sizeof(ns1__listParameters), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listParameters(struct soap *soap, ns1__listParameters *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listParameters);
-	if (soap_out_PointerTons1__listParameters(soap, tag?tag:"ns1:listParameters", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listParameters ** SOAP_FMAC4 soap_get_PointerTons1__listParameters(struct soap *soap, ns1__listParameters **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listRolesResponse(struct soap *soap, ns1__listRolesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listRolesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listRolesResponse(struct soap *soap, const char *tag, int id, ns1__listRolesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listRolesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listRolesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listRolesResponse(struct soap *soap, const char *tag, ns1__listRolesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listRolesResponse **)soap_malloc(soap, sizeof(ns1__listRolesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listRolesResponse *)soap_instantiate_ns1__listRolesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listRolesResponse ** p = (ns1__listRolesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRolesResponse, sizeof(ns1__listRolesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listRolesResponse(struct soap *soap, ns1__listRolesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listRolesResponse);
-	if (soap_out_PointerTons1__listRolesResponse(soap, tag?tag:"ns1:listRolesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listRolesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listRolesResponse(struct soap *soap, ns1__listRolesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listRolesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listRoles(struct soap *soap, ns1__listRoles *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listRoles))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listRoles(struct soap *soap, const char *tag, int id, ns1__listRoles *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listRoles);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listRoles ** SOAP_FMAC4 soap_in_PointerTons1__listRoles(struct soap *soap, const char *tag, ns1__listRoles **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listRoles **)soap_malloc(soap, sizeof(ns1__listRoles *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listRoles *)soap_instantiate_ns1__listRoles(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listRoles ** p = (ns1__listRoles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRoles, sizeof(ns1__listRoles), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listRoles(struct soap *soap, ns1__listRoles *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listRoles);
-	if (soap_out_PointerTons1__listRoles(soap, tag?tag:"ns1:listRoles", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listRoles ** SOAP_FMAC4 soap_get_PointerTons1__listRoles(struct soap *soap, ns1__listRoles **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listRoles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInstrumentsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInstrumentsResponse(struct soap *soap, const char *tag, int id, ns1__listInstrumentsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInstrumentsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listInstrumentsResponse ** SOAP_FMAC4 soap_in_PointerTons1__listInstrumentsResponse(struct soap *soap, const char *tag, ns1__listInstrumentsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listInstrumentsResponse **)soap_malloc(soap, sizeof(ns1__listInstrumentsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listInstrumentsResponse *)soap_instantiate_ns1__listInstrumentsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listInstrumentsResponse ** p = (ns1__listInstrumentsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstrumentsResponse, sizeof(ns1__listInstrumentsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInstrumentsResponse);
-	if (soap_out_PointerTons1__listInstrumentsResponse(soap, tag?tag:"ns1:listInstrumentsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listInstrumentsResponse ** SOAP_FMAC4 soap_get_PointerTons1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listInstrumentsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInstruments(struct soap *soap, ns1__listInstruments *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInstruments))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInstruments(struct soap *soap, const char *tag, int id, ns1__listInstruments *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInstruments);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__listInstruments ** SOAP_FMAC4 soap_in_PointerTons1__listInstruments(struct soap *soap, const char *tag, ns1__listInstruments **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__listInstruments **)soap_malloc(soap, sizeof(ns1__listInstruments *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__listInstruments *)soap_instantiate_ns1__listInstruments(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__listInstruments ** p = (ns1__listInstruments **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstruments, sizeof(ns1__listInstruments), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInstruments(struct soap *soap, ns1__listInstruments *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInstruments);
-	if (soap_out_PointerTons1__listInstruments(soap, tag?tag:"ns1:listInstruments", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__listInstruments ** SOAP_FMAC4 soap_get_PointerTons1__listInstruments(struct soap *soap, ns1__listInstruments **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__listInstruments(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserSurnamePaginationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnamePaginationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserSurnamePaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByUserSurnamePaginationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserSurnamePaginationResponse *)soap_instantiate_ns1__searchByUserSurnamePaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserSurnamePaginationResponse ** p = (ns1__searchByUserSurnamePaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, sizeof(ns1__searchByUserSurnamePaginationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse);
-	if (soap_out_PointerTons1__searchByUserSurnamePaginationResponse(soap, tag?tag:"ns1:searchByUserSurnamePaginationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserSurnamePaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurnamePagination))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurnamePagination(struct soap *soap, const char *tag, int id, ns1__searchByUserSurnamePagination *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurnamePagination);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurnamePagination(struct soap *soap, const char *tag, ns1__searchByUserSurnamePagination **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserSurnamePagination **)soap_malloc(soap, sizeof(ns1__searchByUserSurnamePagination *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserSurnamePagination *)soap_instantiate_ns1__searchByUserSurnamePagination(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserSurnamePagination ** p = (ns1__searchByUserSurnamePagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePagination, sizeof(ns1__searchByUserSurnamePagination), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurnamePagination);
-	if (soap_out_PointerTons1__searchByUserSurnamePagination(soap, tag?tag:"ns1:searchByUserSurnamePagination", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnamePagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserSurnamePagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurnameResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurnameResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserSurnameResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurnameResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnameResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurnameResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnameResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserSurnameResponse **)soap_malloc(soap, sizeof(ns1__searchByUserSurnameResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserSurnameResponse *)soap_instantiate_ns1__searchByUserSurnameResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserSurnameResponse ** p = (ns1__searchByUserSurnameResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnameResponse, sizeof(ns1__searchByUserSurnameResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurnameResponse);
-	if (soap_out_PointerTons1__searchByUserSurnameResponse(soap, tag?tag:"ns1:searchByUserSurnameResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurnameResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserSurnameResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurname))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurname(struct soap *soap, const char *tag, int id, ns1__searchByUserSurname *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurname);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurname ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurname(struct soap *soap, const char *tag, ns1__searchByUserSurname **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserSurname **)soap_malloc(soap, sizeof(ns1__searchByUserSurname *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserSurname *)soap_instantiate_ns1__searchByUserSurname(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserSurname ** p = (ns1__searchByUserSurname **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurname, sizeof(ns1__searchByUserSurname), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurname);
-	if (soap_out_PointerTons1__searchByUserSurname(soap, tag?tag:"ns1:searchByUserSurname", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserSurname ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserSurname(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserIDPaginationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserIDPaginationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserIDPaginationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserIDPaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByUserIDPaginationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserIDPaginationResponse *)soap_instantiate_ns1__searchByUserIDPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserIDPaginationResponse ** p = (ns1__searchByUserIDPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, sizeof(ns1__searchByUserIDPaginationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse);
-	if (soap_out_PointerTons1__searchByUserIDPaginationResponse(soap, tag?tag:"ns1:searchByUserIDPaginationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserIDPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserIDPagination))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserIDPagination(struct soap *soap, const char *tag, int id, ns1__searchByUserIDPagination *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserIDPagination);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserIDPagination(struct soap *soap, const char *tag, ns1__searchByUserIDPagination **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserIDPagination **)soap_malloc(soap, sizeof(ns1__searchByUserIDPagination *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserIDPagination *)soap_instantiate_ns1__searchByUserIDPagination(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserIDPagination ** p = (ns1__searchByUserIDPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPagination, sizeof(ns1__searchByUserIDPagination), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserIDPagination);
-	if (soap_out_PointerTons1__searchByUserIDPagination(soap, tag?tag:"ns1:searchByUserIDPagination", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDPagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserIDPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserIDResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserIDResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserIDResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserIDResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserIDResponse(struct soap *soap, const char *tag, ns1__searchByUserIDResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserIDResponse **)soap_malloc(soap, sizeof(ns1__searchByUserIDResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserIDResponse *)soap_instantiate_ns1__searchByUserIDResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserIDResponse ** p = (ns1__searchByUserIDResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDResponse, sizeof(ns1__searchByUserIDResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserIDResponse);
-	if (soap_out_PointerTons1__searchByUserIDResponse(soap, tag?tag:"ns1:searchByUserIDResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserIDResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserIDResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserID(struct soap *soap, ns1__searchByUserID *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserID))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserID(struct soap *soap, const char *tag, int id, ns1__searchByUserID *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserID);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByUserID ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserID(struct soap *soap, const char *tag, ns1__searchByUserID **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByUserID **)soap_malloc(soap, sizeof(ns1__searchByUserID *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByUserID *)soap_instantiate_ns1__searchByUserID(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByUserID ** p = (ns1__searchByUserID **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserID, sizeof(ns1__searchByUserID), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserID(struct soap *soap, ns1__searchByUserID *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserID);
-	if (soap_out_PointerTons1__searchByUserID(soap, tag?tag:"ns1:searchByUserID", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByUserID ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserID(struct soap *soap, ns1__searchByUserID **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByUserID(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludesPaginationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPaginationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getMyInvestigationsIncludesPaginationResponse **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getMyInvestigationsIncludesPaginationResponse *)soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getMyInvestigationsIncludesPaginationResponse ** p = (ns1__getMyInvestigationsIncludesPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse);
-	if (soap_out_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, tag?tag:"ns1:getMyInvestigationsIncludesPaginationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludesPagination *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPagination **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getMyInvestigationsIncludesPagination **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludesPagination *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getMyInvestigationsIncludesPagination *)soap_instantiate_ns1__getMyInvestigationsIncludesPagination(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getMyInvestigationsIncludesPagination ** p = (ns1__getMyInvestigationsIncludesPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, sizeof(ns1__getMyInvestigationsIncludesPagination), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination);
-	if (soap_out_PointerTons1__getMyInvestigationsIncludesPagination(soap, tag?tag:"ns1:getMyInvestigationsIncludesPagination", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludesPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getMyInvestigationsIncludesResponse **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getMyInvestigationsIncludesResponse *)soap_instantiate_ns1__getMyInvestigationsIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getMyInvestigationsIncludesResponse ** p = (ns1__getMyInvestigationsIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, sizeof(ns1__getMyInvestigationsIncludesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse);
-	if (soap_out_PointerTons1__getMyInvestigationsIncludesResponse(soap, tag?tag:"ns1:getMyInvestigationsIncludesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludes))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludes *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludes);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludes **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getMyInvestigationsIncludes **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludes *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getMyInvestigationsIncludes *)soap_instantiate_ns1__getMyInvestigationsIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getMyInvestigationsIncludes ** p = (ns1__getMyInvestigationsIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludes, sizeof(ns1__getMyInvestigationsIncludes), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes);
-	if (soap_out_PointerTons1__getMyInvestigationsIncludes(soap, tag?tag:"ns1:getMyInvestigationsIncludes", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsResponse(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getMyInvestigationsResponse **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getMyInvestigationsResponse *)soap_instantiate_ns1__getMyInvestigationsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getMyInvestigationsResponse ** p = (ns1__getMyInvestigationsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsResponse, sizeof(ns1__getMyInvestigationsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsResponse);
-	if (soap_out_PointerTons1__getMyInvestigationsResponse(soap, tag?tag:"ns1:getMyInvestigationsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigationsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getMyInvestigationsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigations))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigations(struct soap *soap, const char *tag, int id, ns1__getMyInvestigations *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigations);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigations ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigations(struct soap *soap, const char *tag, ns1__getMyInvestigations **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getMyInvestigations **)soap_malloc(soap, sizeof(ns1__getMyInvestigations *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getMyInvestigations *)soap_instantiate_ns1__getMyInvestigations(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getMyInvestigations ** p = (ns1__getMyInvestigations **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigations, sizeof(ns1__getMyInvestigations), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigations);
-	if (soap_out_PointerTons1__getMyInvestigations(soap, tag?tag:"ns1:getMyInvestigations", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getMyInvestigations ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getMyInvestigations(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywordsAllResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, int id, ns1__searchByKeywordsAllResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywordsAllResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAllResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsAllResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByKeywordsAllResponse **)soap_malloc(soap, sizeof(ns1__searchByKeywordsAllResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByKeywordsAllResponse *)soap_instantiate_ns1__searchByKeywordsAllResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByKeywordsAllResponse ** p = (ns1__searchByKeywordsAllResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAllResponse, sizeof(ns1__searchByKeywordsAllResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse);
-	if (soap_out_PointerTons1__searchByKeywordsAllResponse(soap, tag?tag:"ns1:searchByKeywordsAllResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAllResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByKeywordsAllResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywordsAll))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywordsAll(struct soap *soap, const char *tag, int id, ns1__searchByKeywordsAll *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywordsAll);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAll ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywordsAll(struct soap *soap, const char *tag, ns1__searchByKeywordsAll **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByKeywordsAll **)soap_malloc(soap, sizeof(ns1__searchByKeywordsAll *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByKeywordsAll *)soap_instantiate_ns1__searchByKeywordsAll(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByKeywordsAll ** p = (ns1__searchByKeywordsAll **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAll, sizeof(ns1__searchByKeywordsAll), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywordsAll);
-	if (soap_out_PointerTons1__searchByKeywordsAll(soap, tag?tag:"ns1:searchByKeywordsAll", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsAll ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByKeywordsAll(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywordsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywordsResponse(struct soap *soap, const char *tag, int id, ns1__searchByKeywordsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywordsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywordsResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByKeywordsResponse **)soap_malloc(soap, sizeof(ns1__searchByKeywordsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByKeywordsResponse *)soap_instantiate_ns1__searchByKeywordsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByKeywordsResponse ** p = (ns1__searchByKeywordsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsResponse, sizeof(ns1__searchByKeywordsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywordsResponse);
-	if (soap_out_PointerTons1__searchByKeywordsResponse(soap, tag?tag:"ns1:searchByKeywordsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByKeywordsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByKeywordsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywords(struct soap *soap, ns1__searchByKeywords *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywords))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywords(struct soap *soap, const char *tag, int id, ns1__searchByKeywords *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywords);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByKeywords ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywords(struct soap *soap, const char *tag, ns1__searchByKeywords **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByKeywords **)soap_malloc(soap, sizeof(ns1__searchByKeywords *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByKeywords *)soap_instantiate_ns1__searchByKeywords(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByKeywords ** p = (ns1__searchByKeywords **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywords, sizeof(ns1__searchByKeywords), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywords(struct soap *soap, ns1__searchByKeywords *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywords);
-	if (soap_out_PointerTons1__searchByKeywords(soap, tag?tag:"ns1:searchByKeywords", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByKeywords ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywords(struct soap *soap, ns1__searchByKeywords **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByKeywords(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByAdvancedPaginationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedPaginationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByAdvancedPaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByAdvancedPaginationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByAdvancedPaginationResponse *)soap_instantiate_ns1__searchByAdvancedPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByAdvancedPaginationResponse ** p = (ns1__searchByAdvancedPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, sizeof(ns1__searchByAdvancedPaginationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse);
-	if (soap_out_PointerTons1__searchByAdvancedPaginationResponse(soap, tag?tag:"ns1:searchByAdvancedPaginationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByAdvancedPaginationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvancedPagination))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvancedPagination(struct soap *soap, const char *tag, int id, ns1__searchByAdvancedPagination *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvancedPagination);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvancedPagination(struct soap *soap, const char *tag, ns1__searchByAdvancedPagination **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByAdvancedPagination **)soap_malloc(soap, sizeof(ns1__searchByAdvancedPagination *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByAdvancedPagination *)soap_instantiate_ns1__searchByAdvancedPagination(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByAdvancedPagination ** p = (ns1__searchByAdvancedPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPagination, sizeof(ns1__searchByAdvancedPagination), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvancedPagination);
-	if (soap_out_PointerTons1__searchByAdvancedPagination(soap, tag?tag:"ns1:searchByAdvancedPagination", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedPagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByAdvancedPagination(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvancedResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvancedResponse(struct soap *soap, const char *tag, int id, ns1__searchByAdvancedResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvancedResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvancedResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByAdvancedResponse **)soap_malloc(soap, sizeof(ns1__searchByAdvancedResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByAdvancedResponse *)soap_instantiate_ns1__searchByAdvancedResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByAdvancedResponse ** p = (ns1__searchByAdvancedResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedResponse, sizeof(ns1__searchByAdvancedResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvancedResponse);
-	if (soap_out_PointerTons1__searchByAdvancedResponse(soap, tag?tag:"ns1:searchByAdvancedResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByAdvancedResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByAdvancedResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvanced))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvanced(struct soap *soap, const char *tag, int id, ns1__searchByAdvanced *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvanced);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__searchByAdvanced ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvanced(struct soap *soap, const char *tag, ns1__searchByAdvanced **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__searchByAdvanced **)soap_malloc(soap, sizeof(ns1__searchByAdvanced *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__searchByAdvanced *)soap_instantiate_ns1__searchByAdvanced(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__searchByAdvanced ** p = (ns1__searchByAdvanced **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvanced, sizeof(ns1__searchByAdvanced), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvanced);
-	if (soap_out_PointerTons1__searchByAdvanced(soap, tag?tag:"ns1:searchByAdvanced", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__searchByAdvanced ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__searchByAdvanced(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, int id, ns1__checkDatasetDownloadAccessResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse ** SOAP_FMAC4 soap_in_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccessResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__checkDatasetDownloadAccessResponse **)soap_malloc(soap, sizeof(ns1__checkDatasetDownloadAccessResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__checkDatasetDownloadAccessResponse *)soap_instantiate_ns1__checkDatasetDownloadAccessResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__checkDatasetDownloadAccessResponse ** p = (ns1__checkDatasetDownloadAccessResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, sizeof(ns1__checkDatasetDownloadAccessResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse);
-	if (soap_out_PointerTons1__checkDatasetDownloadAccessResponse(soap, tag?tag:"ns1:checkDatasetDownloadAccessResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse ** SOAP_FMAC4 soap_get_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__checkDatasetDownloadAccessResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatasetDownloadAccess))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, int id, ns1__checkDatasetDownloadAccess *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatasetDownloadAccess);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccess ** SOAP_FMAC4 soap_in_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccess **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__checkDatasetDownloadAccess **)soap_malloc(soap, sizeof(ns1__checkDatasetDownloadAccess *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__checkDatasetDownloadAccess *)soap_instantiate_ns1__checkDatasetDownloadAccess(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__checkDatasetDownloadAccess ** p = (ns1__checkDatasetDownloadAccess **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccess, sizeof(ns1__checkDatasetDownloadAccess), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess);
-	if (soap_out_PointerTons1__checkDatasetDownloadAccess(soap, tag?tag:"ns1:checkDatasetDownloadAccess", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__checkDatasetDownloadAccess ** SOAP_FMAC4 soap_get_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__checkDatasetDownloadAccess(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, int id, ns1__checkDatafileDownloadAccessResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse ** SOAP_FMAC4 soap_in_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccessResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__checkDatafileDownloadAccessResponse **)soap_malloc(soap, sizeof(ns1__checkDatafileDownloadAccessResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__checkDatafileDownloadAccessResponse *)soap_instantiate_ns1__checkDatafileDownloadAccessResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__checkDatafileDownloadAccessResponse ** p = (ns1__checkDatafileDownloadAccessResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, sizeof(ns1__checkDatafileDownloadAccessResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse);
-	if (soap_out_PointerTons1__checkDatafileDownloadAccessResponse(soap, tag?tag:"ns1:checkDatafileDownloadAccessResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse ** SOAP_FMAC4 soap_get_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__checkDatafileDownloadAccessResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatafileDownloadAccess))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, int id, ns1__checkDatafileDownloadAccess *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatafileDownloadAccess);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccess ** SOAP_FMAC4 soap_in_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccess **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__checkDatafileDownloadAccess **)soap_malloc(soap, sizeof(ns1__checkDatafileDownloadAccess *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__checkDatafileDownloadAccess *)soap_instantiate_ns1__checkDatafileDownloadAccess(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__checkDatafileDownloadAccess ** p = (ns1__checkDatafileDownloadAccess **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccess, sizeof(ns1__checkDatafileDownloadAccess), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess);
-	if (soap_out_PointerTons1__checkDatafileDownloadAccess(soap, tag?tag:"ns1:checkDatafileDownloadAccess", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__checkDatafileDownloadAccess ** SOAP_FMAC4 soap_get_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__checkDatafileDownloadAccess(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatasetResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatasetResponse(struct soap *soap, const char *tag, int id, ns1__downloadDatasetResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatasetResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatasetResponse ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatasetResponse(struct soap *soap, const char *tag, ns1__downloadDatasetResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadDatasetResponse **)soap_malloc(soap, sizeof(ns1__downloadDatasetResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadDatasetResponse *)soap_instantiate_ns1__downloadDatasetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadDatasetResponse ** p = (ns1__downloadDatasetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatasetResponse, sizeof(ns1__downloadDatasetResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatasetResponse);
-	if (soap_out_PointerTons1__downloadDatasetResponse(soap, tag?tag:"ns1:downloadDatasetResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadDatasetResponse ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadDatasetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDataset(struct soap *soap, ns1__downloadDataset *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDataset))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDataset(struct soap *soap, const char *tag, int id, ns1__downloadDataset *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDataset);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadDataset ** SOAP_FMAC4 soap_in_PointerTons1__downloadDataset(struct soap *soap, const char *tag, ns1__downloadDataset **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadDataset **)soap_malloc(soap, sizeof(ns1__downloadDataset *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadDataset *)soap_instantiate_ns1__downloadDataset(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadDataset ** p = (ns1__downloadDataset **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDataset, sizeof(ns1__downloadDataset), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDataset(struct soap *soap, ns1__downloadDataset *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDataset);
-	if (soap_out_PointerTons1__downloadDataset(soap, tag?tag:"ns1:downloadDataset", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadDataset ** SOAP_FMAC4 soap_get_PointerTons1__downloadDataset(struct soap *soap, ns1__downloadDataset **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadDataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafilesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafilesResponse(struct soap *soap, const char *tag, int id, ns1__downloadDatafilesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafilesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafilesResponse ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafilesResponse(struct soap *soap, const char *tag, ns1__downloadDatafilesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadDatafilesResponse **)soap_malloc(soap, sizeof(ns1__downloadDatafilesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadDatafilesResponse *)soap_instantiate_ns1__downloadDatafilesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadDatafilesResponse ** p = (ns1__downloadDatafilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafilesResponse, sizeof(ns1__downloadDatafilesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafilesResponse);
-	if (soap_out_PointerTons1__downloadDatafilesResponse(soap, tag?tag:"ns1:downloadDatafilesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadDatafilesResponse ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadDatafilesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafiles))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafiles(struct soap *soap, const char *tag, int id, ns1__downloadDatafiles *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafiles);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafiles ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafiles(struct soap *soap, const char *tag, ns1__downloadDatafiles **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadDatafiles **)soap_malloc(soap, sizeof(ns1__downloadDatafiles *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadDatafiles *)soap_instantiate_ns1__downloadDatafiles(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadDatafiles ** p = (ns1__downloadDatafiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafiles, sizeof(ns1__downloadDatafiles), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafiles);
-	if (soap_out_PointerTons1__downloadDatafiles(soap, tag?tag:"ns1:downloadDatafiles", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadDatafiles ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafileResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafileResponse(struct soap *soap, const char *tag, int id, ns1__downloadDatafileResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafileResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafileResponse ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafileResponse(struct soap *soap, const char *tag, ns1__downloadDatafileResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadDatafileResponse **)soap_malloc(soap, sizeof(ns1__downloadDatafileResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadDatafileResponse *)soap_instantiate_ns1__downloadDatafileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadDatafileResponse ** p = (ns1__downloadDatafileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafileResponse, sizeof(ns1__downloadDatafileResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafileResponse);
-	if (soap_out_PointerTons1__downloadDatafileResponse(soap, tag?tag:"ns1:downloadDatafileResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadDatafileResponse ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadDatafileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafile(struct soap *soap, ns1__downloadDatafile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafile(struct soap *soap, const char *tag, int id, ns1__downloadDatafile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadDatafile ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafile(struct soap *soap, const char *tag, ns1__downloadDatafile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadDatafile **)soap_malloc(soap, sizeof(ns1__downloadDatafile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadDatafile *)soap_instantiate_ns1__downloadDatafile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadDatafile ** p = (ns1__downloadDatafile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafile, sizeof(ns1__downloadDatafile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafile(struct soap *soap, ns1__downloadDatafile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafile);
-	if (soap_out_PointerTons1__downloadDatafile(soap, tag?tag:"ns1:downloadDatafile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadDatafile ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafile(struct soap *soap, ns1__downloadDatafile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadDatafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAllKeywordsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAllKeywordsResponse(struct soap *soap, const char *tag, int id, ns1__getAllKeywordsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAllKeywordsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getAllKeywordsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getAllKeywordsResponse(struct soap *soap, const char *tag, ns1__getAllKeywordsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getAllKeywordsResponse **)soap_malloc(soap, sizeof(ns1__getAllKeywordsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getAllKeywordsResponse *)soap_instantiate_ns1__getAllKeywordsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getAllKeywordsResponse ** p = (ns1__getAllKeywordsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywordsResponse, sizeof(ns1__getAllKeywordsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAllKeywordsResponse);
-	if (soap_out_PointerTons1__getAllKeywordsResponse(soap, tag?tag:"ns1:getAllKeywordsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getAllKeywordsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getAllKeywordsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAllKeywords(struct soap *soap, ns1__getAllKeywords *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAllKeywords))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAllKeywords(struct soap *soap, const char *tag, int id, ns1__getAllKeywords *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAllKeywords);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getAllKeywords ** SOAP_FMAC4 soap_in_PointerTons1__getAllKeywords(struct soap *soap, const char *tag, ns1__getAllKeywords **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getAllKeywords **)soap_malloc(soap, sizeof(ns1__getAllKeywords *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getAllKeywords *)soap_instantiate_ns1__getAllKeywords(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getAllKeywords ** p = (ns1__getAllKeywords **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywords, sizeof(ns1__getAllKeywords), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAllKeywords(struct soap *soap, ns1__getAllKeywords *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAllKeywords);
-	if (soap_out_PointerTons1__getAllKeywords(soap, tag?tag:"ns1:getAllKeywords", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getAllKeywords ** SOAP_FMAC4 soap_get_PointerTons1__getAllKeywords(struct soap *soap, ns1__getAllKeywords **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getAllKeywords(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserTypeResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserTypeResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserTypeResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserTypeResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserTypeResponse *)soap_instantiate_ns1__getKeywordsForUserTypeResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserTypeResponse ** p = (ns1__getKeywordsForUserTypeResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, sizeof(ns1__getKeywordsForUserTypeResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse);
-	if (soap_out_PointerTons1__getKeywordsForUserTypeResponse(soap, tag?tag:"ns1:getKeywordsForUserTypeResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserTypeResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserType))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserType(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserType *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserType);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserType ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserType(struct soap *soap, const char *tag, ns1__getKeywordsForUserType **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserType **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserType *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserType *)soap_instantiate_ns1__getKeywordsForUserType(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserType ** p = (ns1__getKeywordsForUserType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserType, sizeof(ns1__getKeywordsForUserType), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserType);
-	if (soap_out_PointerTons1__getKeywordsForUserType(soap, tag?tag:"ns1:getKeywordsForUserType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserType ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserMaxResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserMaxResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserMaxResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserMaxResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserMaxResponse *)soap_instantiate_ns1__getKeywordsForUserMaxResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserMaxResponse ** p = (ns1__getKeywordsForUserMaxResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, sizeof(ns1__getKeywordsForUserMaxResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse);
-	if (soap_out_PointerTons1__getKeywordsForUserMaxResponse(soap, tag?tag:"ns1:getKeywordsForUserMaxResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserMaxResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserMax))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserMax(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserMax *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserMax);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMax ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserMax **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserMax **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserMax *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserMax *)soap_instantiate_ns1__getKeywordsForUserMax(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserMax ** p = (ns1__getKeywordsForUserMax **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMax, sizeof(ns1__getKeywordsForUserMax), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserMax);
-	if (soap_out_PointerTons1__getKeywordsForUserMax(soap, tag?tag:"ns1:getKeywordsForUserMax", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserMax ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserMax(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserStartWithMaxResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMaxResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserStartWithMaxResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserStartWithMaxResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserStartWithMaxResponse *)soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserStartWithMaxResponse ** p = (ns1__getKeywordsForUserStartWithMaxResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse);
-	if (soap_out_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, tag?tag:"ns1:getKeywordsForUserStartWithMaxResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserStartWithMax *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMax **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserStartWithMax **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserStartWithMax *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserStartWithMax *)soap_instantiate_ns1__getKeywordsForUserStartWithMax(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserStartWithMax ** p = (ns1__getKeywordsForUserStartWithMax **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, sizeof(ns1__getKeywordsForUserStartWithMax), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax);
-	if (soap_out_PointerTons1__getKeywordsForUserStartWithMax(soap, tag?tag:"ns1:getKeywordsForUserStartWithMax", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserStartWithMax(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUserResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUserResponse *)soap_instantiate_ns1__getKeywordsForUserResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUserResponse ** p = (ns1__getKeywordsForUserResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserResponse, sizeof(ns1__getKeywordsForUserResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserResponse);
-	if (soap_out_PointerTons1__getKeywordsForUserResponse(soap, tag?tag:"ns1:getKeywordsForUserResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUserResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUserResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUser))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUser(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUser *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUser);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUser ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUser(struct soap *soap, const char *tag, ns1__getKeywordsForUser **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getKeywordsForUser **)soap_malloc(soap, sizeof(ns1__getKeywordsForUser *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getKeywordsForUser *)soap_instantiate_ns1__getKeywordsForUser(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getKeywordsForUser ** p = (ns1__getKeywordsForUser **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUser, sizeof(ns1__getKeywordsForUser), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUser);
-	if (soap_out_PointerTons1__getKeywordsForUser(soap, tag?tag:"ns1:getKeywordsForUser", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getKeywordsForUser ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getKeywordsForUser(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFileParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataFileParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFileParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataFileParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__deleteDataFileParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataFileParameterResponse *)soap_instantiate_ns1__deleteDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataFileParameterResponse ** p = (ns1__deleteDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameterResponse, sizeof(ns1__deleteDataFileParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse);
-	if (soap_out_PointerTons1__deleteDataFileParameterResponse(soap, tag?tag:"ns1:deleteDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFileParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFileParameter(struct soap *soap, const char *tag, int id, ns1__deleteDataFileParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFileParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFileParameter(struct soap *soap, const char *tag, ns1__deleteDataFileParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataFileParameter **)soap_malloc(soap, sizeof(ns1__deleteDataFileParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataFileParameter *)soap_instantiate_ns1__deleteDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataFileParameter ** p = (ns1__deleteDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameter, sizeof(ns1__deleteDataFileParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFileParameter);
-	if (soap_out_PointerTons1__deleteDataFileParameter(soap, tag?tag:"ns1:deleteDataFileParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFileParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__removeDataFileParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFileParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFileParameterResponse(struct soap *soap, const char *tag, ns1__removeDataFileParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__removeDataFileParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataFileParameterResponse *)soap_instantiate_ns1__removeDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataFileParameterResponse ** p = (ns1__removeDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameterResponse, sizeof(ns1__removeDataFileParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFileParameterResponse);
-	if (soap_out_PointerTons1__removeDataFileParameterResponse(soap, tag?tag:"ns1:removeDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFileParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFileParameter(struct soap *soap, const char *tag, int id, ns1__removeDataFileParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFileParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFileParameter(struct soap *soap, const char *tag, ns1__removeDataFileParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataFileParameter **)soap_malloc(soap, sizeof(ns1__removeDataFileParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataFileParameter *)soap_instantiate_ns1__removeDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataFileParameter ** p = (ns1__removeDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameter, sizeof(ns1__removeDataFileParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFileParameter);
-	if (soap_out_PointerTons1__removeDataFileParameter(soap, tag?tag:"ns1:removeDataFileParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFileParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataFileParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFileParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataFileParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__modifyDataFileParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataFileParameterResponse *)soap_instantiate_ns1__modifyDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataFileParameterResponse ** p = (ns1__modifyDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameterResponse, sizeof(ns1__modifyDataFileParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse);
-	if (soap_out_PointerTons1__modifyDataFileParameterResponse(soap, tag?tag:"ns1:modifyDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFileParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFileParameter(struct soap *soap, const char *tag, int id, ns1__modifyDataFileParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFileParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFileParameter(struct soap *soap, const char *tag, ns1__modifyDataFileParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataFileParameter **)soap_malloc(soap, sizeof(ns1__modifyDataFileParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataFileParameter *)soap_instantiate_ns1__modifyDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataFileParameter ** p = (ns1__modifyDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameter, sizeof(ns1__modifyDataFileParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFileParameter);
-	if (soap_out_PointerTons1__modifyDataFileParameter(soap, tag?tag:"ns1:modifyDataFileParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParametersResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParametersResponse(struct soap *soap, const char *tag, int id, ns1__addDataFileParametersResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParametersResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParametersResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParametersResponse(struct soap *soap, const char *tag, ns1__addDataFileParametersResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataFileParametersResponse **)soap_malloc(soap, sizeof(ns1__addDataFileParametersResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataFileParametersResponse *)soap_instantiate_ns1__addDataFileParametersResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataFileParametersResponse ** p = (ns1__addDataFileParametersResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParametersResponse, sizeof(ns1__addDataFileParametersResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParametersResponse);
-	if (soap_out_PointerTons1__addDataFileParametersResponse(soap, tag?tag:"ns1:addDataFileParametersResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataFileParametersResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataFileParametersResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParameters))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParameters(struct soap *soap, const char *tag, int id, ns1__addDataFileParameters *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParameters);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameters ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParameters(struct soap *soap, const char *tag, ns1__addDataFileParameters **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataFileParameters **)soap_malloc(soap, sizeof(ns1__addDataFileParameters *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataFileParameters *)soap_instantiate_ns1__addDataFileParameters(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataFileParameters ** p = (ns1__addDataFileParameters **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameters, sizeof(ns1__addDataFileParameters), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParameters);
-	if (soap_out_PointerTons1__addDataFileParameters(soap, tag?tag:"ns1:addDataFileParameters", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameters ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataFileParameters(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFileResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFileResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataFileResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFileResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFileResponse(struct soap *soap, const char *tag, ns1__modifyDataFileResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataFileResponse **)soap_malloc(soap, sizeof(ns1__modifyDataFileResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataFileResponse *)soap_instantiate_ns1__modifyDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataFileResponse ** p = (ns1__modifyDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileResponse, sizeof(ns1__modifyDataFileResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFileResponse);
-	if (soap_out_PointerTons1__modifyDataFileResponse(soap, tag?tag:"ns1:modifyDataFileResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFile(struct soap *soap, ns1__modifyDataFile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFile(struct soap *soap, const char *tag, int id, ns1__modifyDataFile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyDataFile ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFile(struct soap *soap, const char *tag, ns1__modifyDataFile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyDataFile **)soap_malloc(soap, sizeof(ns1__modifyDataFile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyDataFile *)soap_instantiate_ns1__modifyDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyDataFile ** p = (ns1__modifyDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFile, sizeof(ns1__modifyDataFile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFile(struct soap *soap, ns1__modifyDataFile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFile);
-	if (soap_out_PointerTons1__modifyDataFile(soap, tag?tag:"ns1:modifyDataFile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyDataFile ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFile(struct soap *soap, ns1__modifyDataFile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFileResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFileResponse(struct soap *soap, const char *tag, int id, ns1__removeDataFileResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFileResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFileResponse(struct soap *soap, const char *tag, ns1__removeDataFileResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataFileResponse **)soap_malloc(soap, sizeof(ns1__removeDataFileResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataFileResponse *)soap_instantiate_ns1__removeDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataFileResponse ** p = (ns1__removeDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileResponse, sizeof(ns1__removeDataFileResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFileResponse);
-	if (soap_out_PointerTons1__removeDataFileResponse(soap, tag?tag:"ns1:removeDataFileResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFile(struct soap *soap, ns1__removeDataFile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFile(struct soap *soap, const char *tag, int id, ns1__removeDataFile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeDataFile ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFile(struct soap *soap, const char *tag, ns1__removeDataFile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeDataFile **)soap_malloc(soap, sizeof(ns1__removeDataFile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeDataFile *)soap_instantiate_ns1__removeDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeDataFile ** p = (ns1__removeDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFile, sizeof(ns1__removeDataFile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFile(struct soap *soap, ns1__removeDataFile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFile);
-	if (soap_out_PointerTons1__removeDataFile(soap, tag?tag:"ns1:removeDataFile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeDataFile ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFile(struct soap *soap, ns1__removeDataFile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFileResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFileResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataFileResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFileResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFileResponse(struct soap *soap, const char *tag, ns1__deleteDataFileResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataFileResponse **)soap_malloc(soap, sizeof(ns1__deleteDataFileResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataFileResponse *)soap_instantiate_ns1__deleteDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataFileResponse ** p = (ns1__deleteDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileResponse, sizeof(ns1__deleteDataFileResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFileResponse);
-	if (soap_out_PointerTons1__deleteDataFileResponse(soap, tag?tag:"ns1:deleteDataFileResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFile(struct soap *soap, ns1__deleteDataFile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFile(struct soap *soap, const char *tag, int id, ns1__deleteDataFile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteDataFile ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFile(struct soap *soap, const char *tag, ns1__deleteDataFile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteDataFile **)soap_malloc(soap, sizeof(ns1__deleteDataFile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteDataFile *)soap_instantiate_ns1__deleteDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteDataFile ** p = (ns1__deleteDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFile, sizeof(ns1__deleteDataFile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFile(struct soap *soap, ns1__deleteDataFile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFile);
-	if (soap_out_PointerTons1__deleteDataFile(soap, tag?tag:"ns1:deleteDataFile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteDataFile ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFile(struct soap *soap, ns1__deleteDataFile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFilesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFilesResponse(struct soap *soap, const char *tag, int id, ns1__createDataFilesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFilesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataFilesResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataFilesResponse(struct soap *soap, const char *tag, ns1__createDataFilesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataFilesResponse **)soap_malloc(soap, sizeof(ns1__createDataFilesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataFilesResponse *)soap_instantiate_ns1__createDataFilesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataFilesResponse ** p = (ns1__createDataFilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFilesResponse, sizeof(ns1__createDataFilesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFilesResponse);
-	if (soap_out_PointerTons1__createDataFilesResponse(soap, tag?tag:"ns1:createDataFilesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataFilesResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataFilesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFiles(struct soap *soap, ns1__createDataFiles *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFiles))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFiles(struct soap *soap, const char *tag, int id, ns1__createDataFiles *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFiles);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataFiles ** SOAP_FMAC4 soap_in_PointerTons1__createDataFiles(struct soap *soap, const char *tag, ns1__createDataFiles **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataFiles **)soap_malloc(soap, sizeof(ns1__createDataFiles *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataFiles *)soap_instantiate_ns1__createDataFiles(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataFiles ** p = (ns1__createDataFiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFiles, sizeof(ns1__createDataFiles), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFiles(struct soap *soap, ns1__createDataFiles *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFiles);
-	if (soap_out_PointerTons1__createDataFiles(soap, tag?tag:"ns1:createDataFiles", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataFiles ** SOAP_FMAC4 soap_get_PointerTons1__createDataFiles(struct soap *soap, ns1__createDataFiles **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataFiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFileResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFileResponse(struct soap *soap, const char *tag, int id, ns1__createDataFileResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFileResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataFileResponse(struct soap *soap, const char *tag, ns1__createDataFileResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataFileResponse **)soap_malloc(soap, sizeof(ns1__createDataFileResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataFileResponse *)soap_instantiate_ns1__createDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataFileResponse ** p = (ns1__createDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFileResponse, sizeof(ns1__createDataFileResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFileResponse);
-	if (soap_out_PointerTons1__createDataFileResponse(soap, tag?tag:"ns1:createDataFileResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataFileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFile(struct soap *soap, ns1__createDataFile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFile(struct soap *soap, const char *tag, int id, ns1__createDataFile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createDataFile ** SOAP_FMAC4 soap_in_PointerTons1__createDataFile(struct soap *soap, const char *tag, ns1__createDataFile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createDataFile **)soap_malloc(soap, sizeof(ns1__createDataFile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createDataFile *)soap_instantiate_ns1__createDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createDataFile ** p = (ns1__createDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFile, sizeof(ns1__createDataFile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFile(struct soap *soap, ns1__createDataFile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFile);
-	if (soap_out_PointerTons1__createDataFile(soap, tag?tag:"ns1:createDataFile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createDataFile ** SOAP_FMAC4 soap_get_PointerTons1__createDataFile(struct soap *soap, ns1__createDataFile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createDataFile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafilesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafilesResponse(struct soap *soap, const char *tag, int id, ns1__getDatafilesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafilesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatafilesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatafilesResponse(struct soap *soap, const char *tag, ns1__getDatafilesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatafilesResponse **)soap_malloc(soap, sizeof(ns1__getDatafilesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatafilesResponse *)soap_instantiate_ns1__getDatafilesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatafilesResponse ** p = (ns1__getDatafilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafilesResponse, sizeof(ns1__getDatafilesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafilesResponse);
-	if (soap_out_PointerTons1__getDatafilesResponse(soap, tag?tag:"ns1:getDatafilesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatafilesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatafilesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafiles(struct soap *soap, ns1__getDatafiles *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafiles))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafiles(struct soap *soap, const char *tag, int id, ns1__getDatafiles *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafiles);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatafiles ** SOAP_FMAC4 soap_in_PointerTons1__getDatafiles(struct soap *soap, const char *tag, ns1__getDatafiles **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatafiles **)soap_malloc(soap, sizeof(ns1__getDatafiles *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatafiles *)soap_instantiate_ns1__getDatafiles(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatafiles ** p = (ns1__getDatafiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafiles, sizeof(ns1__getDatafiles), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafiles(struct soap *soap, ns1__getDatafiles *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafiles);
-	if (soap_out_PointerTons1__getDatafiles(soap, tag?tag:"ns1:getDatafiles", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatafiles ** SOAP_FMAC4 soap_get_PointerTons1__getDatafiles(struct soap *soap, ns1__getDatafiles **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getUserDetailsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getUserDetailsResponse(struct soap *soap, const char *tag, int id, ns1__getUserDetailsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getUserDetailsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getUserDetailsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getUserDetailsResponse(struct soap *soap, const char *tag, ns1__getUserDetailsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getUserDetailsResponse **)soap_malloc(soap, sizeof(ns1__getUserDetailsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getUserDetailsResponse *)soap_instantiate_ns1__getUserDetailsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getUserDetailsResponse ** p = (ns1__getUserDetailsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetailsResponse, sizeof(ns1__getUserDetailsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getUserDetailsResponse);
-	if (soap_out_PointerTons1__getUserDetailsResponse(soap, tag?tag:"ns1:getUserDetailsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getUserDetailsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getUserDetailsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getUserDetails(struct soap *soap, ns1__getUserDetails *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getUserDetails))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getUserDetails(struct soap *soap, const char *tag, int id, ns1__getUserDetails *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getUserDetails);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getUserDetails ** SOAP_FMAC4 soap_in_PointerTons1__getUserDetails(struct soap *soap, const char *tag, ns1__getUserDetails **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getUserDetails **)soap_malloc(soap, sizeof(ns1__getUserDetails *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getUserDetails *)soap_instantiate_ns1__getUserDetails(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getUserDetails ** p = (ns1__getUserDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetails, sizeof(ns1__getUserDetails), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getUserDetails(struct soap *soap, ns1__getUserDetails *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getUserDetails);
-	if (soap_out_PointerTons1__getUserDetails(soap, tag?tag:"ns1:getUserDetails", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getUserDetails ** SOAP_FMAC4 soap_get_PointerTons1__getUserDetails(struct soap *soap, ns1__getUserDetails **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getUserDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__updateAuthorisationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__updateAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__updateAuthorisationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__updateAuthorisationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__updateAuthorisationResponse(struct soap *soap, const char *tag, ns1__updateAuthorisationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__updateAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__updateAuthorisationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__updateAuthorisationResponse *)soap_instantiate_ns1__updateAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__updateAuthorisationResponse ** p = (ns1__updateAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisationResponse, sizeof(ns1__updateAuthorisationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__updateAuthorisationResponse);
-	if (soap_out_PointerTons1__updateAuthorisationResponse(soap, tag?tag:"ns1:updateAuthorisationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__updateAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__updateAuthorisation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__updateAuthorisation(struct soap *soap, const char *tag, int id, ns1__updateAuthorisation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__updateAuthorisation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__updateAuthorisation(struct soap *soap, const char *tag, ns1__updateAuthorisation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__updateAuthorisation **)soap_malloc(soap, sizeof(ns1__updateAuthorisation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__updateAuthorisation *)soap_instantiate_ns1__updateAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__updateAuthorisation ** p = (ns1__updateAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisation, sizeof(ns1__updateAuthorisation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__updateAuthorisation);
-	if (soap_out_PointerTons1__updateAuthorisation(soap, tag?tag:"ns1:updateAuthorisation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__updateAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__updateAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeAuthorisationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__removeAuthorisationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeAuthorisationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeAuthorisationResponse(struct soap *soap, const char *tag, ns1__removeAuthorisationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__removeAuthorisationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeAuthorisationResponse *)soap_instantiate_ns1__removeAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeAuthorisationResponse ** p = (ns1__removeAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisationResponse, sizeof(ns1__removeAuthorisationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeAuthorisationResponse);
-	if (soap_out_PointerTons1__removeAuthorisationResponse(soap, tag?tag:"ns1:removeAuthorisationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeAuthorisation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeAuthorisation(struct soap *soap, const char *tag, int id, ns1__removeAuthorisation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeAuthorisation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__removeAuthorisation(struct soap *soap, const char *tag, ns1__removeAuthorisation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeAuthorisation **)soap_malloc(soap, sizeof(ns1__removeAuthorisation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeAuthorisation *)soap_instantiate_ns1__removeAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeAuthorisation ** p = (ns1__removeAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisation, sizeof(ns1__removeAuthorisation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeAuthorisation);
-	if (soap_out_PointerTons1__removeAuthorisation(soap, tag?tag:"ns1:removeAuthorisation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteAuthorisationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__deleteAuthorisationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteAuthorisationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteAuthorisationResponse(struct soap *soap, const char *tag, ns1__deleteAuthorisationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__deleteAuthorisationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteAuthorisationResponse *)soap_instantiate_ns1__deleteAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteAuthorisationResponse ** p = (ns1__deleteAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisationResponse, sizeof(ns1__deleteAuthorisationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteAuthorisationResponse);
-	if (soap_out_PointerTons1__deleteAuthorisationResponse(soap, tag?tag:"ns1:deleteAuthorisationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteAuthorisation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteAuthorisation(struct soap *soap, const char *tag, int id, ns1__deleteAuthorisation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteAuthorisation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__deleteAuthorisation(struct soap *soap, const char *tag, ns1__deleteAuthorisation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteAuthorisation **)soap_malloc(soap, sizeof(ns1__deleteAuthorisation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteAuthorisation *)soap_instantiate_ns1__deleteAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteAuthorisation ** p = (ns1__deleteAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisation, sizeof(ns1__deleteAuthorisation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteAuthorisation);
-	if (soap_out_PointerTons1__deleteAuthorisation(soap, tag?tag:"ns1:deleteAuthorisation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addAuthorisationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__addAuthorisationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addAuthorisationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__addAuthorisationResponse(struct soap *soap, const char *tag, ns1__addAuthorisationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__addAuthorisationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addAuthorisationResponse *)soap_instantiate_ns1__addAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addAuthorisationResponse ** p = (ns1__addAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisationResponse, sizeof(ns1__addAuthorisationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addAuthorisationResponse);
-	if (soap_out_PointerTons1__addAuthorisationResponse(soap, tag?tag:"ns1:addAuthorisationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addAuthorisationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addAuthorisation(struct soap *soap, ns1__addAuthorisation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addAuthorisation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addAuthorisation(struct soap *soap, const char *tag, int id, ns1__addAuthorisation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addAuthorisation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__addAuthorisation(struct soap *soap, const char *tag, ns1__addAuthorisation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addAuthorisation **)soap_malloc(soap, sizeof(ns1__addAuthorisation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addAuthorisation *)soap_instantiate_ns1__addAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addAuthorisation ** p = (ns1__addAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisation, sizeof(ns1__addAuthorisation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addAuthorisation(struct soap *soap, ns1__addAuthorisation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addAuthorisation);
-	if (soap_out_PointerTons1__addAuthorisation(soap, tag?tag:"ns1:addAuthorisation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__addAuthorisation(struct soap *soap, ns1__addAuthorisation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAuthorisationsResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAuthorisationsResponse(struct soap *soap, const char *tag, int id, ns1__getAuthorisationsResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAuthorisationsResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getAuthorisationsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getAuthorisationsResponse(struct soap *soap, const char *tag, ns1__getAuthorisationsResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getAuthorisationsResponse **)soap_malloc(soap, sizeof(ns1__getAuthorisationsResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getAuthorisationsResponse *)soap_instantiate_ns1__getAuthorisationsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getAuthorisationsResponse ** p = (ns1__getAuthorisationsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisationsResponse, sizeof(ns1__getAuthorisationsResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAuthorisationsResponse);
-	if (soap_out_PointerTons1__getAuthorisationsResponse(soap, tag?tag:"ns1:getAuthorisationsResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getAuthorisationsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getAuthorisationsResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAuthorisations(struct soap *soap, ns1__getAuthorisations *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAuthorisations))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAuthorisations(struct soap *soap, const char *tag, int id, ns1__getAuthorisations *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAuthorisations);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getAuthorisations ** SOAP_FMAC4 soap_in_PointerTons1__getAuthorisations(struct soap *soap, const char *tag, ns1__getAuthorisations **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getAuthorisations **)soap_malloc(soap, sizeof(ns1__getAuthorisations *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getAuthorisations *)soap_instantiate_ns1__getAuthorisations(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getAuthorisations ** p = (ns1__getAuthorisations **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisations, sizeof(ns1__getAuthorisations), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAuthorisations(struct soap *soap, ns1__getAuthorisations *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAuthorisations);
-	if (soap_out_PointerTons1__getAuthorisations(soap, tag?tag:"ns1:getAuthorisations", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getAuthorisations ** SOAP_FMAC4 soap_get_PointerTons1__getAuthorisations(struct soap *soap, ns1__getAuthorisations **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getAuthorisations(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySampleParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__modifySampleParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySampleParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifySampleParameterResponse(struct soap *soap, const char *tag, ns1__modifySampleParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifySampleParameterResponse **)soap_malloc(soap, sizeof(ns1__modifySampleParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifySampleParameterResponse *)soap_instantiate_ns1__modifySampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifySampleParameterResponse ** p = (ns1__modifySampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameterResponse, sizeof(ns1__modifySampleParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySampleParameterResponse);
-	if (soap_out_PointerTons1__modifySampleParameterResponse(soap, tag?tag:"ns1:modifySampleParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifySampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySampleParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySampleParameter(struct soap *soap, const char *tag, int id, ns1__modifySampleParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySampleParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__modifySampleParameter(struct soap *soap, const char *tag, ns1__modifySampleParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifySampleParameter **)soap_malloc(soap, sizeof(ns1__modifySampleParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifySampleParameter *)soap_instantiate_ns1__modifySampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifySampleParameter ** p = (ns1__modifySampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameter, sizeof(ns1__modifySampleParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySampleParameter);
-	if (soap_out_PointerTons1__modifySampleParameter(soap, tag?tag:"ns1:modifySampleParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifySampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifySampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSampleParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__deleteSampleParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSampleParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteSampleParameterResponse(struct soap *soap, const char *tag, ns1__deleteSampleParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteSampleParameterResponse **)soap_malloc(soap, sizeof(ns1__deleteSampleParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteSampleParameterResponse *)soap_instantiate_ns1__deleteSampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteSampleParameterResponse ** p = (ns1__deleteSampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameterResponse, sizeof(ns1__deleteSampleParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSampleParameterResponse);
-	if (soap_out_PointerTons1__deleteSampleParameterResponse(soap, tag?tag:"ns1:deleteSampleParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSampleParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSampleParameter(struct soap *soap, const char *tag, int id, ns1__deleteSampleParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSampleParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__deleteSampleParameter(struct soap *soap, const char *tag, ns1__deleteSampleParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteSampleParameter **)soap_malloc(soap, sizeof(ns1__deleteSampleParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteSampleParameter *)soap_instantiate_ns1__deleteSampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteSampleParameter ** p = (ns1__deleteSampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameter, sizeof(ns1__deleteSampleParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSampleParameter);
-	if (soap_out_PointerTons1__deleteSampleParameter(soap, tag?tag:"ns1:deleteSampleParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteSampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSampleParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__removeSampleParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSampleParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeSampleParameterResponse(struct soap *soap, const char *tag, ns1__removeSampleParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeSampleParameterResponse **)soap_malloc(soap, sizeof(ns1__removeSampleParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeSampleParameterResponse *)soap_instantiate_ns1__removeSampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeSampleParameterResponse ** p = (ns1__removeSampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameterResponse, sizeof(ns1__removeSampleParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSampleParameterResponse);
-	if (soap_out_PointerTons1__removeSampleParameterResponse(soap, tag?tag:"ns1:removeSampleParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSampleParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSampleParameter(struct soap *soap, const char *tag, int id, ns1__removeSampleParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSampleParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__removeSampleParameter(struct soap *soap, const char *tag, ns1__removeSampleParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeSampleParameter **)soap_malloc(soap, sizeof(ns1__removeSampleParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeSampleParameter *)soap_instantiate_ns1__removeSampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeSampleParameter ** p = (ns1__removeSampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameter, sizeof(ns1__removeSampleParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSampleParameter);
-	if (soap_out_PointerTons1__removeSampleParameter(soap, tag?tag:"ns1:removeSampleParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeSampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySampleResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySampleResponse(struct soap *soap, const char *tag, int id, ns1__modifySampleResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySampleResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifySampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifySampleResponse(struct soap *soap, const char *tag, ns1__modifySampleResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifySampleResponse **)soap_malloc(soap, sizeof(ns1__modifySampleResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifySampleResponse *)soap_instantiate_ns1__modifySampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifySampleResponse ** p = (ns1__modifySampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleResponse, sizeof(ns1__modifySampleResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySampleResponse);
-	if (soap_out_PointerTons1__modifySampleResponse(soap, tag?tag:"ns1:modifySampleResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifySampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifySampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySample(struct soap *soap, ns1__modifySample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySample(struct soap *soap, const char *tag, int id, ns1__modifySample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifySample ** SOAP_FMAC4 soap_in_PointerTons1__modifySample(struct soap *soap, const char *tag, ns1__modifySample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifySample **)soap_malloc(soap, sizeof(ns1__modifySample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifySample *)soap_instantiate_ns1__modifySample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifySample ** p = (ns1__modifySample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySample, sizeof(ns1__modifySample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySample(struct soap *soap, ns1__modifySample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySample);
-	if (soap_out_PointerTons1__modifySample(soap, tag?tag:"ns1:modifySample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifySample ** SOAP_FMAC4 soap_get_PointerTons1__modifySample(struct soap *soap, ns1__modifySample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifySample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSampleResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSampleResponse(struct soap *soap, const char *tag, int id, ns1__deleteSampleResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSampleResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteSampleResponse(struct soap *soap, const char *tag, ns1__deleteSampleResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteSampleResponse **)soap_malloc(soap, sizeof(ns1__deleteSampleResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteSampleResponse *)soap_instantiate_ns1__deleteSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteSampleResponse ** p = (ns1__deleteSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleResponse, sizeof(ns1__deleteSampleResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSampleResponse);
-	if (soap_out_PointerTons1__deleteSampleResponse(soap, tag?tag:"ns1:deleteSampleResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSample(struct soap *soap, ns1__deleteSample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSample(struct soap *soap, const char *tag, int id, ns1__deleteSample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteSample ** SOAP_FMAC4 soap_in_PointerTons1__deleteSample(struct soap *soap, const char *tag, ns1__deleteSample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteSample **)soap_malloc(soap, sizeof(ns1__deleteSample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteSample *)soap_instantiate_ns1__deleteSample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteSample ** p = (ns1__deleteSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSample, sizeof(ns1__deleteSample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSample(struct soap *soap, ns1__deleteSample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSample);
-	if (soap_out_PointerTons1__deleteSample(soap, tag?tag:"ns1:deleteSample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteSample ** SOAP_FMAC4 soap_get_PointerTons1__deleteSample(struct soap *soap, ns1__deleteSample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSampleResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSampleResponse(struct soap *soap, const char *tag, int id, ns1__removeSampleResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSampleResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeSampleResponse(struct soap *soap, const char *tag, ns1__removeSampleResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeSampleResponse **)soap_malloc(soap, sizeof(ns1__removeSampleResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeSampleResponse *)soap_instantiate_ns1__removeSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeSampleResponse ** p = (ns1__removeSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleResponse, sizeof(ns1__removeSampleResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSampleResponse);
-	if (soap_out_PointerTons1__removeSampleResponse(soap, tag?tag:"ns1:removeSampleResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSample(struct soap *soap, ns1__removeSample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSample(struct soap *soap, const char *tag, int id, ns1__removeSample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeSample ** SOAP_FMAC4 soap_in_PointerTons1__removeSample(struct soap *soap, const char *tag, ns1__removeSample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeSample **)soap_malloc(soap, sizeof(ns1__removeSample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeSample *)soap_instantiate_ns1__removeSample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeSample ** p = (ns1__removeSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSample, sizeof(ns1__removeSample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSample(struct soap *soap, ns1__removeSample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSample);
-	if (soap_out_PointerTons1__removeSample(soap, tag?tag:"ns1:removeSample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeSample ** SOAP_FMAC4 soap_get_PointerTons1__removeSample(struct soap *soap, ns1__removeSample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__deleteInvestigatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigatorResponse(struct soap *soap, const char *tag, ns1__deleteInvestigatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__deleteInvestigatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteInvestigatorResponse *)soap_instantiate_ns1__deleteInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteInvestigatorResponse ** p = (ns1__deleteInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigatorResponse, sizeof(ns1__deleteInvestigatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigatorResponse);
-	if (soap_out_PointerTons1__deleteInvestigatorResponse(soap, tag?tag:"ns1:deleteInvestigatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigator(struct soap *soap, const char *tag, int id, ns1__deleteInvestigator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigator(struct soap *soap, const char *tag, ns1__deleteInvestigator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteInvestigator **)soap_malloc(soap, sizeof(ns1__deleteInvestigator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteInvestigator *)soap_instantiate_ns1__deleteInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteInvestigator ** p = (ns1__deleteInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigator, sizeof(ns1__deleteInvestigator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigator);
-	if (soap_out_PointerTons1__deleteInvestigator(soap, tag?tag:"ns1:deleteInvestigator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__modifyInvestigatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigatorResponse(struct soap *soap, const char *tag, ns1__modifyInvestigatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__modifyInvestigatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyInvestigatorResponse *)soap_instantiate_ns1__modifyInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyInvestigatorResponse ** p = (ns1__modifyInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigatorResponse, sizeof(ns1__modifyInvestigatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigatorResponse);
-	if (soap_out_PointerTons1__modifyInvestigatorResponse(soap, tag?tag:"ns1:modifyInvestigatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigator(struct soap *soap, const char *tag, int id, ns1__modifyInvestigator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigator(struct soap *soap, const char *tag, ns1__modifyInvestigator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyInvestigator **)soap_malloc(soap, sizeof(ns1__modifyInvestigator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyInvestigator *)soap_instantiate_ns1__modifyInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyInvestigator ** p = (ns1__modifyInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigator, sizeof(ns1__modifyInvestigator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigator);
-	if (soap_out_PointerTons1__modifyInvestigator(soap, tag?tag:"ns1:modifyInvestigator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__removeInvestigatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigatorResponse(struct soap *soap, const char *tag, ns1__removeInvestigatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__removeInvestigatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeInvestigatorResponse *)soap_instantiate_ns1__removeInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeInvestigatorResponse ** p = (ns1__removeInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigatorResponse, sizeof(ns1__removeInvestigatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigatorResponse);
-	if (soap_out_PointerTons1__removeInvestigatorResponse(soap, tag?tag:"ns1:removeInvestigatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigator(struct soap *soap, ns1__removeInvestigator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigator(struct soap *soap, const char *tag, int id, ns1__removeInvestigator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigator(struct soap *soap, const char *tag, ns1__removeInvestigator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeInvestigator **)soap_malloc(soap, sizeof(ns1__removeInvestigator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeInvestigator *)soap_instantiate_ns1__removeInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeInvestigator ** p = (ns1__removeInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigator, sizeof(ns1__removeInvestigator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigator(struct soap *soap, ns1__removeInvestigator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigator);
-	if (soap_out_PointerTons1__removeInvestigator(soap, tag?tag:"ns1:removeInvestigator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigator(struct soap *soap, ns1__removeInvestigator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyPublicationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyPublicationResponse(struct soap *soap, const char *tag, int id, ns1__modifyPublicationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyPublicationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyPublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyPublicationResponse(struct soap *soap, const char *tag, ns1__modifyPublicationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyPublicationResponse **)soap_malloc(soap, sizeof(ns1__modifyPublicationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyPublicationResponse *)soap_instantiate_ns1__modifyPublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyPublicationResponse ** p = (ns1__modifyPublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublicationResponse, sizeof(ns1__modifyPublicationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyPublicationResponse);
-	if (soap_out_PointerTons1__modifyPublicationResponse(soap, tag?tag:"ns1:modifyPublicationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyPublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyPublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyPublication(struct soap *soap, ns1__modifyPublication *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyPublication))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyPublication(struct soap *soap, const char *tag, int id, ns1__modifyPublication *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyPublication);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyPublication ** SOAP_FMAC4 soap_in_PointerTons1__modifyPublication(struct soap *soap, const char *tag, ns1__modifyPublication **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyPublication **)soap_malloc(soap, sizeof(ns1__modifyPublication *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyPublication *)soap_instantiate_ns1__modifyPublication(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyPublication ** p = (ns1__modifyPublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublication, sizeof(ns1__modifyPublication), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyPublication(struct soap *soap, ns1__modifyPublication *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyPublication);
-	if (soap_out_PointerTons1__modifyPublication(soap, tag?tag:"ns1:modifyPublication", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyPublication ** SOAP_FMAC4 soap_get_PointerTons1__modifyPublication(struct soap *soap, ns1__modifyPublication **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyPublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deletePublicationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deletePublicationResponse(struct soap *soap, const char *tag, int id, ns1__deletePublicationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deletePublicationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deletePublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__deletePublicationResponse(struct soap *soap, const char *tag, ns1__deletePublicationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deletePublicationResponse **)soap_malloc(soap, sizeof(ns1__deletePublicationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deletePublicationResponse *)soap_instantiate_ns1__deletePublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deletePublicationResponse ** p = (ns1__deletePublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublicationResponse, sizeof(ns1__deletePublicationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deletePublicationResponse);
-	if (soap_out_PointerTons1__deletePublicationResponse(soap, tag?tag:"ns1:deletePublicationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deletePublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deletePublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deletePublication(struct soap *soap, ns1__deletePublication *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deletePublication))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deletePublication(struct soap *soap, const char *tag, int id, ns1__deletePublication *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deletePublication);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deletePublication ** SOAP_FMAC4 soap_in_PointerTons1__deletePublication(struct soap *soap, const char *tag, ns1__deletePublication **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deletePublication **)soap_malloc(soap, sizeof(ns1__deletePublication *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deletePublication *)soap_instantiate_ns1__deletePublication(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deletePublication ** p = (ns1__deletePublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublication, sizeof(ns1__deletePublication), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deletePublication(struct soap *soap, ns1__deletePublication *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deletePublication);
-	if (soap_out_PointerTons1__deletePublication(soap, tag?tag:"ns1:deletePublication", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deletePublication ** SOAP_FMAC4 soap_get_PointerTons1__deletePublication(struct soap *soap, ns1__deletePublication **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deletePublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removePublicationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removePublicationResponse(struct soap *soap, const char *tag, int id, ns1__removePublicationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removePublicationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removePublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__removePublicationResponse(struct soap *soap, const char *tag, ns1__removePublicationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removePublicationResponse **)soap_malloc(soap, sizeof(ns1__removePublicationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removePublicationResponse *)soap_instantiate_ns1__removePublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removePublicationResponse ** p = (ns1__removePublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublicationResponse, sizeof(ns1__removePublicationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removePublicationResponse);
-	if (soap_out_PointerTons1__removePublicationResponse(soap, tag?tag:"ns1:removePublicationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removePublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removePublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removePublication(struct soap *soap, ns1__removePublication *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removePublication))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removePublication(struct soap *soap, const char *tag, int id, ns1__removePublication *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removePublication);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removePublication ** SOAP_FMAC4 soap_in_PointerTons1__removePublication(struct soap *soap, const char *tag, ns1__removePublication **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removePublication **)soap_malloc(soap, sizeof(ns1__removePublication *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removePublication *)soap_instantiate_ns1__removePublication(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removePublication ** p = (ns1__removePublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublication, sizeof(ns1__removePublication), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removePublication(struct soap *soap, ns1__removePublication *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removePublication);
-	if (soap_out_PointerTons1__removePublication(soap, tag?tag:"ns1:removePublication", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removePublication ** SOAP_FMAC4 soap_get_PointerTons1__removePublication(struct soap *soap, ns1__removePublication **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removePublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteKeywordResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteKeywordResponse(struct soap *soap, const char *tag, int id, ns1__deleteKeywordResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteKeywordResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteKeywordResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteKeywordResponse(struct soap *soap, const char *tag, ns1__deleteKeywordResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteKeywordResponse **)soap_malloc(soap, sizeof(ns1__deleteKeywordResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteKeywordResponse *)soap_instantiate_ns1__deleteKeywordResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteKeywordResponse ** p = (ns1__deleteKeywordResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeywordResponse, sizeof(ns1__deleteKeywordResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteKeywordResponse);
-	if (soap_out_PointerTons1__deleteKeywordResponse(soap, tag?tag:"ns1:deleteKeywordResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteKeywordResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteKeyword(struct soap *soap, ns1__deleteKeyword *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteKeyword))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteKeyword(struct soap *soap, const char *tag, int id, ns1__deleteKeyword *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteKeyword);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteKeyword ** SOAP_FMAC4 soap_in_PointerTons1__deleteKeyword(struct soap *soap, const char *tag, ns1__deleteKeyword **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteKeyword **)soap_malloc(soap, sizeof(ns1__deleteKeyword *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteKeyword *)soap_instantiate_ns1__deleteKeyword(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteKeyword ** p = (ns1__deleteKeyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeyword, sizeof(ns1__deleteKeyword), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteKeyword(struct soap *soap, ns1__deleteKeyword *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteKeyword);
-	if (soap_out_PointerTons1__deleteKeyword(soap, tag?tag:"ns1:deleteKeyword", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteKeyword ** SOAP_FMAC4 soap_get_PointerTons1__deleteKeyword(struct soap *soap, ns1__deleteKeyword **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeKeywordResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeKeywordResponse(struct soap *soap, const char *tag, int id, ns1__removeKeywordResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeKeywordResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeKeywordResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeKeywordResponse(struct soap *soap, const char *tag, ns1__removeKeywordResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeKeywordResponse **)soap_malloc(soap, sizeof(ns1__removeKeywordResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeKeywordResponse *)soap_instantiate_ns1__removeKeywordResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeKeywordResponse ** p = (ns1__removeKeywordResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeywordResponse, sizeof(ns1__removeKeywordResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeKeywordResponse);
-	if (soap_out_PointerTons1__removeKeywordResponse(soap, tag?tag:"ns1:removeKeywordResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeKeywordResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeKeyword(struct soap *soap, ns1__removeKeyword *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeKeyword))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeKeyword(struct soap *soap, const char *tag, int id, ns1__removeKeyword *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeKeyword);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeKeyword ** SOAP_FMAC4 soap_in_PointerTons1__removeKeyword(struct soap *soap, const char *tag, ns1__removeKeyword **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeKeyword **)soap_malloc(soap, sizeof(ns1__removeKeyword *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeKeyword *)soap_instantiate_ns1__removeKeyword(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeKeyword ** p = (ns1__removeKeyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeyword, sizeof(ns1__removeKeyword), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeKeyword(struct soap *soap, ns1__removeKeyword *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeKeyword);
-	if (soap_out_PointerTons1__removeKeyword(soap, tag?tag:"ns1:removeKeyword", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeKeyword ** SOAP_FMAC4 soap_get_PointerTons1__removeKeyword(struct soap *soap, ns1__removeKeyword **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__modifyInvestigationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigationResponse(struct soap *soap, const char *tag, ns1__modifyInvestigationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyInvestigationResponse **)soap_malloc(soap, sizeof(ns1__modifyInvestigationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyInvestigationResponse *)soap_instantiate_ns1__modifyInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyInvestigationResponse ** p = (ns1__modifyInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigationResponse, sizeof(ns1__modifyInvestigationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigationResponse);
-	if (soap_out_PointerTons1__modifyInvestigationResponse(soap, tag?tag:"ns1:modifyInvestigationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigation(struct soap *soap, const char *tag, int id, ns1__modifyInvestigation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigation(struct soap *soap, const char *tag, ns1__modifyInvestigation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__modifyInvestigation **)soap_malloc(soap, sizeof(ns1__modifyInvestigation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__modifyInvestigation *)soap_instantiate_ns1__modifyInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__modifyInvestigation ** p = (ns1__modifyInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigation, sizeof(ns1__modifyInvestigation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigation);
-	if (soap_out_PointerTons1__modifyInvestigation(soap, tag?tag:"ns1:modifyInvestigation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__modifyInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__modifyInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__deleteInvestigationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigationResponse(struct soap *soap, const char *tag, ns1__deleteInvestigationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteInvestigationResponse **)soap_malloc(soap, sizeof(ns1__deleteInvestigationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteInvestigationResponse *)soap_instantiate_ns1__deleteInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteInvestigationResponse ** p = (ns1__deleteInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigationResponse, sizeof(ns1__deleteInvestigationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigationResponse);
-	if (soap_out_PointerTons1__deleteInvestigationResponse(soap, tag?tag:"ns1:deleteInvestigationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigation(struct soap *soap, const char *tag, int id, ns1__deleteInvestigation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigation(struct soap *soap, const char *tag, ns1__deleteInvestigation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__deleteInvestigation **)soap_malloc(soap, sizeof(ns1__deleteInvestigation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__deleteInvestigation *)soap_instantiate_ns1__deleteInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__deleteInvestigation ** p = (ns1__deleteInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigation, sizeof(ns1__deleteInvestigation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigation);
-	if (soap_out_PointerTons1__deleteInvestigation(soap, tag?tag:"ns1:deleteInvestigation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__deleteInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__deleteInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__removeInvestigationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigationResponse(struct soap *soap, const char *tag, ns1__removeInvestigationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeInvestigationResponse **)soap_malloc(soap, sizeof(ns1__removeInvestigationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeInvestigationResponse *)soap_instantiate_ns1__removeInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeInvestigationResponse ** p = (ns1__removeInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigationResponse, sizeof(ns1__removeInvestigationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigationResponse);
-	if (soap_out_PointerTons1__removeInvestigationResponse(soap, tag?tag:"ns1:removeInvestigationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigation(struct soap *soap, ns1__removeInvestigation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigation(struct soap *soap, const char *tag, int id, ns1__removeInvestigation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__removeInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigation(struct soap *soap, const char *tag, ns1__removeInvestigation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__removeInvestigation **)soap_malloc(soap, sizeof(ns1__removeInvestigation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__removeInvestigation *)soap_instantiate_ns1__removeInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__removeInvestigation ** p = (ns1__removeInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigation, sizeof(ns1__removeInvestigation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigation(struct soap *soap, ns1__removeInvestigation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigation);
-	if (soap_out_PointerTons1__removeInvestigation(soap, tag?tag:"ns1:removeInvestigation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__removeInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigation(struct soap *soap, ns1__removeInvestigation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__removeInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createInvestigationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__createInvestigationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createInvestigationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__createInvestigationResponse(struct soap *soap, const char *tag, ns1__createInvestigationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createInvestigationResponse **)soap_malloc(soap, sizeof(ns1__createInvestigationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createInvestigationResponse *)soap_instantiate_ns1__createInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createInvestigationResponse ** p = (ns1__createInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigationResponse, sizeof(ns1__createInvestigationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createInvestigationResponse);
-	if (soap_out_PointerTons1__createInvestigationResponse(soap, tag?tag:"ns1:createInvestigationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createInvestigation(struct soap *soap, ns1__createInvestigation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createInvestigation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createInvestigation(struct soap *soap, const char *tag, int id, ns1__createInvestigation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createInvestigation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__createInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__createInvestigation(struct soap *soap, const char *tag, ns1__createInvestigation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__createInvestigation **)soap_malloc(soap, sizeof(ns1__createInvestigation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__createInvestigation *)soap_instantiate_ns1__createInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__createInvestigation ** p = (ns1__createInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigation, sizeof(ns1__createInvestigation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createInvestigation(struct soap *soap, ns1__createInvestigation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createInvestigation);
-	if (soap_out_PointerTons1__createInvestigation(soap, tag?tag:"ns1:createInvestigation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__createInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__createInvestigation(struct soap *soap, ns1__createInvestigation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__createInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getInvestigationsIncludesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationsIncludesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationsIncludesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getInvestigationsIncludesResponse **)soap_malloc(soap, sizeof(ns1__getInvestigationsIncludesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getInvestigationsIncludesResponse *)soap_instantiate_ns1__getInvestigationsIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getInvestigationsIncludesResponse ** p = (ns1__getInvestigationsIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, sizeof(ns1__getInvestigationsIncludesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse);
-	if (soap_out_PointerTons1__getInvestigationsIncludesResponse(soap, tag?tag:"ns1:getInvestigationsIncludesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getInvestigationsIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationsIncludes))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationsIncludes(struct soap *soap, const char *tag, int id, ns1__getInvestigationsIncludes *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationsIncludes);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getInvestigationsIncludes **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getInvestigationsIncludes **)soap_malloc(soap, sizeof(ns1__getInvestigationsIncludes *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getInvestigationsIncludes *)soap_instantiate_ns1__getInvestigationsIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getInvestigationsIncludes ** p = (ns1__getInvestigationsIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludes, sizeof(ns1__getInvestigationsIncludes), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationsIncludes);
-	if (soap_out_PointerTons1__getInvestigationsIncludes(soap, tag?tag:"ns1:getInvestigationsIncludes", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getInvestigationsIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getInvestigationsIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__addDataFileParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParameterResponse(struct soap *soap, const char *tag, ns1__addDataFileParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__addDataFileParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataFileParameterResponse *)soap_instantiate_ns1__addDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataFileParameterResponse ** p = (ns1__addDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameterResponse, sizeof(ns1__addDataFileParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParameterResponse);
-	if (soap_out_PointerTons1__addDataFileParameterResponse(soap, tag?tag:"ns1:addDataFileParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataFileParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParameter(struct soap *soap, const char *tag, int id, ns1__addDataFileParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParameter(struct soap *soap, const char *tag, ns1__addDataFileParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addDataFileParameter **)soap_malloc(soap, sizeof(ns1__addDataFileParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addDataFileParameter *)soap_instantiate_ns1__addDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addDataFileParameter ** p = (ns1__addDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameter, sizeof(ns1__addDataFileParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParameter);
-	if (soap_out_PointerTons1__addDataFileParameter(soap, tag?tag:"ns1:addDataFileParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addDataFileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafileResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafileResponse(struct soap *soap, const char *tag, int id, ns1__getDatafileResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafileResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatafileResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatafileResponse(struct soap *soap, const char *tag, ns1__getDatafileResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatafileResponse **)soap_malloc(soap, sizeof(ns1__getDatafileResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatafileResponse *)soap_instantiate_ns1__getDatafileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatafileResponse ** p = (ns1__getDatafileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafileResponse, sizeof(ns1__getDatafileResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafileResponse);
-	if (soap_out_PointerTons1__getDatafileResponse(soap, tag?tag:"ns1:getDatafileResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatafileResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatafileResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafile(struct soap *soap, ns1__getDatafile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafile(struct soap *soap, const char *tag, int id, ns1__getDatafile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatafile ** SOAP_FMAC4 soap_in_PointerTons1__getDatafile(struct soap *soap, const char *tag, ns1__getDatafile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatafile **)soap_malloc(soap, sizeof(ns1__getDatafile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatafile *)soap_instantiate_ns1__getDatafile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatafile ** p = (ns1__getDatafile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafile, sizeof(ns1__getDatafile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafile(struct soap *soap, ns1__getDatafile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafile);
-	if (soap_out_PointerTons1__getDatafile(soap, tag?tag:"ns1:getDatafile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatafile ** SOAP_FMAC4 soap_get_PointerTons1__getDatafile(struct soap *soap, ns1__getDatafile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetIncludesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getDatasetIncludesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetIncludesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetIncludesResponse(struct soap *soap, const char *tag, ns1__getDatasetIncludesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatasetIncludesResponse **)soap_malloc(soap, sizeof(ns1__getDatasetIncludesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatasetIncludesResponse *)soap_instantiate_ns1__getDatasetIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatasetIncludesResponse ** p = (ns1__getDatasetIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludesResponse, sizeof(ns1__getDatasetIncludesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetIncludesResponse);
-	if (soap_out_PointerTons1__getDatasetIncludesResponse(soap, tag?tag:"ns1:getDatasetIncludesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatasetIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetIncludes))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetIncludes(struct soap *soap, const char *tag, int id, ns1__getDatasetIncludes *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetIncludes);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetIncludes(struct soap *soap, const char *tag, ns1__getDatasetIncludes **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatasetIncludes **)soap_malloc(soap, sizeof(ns1__getDatasetIncludes *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatasetIncludes *)soap_instantiate_ns1__getDatasetIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatasetIncludes ** p = (ns1__getDatasetIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludes, sizeof(ns1__getDatasetIncludes), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetIncludes);
-	if (soap_out_PointerTons1__getDatasetIncludes(soap, tag?tag:"ns1:getDatasetIncludes", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatasetIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatasetIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetResponse(struct soap *soap, const char *tag, int id, ns1__getDatasetResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDatasetResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetResponse(struct soap *soap, const char *tag, ns1__getDatasetResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDatasetResponse **)soap_malloc(soap, sizeof(ns1__getDatasetResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDatasetResponse *)soap_instantiate_ns1__getDatasetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDatasetResponse ** p = (ns1__getDatasetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetResponse, sizeof(ns1__getDatasetResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetResponse);
-	if (soap_out_PointerTons1__getDatasetResponse(soap, tag?tag:"ns1:getDatasetResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDatasetResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDatasetResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDataset(struct soap *soap, ns1__getDataset *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDataset))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDataset(struct soap *soap, const char *tag, int id, ns1__getDataset *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDataset);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getDataset ** SOAP_FMAC4 soap_in_PointerTons1__getDataset(struct soap *soap, const char *tag, ns1__getDataset **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getDataset **)soap_malloc(soap, sizeof(ns1__getDataset *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getDataset *)soap_instantiate_ns1__getDataset(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getDataset ** p = (ns1__getDataset **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDataset, sizeof(ns1__getDataset), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDataset(struct soap *soap, ns1__getDataset *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDataset);
-	if (soap_out_PointerTons1__getDataset(soap, tag?tag:"ns1:getDataset", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getDataset ** SOAP_FMAC4 soap_get_PointerTons1__getDataset(struct soap *soap, ns1__getDataset **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getDataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationIncludesResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getInvestigationIncludesResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationIncludesResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationIncludesResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getInvestigationIncludesResponse **)soap_malloc(soap, sizeof(ns1__getInvestigationIncludesResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getInvestigationIncludesResponse *)soap_instantiate_ns1__getInvestigationIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getInvestigationIncludesResponse ** p = (ns1__getInvestigationIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludesResponse, sizeof(ns1__getInvestigationIncludesResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse);
-	if (soap_out_PointerTons1__getInvestigationIncludesResponse(soap, tag?tag:"ns1:getInvestigationIncludesResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getInvestigationIncludesResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationIncludes))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationIncludes(struct soap *soap, const char *tag, int id, ns1__getInvestigationIncludes *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationIncludes);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationIncludes(struct soap *soap, const char *tag, ns1__getInvestigationIncludes **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getInvestigationIncludes **)soap_malloc(soap, sizeof(ns1__getInvestigationIncludes *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getInvestigationIncludes *)soap_instantiate_ns1__getInvestigationIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getInvestigationIncludes ** p = (ns1__getInvestigationIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludes, sizeof(ns1__getInvestigationIncludes), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationIncludes);
-	if (soap_out_PointerTons1__getInvestigationIncludes(soap, tag?tag:"ns1:getInvestigationIncludes", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getInvestigationIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getInvestigationIncludes(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__getInvestigationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationResponse(struct soap *soap, const char *tag, ns1__getInvestigationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getInvestigationResponse **)soap_malloc(soap, sizeof(ns1__getInvestigationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getInvestigationResponse *)soap_instantiate_ns1__getInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getInvestigationResponse ** p = (ns1__getInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationResponse, sizeof(ns1__getInvestigationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationResponse);
-	if (soap_out_PointerTons1__getInvestigationResponse(soap, tag?tag:"ns1:getInvestigationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getInvestigationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigation(struct soap *soap, ns1__getInvestigation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigation(struct soap *soap, const char *tag, int id, ns1__getInvestigation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__getInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigation(struct soap *soap, const char *tag, ns1__getInvestigation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__getInvestigation **)soap_malloc(soap, sizeof(ns1__getInvestigation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__getInvestigation *)soap_instantiate_ns1__getInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__getInvestigation ** p = (ns1__getInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigation, sizeof(ns1__getInvestigation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigation(struct soap *soap, ns1__getInvestigation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigation);
-	if (soap_out_PointerTons1__getInvestigation(soap, tag?tag:"ns1:getInvestigation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__getInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigation(struct soap *soap, ns1__getInvestigation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__getInvestigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addInvestigatorResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__addInvestigatorResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addInvestigatorResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__addInvestigatorResponse(struct soap *soap, const char *tag, ns1__addInvestigatorResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__addInvestigatorResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addInvestigatorResponse *)soap_instantiate_ns1__addInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addInvestigatorResponse ** p = (ns1__addInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigatorResponse, sizeof(ns1__addInvestigatorResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addInvestigatorResponse);
-	if (soap_out_PointerTons1__addInvestigatorResponse(soap, tag?tag:"ns1:addInvestigatorResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addInvestigatorResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addInvestigator(struct soap *soap, ns1__addInvestigator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addInvestigator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addInvestigator(struct soap *soap, const char *tag, int id, ns1__addInvestigator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addInvestigator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__addInvestigator(struct soap *soap, const char *tag, ns1__addInvestigator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addInvestigator **)soap_malloc(soap, sizeof(ns1__addInvestigator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addInvestigator *)soap_instantiate_ns1__addInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addInvestigator ** p = (ns1__addInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigator, sizeof(ns1__addInvestigator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addInvestigator(struct soap *soap, ns1__addInvestigator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addInvestigator);
-	if (soap_out_PointerTons1__addInvestigator(soap, tag?tag:"ns1:addInvestigator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__addInvestigator(struct soap *soap, ns1__addInvestigator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addInvestigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addKeywordResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addKeywordResponse(struct soap *soap, const char *tag, int id, ns1__addKeywordResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addKeywordResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addKeywordResponse ** SOAP_FMAC4 soap_in_PointerTons1__addKeywordResponse(struct soap *soap, const char *tag, ns1__addKeywordResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addKeywordResponse **)soap_malloc(soap, sizeof(ns1__addKeywordResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addKeywordResponse *)soap_instantiate_ns1__addKeywordResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addKeywordResponse ** p = (ns1__addKeywordResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeywordResponse, sizeof(ns1__addKeywordResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addKeywordResponse);
-	if (soap_out_PointerTons1__addKeywordResponse(soap, tag?tag:"ns1:addKeywordResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addKeywordResponse ** SOAP_FMAC4 soap_get_PointerTons1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addKeywordResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addKeyword(struct soap *soap, ns1__addKeyword *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addKeyword))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addKeyword(struct soap *soap, const char *tag, int id, ns1__addKeyword *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addKeyword);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addKeyword ** SOAP_FMAC4 soap_in_PointerTons1__addKeyword(struct soap *soap, const char *tag, ns1__addKeyword **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addKeyword **)soap_malloc(soap, sizeof(ns1__addKeyword *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addKeyword *)soap_instantiate_ns1__addKeyword(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addKeyword ** p = (ns1__addKeyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeyword, sizeof(ns1__addKeyword), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addKeyword(struct soap *soap, ns1__addKeyword *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addKeyword);
-	if (soap_out_PointerTons1__addKeyword(soap, tag?tag:"ns1:addKeyword", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addKeyword ** SOAP_FMAC4 soap_get_PointerTons1__addKeyword(struct soap *soap, ns1__addKeyword **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addKeyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addPublicationResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addPublicationResponse(struct soap *soap, const char *tag, int id, ns1__addPublicationResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addPublicationResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addPublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__addPublicationResponse(struct soap *soap, const char *tag, ns1__addPublicationResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addPublicationResponse **)soap_malloc(soap, sizeof(ns1__addPublicationResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addPublicationResponse *)soap_instantiate_ns1__addPublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addPublicationResponse ** p = (ns1__addPublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublicationResponse, sizeof(ns1__addPublicationResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addPublicationResponse);
-	if (soap_out_PointerTons1__addPublicationResponse(soap, tag?tag:"ns1:addPublicationResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addPublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addPublicationResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addPublication(struct soap *soap, ns1__addPublication *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addPublication))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addPublication(struct soap *soap, const char *tag, int id, ns1__addPublication *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addPublication);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addPublication ** SOAP_FMAC4 soap_in_PointerTons1__addPublication(struct soap *soap, const char *tag, ns1__addPublication **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addPublication **)soap_malloc(soap, sizeof(ns1__addPublication *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addPublication *)soap_instantiate_ns1__addPublication(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addPublication ** p = (ns1__addPublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublication, sizeof(ns1__addPublication), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addPublication(struct soap *soap, ns1__addPublication *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addPublication);
-	if (soap_out_PointerTons1__addPublication(soap, tag?tag:"ns1:addPublication", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addPublication ** SOAP_FMAC4 soap_get_PointerTons1__addPublication(struct soap *soap, ns1__addPublication **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addPublication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSampleParameterResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__addSampleParameterResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSampleParameterResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addSampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__addSampleParameterResponse(struct soap *soap, const char *tag, ns1__addSampleParameterResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addSampleParameterResponse **)soap_malloc(soap, sizeof(ns1__addSampleParameterResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addSampleParameterResponse *)soap_instantiate_ns1__addSampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addSampleParameterResponse ** p = (ns1__addSampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameterResponse, sizeof(ns1__addSampleParameterResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSampleParameterResponse);
-	if (soap_out_PointerTons1__addSampleParameterResponse(soap, tag?tag:"ns1:addSampleParameterResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addSampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addSampleParameterResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSampleParameter(struct soap *soap, ns1__addSampleParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSampleParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSampleParameter(struct soap *soap, const char *tag, int id, ns1__addSampleParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSampleParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addSampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__addSampleParameter(struct soap *soap, const char *tag, ns1__addSampleParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addSampleParameter **)soap_malloc(soap, sizeof(ns1__addSampleParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addSampleParameter *)soap_instantiate_ns1__addSampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addSampleParameter ** p = (ns1__addSampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameter, sizeof(ns1__addSampleParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSampleParameter(struct soap *soap, ns1__addSampleParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSampleParameter);
-	if (soap_out_PointerTons1__addSampleParameter(soap, tag?tag:"ns1:addSampleParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addSampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__addSampleParameter(struct soap *soap, ns1__addSampleParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addSampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__logoutResponse(struct soap *soap, ns1__logoutResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__logoutResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__logoutResponse(struct soap *soap, const char *tag, int id, ns1__logoutResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__logoutResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__logoutResponse ** SOAP_FMAC4 soap_in_PointerTons1__logoutResponse(struct soap *soap, const char *tag, ns1__logoutResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__logoutResponse **)soap_malloc(soap, sizeof(ns1__logoutResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__logoutResponse *)soap_instantiate_ns1__logoutResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__logoutResponse ** p = (ns1__logoutResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logoutResponse, sizeof(ns1__logoutResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__logoutResponse(struct soap *soap, ns1__logoutResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__logoutResponse);
-	if (soap_out_PointerTons1__logoutResponse(soap, tag?tag:"ns1:logoutResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__logoutResponse ** SOAP_FMAC4 soap_get_PointerTons1__logoutResponse(struct soap *soap, ns1__logoutResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__logoutResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__logout(struct soap *soap, ns1__logout *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__logout))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__logout(struct soap *soap, const char *tag, int id, ns1__logout *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__logout);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__logout ** SOAP_FMAC4 soap_in_PointerTons1__logout(struct soap *soap, const char *tag, ns1__logout **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__logout **)soap_malloc(soap, sizeof(ns1__logout *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__logout *)soap_instantiate_ns1__logout(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__logout ** p = (ns1__logout **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logout, sizeof(ns1__logout), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__logout(struct soap *soap, ns1__logout *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__logout);
-	if (soap_out_PointerTons1__logout(soap, tag?tag:"ns1:logout", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__logout ** SOAP_FMAC4 soap_get_PointerTons1__logout(struct soap *soap, ns1__logout **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__logout(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSampleResponse(struct soap *soap, ns1__addSampleResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSampleResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSampleResponse(struct soap *soap, const char *tag, int id, ns1__addSampleResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSampleResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__addSampleResponse(struct soap *soap, const char *tag, ns1__addSampleResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addSampleResponse **)soap_malloc(soap, sizeof(ns1__addSampleResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addSampleResponse *)soap_instantiate_ns1__addSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addSampleResponse ** p = (ns1__addSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleResponse, sizeof(ns1__addSampleResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSampleResponse(struct soap *soap, ns1__addSampleResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSampleResponse);
-	if (soap_out_PointerTons1__addSampleResponse(soap, tag?tag:"ns1:addSampleResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__addSampleResponse(struct soap *soap, ns1__addSampleResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addSampleResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSample(struct soap *soap, ns1__addSample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSample(struct soap *soap, const char *tag, int id, ns1__addSample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__addSample ** SOAP_FMAC4 soap_in_PointerTons1__addSample(struct soap *soap, const char *tag, ns1__addSample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__addSample **)soap_malloc(soap, sizeof(ns1__addSample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__addSample *)soap_instantiate_ns1__addSample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__addSample ** p = (ns1__addSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSample, sizeof(ns1__addSample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSample(struct soap *soap, ns1__addSample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSample);
-	if (soap_out_PointerTons1__addSample(soap, tag?tag:"ns1:addSample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__addSample ** SOAP_FMAC4 soap_get_PointerTons1__addSample(struct soap *soap, ns1__addSample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__addSample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__loginLifetimeResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__loginLifetimeResponse(struct soap *soap, const char *tag, int id, ns1__loginLifetimeResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__loginLifetimeResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__loginLifetimeResponse ** SOAP_FMAC4 soap_in_PointerTons1__loginLifetimeResponse(struct soap *soap, const char *tag, ns1__loginLifetimeResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__loginLifetimeResponse **)soap_malloc(soap, sizeof(ns1__loginLifetimeResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__loginLifetimeResponse *)soap_instantiate_ns1__loginLifetimeResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__loginLifetimeResponse ** p = (ns1__loginLifetimeResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetimeResponse, sizeof(ns1__loginLifetimeResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__loginLifetimeResponse);
-	if (soap_out_PointerTons1__loginLifetimeResponse(soap, tag?tag:"ns1:loginLifetimeResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__loginLifetimeResponse ** SOAP_FMAC4 soap_get_PointerTons1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__loginLifetimeResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__loginLifetime(struct soap *soap, ns1__loginLifetime *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__loginLifetime))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__loginLifetime(struct soap *soap, const char *tag, int id, ns1__loginLifetime *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__loginLifetime);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__loginLifetime ** SOAP_FMAC4 soap_in_PointerTons1__loginLifetime(struct soap *soap, const char *tag, ns1__loginLifetime **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__loginLifetime **)soap_malloc(soap, sizeof(ns1__loginLifetime *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__loginLifetime *)soap_instantiate_ns1__loginLifetime(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__loginLifetime ** p = (ns1__loginLifetime **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetime, sizeof(ns1__loginLifetime), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__loginLifetime(struct soap *soap, ns1__loginLifetime *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__loginLifetime);
-	if (soap_out_PointerTons1__loginLifetime(soap, tag?tag:"ns1:loginLifetime", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__loginLifetime ** SOAP_FMAC4 soap_get_PointerTons1__loginLifetime(struct soap *soap, ns1__loginLifetime **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__loginLifetime(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__loginResponse(struct soap *soap, ns1__loginResponse *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__loginResponse))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__loginResponse(struct soap *soap, const char *tag, int id, ns1__loginResponse *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__loginResponse);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__loginResponse ** SOAP_FMAC4 soap_in_PointerTons1__loginResponse(struct soap *soap, const char *tag, ns1__loginResponse **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__loginResponse **)soap_malloc(soap, sizeof(ns1__loginResponse *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__loginResponse *)soap_instantiate_ns1__loginResponse(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__loginResponse ** p = (ns1__loginResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginResponse, sizeof(ns1__loginResponse), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__loginResponse(struct soap *soap, ns1__loginResponse *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__loginResponse);
-	if (soap_out_PointerTons1__loginResponse(soap, tag?tag:"ns1:loginResponse", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__loginResponse ** SOAP_FMAC4 soap_get_PointerTons1__loginResponse(struct soap *soap, ns1__loginResponse **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__loginResponse(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__login(struct soap *soap, ns1__login *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__login))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__login(struct soap *soap, const char *tag, int id, ns1__login *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__login);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__login ** SOAP_FMAC4 soap_in_PointerTons1__login(struct soap *soap, const char *tag, ns1__login **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__login **)soap_malloc(soap, sizeof(ns1__login *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__login *)soap_instantiate_ns1__login(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__login ** p = (ns1__login **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__login, sizeof(ns1__login), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__login(struct soap *soap, ns1__login *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__login);
-	if (soap_out_PointerTons1__login(soap, tag?tag:"ns1:login", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__login ** SOAP_FMAC4 soap_get_PointerTons1__login(struct soap *soap, ns1__login **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__login(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ValidationException(struct soap *soap, ns1__ValidationException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ValidationException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ValidationException(struct soap *soap, const char *tag, int id, ns1__ValidationException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ValidationException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__ValidationException ** SOAP_FMAC4 soap_in_PointerTons1__ValidationException(struct soap *soap, const char *tag, ns1__ValidationException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__ValidationException **)soap_malloc(soap, sizeof(ns1__ValidationException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__ValidationException *)soap_instantiate_ns1__ValidationException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__ValidationException ** p = (ns1__ValidationException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ValidationException, sizeof(ns1__ValidationException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ValidationException(struct soap *soap, ns1__ValidationException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ValidationException);
-	if (soap_out_PointerTons1__ValidationException(soap, tag?tag:"ns1:ValidationException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__ValidationException ** SOAP_FMAC4 soap_get_PointerTons1__ValidationException(struct soap *soap, ns1__ValidationException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__ValidationException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__SessionException(struct soap *soap, ns1__SessionException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__SessionException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__SessionException(struct soap *soap, const char *tag, int id, ns1__SessionException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__SessionException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__SessionException ** SOAP_FMAC4 soap_in_PointerTons1__SessionException(struct soap *soap, const char *tag, ns1__SessionException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__SessionException **)soap_malloc(soap, sizeof(ns1__SessionException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__SessionException *)soap_instantiate_ns1__SessionException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__SessionException ** p = (ns1__SessionException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__SessionException, sizeof(ns1__SessionException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__SessionException(struct soap *soap, ns1__SessionException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__SessionException);
-	if (soap_out_PointerTons1__SessionException(soap, tag?tag:"ns1:SessionException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__SessionException ** SOAP_FMAC4 soap_get_PointerTons1__SessionException(struct soap *soap, ns1__SessionException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__SessionException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ParameterSearchException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ParameterSearchException(struct soap *soap, const char *tag, int id, ns1__ParameterSearchException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ParameterSearchException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__ParameterSearchException ** SOAP_FMAC4 soap_in_PointerTons1__ParameterSearchException(struct soap *soap, const char *tag, ns1__ParameterSearchException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__ParameterSearchException **)soap_malloc(soap, sizeof(ns1__ParameterSearchException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__ParameterSearchException *)soap_instantiate_ns1__ParameterSearchException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__ParameterSearchException ** p = (ns1__ParameterSearchException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ParameterSearchException, sizeof(ns1__ParameterSearchException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ParameterSearchException);
-	if (soap_out_PointerTons1__ParameterSearchException(soap, tag?tag:"ns1:ParameterSearchException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__ParameterSearchException ** SOAP_FMAC4 soap_get_PointerTons1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__ParameterSearchException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__NoSuchUserException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__NoSuchUserException(struct soap *soap, const char *tag, int id, ns1__NoSuchUserException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__NoSuchUserException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__NoSuchUserException ** SOAP_FMAC4 soap_in_PointerTons1__NoSuchUserException(struct soap *soap, const char *tag, ns1__NoSuchUserException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__NoSuchUserException **)soap_malloc(soap, sizeof(ns1__NoSuchUserException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__NoSuchUserException *)soap_instantiate_ns1__NoSuchUserException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__NoSuchUserException ** p = (ns1__NoSuchUserException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchUserException, sizeof(ns1__NoSuchUserException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__NoSuchUserException);
-	if (soap_out_PointerTons1__NoSuchUserException(soap, tag?tag:"ns1:NoSuchUserException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__NoSuchUserException ** SOAP_FMAC4 soap_get_PointerTons1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__NoSuchUserException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__NoSuchObjectFoundException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__NoSuchObjectFoundException(struct soap *soap, const char *tag, int id, ns1__NoSuchObjectFoundException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__NoSuchObjectFoundException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__NoSuchObjectFoundException ** SOAP_FMAC4 soap_in_PointerTons1__NoSuchObjectFoundException(struct soap *soap, const char *tag, ns1__NoSuchObjectFoundException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__NoSuchObjectFoundException **)soap_malloc(soap, sizeof(ns1__NoSuchObjectFoundException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__NoSuchObjectFoundException *)soap_instantiate_ns1__NoSuchObjectFoundException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__NoSuchObjectFoundException ** p = (ns1__NoSuchObjectFoundException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchObjectFoundException, sizeof(ns1__NoSuchObjectFoundException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__NoSuchObjectFoundException);
-	if (soap_out_PointerTons1__NoSuchObjectFoundException(soap, tag?tag:"ns1:NoSuchObjectFoundException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__NoSuchObjectFoundException ** SOAP_FMAC4 soap_get_PointerTons1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__NoSuchObjectFoundException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__InsufficientPrivilegesException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__InsufficientPrivilegesException(struct soap *soap, const char *tag, int id, ns1__InsufficientPrivilegesException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__InsufficientPrivilegesException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__InsufficientPrivilegesException ** SOAP_FMAC4 soap_in_PointerTons1__InsufficientPrivilegesException(struct soap *soap, const char *tag, ns1__InsufficientPrivilegesException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__InsufficientPrivilegesException **)soap_malloc(soap, sizeof(ns1__InsufficientPrivilegesException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__InsufficientPrivilegesException *)soap_instantiate_ns1__InsufficientPrivilegesException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__InsufficientPrivilegesException ** p = (ns1__InsufficientPrivilegesException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__InsufficientPrivilegesException, sizeof(ns1__InsufficientPrivilegesException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__InsufficientPrivilegesException);
-	if (soap_out_PointerTons1__InsufficientPrivilegesException(soap, tag?tag:"ns1:InsufficientPrivilegesException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__InsufficientPrivilegesException ** SOAP_FMAC4 soap_get_PointerTons1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__InsufficientPrivilegesException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ICATAPIException(struct soap *soap, ns1__ICATAPIException *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ICATAPIException))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ICATAPIException(struct soap *soap, const char *tag, int id, ns1__ICATAPIException *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ICATAPIException);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__ICATAPIException ** SOAP_FMAC4 soap_in_PointerTons1__ICATAPIException(struct soap *soap, const char *tag, ns1__ICATAPIException **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__ICATAPIException **)soap_malloc(soap, sizeof(ns1__ICATAPIException *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__ICATAPIException *)soap_instantiate_ns1__ICATAPIException(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__ICATAPIException ** p = (ns1__ICATAPIException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ICATAPIException, sizeof(ns1__ICATAPIException), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ICATAPIException(struct soap *soap, ns1__ICATAPIException *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ICATAPIException);
-	if (soap_out_PointerTons1__ICATAPIException(soap, tag?tag:"ns1:ICATAPIException", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__ICATAPIException ** SOAP_FMAC4 soap_get_PointerTons1__ICATAPIException(struct soap *soap, ns1__ICATAPIException **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__ICATAPIException(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__logicalOperator);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__logicalOperator(struct soap *soap, const char *tag, int id, enum ns1__logicalOperator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__logicalOperator);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__logicalOperator(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__logicalOperator ** SOAP_FMAC4 soap_in_PointerTons1__logicalOperator(struct soap *soap, const char *tag, enum ns1__logicalOperator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__logicalOperator **)soap_malloc(soap, sizeof(enum ns1__logicalOperator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__logicalOperator(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__logicalOperator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logicalOperator, sizeof(enum ns1__logicalOperator), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__logicalOperator);
-	if (soap_out_PointerTons1__logicalOperator(soap, tag?tag:"ns1:logicalOperator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__logicalOperator ** SOAP_FMAC4 soap_get_PointerTons1__logicalOperator(struct soap *soap, enum ns1__logicalOperator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__logicalOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterCondition(struct soap *soap, ns1__parameterCondition *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterCondition))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterCondition(struct soap *soap, const char *tag, int id, ns1__parameterCondition *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterCondition);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__parameterCondition ** SOAP_FMAC4 soap_in_PointerTons1__parameterCondition(struct soap *soap, const char *tag, ns1__parameterCondition **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__parameterCondition **)soap_malloc(soap, sizeof(ns1__parameterCondition *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__parameterCondition *)soap_instantiate_ns1__parameterCondition(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__parameterCondition ** p = (ns1__parameterCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterCondition, sizeof(ns1__parameterCondition), 0);
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (ns1__parameterCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (ns1__parameterCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), 0);
-		}
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterCondition(struct soap *soap, ns1__parameterCondition *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterCondition);
-	if (soap_out_PointerTons1__parameterCondition(soap, tag?tag:"ns1:parameterCondition", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__parameterCondition ** SOAP_FMAC4 soap_get_PointerTons1__parameterCondition(struct soap *soap, ns1__parameterCondition **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterCondition(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__shiftPK(struct soap *soap, ns1__shiftPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__shiftPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__shiftPK(struct soap *soap, const char *tag, int id, ns1__shiftPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__shiftPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__shiftPK ** SOAP_FMAC4 soap_in_PointerTons1__shiftPK(struct soap *soap, const char *tag, ns1__shiftPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__shiftPK **)soap_malloc(soap, sizeof(ns1__shiftPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__shiftPK *)soap_instantiate_ns1__shiftPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__shiftPK ** p = (ns1__shiftPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shiftPK, sizeof(ns1__shiftPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__shiftPK(struct soap *soap, ns1__shiftPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__shiftPK);
-	if (soap_out_PointerTons1__shiftPK(soap, tag?tag:"ns1:shiftPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__shiftPK ** SOAP_FMAC4 soap_get_PointerTons1__shiftPK(struct soap *soap, ns1__shiftPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__shiftPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__shift(struct soap *soap, ns1__shift *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__shift))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__shift(struct soap *soap, const char *tag, int id, ns1__shift *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__shift);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__shift ** SOAP_FMAC4 soap_in_PointerTons1__shift(struct soap *soap, const char *tag, ns1__shift **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__shift **)soap_malloc(soap, sizeof(ns1__shift *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__shift *)soap_instantiate_ns1__shift(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__shift ** p = (ns1__shift **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shift, sizeof(ns1__shift), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__shift(struct soap *soap, ns1__shift *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__shift);
-	if (soap_out_PointerTons1__shift(soap, tag?tag:"ns1:shift", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__shift ** SOAP_FMAC4 soap_get_PointerTons1__shift(struct soap *soap, ns1__shift **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__shift(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterPK(struct soap *soap, ns1__parameterPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterPK(struct soap *soap, const char *tag, int id, ns1__parameterPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__parameterPK ** SOAP_FMAC4 soap_in_PointerTons1__parameterPK(struct soap *soap, const char *tag, ns1__parameterPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__parameterPK **)soap_malloc(soap, sizeof(ns1__parameterPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__parameterPK *)soap_instantiate_ns1__parameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__parameterPK ** p = (ns1__parameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterPK, sizeof(ns1__parameterPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterPK(struct soap *soap, ns1__parameterPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterPK);
-	if (soap_out_PointerTons1__parameterPK(soap, tag?tag:"ns1:parameterPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__parameterPK ** SOAP_FMAC4 soap_get_PointerTons1__parameterPK(struct soap *soap, ns1__parameterPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterValued(struct soap *soap, ns1__parameterValued *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterValued))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterValued(struct soap *soap, const char *tag, int id, ns1__parameterValued *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterValued);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__parameterValued ** SOAP_FMAC4 soap_in_PointerTons1__parameterValued(struct soap *soap, const char *tag, ns1__parameterValued **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__parameterValued **)soap_malloc(soap, sizeof(ns1__parameterValued *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__parameterValued *)soap_instantiate_ns1__parameterValued(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__parameterValued ** p = (ns1__parameterValued **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValued, sizeof(ns1__parameterValued), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterValued(struct soap *soap, ns1__parameterValued *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterValued);
-	if (soap_out_PointerTons1__parameterValued(soap, tag?tag:"ns1:parameterValued", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__parameterValued ** SOAP_FMAC4 soap_get_PointerTons1__parameterValued(struct soap *soap, ns1__parameterValued **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterValued(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__comparisonOperator);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__comparisonOperator(struct soap *soap, const char *tag, int id, enum ns1__comparisonOperator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__comparisonOperator);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__comparisonOperator(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__comparisonOperator ** SOAP_FMAC4 soap_in_PointerTons1__comparisonOperator(struct soap *soap, const char *tag, enum ns1__comparisonOperator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__comparisonOperator **)soap_malloc(soap, sizeof(enum ns1__comparisonOperator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__comparisonOperator(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__comparisonOperator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__comparisonOperator, sizeof(enum ns1__comparisonOperator), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__comparisonOperator);
-	if (soap_out_PointerTons1__comparisonOperator(soap, tag?tag:"ns1:comparisonOperator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__comparisonOperator ** SOAP_FMAC4 soap_get_PointerTons1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__comparisonOperator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__relatedDatafilesPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__relatedDatafilesPK(struct soap *soap, const char *tag, int id, ns1__relatedDatafilesPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__relatedDatafilesPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__relatedDatafilesPK ** SOAP_FMAC4 soap_in_PointerTons1__relatedDatafilesPK(struct soap *soap, const char *tag, ns1__relatedDatafilesPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__relatedDatafilesPK **)soap_malloc(soap, sizeof(ns1__relatedDatafilesPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__relatedDatafilesPK *)soap_instantiate_ns1__relatedDatafilesPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__relatedDatafilesPK ** p = (ns1__relatedDatafilesPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafilesPK, sizeof(ns1__relatedDatafilesPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__relatedDatafilesPK);
-	if (soap_out_PointerTons1__relatedDatafilesPK(soap, tag?tag:"ns1:relatedDatafilesPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__relatedDatafilesPK ** SOAP_FMAC4 soap_get_PointerTons1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__relatedDatafilesPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileFormatPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileFormatPK(struct soap *soap, const char *tag, int id, ns1__datafileFormatPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileFormatPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datafileFormatPK ** SOAP_FMAC4 soap_in_PointerTons1__datafileFormatPK(struct soap *soap, const char *tag, ns1__datafileFormatPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datafileFormatPK **)soap_malloc(soap, sizeof(ns1__datafileFormatPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datafileFormatPK *)soap_instantiate_ns1__datafileFormatPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datafileFormatPK ** p = (ns1__datafileFormatPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormatPK, sizeof(ns1__datafileFormatPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileFormatPK);
-	if (soap_out_PointerTons1__datafileFormatPK(soap, tag?tag:"ns1:datafileFormatPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datafileFormatPK ** SOAP_FMAC4 soap_get_PointerTons1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datafileFormatPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__relatedDatafiles))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__relatedDatafiles(struct soap *soap, const char *tag, int id, ns1__relatedDatafiles *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__relatedDatafiles);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__relatedDatafiles ** SOAP_FMAC4 soap_in_PointerTons1__relatedDatafiles(struct soap *soap, const char *tag, ns1__relatedDatafiles **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__relatedDatafiles **)soap_malloc(soap, sizeof(ns1__relatedDatafiles *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__relatedDatafiles *)soap_instantiate_ns1__relatedDatafiles(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__relatedDatafiles ** p = (ns1__relatedDatafiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafiles, sizeof(ns1__relatedDatafiles), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__relatedDatafiles);
-	if (soap_out_PointerTons1__relatedDatafiles(soap, tag?tag:"ns1:relatedDatafiles", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__relatedDatafiles ** SOAP_FMAC4 soap_get_PointerTons1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__relatedDatafiles(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__datafileInclude);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileInclude(struct soap *soap, const char *tag, int id, enum ns1__datafileInclude *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileInclude);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__datafileInclude(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__datafileInclude ** SOAP_FMAC4 soap_in_PointerTons1__datafileInclude(struct soap *soap, const char *tag, enum ns1__datafileInclude **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__datafileInclude **)soap_malloc(soap, sizeof(enum ns1__datafileInclude *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__datafileInclude(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__datafileInclude **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileInclude, sizeof(enum ns1__datafileInclude), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileInclude);
-	if (soap_out_PointerTons1__datafileInclude(soap, tag?tag:"ns1:datafileInclude", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__datafileInclude ** SOAP_FMAC4 soap_get_PointerTons1__datafileInclude(struct soap *soap, enum ns1__datafileInclude **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datafileInclude(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__parameterValueType);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterValueType(struct soap *soap, const char *tag, int id, enum ns1__parameterValueType *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterValueType);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__parameterValueType(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__parameterValueType ** SOAP_FMAC4 soap_in_PointerTons1__parameterValueType(struct soap *soap, const char *tag, enum ns1__parameterValueType **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__parameterValueType **)soap_malloc(soap, sizeof(enum ns1__parameterValueType *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__parameterValueType(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__parameterValueType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValueType, sizeof(enum ns1__parameterValueType), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterValueType);
-	if (soap_out_PointerTons1__parameterValueType(soap, tag?tag:"ns1:parameterValueType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__parameterValueType ** SOAP_FMAC4 soap_get_PointerTons1__parameterValueType(struct soap *soap, enum ns1__parameterValueType **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterValueType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToint(struct soap *soap, int *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_int);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToint(struct soap *soap, const char *tag, int id, int *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_int);
-	if (id < 0)
-		return soap->error;
-	return soap_out_int(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 int ** SOAP_FMAC4 soap_in_PointerToint(struct soap *soap, const char *tag, int **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (int **)soap_malloc(soap, sizeof(int *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_int(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (int **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_int, sizeof(int), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToint(struct soap *soap, int *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToint);
-	if (soap_out_PointerToint(soap, tag?tag:"int", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 int ** SOAP_FMAC4 soap_get_PointerToint(struct soap *soap, int **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerToint(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__datasetInclude);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datasetInclude(struct soap *soap, const char *tag, int id, enum ns1__datasetInclude *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datasetInclude);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__datasetInclude(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__datasetInclude ** SOAP_FMAC4 soap_in_PointerTons1__datasetInclude(struct soap *soap, const char *tag, enum ns1__datasetInclude **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__datasetInclude **)soap_malloc(soap, sizeof(enum ns1__datasetInclude *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__datasetInclude(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__datasetInclude **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetInclude, sizeof(enum ns1__datasetInclude), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datasetInclude);
-	if (soap_out_PointerTons1__datasetInclude(soap, tag?tag:"ns1:datasetInclude", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__datasetInclude ** SOAP_FMAC4 soap_get_PointerTons1__datasetInclude(struct soap *soap, enum ns1__datasetInclude **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datasetInclude(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileFormat(struct soap *soap, ns1__datafileFormat *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileFormat))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileFormat(struct soap *soap, const char *tag, int id, ns1__datafileFormat *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileFormat);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datafileFormat ** SOAP_FMAC4 soap_in_PointerTons1__datafileFormat(struct soap *soap, const char *tag, ns1__datafileFormat **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datafileFormat **)soap_malloc(soap, sizeof(ns1__datafileFormat *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datafileFormat *)soap_instantiate_ns1__datafileFormat(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datafileFormat ** p = (ns1__datafileFormat **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormat, sizeof(ns1__datafileFormat), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileFormat(struct soap *soap, ns1__datafileFormat *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileFormat);
-	if (soap_out_PointerTons1__datafileFormat(soap, tag?tag:"ns1:datafileFormat", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datafileFormat ** SOAP_FMAC4 soap_get_PointerTons1__datafileFormat(struct soap *soap, ns1__datafileFormat **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datafileFormat(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTodouble(struct soap *soap, double *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_double);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTodouble(struct soap *soap, const char *tag, int id, double *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_double);
-	if (id < 0)
-		return soap->error;
-	return soap_out_double(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 double ** SOAP_FMAC4 soap_in_PointerTodouble(struct soap *soap, const char *tag, double **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (double **)soap_malloc(soap, sizeof(double *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_double(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (double **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_double, sizeof(double), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTodouble(struct soap *soap, double *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTodouble);
-	if (soap_out_PointerTodouble(soap, tag?tag:"double", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 double ** SOAP_FMAC4 soap_get_PointerTodouble(struct soap *soap, double **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTodouble(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTotime(struct soap *soap, time_t *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_time);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTotime(struct soap *soap, const char *tag, int id, time_t *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_time);
-	if (id < 0)
-		return soap->error;
-	return soap_out_time(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 time_t ** SOAP_FMAC4 soap_in_PointerTotime(struct soap *soap, const char *tag, time_t **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (time_t **)soap_malloc(soap, sizeof(time_t *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_time(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (time_t **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_time, sizeof(time_t), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTotime(struct soap *soap, time_t *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTotime);
-	if (soap_out_PointerTotime(soap, tag?tag:"dateTime", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 time_t ** SOAP_FMAC4 soap_get_PointerTotime(struct soap *soap, time_t **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTotime(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__advancedSearchDetails))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__advancedSearchDetails(struct soap *soap, const char *tag, int id, ns1__advancedSearchDetails *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__advancedSearchDetails);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__advancedSearchDetails ** SOAP_FMAC4 soap_in_PointerTons1__advancedSearchDetails(struct soap *soap, const char *tag, ns1__advancedSearchDetails **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__advancedSearchDetails **)soap_malloc(soap, sizeof(ns1__advancedSearchDetails *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__advancedSearchDetails *)soap_instantiate_ns1__advancedSearchDetails(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__advancedSearchDetails ** p = (ns1__advancedSearchDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__advancedSearchDetails, sizeof(ns1__advancedSearchDetails), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__advancedSearchDetails);
-	if (soap_out_PointerTons1__advancedSearchDetails(soap, tag?tag:"ns1:advancedSearchDetails", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__advancedSearchDetails ** SOAP_FMAC4 soap_get_PointerTons1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__advancedSearchDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keyword(struct soap *soap, ns1__keyword *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__keyword))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keyword(struct soap *soap, const char *tag, int id, ns1__keyword *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keyword);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__keyword ** SOAP_FMAC4 soap_in_PointerTons1__keyword(struct soap *soap, const char *tag, ns1__keyword **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__keyword **)soap_malloc(soap, sizeof(ns1__keyword *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__keyword *)soap_instantiate_ns1__keyword(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__keyword ** p = (ns1__keyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keyword, sizeof(ns1__keyword), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keyword(struct soap *soap, ns1__keyword *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keyword);
-	if (soap_out_PointerTons1__keyword(soap, tag?tag:"ns1:keyword", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__keyword ** SOAP_FMAC4 soap_get_PointerTons1__keyword(struct soap *soap, ns1__keyword **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__keyword(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__icatAuthorisation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__icatAuthorisation(struct soap *soap, const char *tag, int id, ns1__icatAuthorisation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__icatAuthorisation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__icatAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__icatAuthorisation(struct soap *soap, const char *tag, ns1__icatAuthorisation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__icatAuthorisation **)soap_malloc(soap, sizeof(ns1__icatAuthorisation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__icatAuthorisation *)soap_instantiate_ns1__icatAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__icatAuthorisation ** p = (ns1__icatAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatAuthorisation, sizeof(ns1__icatAuthorisation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__icatAuthorisation);
-	if (soap_out_PointerTons1__icatAuthorisation(soap, tag?tag:"ns1:icatAuthorisation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__icatAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__icatAuthorisation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__elementType(struct soap *soap, enum ns1__elementType *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__elementType);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__elementType(struct soap *soap, const char *tag, int id, enum ns1__elementType *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__elementType);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__elementType(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__elementType ** SOAP_FMAC4 soap_in_PointerTons1__elementType(struct soap *soap, const char *tag, enum ns1__elementType **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__elementType **)soap_malloc(soap, sizeof(enum ns1__elementType *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__elementType(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__elementType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__elementType, sizeof(enum ns1__elementType), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__elementType(struct soap *soap, enum ns1__elementType *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__elementType);
-	if (soap_out_PointerTons1__elementType(soap, tag?tag:"ns1:elementType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__elementType ** SOAP_FMAC4 soap_get_PointerTons1__elementType(struct soap *soap, enum ns1__elementType **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__elementType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datasetParameter(struct soap *soap, ns1__datasetParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datasetParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datasetParameter(struct soap *soap, const char *tag, int id, ns1__datasetParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datasetParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datasetParameter ** SOAP_FMAC4 soap_in_PointerTons1__datasetParameter(struct soap *soap, const char *tag, ns1__datasetParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datasetParameter **)soap_malloc(soap, sizeof(ns1__datasetParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datasetParameter *)soap_instantiate_ns1__datasetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datasetParameter ** p = (ns1__datasetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameter, sizeof(ns1__datasetParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datasetParameter(struct soap *soap, ns1__datasetParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datasetParameter);
-	if (soap_out_PointerTons1__datasetParameter(soap, tag?tag:"ns1:datasetParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datasetParameter ** SOAP_FMAC4 soap_get_PointerTons1__datasetParameter(struct soap *soap, ns1__datasetParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datasetParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__sampleParameterPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__sampleParameterPK(struct soap *soap, const char *tag, int id, ns1__sampleParameterPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__sampleParameterPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__sampleParameterPK ** SOAP_FMAC4 soap_in_PointerTons1__sampleParameterPK(struct soap *soap, const char *tag, ns1__sampleParameterPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__sampleParameterPK **)soap_malloc(soap, sizeof(ns1__sampleParameterPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__sampleParameterPK *)soap_instantiate_ns1__sampleParameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__sampleParameterPK ** p = (ns1__sampleParameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameterPK, sizeof(ns1__sampleParameterPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__sampleParameterPK);
-	if (soap_out_PointerTons1__sampleParameterPK(soap, tag?tag:"ns1:sampleParameterPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__sampleParameterPK ** SOAP_FMAC4 soap_get_PointerTons1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__sampleParameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigator(struct soap *soap, ns1__investigator *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__investigator))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigator(struct soap *soap, const char *tag, int id, ns1__investigator *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigator);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__investigator ** SOAP_FMAC4 soap_in_PointerTons1__investigator(struct soap *soap, const char *tag, ns1__investigator **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__investigator **)soap_malloc(soap, sizeof(ns1__investigator *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__investigator *)soap_instantiate_ns1__investigator(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__investigator ** p = (ns1__investigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigator, sizeof(ns1__investigator), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigator(struct soap *soap, ns1__investigator *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigator);
-	if (soap_out_PointerTons1__investigator(soap, tag?tag:"ns1:investigator", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__investigator ** SOAP_FMAC4 soap_get_PointerTons1__investigator(struct soap *soap, ns1__investigator **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__investigator(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterLogicalCondition))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterLogicalCondition(struct soap *soap, const char *tag, int id, ns1__parameterLogicalCondition *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterLogicalCondition);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__parameterLogicalCondition ** SOAP_FMAC4 soap_in_PointerTons1__parameterLogicalCondition(struct soap *soap, const char *tag, ns1__parameterLogicalCondition **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__parameterLogicalCondition **)soap_malloc(soap, sizeof(ns1__parameterLogicalCondition *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__parameterLogicalCondition *)soap_instantiate_ns1__parameterLogicalCondition(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__parameterLogicalCondition ** p = (ns1__parameterLogicalCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterLogicalCondition);
-	if (soap_out_PointerTons1__parameterLogicalCondition(soap, tag?tag:"ns1:parameterLogicalCondition", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__parameterLogicalCondition ** SOAP_FMAC4 soap_get_PointerTons1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterLogicalCondition(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileParameterPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileParameterPK(struct soap *soap, const char *tag, int id, ns1__datafileParameterPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileParameterPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datafileParameterPK ** SOAP_FMAC4 soap_in_PointerTons1__datafileParameterPK(struct soap *soap, const char *tag, ns1__datafileParameterPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datafileParameterPK **)soap_malloc(soap, sizeof(ns1__datafileParameterPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datafileParameterPK *)soap_instantiate_ns1__datafileParameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datafileParameterPK ** p = (ns1__datafileParameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameterPK, sizeof(ns1__datafileParameterPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileParameterPK);
-	if (soap_out_PointerTons1__datafileParameterPK(soap, tag?tag:"ns1:datafileParameterPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datafileParameterPK ** SOAP_FMAC4 soap_get_PointerTons1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datafileParameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__publication(struct soap *soap, ns1__publication *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__publication))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__publication(struct soap *soap, const char *tag, int id, ns1__publication *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__publication);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__publication ** SOAP_FMAC4 soap_in_PointerTons1__publication(struct soap *soap, const char *tag, ns1__publication **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__publication **)soap_malloc(soap, sizeof(ns1__publication *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__publication *)soap_instantiate_ns1__publication(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__publication ** p = (ns1__publication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__publication, sizeof(ns1__publication), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__publication(struct soap *soap, ns1__publication *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__publication);
-	if (soap_out_PointerTons1__publication(soap, tag?tag:"ns1:publication", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__publication ** SOAP_FMAC4 soap_get_PointerTons1__publication(struct soap *soap, ns1__publication **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__publication(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datasetParameterPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datasetParameterPK(struct soap *soap, const char *tag, int id, ns1__datasetParameterPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datasetParameterPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datasetParameterPK ** SOAP_FMAC4 soap_in_PointerTons1__datasetParameterPK(struct soap *soap, const char *tag, ns1__datasetParameterPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datasetParameterPK **)soap_malloc(soap, sizeof(ns1__datasetParameterPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datasetParameterPK *)soap_instantiate_ns1__datasetParameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datasetParameterPK ** p = (ns1__datasetParameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameterPK, sizeof(ns1__datasetParameterPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datasetParameterPK);
-	if (soap_out_PointerTons1__datasetParameterPK(soap, tag?tag:"ns1:datasetParameterPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datasetParameterPK ** SOAP_FMAC4 soap_get_PointerTons1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datasetParameterPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__investigationInclude);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigationInclude(struct soap *soap, const char *tag, int id, enum ns1__investigationInclude *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigationInclude);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__investigationInclude(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__investigationInclude ** SOAP_FMAC4 soap_in_PointerTons1__investigationInclude(struct soap *soap, const char *tag, enum ns1__investigationInclude **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__investigationInclude **)soap_malloc(soap, sizeof(enum ns1__investigationInclude *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__investigationInclude(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__investigationInclude **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigationInclude, sizeof(enum ns1__investigationInclude), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigationInclude);
-	if (soap_out_PointerTons1__investigationInclude(soap, tag?tag:"ns1:investigationInclude", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__investigationInclude ** SOAP_FMAC4 soap_get_PointerTons1__investigationInclude(struct soap *soap, enum ns1__investigationInclude **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__investigationInclude(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keywordDetails(struct soap *soap, ns1__keywordDetails *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__keywordDetails))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keywordDetails(struct soap *soap, const char *tag, int id, ns1__keywordDetails *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keywordDetails);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__keywordDetails ** SOAP_FMAC4 soap_in_PointerTons1__keywordDetails(struct soap *soap, const char *tag, ns1__keywordDetails **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__keywordDetails **)soap_malloc(soap, sizeof(ns1__keywordDetails *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__keywordDetails *)soap_instantiate_ns1__keywordDetails(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__keywordDetails ** p = (ns1__keywordDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordDetails, sizeof(ns1__keywordDetails), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keywordDetails(struct soap *soap, ns1__keywordDetails *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keywordDetails);
-	if (soap_out_PointerTons1__keywordDetails(soap, tag?tag:"ns1:keywordDetails", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__keywordDetails ** SOAP_FMAC4 soap_get_PointerTons1__keywordDetails(struct soap *soap, ns1__keywordDetails **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__keywordDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToxsd__anyType(struct soap *soap, xsd__anyType *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_xsd__anyType))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToxsd__anyType(struct soap *soap, const char *tag, int id, xsd__anyType *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_xsd__anyType);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 xsd__anyType ** SOAP_FMAC4 soap_in_PointerToxsd__anyType(struct soap *soap, const char *tag, xsd__anyType **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (xsd__anyType **)soap_malloc(soap, sizeof(xsd__anyType *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (xsd__anyType *)soap_instantiate_xsd__anyType(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	xsd__anyType ** p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__anyType, sizeof(xsd__anyType), 0);
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__boolean, sizeof(xsd__boolean), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__dateTime, sizeof(xsd__dateTime), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__double, sizeof(xsd__double), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__float, sizeof(xsd__float), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__int, sizeof(xsd__int), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__long, sizeof(xsd__long), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__string, sizeof(xsd__string), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValueType_, sizeof(ns1__parameterValueType_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileInclude_, sizeof(ns1__datafileInclude_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__comparisonOperator_, sizeof(ns1__comparisonOperator_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterType_, sizeof(ns1__parameterType_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordType_, sizeof(ns1__keywordType_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigationInclude_, sizeof(ns1__investigationInclude_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logicalOperator_, sizeof(ns1__logicalOperator_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__elementType_, sizeof(ns1__elementType_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetInclude_, sizeof(ns1__datasetInclude_), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypes, sizeof(ns1__listDatasetTypes), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypesResponse, sizeof(ns1__listDatasetTypesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__SessionException, sizeof(ns1__SessionException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleName, sizeof(ns1__searchSamplesBySampleName), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, sizeof(ns1__searchSamplesBySampleNameResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__entityBaseBean, sizeof(ns1__entityBaseBean), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean, sizeof(ns1__entityPrimaryKeyBaseBean), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSample, sizeof(ns1__removeSample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleResponse, sizeof(ns1__removeSampleResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__InsufficientPrivilegesException, sizeof(ns1__InsufficientPrivilegesException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchObjectFoundException, sizeof(ns1__NoSuchObjectFoundException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstruments, sizeof(ns1__listInstruments), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstrumentsResponse, sizeof(ns1__listInstrumentsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFile, sizeof(ns1__createDataFile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFileResponse, sizeof(ns1__createDataFileResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ValidationException, sizeof(ns1__ValidationException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySample, sizeof(ns1__modifySample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleResponse, sizeof(ns1__modifySampleResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparators, sizeof(ns1__searchByParameterComparators), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterCondition, sizeof(ns1__parameterCondition), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValued, sizeof(ns1__parameterValued), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, sizeof(ns1__searchByParameterComparatorsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ParameterSearchException, sizeof(ns1__ParameterSearchException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, sizeof(ns1__searchDatafilesByParameterComparators), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFile, sizeof(ns1__removeDataFile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileResponse, sizeof(ns1__removeDataFileResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisation, sizeof(ns1__removeAuthorisation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisationResponse, sizeof(ns1__removeAuthorisationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameters, sizeof(ns1__addDataFileParameters), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParametersResponse, sizeof(ns1__addDataFileParametersResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCycles, sizeof(ns1__listFacilityCycles), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCyclesResponse, sizeof(ns1__listFacilityCyclesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logout, sizeof(ns1__logout), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logoutResponse, sizeof(ns1__logoutResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDataset, sizeof(ns1__downloadDataset), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatasetResponse, sizeof(ns1__downloadDatasetResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalId, sizeof(ns1__getFacilityUserByFederalId), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, sizeof(ns1__getFacilityUserByFederalIdResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigation, sizeof(ns1__removeInvestigation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigationResponse, sizeof(ns1__removeInvestigationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigator, sizeof(ns1__removeInvestigator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigatorResponse, sizeof(ns1__removeInvestigatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeyword, sizeof(ns1__removeKeyword), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeywordResponse, sizeof(ns1__removeKeywordResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigation, sizeof(ns1__deleteInvestigation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigationResponse, sizeof(ns1__deleteInvestigationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSets, sizeof(ns1__createDataSets), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetsResponse, sizeof(ns1__createDataSetsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublication, sizeof(ns1__removePublication), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublicationResponse, sizeof(ns1__removePublicationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywords, sizeof(ns1__getAllKeywords), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywordsResponse, sizeof(ns1__getAllKeywordsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetails, sizeof(ns1__getUserDetails), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetailsResponse, sizeof(ns1__getUserDetailsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__userDetails, sizeof(ns1__userDetails), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchUserException, sizeof(ns1__NoSuchUserException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafiles, sizeof(ns1__downloadDatafiles), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafilesResponse, sizeof(ns1__downloadDatafilesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSet, sizeof(ns1__modifyDataSet), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetResponse, sizeof(ns1__modifyDataSetResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameter, sizeof(ns1__addSampleParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameterResponse, sizeof(ns1__addSampleParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, sizeof(ns1__getFacilityUserByFacilityUserId), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccess, sizeof(ns1__checkDatafileDownloadAccess), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, sizeof(ns1__checkDatafileDownloadAccessResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadInfo, sizeof(ns1__downloadInfo), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFile, sizeof(ns1__deleteDataFile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileResponse, sizeof(ns1__deleteDataFileResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurname, sizeof(ns1__searchByUserSurname), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnameResponse, sizeof(ns1__searchByUserSurnameResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePagination, sizeof(ns1__searchByUserSurnamePagination), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, sizeof(ns1__searchByUserSurnamePaginationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccess, sizeof(ns1__checkDatasetDownloadAccess), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, sizeof(ns1__checkDatasetDownloadAccessResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywords, sizeof(ns1__searchByKeywords), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsResponse, sizeof(ns1__searchByKeywordsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAll, sizeof(ns1__searchByKeywordsAll), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordDetails, sizeof(ns1__keywordDetails), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAllResponse, sizeof(ns1__searchByKeywordsAllResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigations, sizeof(ns1__getMyInvestigations), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsResponse, sizeof(ns1__getMyInvestigationsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludes, sizeof(ns1__getMyInvestigationsIncludes), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, sizeof(ns1__getMyInvestigationsIncludesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, sizeof(ns1__getMyInvestigationsIncludesPagination), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameter, sizeof(ns1__removeDataSetParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameterResponse, sizeof(ns1__removeDataSetParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublication, sizeof(ns1__modifyPublication), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublicationResponse, sizeof(ns1__modifyPublicationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserID, sizeof(ns1__searchByUserID), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDResponse, sizeof(ns1__searchByUserIDResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPagination, sizeof(ns1__searchByUserIDPagination), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, sizeof(ns1__searchByUserIDPaginationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameter, sizeof(ns1__removeDataFileParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameterResponse, sizeof(ns1__removeDataFileParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludes, sizeof(ns1__getInvestigationsIncludes), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, sizeof(ns1__getInvestigationsIncludesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, sizeof(ns1__searchDatafilesByParameterComparator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, sizeof(ns1__searchDatafilesByParameterComparatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSet, sizeof(ns1__deleteDataSet), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetResponse, sizeof(ns1__deleteDataSetResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValid, sizeof(ns1__isSessionValid), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValidResponse, sizeof(ns1__isSessionValidResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperator, sizeof(ns1__searchByParameterOperator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperatorResponse, sizeof(ns1__searchByParameterOperatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafiles, sizeof(ns1__getDatafiles), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafilesResponse, sizeof(ns1__getDatafilesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersion, sizeof(ns1__getICATAPIVersion), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersionResponse, sizeof(ns1__getICATAPIVersionResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigator, sizeof(ns1__deleteInvestigator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigatorResponse, sizeof(ns1__deleteInvestigatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigator, sizeof(ns1__addInvestigator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigatorResponse, sizeof(ns1__addInvestigatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSet, sizeof(ns1__createDataSet), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetResponse, sizeof(ns1__createDataSetResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, sizeof(ns1__searchDatasetsByParameterComparator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, sizeof(ns1__searchDatasetsByParameterComparatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameter, sizeof(ns1__removeSampleParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameterResponse, sizeof(ns1__removeSampleParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameter, sizeof(ns1__deleteDataSetParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameterResponse, sizeof(ns1__deleteDataSetParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSample, sizeof(ns1__setDataSetSample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSampleResponse, sizeof(ns1__setDataSetSampleResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, sizeof(ns1__searchDatasetsByParameterComparators), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafile, sizeof(ns1__downloadDatafile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafileResponse, sizeof(ns1__downloadDatafileResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUser, sizeof(ns1__getKeywordsForUser), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserResponse, sizeof(ns1__getKeywordsForUserResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, sizeof(ns1__getKeywordsForUserStartWithMax), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMax, sizeof(ns1__getKeywordsForUserMax), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, sizeof(ns1__getKeywordsForUserMaxResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserType, sizeof(ns1__getKeywordsForUserType), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, sizeof(ns1__getKeywordsForUserTypeResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypes, sizeof(ns1__listInvestigationTypes), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypesResponse, sizeof(ns1__listInvestigationTypesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameter, sizeof(ns1__modifyDataSetParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameterResponse, sizeof(ns1__modifyDataSetParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSet, sizeof(ns1__removeDataSet), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetResponse, sizeof(ns1__removeDataSetResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisations, sizeof(ns1__getAuthorisations), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisationsResponse, sizeof(ns1__getAuthorisationsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeyword, sizeof(ns1__addKeyword), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeywordResponse, sizeof(ns1__addKeywordResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigation, sizeof(ns1__modifyInvestigation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigationResponse, sizeof(ns1__modifyInvestigationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatus, sizeof(ns1__listDatasetStatus), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatusResponse, sizeof(ns1__listDatasetStatusResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSample, sizeof(ns1__deleteSample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleResponse, sizeof(ns1__deleteSampleResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeyword, sizeof(ns1__deleteKeyword), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeywordResponse, sizeof(ns1__deleteKeywordResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameters, sizeof(ns1__addDataSetParameters), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParametersResponse, sizeof(ns1__addDataSetParametersResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumber, sizeof(ns1__searchByRunNumber), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberResponse, sizeof(ns1__searchByRunNumberResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPagination, sizeof(ns1__searchByRunNumberPagination), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, sizeof(ns1__searchByRunNumberPaginationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvanced, sizeof(ns1__searchByAdvanced), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__advancedSearchDetails, sizeof(ns1__advancedSearchDetails), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedResponse, sizeof(ns1__searchByAdvancedResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPagination, sizeof(ns1__searchByAdvancedPagination), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, sizeof(ns1__searchByAdvancedPaginationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormats, sizeof(ns1__listDatafileFormats), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormatsResponse, sizeof(ns1__listDatafileFormatsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameter, sizeof(ns1__modifySampleParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameterResponse, sizeof(ns1__modifySampleParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparator, sizeof(ns1__searchByParameterComparator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorResponse, sizeof(ns1__searchByParameterComparatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigator, sizeof(ns1__modifyInvestigator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigatorResponse, sizeof(ns1__modifyInvestigatorResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFiles, sizeof(ns1__createDataFiles), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFilesResponse, sizeof(ns1__createDataFilesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameter, sizeof(ns1__addDataSetParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameterResponse, sizeof(ns1__addDataSetParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisation, sizeof(ns1__addAuthorisation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisationResponse, sizeof(ns1__addAuthorisationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSample, sizeof(ns1__addSample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleResponse, sizeof(ns1__addSampleResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetime, sizeof(ns1__loginLifetime), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetimeResponse, sizeof(ns1__loginLifetimeResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__login, sizeof(ns1__login), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginResponse, sizeof(ns1__loginResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublication, sizeof(ns1__deletePublication), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublicationResponse, sizeof(ns1__deletePublicationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisation, sizeof(ns1__deleteAuthorisation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisationResponse, sizeof(ns1__deleteAuthorisationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisation, sizeof(ns1__updateAuthorisation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisationResponse, sizeof(ns1__updateAuthorisationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludes, sizeof(ns1__getDatasetIncludes), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludesResponse, sizeof(ns1__getDatasetIncludesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDataset, sizeof(ns1__getDataset), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetResponse, sizeof(ns1__getDatasetResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRoles, sizeof(ns1__listRoles), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRolesResponse, sizeof(ns1__listRolesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadata, sizeof(ns1__ingestMetadata), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadataResponse, sizeof(ns1__ingestMetadataResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ICATAPIException, sizeof(ns1__ICATAPIException), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafile, sizeof(ns1__getDatafile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafileResponse, sizeof(ns1__getDatafileResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFile, sizeof(ns1__modifyDataFile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileResponse, sizeof(ns1__modifyDataFileResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludes, sizeof(ns1__getInvestigationIncludes), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludesResponse, sizeof(ns1__getInvestigationIncludesResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigation, sizeof(ns1__getInvestigation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationResponse, sizeof(ns1__getInvestigationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameter, sizeof(ns1__deleteDataFileParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameterResponse, sizeof(ns1__deleteDataFileParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublication, sizeof(ns1__addPublication), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublicationResponse, sizeof(ns1__addPublicationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigation, sizeof(ns1__createInvestigation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigationResponse, sizeof(ns1__createInvestigationResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySample, sizeof(ns1__searchDatasetsBySample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, sizeof(ns1__searchDatasetsBySampleResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameter, sizeof(ns1__addDataFileParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameterResponse, sizeof(ns1__addDataFileParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameter, sizeof(ns1__deleteSampleParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameterResponse, sizeof(ns1__deleteSampleParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameter, sizeof(ns1__modifyDataFileParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameterResponse, sizeof(ns1__modifyDataFileParameterResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParameters, sizeof(ns1__listParameters), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParametersResponse, sizeof(ns1__listParametersResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasets, sizeof(ns1__getDatasets), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetsResponse, sizeof(ns1__getDatasetsResponse), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sample, sizeof(ns1__sample), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameter, sizeof(ns1__sampleParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameterPK, sizeof(ns1__sampleParameterPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatRole, sizeof(ns1__icatRole), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafile, sizeof(ns1__datafile), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormat, sizeof(ns1__datafileFormat), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormatPK, sizeof(ns1__datafileFormatPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameter, sizeof(ns1__datafileParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameterPK, sizeof(ns1__datafileParameterPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafiles, sizeof(ns1__relatedDatafiles), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafilesPK, sizeof(ns1__relatedDatafilesPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameter, sizeof(ns1__parameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterPK, sizeof(ns1__parameterPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigation, sizeof(ns1__investigation), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__dataset, sizeof(ns1__dataset), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameter, sizeof(ns1__datasetParameter), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameterPK, sizeof(ns1__datasetParameterPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityCycle, sizeof(ns1__facilityCycle), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigator, sizeof(ns1__investigator), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityUser, sizeof(ns1__facilityUser), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigatorPK, sizeof(ns1__investigatorPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keyword, sizeof(ns1__keyword), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordPK, sizeof(ns1__keywordPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__publication, sizeof(ns1__publication), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shift, sizeof(ns1__shift), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shiftPK, sizeof(ns1__shiftPK), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), 0);
-		}
-		if (!p && soap->error == SOAP_HREF)
-		{	soap->error = SOAP_OK;
-			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatAuthorisation, sizeof(ns1__icatAuthorisation), 0);
-		}
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToxsd__anyType(struct soap *soap, xsd__anyType *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToxsd__anyType);
-	if (soap_out_PointerToxsd__anyType(soap, tag?tag:"xsd:anyType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 xsd__anyType ** SOAP_FMAC4 soap_get_PointerToxsd__anyType(struct soap *soap, xsd__anyType **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerToxsd__anyType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadInfo(struct soap *soap, ns1__downloadInfo *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadInfo))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadInfo(struct soap *soap, const char *tag, int id, ns1__downloadInfo *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadInfo);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__downloadInfo ** SOAP_FMAC4 soap_in_PointerTons1__downloadInfo(struct soap *soap, const char *tag, ns1__downloadInfo **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__downloadInfo **)soap_malloc(soap, sizeof(ns1__downloadInfo *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__downloadInfo *)soap_instantiate_ns1__downloadInfo(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__downloadInfo ** p = (ns1__downloadInfo **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadInfo, sizeof(ns1__downloadInfo), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadInfo(struct soap *soap, ns1__downloadInfo *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadInfo);
-	if (soap_out_PointerTons1__downloadInfo(soap, tag?tag:"ns1:downloadInfo", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__downloadInfo ** SOAP_FMAC4 soap_get_PointerTons1__downloadInfo(struct soap *soap, ns1__downloadInfo **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__downloadInfo(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__sampleParameter(struct soap *soap, ns1__sampleParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__sampleParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__sampleParameter(struct soap *soap, const char *tag, int id, ns1__sampleParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__sampleParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__sampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__sampleParameter(struct soap *soap, const char *tag, ns1__sampleParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__sampleParameter **)soap_malloc(soap, sizeof(ns1__sampleParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__sampleParameter *)soap_instantiate_ns1__sampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__sampleParameter ** p = (ns1__sampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameter, sizeof(ns1__sampleParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__sampleParameter(struct soap *soap, ns1__sampleParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__sampleParameter);
-	if (soap_out_PointerTons1__sampleParameter(soap, tag?tag:"ns1:sampleParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__sampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__sampleParameter(struct soap *soap, ns1__sampleParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__sampleParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__userDetails(struct soap *soap, ns1__userDetails *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__userDetails))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__userDetails(struct soap *soap, const char *tag, int id, ns1__userDetails *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__userDetails);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__userDetails ** SOAP_FMAC4 soap_in_PointerTons1__userDetails(struct soap *soap, const char *tag, ns1__userDetails **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__userDetails **)soap_malloc(soap, sizeof(ns1__userDetails *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__userDetails *)soap_instantiate_ns1__userDetails(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__userDetails ** p = (ns1__userDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__userDetails, sizeof(ns1__userDetails), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__userDetails(struct soap *soap, ns1__userDetails *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__userDetails);
-	if (soap_out_PointerTons1__userDetails(soap, tag?tag:"ns1:userDetails", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__userDetails ** SOAP_FMAC4 soap_get_PointerTons1__userDetails(struct soap *soap, ns1__userDetails **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__userDetails(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keywordType(struct soap *soap, enum ns1__keywordType *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__keywordType);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keywordType(struct soap *soap, const char *tag, int id, enum ns1__keywordType *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keywordType);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__keywordType(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__keywordType ** SOAP_FMAC4 soap_in_PointerTons1__keywordType(struct soap *soap, const char *tag, enum ns1__keywordType **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__keywordType **)soap_malloc(soap, sizeof(enum ns1__keywordType *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__keywordType(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__keywordType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordType, sizeof(enum ns1__keywordType), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keywordType(struct soap *soap, enum ns1__keywordType *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keywordType);
-	if (soap_out_PointerTons1__keywordType(soap, tag?tag:"ns1:keywordType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__keywordType ** SOAP_FMAC4 soap_get_PointerTons1__keywordType(struct soap *soap, enum ns1__keywordType **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__keywordType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__dataset(struct soap *soap, ns1__dataset *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__dataset))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__dataset(struct soap *soap, const char *tag, int id, ns1__dataset *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__dataset);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__dataset ** SOAP_FMAC4 soap_in_PointerTons1__dataset(struct soap *soap, const char *tag, ns1__dataset **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__dataset **)soap_malloc(soap, sizeof(ns1__dataset *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__dataset *)soap_instantiate_ns1__dataset(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__dataset ** p = (ns1__dataset **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__dataset, sizeof(ns1__dataset), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__dataset(struct soap *soap, ns1__dataset *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__dataset);
-	if (soap_out_PointerTons1__dataset(soap, tag?tag:"ns1:dataset", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__dataset ** SOAP_FMAC4 soap_get_PointerTons1__dataset(struct soap *soap, ns1__dataset **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__dataset(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keywordPK(struct soap *soap, ns1__keywordPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__keywordPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keywordPK(struct soap *soap, const char *tag, int id, ns1__keywordPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keywordPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__keywordPK ** SOAP_FMAC4 soap_in_PointerTons1__keywordPK(struct soap *soap, const char *tag, ns1__keywordPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__keywordPK **)soap_malloc(soap, sizeof(ns1__keywordPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__keywordPK *)soap_instantiate_ns1__keywordPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__keywordPK ** p = (ns1__keywordPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordPK, sizeof(ns1__keywordPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keywordPK(struct soap *soap, ns1__keywordPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keywordPK);
-	if (soap_out_PointerTons1__keywordPK(soap, tag?tag:"ns1:keywordPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__keywordPK ** SOAP_FMAC4 soap_get_PointerTons1__keywordPK(struct soap *soap, ns1__keywordPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__keywordPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigatorPK(struct soap *soap, ns1__investigatorPK *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__investigatorPK))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigatorPK(struct soap *soap, const char *tag, int id, ns1__investigatorPK *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigatorPK);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__investigatorPK ** SOAP_FMAC4 soap_in_PointerTons1__investigatorPK(struct soap *soap, const char *tag, ns1__investigatorPK **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__investigatorPK **)soap_malloc(soap, sizeof(ns1__investigatorPK *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__investigatorPK *)soap_instantiate_ns1__investigatorPK(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__investigatorPK ** p = (ns1__investigatorPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigatorPK, sizeof(ns1__investigatorPK), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigatorPK(struct soap *soap, ns1__investigatorPK *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigatorPK);
-	if (soap_out_PointerTons1__investigatorPK(soap, tag?tag:"ns1:investigatorPK", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__investigatorPK ** SOAP_FMAC4 soap_get_PointerTons1__investigatorPK(struct soap *soap, ns1__investigatorPK **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__investigatorPK(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__facilityUser(struct soap *soap, ns1__facilityUser *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__facilityUser))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__facilityUser(struct soap *soap, const char *tag, int id, ns1__facilityUser *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__facilityUser);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__facilityUser ** SOAP_FMAC4 soap_in_PointerTons1__facilityUser(struct soap *soap, const char *tag, ns1__facilityUser **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__facilityUser **)soap_malloc(soap, sizeof(ns1__facilityUser *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__facilityUser *)soap_instantiate_ns1__facilityUser(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__facilityUser ** p = (ns1__facilityUser **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityUser, sizeof(ns1__facilityUser), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__facilityUser(struct soap *soap, ns1__facilityUser *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__facilityUser);
-	if (soap_out_PointerTons1__facilityUser(soap, tag?tag:"ns1:facilityUser", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__facilityUser ** SOAP_FMAC4 soap_get_PointerTons1__facilityUser(struct soap *soap, ns1__facilityUser **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__facilityUser(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__facilityCycle(struct soap *soap, ns1__facilityCycle *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__facilityCycle))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__facilityCycle(struct soap *soap, const char *tag, int id, ns1__facilityCycle *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__facilityCycle);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__facilityCycle ** SOAP_FMAC4 soap_in_PointerTons1__facilityCycle(struct soap *soap, const char *tag, ns1__facilityCycle **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__facilityCycle **)soap_malloc(soap, sizeof(ns1__facilityCycle *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__facilityCycle *)soap_instantiate_ns1__facilityCycle(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__facilityCycle ** p = (ns1__facilityCycle **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityCycle, sizeof(ns1__facilityCycle), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__facilityCycle(struct soap *soap, ns1__facilityCycle *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__facilityCycle);
-	if (soap_out_PointerTons1__facilityCycle(soap, tag?tag:"ns1:facilityCycle", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__facilityCycle ** SOAP_FMAC4 soap_get_PointerTons1__facilityCycle(struct soap *soap, ns1__facilityCycle **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__facilityCycle(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileParameter(struct soap *soap, ns1__datafileParameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileParameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileParameter(struct soap *soap, const char *tag, int id, ns1__datafileParameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileParameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datafileParameter ** SOAP_FMAC4 soap_in_PointerTons1__datafileParameter(struct soap *soap, const char *tag, ns1__datafileParameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datafileParameter **)soap_malloc(soap, sizeof(ns1__datafileParameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datafileParameter *)soap_instantiate_ns1__datafileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datafileParameter ** p = (ns1__datafileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameter, sizeof(ns1__datafileParameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileParameter(struct soap *soap, ns1__datafileParameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileParameter);
-	if (soap_out_PointerTons1__datafileParameter(soap, tag?tag:"ns1:datafileParameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datafileParameter ** SOAP_FMAC4 soap_get_PointerTons1__datafileParameter(struct soap *soap, ns1__datafileParameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datafileParameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigation(struct soap *soap, ns1__investigation *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__investigation))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigation(struct soap *soap, const char *tag, int id, ns1__investigation *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigation);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__investigation ** SOAP_FMAC4 soap_in_PointerTons1__investigation(struct soap *soap, const char *tag, ns1__investigation **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__investigation **)soap_malloc(soap, sizeof(ns1__investigation *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__investigation *)soap_instantiate_ns1__investigation(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__investigation ** p = (ns1__investigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigation, sizeof(ns1__investigation), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigation(struct soap *soap, ns1__investigation *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigation);
-	if (soap_out_PointerTons1__investigation(soap, tag?tag:"ns1:investigation", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__investigation ** SOAP_FMAC4 soap_get_PointerTons1__investigation(struct soap *soap, ns1__investigation **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__investigation(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterType(struct soap *soap, enum ns1__parameterType *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_ns1__parameterType);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterType(struct soap *soap, const char *tag, int id, enum ns1__parameterType *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterType);
-	if (id < 0)
-		return soap->error;
-	return soap_out_ns1__parameterType(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 enum ns1__parameterType ** SOAP_FMAC4 soap_in_PointerTons1__parameterType(struct soap *soap, const char *tag, enum ns1__parameterType **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (enum ns1__parameterType **)soap_malloc(soap, sizeof(enum ns1__parameterType *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_ns1__parameterType(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (enum ns1__parameterType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterType, sizeof(enum ns1__parameterType), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterType(struct soap *soap, enum ns1__parameterType *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterType);
-	if (soap_out_PointerTons1__parameterType(soap, tag?tag:"ns1:parameterType", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 enum ns1__parameterType ** SOAP_FMAC4 soap_get_PointerTons1__parameterType(struct soap *soap, enum ns1__parameterType **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterType(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameter(struct soap *soap, ns1__parameter *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameter))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameter(struct soap *soap, const char *tag, int id, ns1__parameter *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameter);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__parameter ** SOAP_FMAC4 soap_in_PointerTons1__parameter(struct soap *soap, const char *tag, ns1__parameter **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__parameter **)soap_malloc(soap, sizeof(ns1__parameter *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__parameter *)soap_instantiate_ns1__parameter(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__parameter ** p = (ns1__parameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameter, sizeof(ns1__parameter), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameter(struct soap *soap, ns1__parameter *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameter);
-	if (soap_out_PointerTons1__parameter(soap, tag?tag:"ns1:parameter", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__parameter ** SOAP_FMAC4 soap_get_PointerTons1__parameter(struct soap *soap, ns1__parameter **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameter(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterComparisonCondition))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, int id, ns1__parameterComparisonCondition *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterComparisonCondition);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__parameterComparisonCondition ** SOAP_FMAC4 soap_in_PointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, ns1__parameterComparisonCondition **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__parameterComparisonCondition **)soap_malloc(soap, sizeof(ns1__parameterComparisonCondition *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__parameterComparisonCondition *)soap_instantiate_ns1__parameterComparisonCondition(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__parameterComparisonCondition ** p = (ns1__parameterComparisonCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterComparisonCondition);
-	if (soap_out_PointerTons1__parameterComparisonCondition(soap, tag?tag:"ns1:parameterComparisonCondition", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__parameterComparisonCondition ** SOAP_FMAC4 soap_get_PointerTons1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__parameterComparisonCondition(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafile(struct soap *soap, ns1__datafile *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafile))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafile(struct soap *soap, const char *tag, int id, ns1__datafile *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafile);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__datafile ** SOAP_FMAC4 soap_in_PointerTons1__datafile(struct soap *soap, const char *tag, ns1__datafile **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__datafile **)soap_malloc(soap, sizeof(ns1__datafile *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__datafile *)soap_instantiate_ns1__datafile(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__datafile ** p = (ns1__datafile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafile, sizeof(ns1__datafile), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafile(struct soap *soap, ns1__datafile *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafile);
-	if (soap_out_PointerTons1__datafile(soap, tag?tag:"ns1:datafile", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__datafile ** SOAP_FMAC4 soap_get_PointerTons1__datafile(struct soap *soap, ns1__datafile **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__datafile(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToLONG64(struct soap *soap, LONG64 *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_LONG64);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToLONG64(struct soap *soap, const char *tag, int id, LONG64 *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_LONG64);
-	if (id < 0)
-		return soap->error;
-	return soap_out_LONG64(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 LONG64 ** SOAP_FMAC4 soap_in_PointerToLONG64(struct soap *soap, const char *tag, LONG64 **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (LONG64 **)soap_malloc(soap, sizeof(LONG64 *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_LONG64(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (LONG64 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_LONG64, sizeof(LONG64), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToLONG64(struct soap *soap, LONG64 *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToLONG64);
-	if (soap_out_PointerToLONG64(soap, tag?tag:"long", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 LONG64 ** SOAP_FMAC4 soap_get_PointerToLONG64(struct soap *soap, LONG64 **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerToLONG64(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__icatRole(struct soap *soap, ns1__icatRole *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__icatRole))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__icatRole(struct soap *soap, const char *tag, int id, ns1__icatRole *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__icatRole);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__icatRole ** SOAP_FMAC4 soap_in_PointerTons1__icatRole(struct soap *soap, const char *tag, ns1__icatRole **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__icatRole **)soap_malloc(soap, sizeof(ns1__icatRole *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__icatRole *)soap_instantiate_ns1__icatRole(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__icatRole ** p = (ns1__icatRole **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatRole, sizeof(ns1__icatRole), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__icatRole(struct soap *soap, ns1__icatRole *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__icatRole);
-	if (soap_out_PointerTons1__icatRole(soap, tag?tag:"ns1:icatRole", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__icatRole ** SOAP_FMAC4 soap_get_PointerTons1__icatRole(struct soap *soap, ns1__icatRole **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__icatRole(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__sample(struct soap *soap, ns1__sample *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__sample))
-		(*a)->soap_serialize(soap);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__sample(struct soap *soap, const char *tag, int id, ns1__sample *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__sample);
-	if (id < 0)
-		return soap->error;
-	return (*a)->soap_out(soap, tag, id, type);
-}
-
-SOAP_FMAC3 ns1__sample ** SOAP_FMAC4 soap_in_PointerTons1__sample(struct soap *soap, const char *tag, ns1__sample **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (ns1__sample **)soap_malloc(soap, sizeof(ns1__sample *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = (ns1__sample *)soap_instantiate_ns1__sample(soap, -1, soap->type, soap->arrayType, NULL)))
-			return NULL;
-		(*a)->soap_default(soap);
-		if (!(*a)->soap_in(soap, tag, NULL))
-			return NULL;
-	}
-	else
-	{	ns1__sample ** p = (ns1__sample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sample, sizeof(ns1__sample), 0);
-		a = p;
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__sample(struct soap *soap, ns1__sample *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__sample);
-	if (soap_out_PointerTons1__sample(soap, tag?tag:"ns1:sample", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 ns1__sample ** SOAP_FMAC4 soap_get_PointerTons1__sample(struct soap *soap, ns1__sample **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTons1__sample(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTostd__string(struct soap *soap, std::string *const*a)
-{
-	if (!soap_reference(soap, *a, SOAP_TYPE_std__string))
-		soap_serialize_std__string(soap, *a);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTostd__string(struct soap *soap, const char *tag, int id, std::string *const*a, const char *type)
-{
-	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_std__string);
-	if (id < 0)
-		return soap->error;
-	return soap_out_std__string(soap, tag, id, *a, type);
-}
-
-SOAP_FMAC3 std::string ** SOAP_FMAC4 soap_in_PointerTostd__string(struct soap *soap, const char *tag, std::string **a, const char *type)
-{
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a)
-		if (!(a = (std::string **)soap_malloc(soap, sizeof(std::string *))))
-			return NULL;
-	*a = NULL;
-	if (!soap->null && *soap->href != '#')
-	{	soap_revert(soap);
-		if (!(*a = soap_in_std__string(soap, tag, *a, type)))
-			return NULL;
-	}
-	else
-	{	a = (std::string **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_std__string, sizeof(std::string), 0);
-		if (soap->body && soap_element_end_in(soap, tag))
-			return NULL;
-	}
-	return a;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTostd__string(struct soap *soap, std::string *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTostd__string);
-	if (soap_out_PointerTostd__string(soap, tag?tag:"string", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 std::string ** SOAP_FMAC4 soap_get_PointerTostd__string(struct soap *soap, std::string **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_PointerTostd__string(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out__QName(struct soap *soap, const char *tag, int id, char *const*a, const char *type)
-{
-	return soap_outstring(soap, tag, id, a, type, SOAP_TYPE__QName);
-}
-
-SOAP_FMAC3 char * * SOAP_FMAC4 soap_in__QName(struct soap *soap, const char *tag, char **a, const char *type)
-{	char **p;
-	p = soap_instring(soap, tag, a, type, SOAP_TYPE__QName, 2, -1, -1);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put__QName(struct soap *soap, char *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__QName);
-	if (soap_out__QName(soap, tag?tag:"byte", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 char ** SOAP_FMAC4 soap_get__QName(struct soap *soap, char **p, const char *tag, const char *type)
-{
-	if ((p = soap_in__QName(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_string(struct soap *soap, char **a)
-{
-	(void)soap; /* appease -Wall -Werror */
-#ifdef SOAP_DEFAULT_string
-	*a = SOAP_DEFAULT_string;
-#else
-	*a = (char *)0;
-#endif
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_string(struct soap *soap, char *const*a)
-{
-	soap_reference(soap, *a, SOAP_TYPE_string);
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_string(struct soap *soap, const char *tag, int id, char *const*a, const char *type)
-{
-	return soap_outstring(soap, tag, id, a, type, SOAP_TYPE_string);
-}
-
-SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_string(struct soap *soap, const char *tag, char **a, const char *type)
-{	char **p;
-	p = soap_instring(soap, tag, a, type, SOAP_TYPE_string, 1, -1, -1);
-	return p;
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_put_string(struct soap *soap, char *const*a, const char *tag, const char *type)
-{
-	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_string);
-	if (soap_out_string(soap, tag?tag:"byte", id, a, type))
-		return soap->error;
-	return soap_putindependent(soap);
-}
-
-SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_string(struct soap *soap, char **p, const char *tag, const char *type)
-{
-	if ((p = soap_in_string(soap, tag, p, type)))
-		if (soap_getindependent(soap))
-			return NULL;
-	return p;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, std::vector<ns1__parameterCondition * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, const std::vector<ns1__parameterCondition * >*a)
-{
-	for (std::vector<ns1__parameterCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__parameterCondition(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, const char *tag, int id, const std::vector<ns1__parameterCondition * >*a, const char *type)
-{
-	for (std::vector<ns1__parameterCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__parameterCondition(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__parameterCondition * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, const char *tag, std::vector<ns1__parameterCondition * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__parameterCondition(soap, -1)))
-		return NULL;
-	ns1__parameterCondition *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__parameterCondition, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition, sizeof(ns1__parameterCondition), 1))
-				break;
-			if (!soap_in_PointerTons1__parameterCondition(soap, tag, NULL, "ns1:parameterCondition"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__parameterCondition(soap, tag, &n, "ns1:parameterCondition"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__parameterCondition * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__parameterCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterCondition * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__parameterCondition * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterCondition * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__parameterCondition * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__parameterCondition * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__parameterCondition * > %p -> %p\n", q, p));
-	*(std::vector<ns1__parameterCondition * >*)p = *(std::vector<ns1__parameterCondition * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, std::vector<ns1__shift * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, const std::vector<ns1__shift * >*a)
-{
-	for (std::vector<ns1__shift * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__shift(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, const char *tag, int id, const std::vector<ns1__shift * >*a, const char *type)
-{
-	for (std::vector<ns1__shift * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__shift(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__shift * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, const char *tag, std::vector<ns1__shift * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__shift(soap, -1)))
-		return NULL;
-	ns1__shift *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__shift, SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift, sizeof(ns1__shift), 1))
-				break;
-			if (!soap_in_PointerTons1__shift(soap, tag, NULL, "ns1:shift"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__shift(soap, tag, &n, "ns1:shift"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__shift * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__shift(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__shift * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__shift * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__shift * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__shift * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__shift * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__shift * > %p -> %p\n", q, p));
-	*(std::vector<ns1__shift * >*)p = *(std::vector<ns1__shift * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, std::vector<ns1__publication * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, const std::vector<ns1__publication * >*a)
-{
-	for (std::vector<ns1__publication * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__publication(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, const char *tag, int id, const std::vector<ns1__publication * >*a, const char *type)
-{
-	for (std::vector<ns1__publication * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__publication(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__publication * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, const char *tag, std::vector<ns1__publication * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__publication(soap, -1)))
-		return NULL;
-	ns1__publication *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__publication, SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication, sizeof(ns1__publication), 1))
-				break;
-			if (!soap_in_PointerTons1__publication(soap, tag, NULL, "ns1:publication"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__publication(soap, tag, &n, "ns1:publication"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__publication * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__publication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__publication * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__publication * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__publication * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__publication * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__publication * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__publication * > %p -> %p\n", q, p));
-	*(std::vector<ns1__publication * >*)p = *(std::vector<ns1__publication * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, std::vector<ns1__keyword * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, const std::vector<ns1__keyword * >*a)
-{
-	for (std::vector<ns1__keyword * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__keyword(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, const char *tag, int id, const std::vector<ns1__keyword * >*a, const char *type)
-{
-	for (std::vector<ns1__keyword * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__keyword(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__keyword * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, const char *tag, std::vector<ns1__keyword * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__keyword(soap, -1)))
-		return NULL;
-	ns1__keyword *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__keyword, SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword, sizeof(ns1__keyword), 1))
-				break;
-			if (!soap_in_PointerTons1__keyword(soap, tag, NULL, "ns1:keyword"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__keyword(soap, tag, &n, "ns1:keyword"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__keyword * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__keyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__keyword * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__keyword * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__keyword * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__keyword * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__keyword * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__keyword * > %p -> %p\n", q, p));
-	*(std::vector<ns1__keyword * >*)p = *(std::vector<ns1__keyword * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, std::vector<ns1__investigator * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, const std::vector<ns1__investigator * >*a)
-{
-	for (std::vector<ns1__investigator * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__investigator(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, const char *tag, int id, const std::vector<ns1__investigator * >*a, const char *type)
-{
-	for (std::vector<ns1__investigator * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__investigator(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__investigator * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, const char *tag, std::vector<ns1__investigator * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__investigator(soap, -1)))
-		return NULL;
-	ns1__investigator *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__investigator, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator, sizeof(ns1__investigator), 1))
-				break;
-			if (!soap_in_PointerTons1__investigator(soap, tag, NULL, "ns1:investigator"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__investigator(soap, tag, &n, "ns1:investigator"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__investigator * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__investigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigator * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__investigator * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigator * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__investigator * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__investigator * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__investigator * > %p -> %p\n", q, p));
-	*(std::vector<ns1__investigator * >*)p = *(std::vector<ns1__investigator * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, std::vector<ns1__relatedDatafiles * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, const std::vector<ns1__relatedDatafiles * >*a)
-{
-	for (std::vector<ns1__relatedDatafiles * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__relatedDatafiles(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, const char *tag, int id, const std::vector<ns1__relatedDatafiles * >*a, const char *type)
-{
-	for (std::vector<ns1__relatedDatafiles * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__relatedDatafiles(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__relatedDatafiles * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, const char *tag, std::vector<ns1__relatedDatafiles * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, -1)))
-		return NULL;
-	ns1__relatedDatafiles *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__relatedDatafiles, SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles, sizeof(ns1__relatedDatafiles), 1))
-				break;
-			if (!soap_in_PointerTons1__relatedDatafiles(soap, tag, NULL, "ns1:relatedDatafiles"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__relatedDatafiles(soap, tag, &n, "ns1:relatedDatafiles"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__relatedDatafiles * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__relatedDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__relatedDatafiles * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__relatedDatafiles * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__relatedDatafiles * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__relatedDatafiles * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__relatedDatafiles * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__relatedDatafiles * > %p -> %p\n", q, p));
-	*(std::vector<ns1__relatedDatafiles * >*)p = *(std::vector<ns1__relatedDatafiles * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, std::vector<ns1__sampleParameter * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, const std::vector<ns1__sampleParameter * >*a)
-{
-	for (std::vector<ns1__sampleParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__sampleParameter(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__sampleParameter * >*a, const char *type)
-{
-	for (std::vector<ns1__sampleParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__sampleParameter(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__sampleParameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, const char *tag, std::vector<ns1__sampleParameter * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__sampleParameter(soap, -1)))
-		return NULL;
-	ns1__sampleParameter *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__sampleParameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter, sizeof(ns1__sampleParameter), 1))
-				break;
-			if (!soap_in_PointerTons1__sampleParameter(soap, tag, NULL, "ns1:sampleParameter"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__sampleParameter(soap, tag, &n, "ns1:sampleParameter"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__sampleParameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__sampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sampleParameter * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__sampleParameter * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sampleParameter * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__sampleParameter * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__sampleParameter * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__sampleParameter * > %p -> %p\n", q, p));
-	*(std::vector<ns1__sampleParameter * >*)p = *(std::vector<ns1__sampleParameter * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, std::vector<ns1__parameter * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, const std::vector<ns1__parameter * >*a)
-{
-	for (std::vector<ns1__parameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__parameter(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__parameter * >*a, const char *type)
-{
-	for (std::vector<ns1__parameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__parameter(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__parameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, const char *tag, std::vector<ns1__parameter * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__parameter(soap, -1)))
-		return NULL;
-	ns1__parameter *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__parameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter, sizeof(ns1__parameter), 1))
-				break;
-			if (!soap_in_PointerTons1__parameter(soap, tag, NULL, "ns1:parameter"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__parameter(soap, tag, &n, "ns1:parameter"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__parameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__parameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameter * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__parameter * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameter * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__parameter * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__parameter * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__parameter * > %p -> %p\n", q, p));
-	*(std::vector<ns1__parameter * >*)p = *(std::vector<ns1__parameter * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, std::vector<ns1__icatRole * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, const std::vector<ns1__icatRole * >*a)
-{
-	for (std::vector<ns1__icatRole * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__icatRole(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, const char *tag, int id, const std::vector<ns1__icatRole * >*a, const char *type)
-{
-	for (std::vector<ns1__icatRole * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__icatRole(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__icatRole * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, const char *tag, std::vector<ns1__icatRole * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__icatRole(soap, -1)))
-		return NULL;
-	ns1__icatRole *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__icatRole, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole, sizeof(ns1__icatRole), 1))
-				break;
-			if (!soap_in_PointerTons1__icatRole(soap, tag, NULL, "ns1:icatRole"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__icatRole(soap, tag, &n, "ns1:icatRole"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__icatRole * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__icatRole(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatRole * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__icatRole * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatRole * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__icatRole * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__icatRole * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__icatRole * > %p -> %p\n", q, p));
-	*(std::vector<ns1__icatRole * >*)p = *(std::vector<ns1__icatRole * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, std::vector<ns1__datafileFormat * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, const std::vector<ns1__datafileFormat * >*a)
-{
-	for (std::vector<ns1__datafileFormat * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__datafileFormat(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, const char *tag, int id, const std::vector<ns1__datafileFormat * >*a, const char *type)
-{
-	for (std::vector<ns1__datafileFormat * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__datafileFormat(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__datafileFormat * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, const char *tag, std::vector<ns1__datafileFormat * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datafileFormat(soap, -1)))
-		return NULL;
-	ns1__datafileFormat *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datafileFormat, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat, sizeof(ns1__datafileFormat), 1))
-				break;
-			if (!soap_in_PointerTons1__datafileFormat(soap, tag, NULL, "ns1:datafileFormat"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__datafileFormat(soap, tag, &n, "ns1:datafileFormat"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__datafileFormat * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datafileFormat(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileFormat * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__datafileFormat * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileFormat * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__datafileFormat * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__datafileFormat * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datafileFormat * > %p -> %p\n", q, p));
-	*(std::vector<ns1__datafileFormat * >*)p = *(std::vector<ns1__datafileFormat * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, std::vector<ns1__datasetParameter * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, const std::vector<ns1__datasetParameter * >*a)
-{
-	for (std::vector<ns1__datasetParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__datasetParameter(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__datasetParameter * >*a, const char *type)
-{
-	for (std::vector<ns1__datasetParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__datasetParameter(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__datasetParameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, const char *tag, std::vector<ns1__datasetParameter * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datasetParameter(soap, -1)))
-		return NULL;
-	ns1__datasetParameter *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datasetParameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter, sizeof(ns1__datasetParameter), 1))
-				break;
-			if (!soap_in_PointerTons1__datasetParameter(soap, tag, NULL, "ns1:datasetParameter"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__datasetParameter(soap, tag, &n, "ns1:datasetParameter"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__datasetParameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datasetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datasetParameter * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__datasetParameter * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datasetParameter * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__datasetParameter * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__datasetParameter * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datasetParameter * > %p -> %p\n", q, p));
-	*(std::vector<ns1__datasetParameter * >*)p = *(std::vector<ns1__datasetParameter * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, std::vector<ns1__icatAuthorisation * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, const std::vector<ns1__icatAuthorisation * >*a)
-{
-	for (std::vector<ns1__icatAuthorisation * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__icatAuthorisation(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, const char *tag, int id, const std::vector<ns1__icatAuthorisation * >*a, const char *type)
-{
-	for (std::vector<ns1__icatAuthorisation * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__icatAuthorisation(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__icatAuthorisation * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, const char *tag, std::vector<ns1__icatAuthorisation * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, -1)))
-		return NULL;
-	ns1__icatAuthorisation *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__icatAuthorisation, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation, sizeof(ns1__icatAuthorisation), 1))
-				break;
-			if (!soap_in_PointerTons1__icatAuthorisation(soap, tag, NULL, "ns1:icatAuthorisation"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__icatAuthorisation(soap, tag, &n, "ns1:icatAuthorisation"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__icatAuthorisation * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__icatAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatAuthorisation * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__icatAuthorisation * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatAuthorisation * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__icatAuthorisation * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__icatAuthorisation * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__icatAuthorisation * > %p -> %p\n", q, p));
-	*(std::vector<ns1__icatAuthorisation * >*)p = *(std::vector<ns1__icatAuthorisation * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, std::vector<xsd__anyType * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, const std::vector<xsd__anyType * >*a)
-{
-	for (std::vector<xsd__anyType * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerToxsd__anyType(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, const char *tag, int id, const std::vector<xsd__anyType * >*a, const char *type)
-{
-	for (std::vector<xsd__anyType * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerToxsd__anyType(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<xsd__anyType * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, const char *tag, std::vector<xsd__anyType * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerToxsd__anyType(soap, -1)))
-		return NULL;
-	xsd__anyType *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_xsd__anyType, SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType, sizeof(xsd__anyType), 1))
-				break;
-			if (!soap_in_PointerToxsd__anyType(soap, tag, NULL, "xsd:anyType"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerToxsd__anyType(soap, tag, &n, "xsd:anyType"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<xsd__anyType * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerToxsd__anyType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<xsd__anyType * >);
-		if (size)
-			*size = sizeof(std::vector<xsd__anyType * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<xsd__anyType * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<xsd__anyType * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<xsd__anyType * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<xsd__anyType * > %p -> %p\n", q, p));
-	*(std::vector<xsd__anyType * >*)p = *(std::vector<xsd__anyType * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfLONG64(struct soap *soap, std::vector<LONG64 >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfLONG64(struct soap *soap, const std::vector<LONG64 >*a)
-{
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfLONG64(struct soap *soap, const char *tag, int id, const std::vector<LONG64 >*a, const char *type)
-{
-	for (std::vector<LONG64 >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_LONG64(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<LONG64 >* SOAP_FMAC4 soap_in_std__vectorTemplateOfLONG64(struct soap *soap, const char *tag, std::vector<LONG64 >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfLONG64(soap, -1)))
-		return NULL;
-	LONG64 n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		soap_default_LONG64(soap, &n);
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_LONG64, SOAP_TYPE_std__vectorTemplateOfLONG64, sizeof(LONG64), 0))
-				break;
-			if (!soap_in_LONG64(soap, tag, NULL, "xsd:long"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_LONG64(soap, tag, &n, "xsd:long"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<LONG64 > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfLONG64(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfLONG64(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfLONG64, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<LONG64 >);
-		if (size)
-			*size = sizeof(std::vector<LONG64 >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<LONG64 >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<LONG64 >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<LONG64 >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfLONG64(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<LONG64 > %p -> %p\n", q, p));
-	*(std::vector<LONG64 >*)p = *(std::vector<LONG64 >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, std::vector<ns1__dataset * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, const std::vector<ns1__dataset * >*a)
-{
-	for (std::vector<ns1__dataset * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__dataset(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, const char *tag, int id, const std::vector<ns1__dataset * >*a, const char *type)
-{
-	for (std::vector<ns1__dataset * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__dataset(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__dataset * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, const char *tag, std::vector<ns1__dataset * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__dataset(soap, -1)))
-		return NULL;
-	ns1__dataset *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__dataset, SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset, sizeof(ns1__dataset), 1))
-				break;
-			if (!soap_in_PointerTons1__dataset(soap, tag, NULL, "ns1:dataset"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__dataset(soap, tag, &n, "ns1:dataset"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__dataset * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__dataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__dataset * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__dataset * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__dataset * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__dataset * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__dataset * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__dataset * > %p -> %p\n", q, p));
-	*(std::vector<ns1__dataset * >*)p = *(std::vector<ns1__dataset * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, std::vector<ns1__facilityCycle * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, const std::vector<ns1__facilityCycle * >*a)
-{
-	for (std::vector<ns1__facilityCycle * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__facilityCycle(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, const char *tag, int id, const std::vector<ns1__facilityCycle * >*a, const char *type)
-{
-	for (std::vector<ns1__facilityCycle * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__facilityCycle(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__facilityCycle * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, const char *tag, std::vector<ns1__facilityCycle * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__facilityCycle(soap, -1)))
-		return NULL;
-	ns1__facilityCycle *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__facilityCycle, SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle, sizeof(ns1__facilityCycle), 1))
-				break;
-			if (!soap_in_PointerTons1__facilityCycle(soap, tag, NULL, "ns1:facilityCycle"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__facilityCycle(soap, tag, &n, "ns1:facilityCycle"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__facilityCycle * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__facilityCycle(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__facilityCycle * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__facilityCycle * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__facilityCycle * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__facilityCycle * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__facilityCycle * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__facilityCycle * > %p -> %p\n", q, p));
-	*(std::vector<ns1__facilityCycle * >*)p = *(std::vector<ns1__facilityCycle * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, std::vector<ns1__datafileParameter * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, const std::vector<ns1__datafileParameter * >*a)
-{
-	for (std::vector<ns1__datafileParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__datafileParameter(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__datafileParameter * >*a, const char *type)
-{
-	for (std::vector<ns1__datafileParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__datafileParameter(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__datafileParameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, const char *tag, std::vector<ns1__datafileParameter * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datafileParameter(soap, -1)))
-		return NULL;
-	ns1__datafileParameter *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datafileParameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter, sizeof(ns1__datafileParameter), 1))
-				break;
-			if (!soap_in_PointerTons1__datafileParameter(soap, tag, NULL, "ns1:datafileParameter"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__datafileParameter(soap, tag, &n, "ns1:datafileParameter"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__datafileParameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datafileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileParameter * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__datafileParameter * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileParameter * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__datafileParameter * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__datafileParameter * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datafileParameter * > %p -> %p\n", q, p));
-	*(std::vector<ns1__datafileParameter * >*)p = *(std::vector<ns1__datafileParameter * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, std::vector<ns1__datafile * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, const std::vector<ns1__datafile * >*a)
-{
-	for (std::vector<ns1__datafile * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__datafile(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, const char *tag, int id, const std::vector<ns1__datafile * >*a, const char *type)
-{
-	for (std::vector<ns1__datafile * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__datafile(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__datafile * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, const char *tag, std::vector<ns1__datafile * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datafile(soap, -1)))
-		return NULL;
-	ns1__datafile *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datafile, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile, sizeof(ns1__datafile), 1))
-				break;
-			if (!soap_in_PointerTons1__datafile(soap, tag, NULL, "ns1:datafile"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__datafile(soap, tag, &n, "ns1:datafile"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__datafile * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafile * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__datafile * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafile * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__datafile * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__datafile * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datafile * > %p -> %p\n", q, p));
-	*(std::vector<ns1__datafile * >*)p = *(std::vector<ns1__datafile * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, std::vector<ns1__investigation * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, const std::vector<ns1__investigation * >*a)
-{
-	for (std::vector<ns1__investigation * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__investigation(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, const char *tag, int id, const std::vector<ns1__investigation * >*a, const char *type)
-{
-	for (std::vector<ns1__investigation * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__investigation(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__investigation * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, const char *tag, std::vector<ns1__investigation * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__investigation(soap, -1)))
-		return NULL;
-	ns1__investigation *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__investigation, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation, sizeof(ns1__investigation), 1))
-				break;
-			if (!soap_in_PointerTons1__investigation(soap, tag, NULL, "ns1:investigation"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__investigation(soap, tag, &n, "ns1:investigation"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__investigation * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__investigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigation * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__investigation * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigation * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__investigation * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__investigation * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__investigation * > %p -> %p\n", q, p));
-	*(std::vector<ns1__investigation * >*)p = *(std::vector<ns1__investigation * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, std::vector<ns1__parameterComparisonCondition * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, const std::vector<ns1__parameterComparisonCondition * >*a)
-{
-	for (std::vector<ns1__parameterComparisonCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__parameterComparisonCondition(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, int id, const std::vector<ns1__parameterComparisonCondition * >*a, const char *type)
-{
-	for (std::vector<ns1__parameterComparisonCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__parameterComparisonCondition(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__parameterComparisonCondition * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, std::vector<ns1__parameterComparisonCondition * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, -1)))
-		return NULL;
-	ns1__parameterComparisonCondition *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__parameterComparisonCondition, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 1))
-				break;
-			if (!soap_in_PointerTons1__parameterComparisonCondition(soap, tag, NULL, "ns1:parameterComparisonCondition"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__parameterComparisonCondition(soap, tag, &n, "ns1:parameterComparisonCondition"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__parameterComparisonCondition * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterComparisonCondition * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__parameterComparisonCondition * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterComparisonCondition * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__parameterComparisonCondition * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__parameterComparisonCondition * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__parameterComparisonCondition * > %p -> %p\n", q, p));
-	*(std::vector<ns1__parameterComparisonCondition * >*)p = *(std::vector<ns1__parameterComparisonCondition * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, std::vector<ns1__sample * >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, const std::vector<ns1__sample * >*a)
-{
-	for (std::vector<ns1__sample * >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_PointerTons1__sample(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, const char *tag, int id, const std::vector<ns1__sample * >*a, const char *type)
-{
-	for (std::vector<ns1__sample * >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_PointerTons1__sample(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<ns1__sample * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, const char *tag, std::vector<ns1__sample * >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__sample(soap, -1)))
-		return NULL;
-	ns1__sample *n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		n = NULL;
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__sample, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample, sizeof(ns1__sample), 1))
-				break;
-			if (!soap_in_PointerTons1__sample(soap, tag, NULL, "ns1:sample"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_PointerTons1__sample(soap, tag, &n, "ns1:sample"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<ns1__sample * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__sample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sample * >);
-		if (size)
-			*size = sizeof(std::vector<ns1__sample * >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sample * >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<ns1__sample * >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<ns1__sample * >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__sample * > %p -> %p\n", q, p));
-	*(std::vector<ns1__sample * >*)p = *(std::vector<ns1__sample * >*)q;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfstd__string(struct soap *soap, std::vector<std::string >*p)
-{
-	p->clear();
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfstd__string(struct soap *soap, const std::vector<std::string >*a)
-{
-	for (std::vector<std::string >::const_iterator i = a->begin(); i != a->end(); ++i)
-		soap_serialize_std__string(soap, &(*i));
-}
-
-SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfstd__string(struct soap *soap, const char *tag, int id, const std::vector<std::string >*a, const char *type)
-{
-	for (std::vector<std::string >::const_iterator i = a->begin(); i != a->end(); ++i)
-	{
-		if (soap_out_std__string(soap, tag, id, &(*i), ""))
-			return soap->error;
-	}
-	return SOAP_OK;
-}
-
-SOAP_FMAC3 std::vector<std::string >* SOAP_FMAC4 soap_in_std__vectorTemplateOfstd__string(struct soap *soap, const char *tag, std::vector<std::string >*a, const char *type)
-{
-	(void)type; /* appease -Wall -Werror */
-	if (soap_element_begin_in(soap, tag, 1, NULL))
-		return NULL;
-	if (!a && !(a = soap_new_std__vectorTemplateOfstd__string(soap, -1)))
-		return NULL;
-	std::string n;
-	short soap_flag = 0;
-	do
-	{	soap_revert(soap);
-		soap_default_std__string(soap, &n);
-		if (*soap->id || *soap->href)
-		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_std__string, SOAP_TYPE_std__vectorTemplateOfstd__string, sizeof(std::string), 0))
-				break;
-			if (!soap_in_std__string(soap, tag, NULL, "xsd:string"))
-				break;
-		}
-		else
-		{
-			if (!soap_in_std__string(soap, tag, &n, "xsd:string"))
-				break;
-		}
-		a->push_back(n);
-		soap_flag = 1;
-	}
-	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
-	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
-	{	soap->error = SOAP_OK;
-		return a;
-	}
-	return NULL;
-}
-
-SOAP_FMAC1 std::vector<std::string > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfstd__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
-{
-	(void)type; (void)arrayType; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfstd__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
-	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfstd__string, n, soap_fdelete);
-	if (!cp)
-		return NULL;
-	if (n < 0)
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<std::string >);
-		if (size)
-			*size = sizeof(std::vector<std::string >);
-	}
-	else
-	{	cp->ptr = (void*)SOAP_NEW(std::vector<std::string >[n]);
-		if (!cp->ptr)
-		{	soap->error = SOAP_EOM;
-			return NULL;
-		}
-		if (size)
-			*size = n * sizeof(std::vector<std::string >);
-	}
-		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
-	return (std::vector<std::string >*)cp->ptr;
-}
-
-SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfstd__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
-{
-	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
-	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<std::string > %p -> %p\n", q, p));
-	*(std::vector<std::string >*)p = *(std::vector<std::string >*)q;
-}
-
-#if defined(__BORLANDC__)
-#pragma option pop
-#pragma option pop
-#endif
-
-/* End of soapC.cpp */
+/* soapC.cpp
+   Generated by gSOAP 2.7.17 from ICATService.h
+   Copyright(C) 2000-2010, Robert van Engelen, Genivia Inc. All Rights Reserved.
+   This part of the software is released under one of the following licenses:
+   GPL, the gSOAP public license, or Genivia's license for commercial use.
+*/
+
+#if defined(__BORLANDC__)
+#pragma option push -w-8060
+#pragma option push -w-8004
+// M. Gigg 2010-11-09: Added the next two pragmas to supress the warnings regarding
+// unused parameters. This file is generated by gsoap so each time the API is regenerated
+// this should be added.
+#elif defined(__GNUC__)
+#pragma GCC diagnostic ignored "-Wunused-parameter"
+#elif defined _WIN32 
+#pragma warning( disable: 4100 )
+#endif
+
+#include "MantidICat/GSoapGenerated/soapH.h"
+
+SOAP_SOURCE_STAMP("@(#) soapC.cpp ver 2.7.17 2010-10-12 10:30:43 GMT")
+
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serializeheader(struct soap *soap)
+{
+	if (soap->header)
+		soap_serialize_SOAP_ENV__Header(soap, soap->header);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_putheader(struct soap *soap)
+{
+	if (soap->header)
+	{	soap->part = SOAP_IN_HEADER;
+		if (soap_out_SOAP_ENV__Header(soap, "SOAP-ENV:Header", 0, soap->header, NULL))
+			return soap->error;
+		soap->part = SOAP_END_HEADER;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_getheader(struct soap *soap)
+{
+	soap->part = SOAP_IN_HEADER;
+	soap->header = soap_in_SOAP_ENV__Header(soap, "SOAP-ENV:Header", NULL, NULL);
+	soap->part = SOAP_END_HEADER;
+	return soap->header == NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_header(struct soap *soap)
+{
+	if (!soap->header)
+	{	if ((soap->header = soap_new_SOAP_ENV__Header(soap, -1)))
+			soap_default_SOAP_ENV__Header(soap, soap->header);
+	}
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_fault(struct soap *soap)
+{
+	if (!soap->fault)
+	{	soap->fault = soap_new_SOAP_ENV__Fault(soap, -1);
+		if (!soap->fault)
+			return;
+		soap_default_SOAP_ENV__Fault(soap, soap->fault);
+	}
+	if (soap->version == 2 && !soap->fault->SOAP_ENV__Code)
+	{	soap->fault->SOAP_ENV__Code = soap_new_SOAP_ENV__Code(soap, -1);
+		soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code);
+	}
+	if (soap->version == 2 && !soap->fault->SOAP_ENV__Reason)
+	{	soap->fault->SOAP_ENV__Reason = soap_new_SOAP_ENV__Reason(soap, -1);
+		soap_default_SOAP_ENV__Reason(soap, soap->fault->SOAP_ENV__Reason);
+	}
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serializefault(struct soap *soap)
+{
+	soap_fault(soap);
+	if (soap->fault)
+		soap_serialize_SOAP_ENV__Fault(soap, soap->fault);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_putfault(struct soap *soap)
+{
+	if (soap->fault)
+		return soap_put_SOAP_ENV__Fault(soap, soap->fault, "SOAP-ENV:Fault", NULL);
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_getfault(struct soap *soap)
+{
+	return (soap->fault = soap_get_SOAP_ENV__Fault(soap, NULL, "SOAP-ENV:Fault", NULL)) == NULL;
+}
+
+SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultcode(struct soap *soap)
+{
+	soap_fault(soap);
+	if (soap->version == 2)
+		return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Value;
+	return (const char**)&soap->fault->faultcode;
+}
+
+SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultsubcode(struct soap *soap)
+{
+	soap_fault(soap);
+	if (soap->version == 2)
+	{	if (!soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode)
+		{	soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode = soap_new_SOAP_ENV__Code(soap, -1);
+			soap_default_SOAP_ENV__Code(soap, soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode);
+		}
+		return (const char**)&soap->fault->SOAP_ENV__Code->SOAP_ENV__Subcode->SOAP_ENV__Value;
+	}
+	return (const char**)&soap->fault->faultcode;
+}
+
+SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultstring(struct soap *soap)
+{
+	soap_fault(soap);
+	if (soap->version == 2)
+		return (const char**)&soap->fault->SOAP_ENV__Reason->SOAP_ENV__Text;
+	return (const char**)&soap->fault->faultstring;
+}
+
+SOAP_FMAC3 const char ** SOAP_FMAC4 soap_faultdetail(struct soap *soap)
+{
+	soap_fault(soap);
+	if (soap->version == 1)
+	{	if (!soap->fault->detail)
+		{	soap->fault->detail = (struct SOAP_ENV__Detail*)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail));
+			soap_default_SOAP_ENV__Detail(soap, soap->fault->detail);
+		}
+		return (const char**)&soap->fault->detail->__any;
+	}
+	if (!soap->fault->SOAP_ENV__Detail)
+	{	soap->fault->SOAP_ENV__Detail = soap_new_SOAP_ENV__Detail(soap, -1);
+		soap_default_SOAP_ENV__Detail(soap, soap->fault->SOAP_ENV__Detail);
+	}
+	return (const char**)&soap->fault->SOAP_ENV__Detail->__any;
+}
+
+#endif
+
+#ifndef WITH_NOIDREF
+SOAP_FMAC3 int SOAP_FMAC4 soap_getindependent(struct soap *soap)
+{
+	int t;
+	if (soap->version == 1)
+	{	for (;;)
+		{	if (!soap_getelement(soap, &t))
+				if (soap->error || soap_ignore_element(soap))
+					break;
+		}
+	}
+	if (soap->error == SOAP_NO_TAG || soap->error == SOAP_EOF)
+		soap->error = SOAP_OK;
+	return soap->error;
+}
+#endif
+
+#ifndef WITH_NOIDREF
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+SOAP_FMAC3 void * SOAP_FMAC4 soap_getelement(struct soap *soap, int *type)
+{
+	if (soap_peek_element(soap))
+		return NULL;
+	if (!*soap->id || !(*type = soap_lookup_type(soap, soap->id)))
+		*type = soap_lookup_type(soap, soap->href);
+	switch (*type)
+	{
+	case SOAP_TYPE_byte:
+		return soap_in_byte(soap, NULL, NULL, "xsd:byte");
+	case SOAP_TYPE_int:
+		return soap_in_int(soap, NULL, NULL, "xsd:int");
+	case SOAP_TYPE_LONG64:
+		return soap_in_LONG64(soap, NULL, NULL, "xsd:long");
+	case SOAP_TYPE_float:
+		return soap_in_float(soap, NULL, NULL, "xsd:float");
+	case SOAP_TYPE_double:
+		return soap_in_double(soap, NULL, NULL, "xsd:double");
+	case SOAP_TYPE_time:
+		return soap_in_time(soap, NULL, NULL, "xsd:dateTime");
+	case SOAP_TYPE_ns1__datasetInclude:
+		return soap_in_ns1__datasetInclude(soap, NULL, NULL, "ns1:datasetInclude");
+	case SOAP_TYPE_ns1__elementType:
+		return soap_in_ns1__elementType(soap, NULL, NULL, "ns1:elementType");
+	case SOAP_TYPE_ns1__logicalOperator:
+		return soap_in_ns1__logicalOperator(soap, NULL, NULL, "ns1:logicalOperator");
+	case SOAP_TYPE_ns1__investigationInclude:
+		return soap_in_ns1__investigationInclude(soap, NULL, NULL, "ns1:investigationInclude");
+	case SOAP_TYPE_ns1__keywordType:
+		return soap_in_ns1__keywordType(soap, NULL, NULL, "ns1:keywordType");
+	case SOAP_TYPE_ns1__parameterType:
+		return soap_in_ns1__parameterType(soap, NULL, NULL, "ns1:parameterType");
+	case SOAP_TYPE_ns1__comparisonOperator:
+		return soap_in_ns1__comparisonOperator(soap, NULL, NULL, "ns1:comparisonOperator");
+	case SOAP_TYPE_ns1__datafileInclude:
+		return soap_in_ns1__datafileInclude(soap, NULL, NULL, "ns1:datafileInclude");
+	case SOAP_TYPE_ns1__parameterValueType:
+		return soap_in_ns1__parameterValueType(soap, NULL, NULL, "ns1:parameterValueType");
+	case SOAP_TYPE_bool:
+		return soap_in_bool(soap, NULL, NULL, "xsd:boolean");
+	case SOAP_TYPE_ns1__datasetInclude_:
+		return soap_in_ns1__datasetInclude_(soap, NULL, NULL, "ns1:datasetInclude");
+	case SOAP_TYPE_ns1__elementType_:
+		return soap_in_ns1__elementType_(soap, NULL, NULL, "ns1:elementType");
+	case SOAP_TYPE_ns1__logicalOperator_:
+		return soap_in_ns1__logicalOperator_(soap, NULL, NULL, "ns1:logicalOperator");
+	case SOAP_TYPE_ns1__investigationInclude_:
+		return soap_in_ns1__investigationInclude_(soap, NULL, NULL, "ns1:investigationInclude");
+	case SOAP_TYPE_ns1__keywordType_:
+		return soap_in_ns1__keywordType_(soap, NULL, NULL, "ns1:keywordType");
+	case SOAP_TYPE_ns1__parameterType_:
+		return soap_in_ns1__parameterType_(soap, NULL, NULL, "ns1:parameterType");
+	case SOAP_TYPE_ns1__comparisonOperator_:
+		return soap_in_ns1__comparisonOperator_(soap, NULL, NULL, "ns1:comparisonOperator");
+	case SOAP_TYPE_ns1__datafileInclude_:
+		return soap_in_ns1__datafileInclude_(soap, NULL, NULL, "ns1:datafileInclude");
+	case SOAP_TYPE_ns1__parameterValueType_:
+		return soap_in_ns1__parameterValueType_(soap, NULL, NULL, "ns1:parameterValueType");
+	case SOAP_TYPE_ns1__getDatasetsResponse:
+		return soap_in_ns1__getDatasetsResponse(soap, NULL, NULL, "ns1:getDatasetsResponse");
+	case SOAP_TYPE_ns1__getDatasets:
+		return soap_in_ns1__getDatasets(soap, NULL, NULL, "ns1:getDatasets");
+	case SOAP_TYPE_ns1__listParametersResponse:
+		return soap_in_ns1__listParametersResponse(soap, NULL, NULL, "ns1:listParametersResponse");
+	case SOAP_TYPE_ns1__listParameters:
+		return soap_in_ns1__listParameters(soap, NULL, NULL, "ns1:listParameters");
+	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
+		return soap_in_ns1__modifyDataFileParameterResponse(soap, NULL, NULL, "ns1:modifyDataFileParameterResponse");
+	case SOAP_TYPE_ns1__modifyDataFileParameter:
+		return soap_in_ns1__modifyDataFileParameter(soap, NULL, NULL, "ns1:modifyDataFileParameter");
+	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
+		return soap_in_ns1__deleteSampleParameterResponse(soap, NULL, NULL, "ns1:deleteSampleParameterResponse");
+	case SOAP_TYPE_ns1__deleteSampleParameter:
+		return soap_in_ns1__deleteSampleParameter(soap, NULL, NULL, "ns1:deleteSampleParameter");
+	case SOAP_TYPE_ns1__addDataFileParameterResponse:
+		return soap_in_ns1__addDataFileParameterResponse(soap, NULL, NULL, "ns1:addDataFileParameterResponse");
+	case SOAP_TYPE_ns1__addDataFileParameter:
+		return soap_in_ns1__addDataFileParameter(soap, NULL, NULL, "ns1:addDataFileParameter");
+	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
+		return soap_in_ns1__searchDatasetsBySampleResponse(soap, NULL, NULL, "ns1:searchDatasetsBySampleResponse");
+	case SOAP_TYPE_ns1__searchDatasetsBySample:
+		return soap_in_ns1__searchDatasetsBySample(soap, NULL, NULL, "ns1:searchDatasetsBySample");
+	case SOAP_TYPE_ns1__createInvestigationResponse:
+		return soap_in_ns1__createInvestigationResponse(soap, NULL, NULL, "ns1:createInvestigationResponse");
+	case SOAP_TYPE_ns1__createInvestigation:
+		return soap_in_ns1__createInvestigation(soap, NULL, NULL, "ns1:createInvestigation");
+	case SOAP_TYPE_ns1__addPublicationResponse:
+		return soap_in_ns1__addPublicationResponse(soap, NULL, NULL, "ns1:addPublicationResponse");
+	case SOAP_TYPE_ns1__addPublication:
+		return soap_in_ns1__addPublication(soap, NULL, NULL, "ns1:addPublication");
+	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
+		return soap_in_ns1__deleteDataFileParameterResponse(soap, NULL, NULL, "ns1:deleteDataFileParameterResponse");
+	case SOAP_TYPE_ns1__deleteDataFileParameter:
+		return soap_in_ns1__deleteDataFileParameter(soap, NULL, NULL, "ns1:deleteDataFileParameter");
+	case SOAP_TYPE_ns1__getInvestigationResponse:
+		return soap_in_ns1__getInvestigationResponse(soap, NULL, NULL, "ns1:getInvestigationResponse");
+	case SOAP_TYPE_ns1__getInvestigation:
+		return soap_in_ns1__getInvestigation(soap, NULL, NULL, "ns1:getInvestigation");
+	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
+		return soap_in_ns1__getInvestigationIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationIncludesResponse");
+	case SOAP_TYPE_ns1__getInvestigationIncludes:
+		return soap_in_ns1__getInvestigationIncludes(soap, NULL, NULL, "ns1:getInvestigationIncludes");
+	case SOAP_TYPE_ns1__modifyDataFileResponse:
+		return soap_in_ns1__modifyDataFileResponse(soap, NULL, NULL, "ns1:modifyDataFileResponse");
+	case SOAP_TYPE_ns1__modifyDataFile:
+		return soap_in_ns1__modifyDataFile(soap, NULL, NULL, "ns1:modifyDataFile");
+	case SOAP_TYPE_ns1__getDatafileResponse:
+		return soap_in_ns1__getDatafileResponse(soap, NULL, NULL, "ns1:getDatafileResponse");
+	case SOAP_TYPE_ns1__getDatafile:
+		return soap_in_ns1__getDatafile(soap, NULL, NULL, "ns1:getDatafile");
+	case SOAP_TYPE_ns1__ICATAPIException:
+		return soap_in_ns1__ICATAPIException(soap, NULL, NULL, "ns1:ICATAPIException");
+	case SOAP_TYPE_ns1__ingestMetadataResponse:
+		return soap_in_ns1__ingestMetadataResponse(soap, NULL, NULL, "ns1:ingestMetadataResponse");
+	case SOAP_TYPE_ns1__ingestMetadata:
+		return soap_in_ns1__ingestMetadata(soap, NULL, NULL, "ns1:ingestMetadata");
+	case SOAP_TYPE_ns1__listRolesResponse:
+		return soap_in_ns1__listRolesResponse(soap, NULL, NULL, "ns1:listRolesResponse");
+	case SOAP_TYPE_ns1__listRoles:
+		return soap_in_ns1__listRoles(soap, NULL, NULL, "ns1:listRoles");
+	case SOAP_TYPE_ns1__getDatasetResponse:
+		return soap_in_ns1__getDatasetResponse(soap, NULL, NULL, "ns1:getDatasetResponse");
+	case SOAP_TYPE_ns1__getDataset:
+		return soap_in_ns1__getDataset(soap, NULL, NULL, "ns1:getDataset");
+	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
+		return soap_in_ns1__getDatasetIncludesResponse(soap, NULL, NULL, "ns1:getDatasetIncludesResponse");
+	case SOAP_TYPE_ns1__getDatasetIncludes:
+		return soap_in_ns1__getDatasetIncludes(soap, NULL, NULL, "ns1:getDatasetIncludes");
+	case SOAP_TYPE_ns1__updateAuthorisationResponse:
+		return soap_in_ns1__updateAuthorisationResponse(soap, NULL, NULL, "ns1:updateAuthorisationResponse");
+	case SOAP_TYPE_ns1__updateAuthorisation:
+		return soap_in_ns1__updateAuthorisation(soap, NULL, NULL, "ns1:updateAuthorisation");
+	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
+		return soap_in_ns1__deleteAuthorisationResponse(soap, NULL, NULL, "ns1:deleteAuthorisationResponse");
+	case SOAP_TYPE_ns1__deleteAuthorisation:
+		return soap_in_ns1__deleteAuthorisation(soap, NULL, NULL, "ns1:deleteAuthorisation");
+	case SOAP_TYPE_ns1__deletePublicationResponse:
+		return soap_in_ns1__deletePublicationResponse(soap, NULL, NULL, "ns1:deletePublicationResponse");
+	case SOAP_TYPE_ns1__deletePublication:
+		return soap_in_ns1__deletePublication(soap, NULL, NULL, "ns1:deletePublication");
+	case SOAP_TYPE_ns1__loginResponse:
+		return soap_in_ns1__loginResponse(soap, NULL, NULL, "ns1:loginResponse");
+	case SOAP_TYPE_ns1__login:
+		return soap_in_ns1__login(soap, NULL, NULL, "ns1:login");
+	case SOAP_TYPE_ns1__loginLifetimeResponse:
+		return soap_in_ns1__loginLifetimeResponse(soap, NULL, NULL, "ns1:loginLifetimeResponse");
+	case SOAP_TYPE_ns1__loginLifetime:
+		return soap_in_ns1__loginLifetime(soap, NULL, NULL, "ns1:loginLifetime");
+	case SOAP_TYPE_ns1__addSampleResponse:
+		return soap_in_ns1__addSampleResponse(soap, NULL, NULL, "ns1:addSampleResponse");
+	case SOAP_TYPE_ns1__addSample:
+		return soap_in_ns1__addSample(soap, NULL, NULL, "ns1:addSample");
+	case SOAP_TYPE_ns1__addAuthorisationResponse:
+		return soap_in_ns1__addAuthorisationResponse(soap, NULL, NULL, "ns1:addAuthorisationResponse");
+	case SOAP_TYPE_ns1__addAuthorisation:
+		return soap_in_ns1__addAuthorisation(soap, NULL, NULL, "ns1:addAuthorisation");
+	case SOAP_TYPE_ns1__addDataSetParameterResponse:
+		return soap_in_ns1__addDataSetParameterResponse(soap, NULL, NULL, "ns1:addDataSetParameterResponse");
+	case SOAP_TYPE_ns1__addDataSetParameter:
+		return soap_in_ns1__addDataSetParameter(soap, NULL, NULL, "ns1:addDataSetParameter");
+	case SOAP_TYPE_ns1__createDataFilesResponse:
+		return soap_in_ns1__createDataFilesResponse(soap, NULL, NULL, "ns1:createDataFilesResponse");
+	case SOAP_TYPE_ns1__createDataFiles:
+		return soap_in_ns1__createDataFiles(soap, NULL, NULL, "ns1:createDataFiles");
+	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
+		return soap_in_ns1__modifyInvestigatorResponse(soap, NULL, NULL, "ns1:modifyInvestigatorResponse");
+	case SOAP_TYPE_ns1__modifyInvestigator:
+		return soap_in_ns1__modifyInvestigator(soap, NULL, NULL, "ns1:modifyInvestigator");
+	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
+		return soap_in_ns1__searchByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorResponse");
+	case SOAP_TYPE_ns1__searchByParameterComparator:
+		return soap_in_ns1__searchByParameterComparator(soap, NULL, NULL, "ns1:searchByParameterComparator");
+	case SOAP_TYPE_ns1__modifySampleParameterResponse:
+		return soap_in_ns1__modifySampleParameterResponse(soap, NULL, NULL, "ns1:modifySampleParameterResponse");
+	case SOAP_TYPE_ns1__modifySampleParameter:
+		return soap_in_ns1__modifySampleParameter(soap, NULL, NULL, "ns1:modifySampleParameter");
+	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
+		return soap_in_ns1__listDatafileFormatsResponse(soap, NULL, NULL, "ns1:listDatafileFormatsResponse");
+	case SOAP_TYPE_ns1__listDatafileFormats:
+		return soap_in_ns1__listDatafileFormats(soap, NULL, NULL, "ns1:listDatafileFormats");
+	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
+		return soap_in_ns1__searchByAdvancedPaginationResponse(soap, NULL, NULL, "ns1:searchByAdvancedPaginationResponse");
+	case SOAP_TYPE_ns1__searchByAdvancedPagination:
+		return soap_in_ns1__searchByAdvancedPagination(soap, NULL, NULL, "ns1:searchByAdvancedPagination");
+	case SOAP_TYPE_ns1__searchByAdvancedResponse:
+		return soap_in_ns1__searchByAdvancedResponse(soap, NULL, NULL, "ns1:searchByAdvancedResponse");
+	case SOAP_TYPE_ns1__advancedSearchDetails:
+		return soap_in_ns1__advancedSearchDetails(soap, NULL, NULL, "ns1:advancedSearchDetails");
+	case SOAP_TYPE_ns1__searchByAdvanced:
+		return soap_in_ns1__searchByAdvanced(soap, NULL, NULL, "ns1:searchByAdvanced");
+	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
+		return soap_in_ns1__searchByRunNumberPaginationResponse(soap, NULL, NULL, "ns1:searchByRunNumberPaginationResponse");
+	case SOAP_TYPE_ns1__searchByRunNumberPagination:
+		return soap_in_ns1__searchByRunNumberPagination(soap, NULL, NULL, "ns1:searchByRunNumberPagination");
+	case SOAP_TYPE_ns1__searchByRunNumberResponse:
+		return soap_in_ns1__searchByRunNumberResponse(soap, NULL, NULL, "ns1:searchByRunNumberResponse");
+	case SOAP_TYPE_ns1__searchByRunNumber:
+		return soap_in_ns1__searchByRunNumber(soap, NULL, NULL, "ns1:searchByRunNumber");
+	case SOAP_TYPE_ns1__addDataSetParametersResponse:
+		return soap_in_ns1__addDataSetParametersResponse(soap, NULL, NULL, "ns1:addDataSetParametersResponse");
+	case SOAP_TYPE_ns1__addDataSetParameters:
+		return soap_in_ns1__addDataSetParameters(soap, NULL, NULL, "ns1:addDataSetParameters");
+	case SOAP_TYPE_ns1__deleteKeywordResponse:
+		return soap_in_ns1__deleteKeywordResponse(soap, NULL, NULL, "ns1:deleteKeywordResponse");
+	case SOAP_TYPE_ns1__deleteKeyword:
+		return soap_in_ns1__deleteKeyword(soap, NULL, NULL, "ns1:deleteKeyword");
+	case SOAP_TYPE_ns1__deleteSampleResponse:
+		return soap_in_ns1__deleteSampleResponse(soap, NULL, NULL, "ns1:deleteSampleResponse");
+	case SOAP_TYPE_ns1__deleteSample:
+		return soap_in_ns1__deleteSample(soap, NULL, NULL, "ns1:deleteSample");
+	case SOAP_TYPE_ns1__listDatasetStatusResponse:
+		return soap_in_ns1__listDatasetStatusResponse(soap, NULL, NULL, "ns1:listDatasetStatusResponse");
+	case SOAP_TYPE_ns1__listDatasetStatus:
+		return soap_in_ns1__listDatasetStatus(soap, NULL, NULL, "ns1:listDatasetStatus");
+	case SOAP_TYPE_ns1__modifyInvestigationResponse:
+		return soap_in_ns1__modifyInvestigationResponse(soap, NULL, NULL, "ns1:modifyInvestigationResponse");
+	case SOAP_TYPE_ns1__modifyInvestigation:
+		return soap_in_ns1__modifyInvestigation(soap, NULL, NULL, "ns1:modifyInvestigation");
+	case SOAP_TYPE_ns1__addKeywordResponse:
+		return soap_in_ns1__addKeywordResponse(soap, NULL, NULL, "ns1:addKeywordResponse");
+	case SOAP_TYPE_ns1__addKeyword:
+		return soap_in_ns1__addKeyword(soap, NULL, NULL, "ns1:addKeyword");
+	case SOAP_TYPE_ns1__icatAuthorisation:
+		return soap_in_ns1__icatAuthorisation(soap, NULL, NULL, "ns1:icatAuthorisation");
+	case SOAP_TYPE_ns1__getAuthorisationsResponse:
+		return soap_in_ns1__getAuthorisationsResponse(soap, NULL, NULL, "ns1:getAuthorisationsResponse");
+	case SOAP_TYPE_ns1__getAuthorisations:
+		return soap_in_ns1__getAuthorisations(soap, NULL, NULL, "ns1:getAuthorisations");
+	case SOAP_TYPE_ns1__removeDataSetResponse:
+		return soap_in_ns1__removeDataSetResponse(soap, NULL, NULL, "ns1:removeDataSetResponse");
+	case SOAP_TYPE_ns1__removeDataSet:
+		return soap_in_ns1__removeDataSet(soap, NULL, NULL, "ns1:removeDataSet");
+	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
+		return soap_in_ns1__modifyDataSetParameterResponse(soap, NULL, NULL, "ns1:modifyDataSetParameterResponse");
+	case SOAP_TYPE_ns1__modifyDataSetParameter:
+		return soap_in_ns1__modifyDataSetParameter(soap, NULL, NULL, "ns1:modifyDataSetParameter");
+	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
+		return soap_in_ns1__listInvestigationTypesResponse(soap, NULL, NULL, "ns1:listInvestigationTypesResponse");
+	case SOAP_TYPE_ns1__listInvestigationTypes:
+		return soap_in_ns1__listInvestigationTypes(soap, NULL, NULL, "ns1:listInvestigationTypes");
+	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
+		return soap_in_ns1__getKeywordsForUserTypeResponse(soap, NULL, NULL, "ns1:getKeywordsForUserTypeResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUserType:
+		return soap_in_ns1__getKeywordsForUserType(soap, NULL, NULL, "ns1:getKeywordsForUserType");
+	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
+		return soap_in_ns1__getKeywordsForUserMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserMaxResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUserMax:
+		return soap_in_ns1__getKeywordsForUserMax(soap, NULL, NULL, "ns1:getKeywordsForUserMax");
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
+		return soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMaxResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
+		return soap_in_ns1__getKeywordsForUserStartWithMax(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMax");
+	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
+		return soap_in_ns1__getKeywordsForUserResponse(soap, NULL, NULL, "ns1:getKeywordsForUserResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUser:
+		return soap_in_ns1__getKeywordsForUser(soap, NULL, NULL, "ns1:getKeywordsForUser");
+	case SOAP_TYPE_ns1__downloadDatafileResponse:
+		return soap_in_ns1__downloadDatafileResponse(soap, NULL, NULL, "ns1:downloadDatafileResponse");
+	case SOAP_TYPE_ns1__downloadDatafile:
+		return soap_in_ns1__downloadDatafile(soap, NULL, NULL, "ns1:downloadDatafile");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
+		return soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorsResponse");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
+		return soap_in_ns1__searchDatasetsByParameterComparators(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparators");
+	case SOAP_TYPE_ns1__setDataSetSampleResponse:
+		return soap_in_ns1__setDataSetSampleResponse(soap, NULL, NULL, "ns1:setDataSetSampleResponse");
+	case SOAP_TYPE_ns1__setDataSetSample:
+		return soap_in_ns1__setDataSetSample(soap, NULL, NULL, "ns1:setDataSetSample");
+	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
+		return soap_in_ns1__deleteDataSetParameterResponse(soap, NULL, NULL, "ns1:deleteDataSetParameterResponse");
+	case SOAP_TYPE_ns1__deleteDataSetParameter:
+		return soap_in_ns1__deleteDataSetParameter(soap, NULL, NULL, "ns1:deleteDataSetParameter");
+	case SOAP_TYPE_ns1__removeSampleParameterResponse:
+		return soap_in_ns1__removeSampleParameterResponse(soap, NULL, NULL, "ns1:removeSampleParameterResponse");
+	case SOAP_TYPE_ns1__removeSampleParameter:
+		return soap_in_ns1__removeSampleParameter(soap, NULL, NULL, "ns1:removeSampleParameter");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
+		return soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorResponse");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
+		return soap_in_ns1__searchDatasetsByParameterComparator(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparator");
+	case SOAP_TYPE_ns1__createDataSetResponse:
+		return soap_in_ns1__createDataSetResponse(soap, NULL, NULL, "ns1:createDataSetResponse");
+	case SOAP_TYPE_ns1__createDataSet:
+		return soap_in_ns1__createDataSet(soap, NULL, NULL, "ns1:createDataSet");
+	case SOAP_TYPE_ns1__addInvestigatorResponse:
+		return soap_in_ns1__addInvestigatorResponse(soap, NULL, NULL, "ns1:addInvestigatorResponse");
+	case SOAP_TYPE_ns1__addInvestigator:
+		return soap_in_ns1__addInvestigator(soap, NULL, NULL, "ns1:addInvestigator");
+	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
+		return soap_in_ns1__deleteInvestigatorResponse(soap, NULL, NULL, "ns1:deleteInvestigatorResponse");
+	case SOAP_TYPE_ns1__deleteInvestigator:
+		return soap_in_ns1__deleteInvestigator(soap, NULL, NULL, "ns1:deleteInvestigator");
+	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
+		return soap_in_ns1__getICATAPIVersionResponse(soap, NULL, NULL, "ns1:getICATAPIVersionResponse");
+	case SOAP_TYPE_ns1__getICATAPIVersion:
+		return soap_in_ns1__getICATAPIVersion(soap, NULL, NULL, "ns1:getICATAPIVersion");
+	case SOAP_TYPE_ns1__getDatafilesResponse:
+		return soap_in_ns1__getDatafilesResponse(soap, NULL, NULL, "ns1:getDatafilesResponse");
+	case SOAP_TYPE_ns1__getDatafiles:
+		return soap_in_ns1__getDatafiles(soap, NULL, NULL, "ns1:getDatafiles");
+	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
+		return soap_in_ns1__searchByParameterOperatorResponse(soap, NULL, NULL, "ns1:searchByParameterOperatorResponse");
+	case SOAP_TYPE_ns1__parameterLogicalCondition:
+		return soap_in_ns1__parameterLogicalCondition(soap, NULL, NULL, "ns1:parameterLogicalCondition");
+	case SOAP_TYPE_ns1__searchByParameterOperator:
+		return soap_in_ns1__searchByParameterOperator(soap, NULL, NULL, "ns1:searchByParameterOperator");
+	case SOAP_TYPE_ns1__isSessionValidResponse:
+		return soap_in_ns1__isSessionValidResponse(soap, NULL, NULL, "ns1:isSessionValidResponse");
+	case SOAP_TYPE_ns1__isSessionValid:
+		return soap_in_ns1__isSessionValid(soap, NULL, NULL, "ns1:isSessionValid");
+	case SOAP_TYPE_ns1__deleteDataSetResponse:
+		return soap_in_ns1__deleteDataSetResponse(soap, NULL, NULL, "ns1:deleteDataSetResponse");
+	case SOAP_TYPE_ns1__deleteDataSet:
+		return soap_in_ns1__deleteDataSet(soap, NULL, NULL, "ns1:deleteDataSet");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
+		return soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorResponse");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
+		return soap_in_ns1__searchDatafilesByParameterComparator(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparator");
+	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
+		return soap_in_ns1__getInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationsIncludesResponse");
+	case SOAP_TYPE_ns1__getInvestigationsIncludes:
+		return soap_in_ns1__getInvestigationsIncludes(soap, NULL, NULL, "ns1:getInvestigationsIncludes");
+	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
+		return soap_in_ns1__removeDataFileParameterResponse(soap, NULL, NULL, "ns1:removeDataFileParameterResponse");
+	case SOAP_TYPE_ns1__removeDataFileParameter:
+		return soap_in_ns1__removeDataFileParameter(soap, NULL, NULL, "ns1:removeDataFileParameter");
+	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
+		return soap_in_ns1__searchByUserIDPaginationResponse(soap, NULL, NULL, "ns1:searchByUserIDPaginationResponse");
+	case SOAP_TYPE_ns1__searchByUserIDPagination:
+		return soap_in_ns1__searchByUserIDPagination(soap, NULL, NULL, "ns1:searchByUserIDPagination");
+	case SOAP_TYPE_ns1__searchByUserIDResponse:
+		return soap_in_ns1__searchByUserIDResponse(soap, NULL, NULL, "ns1:searchByUserIDResponse");
+	case SOAP_TYPE_ns1__searchByUserID:
+		return soap_in_ns1__searchByUserID(soap, NULL, NULL, "ns1:searchByUserID");
+	case SOAP_TYPE_ns1__modifyPublicationResponse:
+		return soap_in_ns1__modifyPublicationResponse(soap, NULL, NULL, "ns1:modifyPublicationResponse");
+	case SOAP_TYPE_ns1__modifyPublication:
+		return soap_in_ns1__modifyPublication(soap, NULL, NULL, "ns1:modifyPublication");
+	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
+		return soap_in_ns1__removeDataSetParameterResponse(soap, NULL, NULL, "ns1:removeDataSetParameterResponse");
+	case SOAP_TYPE_ns1__removeDataSetParameter:
+		return soap_in_ns1__removeDataSetParameter(soap, NULL, NULL, "ns1:removeDataSetParameter");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
+		return soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPaginationResponse");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
+		return soap_in_ns1__getMyInvestigationsIncludesPagination(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPagination");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
+		return soap_in_ns1__getMyInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesResponse");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
+		return soap_in_ns1__getMyInvestigationsIncludes(soap, NULL, NULL, "ns1:getMyInvestigationsIncludes");
+	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
+		return soap_in_ns1__getMyInvestigationsResponse(soap, NULL, NULL, "ns1:getMyInvestigationsResponse");
+	case SOAP_TYPE_ns1__getMyInvestigations:
+		return soap_in_ns1__getMyInvestigations(soap, NULL, NULL, "ns1:getMyInvestigations");
+	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
+		return soap_in_ns1__searchByKeywordsAllResponse(soap, NULL, NULL, "ns1:searchByKeywordsAllResponse");
+	case SOAP_TYPE_ns1__keywordDetails:
+		return soap_in_ns1__keywordDetails(soap, NULL, NULL, "ns1:keywordDetails");
+	case SOAP_TYPE_ns1__searchByKeywordsAll:
+		return soap_in_ns1__searchByKeywordsAll(soap, NULL, NULL, "ns1:searchByKeywordsAll");
+	case SOAP_TYPE_ns1__searchByKeywordsResponse:
+		return soap_in_ns1__searchByKeywordsResponse(soap, NULL, NULL, "ns1:searchByKeywordsResponse");
+	case SOAP_TYPE_ns1__searchByKeywords:
+		return soap_in_ns1__searchByKeywords(soap, NULL, NULL, "ns1:searchByKeywords");
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
+		return soap_in_ns1__checkDatasetDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatasetDownloadAccessResponse");
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
+		return soap_in_ns1__checkDatasetDownloadAccess(soap, NULL, NULL, "ns1:checkDatasetDownloadAccess");
+	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
+		return soap_in_ns1__searchByUserSurnamePaginationResponse(soap, NULL, NULL, "ns1:searchByUserSurnamePaginationResponse");
+	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
+		return soap_in_ns1__searchByUserSurnamePagination(soap, NULL, NULL, "ns1:searchByUserSurnamePagination");
+	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
+		return soap_in_ns1__searchByUserSurnameResponse(soap, NULL, NULL, "ns1:searchByUserSurnameResponse");
+	case SOAP_TYPE_ns1__searchByUserSurname:
+		return soap_in_ns1__searchByUserSurname(soap, NULL, NULL, "ns1:searchByUserSurname");
+	case SOAP_TYPE_ns1__deleteDataFileResponse:
+		return soap_in_ns1__deleteDataFileResponse(soap, NULL, NULL, "ns1:deleteDataFileResponse");
+	case SOAP_TYPE_ns1__deleteDataFile:
+		return soap_in_ns1__deleteDataFile(soap, NULL, NULL, "ns1:deleteDataFile");
+	case SOAP_TYPE_ns1__downloadInfo:
+		return soap_in_ns1__downloadInfo(soap, NULL, NULL, "ns1:downloadInfo");
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
+		return soap_in_ns1__checkDatafileDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatafileDownloadAccessResponse");
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
+		return soap_in_ns1__checkDatafileDownloadAccess(soap, NULL, NULL, "ns1:checkDatafileDownloadAccess");
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
+		return soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserIdResponse");
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
+		return soap_in_ns1__getFacilityUserByFacilityUserId(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserId");
+	case SOAP_TYPE_ns1__addSampleParameterResponse:
+		return soap_in_ns1__addSampleParameterResponse(soap, NULL, NULL, "ns1:addSampleParameterResponse");
+	case SOAP_TYPE_ns1__addSampleParameter:
+		return soap_in_ns1__addSampleParameter(soap, NULL, NULL, "ns1:addSampleParameter");
+	case SOAP_TYPE_ns1__modifyDataSetResponse:
+		return soap_in_ns1__modifyDataSetResponse(soap, NULL, NULL, "ns1:modifyDataSetResponse");
+	case SOAP_TYPE_ns1__modifyDataSet:
+		return soap_in_ns1__modifyDataSet(soap, NULL, NULL, "ns1:modifyDataSet");
+	case SOAP_TYPE_ns1__downloadDatafilesResponse:
+		return soap_in_ns1__downloadDatafilesResponse(soap, NULL, NULL, "ns1:downloadDatafilesResponse");
+	case SOAP_TYPE_ns1__downloadDatafiles:
+		return soap_in_ns1__downloadDatafiles(soap, NULL, NULL, "ns1:downloadDatafiles");
+	case SOAP_TYPE_ns1__NoSuchUserException:
+		return soap_in_ns1__NoSuchUserException(soap, NULL, NULL, "ns1:NoSuchUserException");
+	case SOAP_TYPE_ns1__userDetails:
+		return soap_in_ns1__userDetails(soap, NULL, NULL, "ns1:userDetails");
+	case SOAP_TYPE_ns1__getUserDetailsResponse:
+		return soap_in_ns1__getUserDetailsResponse(soap, NULL, NULL, "ns1:getUserDetailsResponse");
+	case SOAP_TYPE_ns1__getUserDetails:
+		return soap_in_ns1__getUserDetails(soap, NULL, NULL, "ns1:getUserDetails");
+	case SOAP_TYPE_ns1__getAllKeywordsResponse:
+		return soap_in_ns1__getAllKeywordsResponse(soap, NULL, NULL, "ns1:getAllKeywordsResponse");
+	case SOAP_TYPE_ns1__getAllKeywords:
+		return soap_in_ns1__getAllKeywords(soap, NULL, NULL, "ns1:getAllKeywords");
+	case SOAP_TYPE_ns1__removePublicationResponse:
+		return soap_in_ns1__removePublicationResponse(soap, NULL, NULL, "ns1:removePublicationResponse");
+	case SOAP_TYPE_ns1__removePublication:
+		return soap_in_ns1__removePublication(soap, NULL, NULL, "ns1:removePublication");
+	case SOAP_TYPE_ns1__createDataSetsResponse:
+		return soap_in_ns1__createDataSetsResponse(soap, NULL, NULL, "ns1:createDataSetsResponse");
+	case SOAP_TYPE_ns1__createDataSets:
+		return soap_in_ns1__createDataSets(soap, NULL, NULL, "ns1:createDataSets");
+	case SOAP_TYPE_ns1__deleteInvestigationResponse:
+		return soap_in_ns1__deleteInvestigationResponse(soap, NULL, NULL, "ns1:deleteInvestigationResponse");
+	case SOAP_TYPE_ns1__deleteInvestigation:
+		return soap_in_ns1__deleteInvestigation(soap, NULL, NULL, "ns1:deleteInvestigation");
+	case SOAP_TYPE_ns1__removeKeywordResponse:
+		return soap_in_ns1__removeKeywordResponse(soap, NULL, NULL, "ns1:removeKeywordResponse");
+	case SOAP_TYPE_ns1__removeKeyword:
+		return soap_in_ns1__removeKeyword(soap, NULL, NULL, "ns1:removeKeyword");
+	case SOAP_TYPE_ns1__removeInvestigatorResponse:
+		return soap_in_ns1__removeInvestigatorResponse(soap, NULL, NULL, "ns1:removeInvestigatorResponse");
+	case SOAP_TYPE_ns1__removeInvestigator:
+		return soap_in_ns1__removeInvestigator(soap, NULL, NULL, "ns1:removeInvestigator");
+	case SOAP_TYPE_ns1__removeInvestigationResponse:
+		return soap_in_ns1__removeInvestigationResponse(soap, NULL, NULL, "ns1:removeInvestigationResponse");
+	case SOAP_TYPE_ns1__removeInvestigation:
+		return soap_in_ns1__removeInvestigation(soap, NULL, NULL, "ns1:removeInvestigation");
+	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
+		return soap_in_ns1__getFacilityUserByFederalIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFederalIdResponse");
+	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
+		return soap_in_ns1__getFacilityUserByFederalId(soap, NULL, NULL, "ns1:getFacilityUserByFederalId");
+	case SOAP_TYPE_ns1__downloadDatasetResponse:
+		return soap_in_ns1__downloadDatasetResponse(soap, NULL, NULL, "ns1:downloadDatasetResponse");
+	case SOAP_TYPE_ns1__downloadDataset:
+		return soap_in_ns1__downloadDataset(soap, NULL, NULL, "ns1:downloadDataset");
+	case SOAP_TYPE_ns1__logoutResponse:
+		return soap_in_ns1__logoutResponse(soap, NULL, NULL, "ns1:logoutResponse");
+	case SOAP_TYPE_ns1__logout:
+		return soap_in_ns1__logout(soap, NULL, NULL, "ns1:logout");
+	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
+		return soap_in_ns1__listFacilityCyclesResponse(soap, NULL, NULL, "ns1:listFacilityCyclesResponse");
+	case SOAP_TYPE_ns1__listFacilityCycles:
+		return soap_in_ns1__listFacilityCycles(soap, NULL, NULL, "ns1:listFacilityCycles");
+	case SOAP_TYPE_ns1__addDataFileParametersResponse:
+		return soap_in_ns1__addDataFileParametersResponse(soap, NULL, NULL, "ns1:addDataFileParametersResponse");
+	case SOAP_TYPE_ns1__addDataFileParameters:
+		return soap_in_ns1__addDataFileParameters(soap, NULL, NULL, "ns1:addDataFileParameters");
+	case SOAP_TYPE_ns1__removeAuthorisationResponse:
+		return soap_in_ns1__removeAuthorisationResponse(soap, NULL, NULL, "ns1:removeAuthorisationResponse");
+	case SOAP_TYPE_ns1__removeAuthorisation:
+		return soap_in_ns1__removeAuthorisation(soap, NULL, NULL, "ns1:removeAuthorisation");
+	case SOAP_TYPE_ns1__removeDataFileResponse:
+		return soap_in_ns1__removeDataFileResponse(soap, NULL, NULL, "ns1:removeDataFileResponse");
+	case SOAP_TYPE_ns1__removeDataFile:
+		return soap_in_ns1__removeDataFile(soap, NULL, NULL, "ns1:removeDataFile");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
+		return soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorsResponse");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
+		return soap_in_ns1__searchDatafilesByParameterComparators(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparators");
+	case SOAP_TYPE_ns1__ParameterSearchException:
+		return soap_in_ns1__ParameterSearchException(soap, NULL, NULL, "ns1:ParameterSearchException");
+	case SOAP_TYPE_ns1__shiftPK:
+		return soap_in_ns1__shiftPK(soap, NULL, NULL, "ns1:shiftPK");
+	case SOAP_TYPE_ns1__shift:
+		return soap_in_ns1__shift(soap, NULL, NULL, "ns1:shift");
+	case SOAP_TYPE_ns1__publication:
+		return soap_in_ns1__publication(soap, NULL, NULL, "ns1:publication");
+	case SOAP_TYPE_ns1__keywordPK:
+		return soap_in_ns1__keywordPK(soap, NULL, NULL, "ns1:keywordPK");
+	case SOAP_TYPE_ns1__keyword:
+		return soap_in_ns1__keyword(soap, NULL, NULL, "ns1:keyword");
+	case SOAP_TYPE_ns1__investigatorPK:
+		return soap_in_ns1__investigatorPK(soap, NULL, NULL, "ns1:investigatorPK");
+	case SOAP_TYPE_ns1__facilityUser:
+		return soap_in_ns1__facilityUser(soap, NULL, NULL, "ns1:facilityUser");
+	case SOAP_TYPE_ns1__investigator:
+		return soap_in_ns1__investigator(soap, NULL, NULL, "ns1:investigator");
+	case SOAP_TYPE_ns1__facilityCycle:
+		return soap_in_ns1__facilityCycle(soap, NULL, NULL, "ns1:facilityCycle");
+	case SOAP_TYPE_ns1__datasetParameterPK:
+		return soap_in_ns1__datasetParameterPK(soap, NULL, NULL, "ns1:datasetParameterPK");
+	case SOAP_TYPE_ns1__datasetParameter:
+		return soap_in_ns1__datasetParameter(soap, NULL, NULL, "ns1:datasetParameter");
+	case SOAP_TYPE_ns1__dataset:
+		return soap_in_ns1__dataset(soap, NULL, NULL, "ns1:dataset");
+	case SOAP_TYPE_ns1__investigation:
+		return soap_in_ns1__investigation(soap, NULL, NULL, "ns1:investigation");
+	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
+		return soap_in_ns1__searchByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorsResponse");
+	case SOAP_TYPE_ns1__parameterPK:
+		return soap_in_ns1__parameterPK(soap, NULL, NULL, "ns1:parameterPK");
+	case SOAP_TYPE_ns1__parameter:
+		return soap_in_ns1__parameter(soap, NULL, NULL, "ns1:parameter");
+	case SOAP_TYPE_ns1__parameterValued:
+		return soap_in_ns1__parameterValued(soap, NULL, NULL, "ns1:parameterValued");
+	case SOAP_TYPE_ns1__parameterCondition:
+		return soap_in_ns1__parameterCondition(soap, NULL, NULL, "ns1:parameterCondition");
+	case SOAP_TYPE_ns1__parameterComparisonCondition:
+		return soap_in_ns1__parameterComparisonCondition(soap, NULL, NULL, "ns1:parameterComparisonCondition");
+	case SOAP_TYPE_ns1__searchByParameterComparators:
+		return soap_in_ns1__searchByParameterComparators(soap, NULL, NULL, "ns1:searchByParameterComparators");
+	case SOAP_TYPE_ns1__modifySampleResponse:
+		return soap_in_ns1__modifySampleResponse(soap, NULL, NULL, "ns1:modifySampleResponse");
+	case SOAP_TYPE_ns1__modifySample:
+		return soap_in_ns1__modifySample(soap, NULL, NULL, "ns1:modifySample");
+	case SOAP_TYPE_ns1__ValidationException:
+		return soap_in_ns1__ValidationException(soap, NULL, NULL, "ns1:ValidationException");
+	case SOAP_TYPE_ns1__createDataFileResponse:
+		return soap_in_ns1__createDataFileResponse(soap, NULL, NULL, "ns1:createDataFileResponse");
+	case SOAP_TYPE_ns1__relatedDatafilesPK:
+		return soap_in_ns1__relatedDatafilesPK(soap, NULL, NULL, "ns1:relatedDatafilesPK");
+	case SOAP_TYPE_ns1__relatedDatafiles:
+		return soap_in_ns1__relatedDatafiles(soap, NULL, NULL, "ns1:relatedDatafiles");
+	case SOAP_TYPE_ns1__datafileParameterPK:
+		return soap_in_ns1__datafileParameterPK(soap, NULL, NULL, "ns1:datafileParameterPK");
+	case SOAP_TYPE_ns1__datafileParameter:
+		return soap_in_ns1__datafileParameter(soap, NULL, NULL, "ns1:datafileParameter");
+	case SOAP_TYPE_ns1__datafileFormatPK:
+		return soap_in_ns1__datafileFormatPK(soap, NULL, NULL, "ns1:datafileFormatPK");
+	case SOAP_TYPE_ns1__datafileFormat:
+		return soap_in_ns1__datafileFormat(soap, NULL, NULL, "ns1:datafileFormat");
+	case SOAP_TYPE_ns1__datafile:
+		return soap_in_ns1__datafile(soap, NULL, NULL, "ns1:datafile");
+	case SOAP_TYPE_ns1__createDataFile:
+		return soap_in_ns1__createDataFile(soap, NULL, NULL, "ns1:createDataFile");
+	case SOAP_TYPE_ns1__listInstrumentsResponse:
+		return soap_in_ns1__listInstrumentsResponse(soap, NULL, NULL, "ns1:listInstrumentsResponse");
+	case SOAP_TYPE_ns1__listInstruments:
+		return soap_in_ns1__listInstruments(soap, NULL, NULL, "ns1:listInstruments");
+	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
+		return soap_in_ns1__NoSuchObjectFoundException(soap, NULL, NULL, "ns1:NoSuchObjectFoundException");
+	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
+		return soap_in_ns1__InsufficientPrivilegesException(soap, NULL, NULL, "ns1:InsufficientPrivilegesException");
+	case SOAP_TYPE_ns1__removeSampleResponse:
+		return soap_in_ns1__removeSampleResponse(soap, NULL, NULL, "ns1:removeSampleResponse");
+	case SOAP_TYPE_ns1__removeSample:
+		return soap_in_ns1__removeSample(soap, NULL, NULL, "ns1:removeSample");
+	case SOAP_TYPE_ns1__icatRole:
+		return soap_in_ns1__icatRole(soap, NULL, NULL, "ns1:icatRole");
+	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
+		return soap_in_ns1__entityPrimaryKeyBaseBean(soap, NULL, NULL, "ns1:entityPrimaryKeyBaseBean");
+	case SOAP_TYPE_ns1__sampleParameterPK:
+		return soap_in_ns1__sampleParameterPK(soap, NULL, NULL, "ns1:sampleParameterPK");
+	case SOAP_TYPE_ns1__sampleParameter:
+		return soap_in_ns1__sampleParameter(soap, NULL, NULL, "ns1:sampleParameter");
+	case SOAP_TYPE_ns1__entityBaseBean:
+		return soap_in_ns1__entityBaseBean(soap, NULL, NULL, "ns1:entityBaseBean");
+	case SOAP_TYPE_ns1__sample:
+		return soap_in_ns1__sample(soap, NULL, NULL, "ns1:sample");
+	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
+		return soap_in_ns1__searchSamplesBySampleNameResponse(soap, NULL, NULL, "ns1:searchSamplesBySampleNameResponse");
+	case SOAP_TYPE_ns1__searchSamplesBySampleName:
+		return soap_in_ns1__searchSamplesBySampleName(soap, NULL, NULL, "ns1:searchSamplesBySampleName");
+	case SOAP_TYPE_ns1__SessionException:
+		return soap_in_ns1__SessionException(soap, NULL, NULL, "ns1:SessionException");
+	case SOAP_TYPE_ns1__listDatasetTypesResponse:
+		return soap_in_ns1__listDatasetTypesResponse(soap, NULL, NULL, "ns1:listDatasetTypesResponse");
+	case SOAP_TYPE_ns1__listDatasetTypes:
+		return soap_in_ns1__listDatasetTypes(soap, NULL, NULL, "ns1:listDatasetTypes");
+	case SOAP_TYPE_std__string:
+		return soap_in_std__string(soap, NULL, NULL, "xsd:string");
+	case SOAP_TYPE_xsd__string:
+		return soap_in_xsd__string(soap, NULL, NULL, "xsd:string");
+	case SOAP_TYPE_xsd__long:
+		return soap_in_xsd__long(soap, NULL, NULL, "xsd:long");
+	case SOAP_TYPE_xsd__int:
+		return soap_in_xsd__int(soap, NULL, NULL, "xsd:int");
+	case SOAP_TYPE_xsd__float:
+		return soap_in_xsd__float(soap, NULL, NULL, "xsd:float");
+	case SOAP_TYPE_xsd__double:
+		return soap_in_xsd__double(soap, NULL, NULL, "xsd:double");
+	case SOAP_TYPE_xsd__dateTime:
+		return soap_in_xsd__dateTime(soap, NULL, NULL, "xsd:dateTime");
+	case SOAP_TYPE_xsd__boolean:
+		return soap_in_xsd__boolean(soap, NULL, NULL, "xsd:boolean");
+	case SOAP_TYPE_xsd__anyType:
+		return soap_in_xsd__anyType(soap, NULL, NULL, "xsd:anyType");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse:
+		return soap_in_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorsResponse");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators:
+		return soap_in_PointerTons1__searchDatafilesByParameterComparators(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparators");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse:
+		return soap_in_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparatorResponse");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator:
+		return soap_in_PointerTons1__searchDatafilesByParameterComparator(soap, NULL, NULL, "ns1:searchDatafilesByParameterComparator");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse:
+		return soap_in_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorsResponse");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators:
+		return soap_in_PointerTons1__searchDatasetsByParameterComparators(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparators");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse:
+		return soap_in_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparatorResponse");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator:
+		return soap_in_PointerTons1__searchDatasetsByParameterComparator(soap, NULL, NULL, "ns1:searchDatasetsByParameterComparator");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse:
+		return soap_in_PointerTons1__searchByParameterComparatorsResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorsResponse");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparators:
+		return soap_in_PointerTons1__searchByParameterComparators(soap, NULL, NULL, "ns1:searchByParameterComparators");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse:
+		return soap_in_PointerTons1__searchByParameterComparatorResponse(soap, NULL, NULL, "ns1:searchByParameterComparatorResponse");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparator:
+		return soap_in_PointerTons1__searchByParameterComparator(soap, NULL, NULL, "ns1:searchByParameterComparator");
+	case SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse:
+		return soap_in_PointerTons1__searchByParameterOperatorResponse(soap, NULL, NULL, "ns1:searchByParameterOperatorResponse");
+	case SOAP_TYPE_PointerTons1__searchByParameterOperator:
+		return soap_in_PointerTons1__searchByParameterOperator(soap, NULL, NULL, "ns1:searchByParameterOperator");
+	case SOAP_TYPE_PointerTons1__isSessionValidResponse:
+		return soap_in_PointerTons1__isSessionValidResponse(soap, NULL, NULL, "ns1:isSessionValidResponse");
+	case SOAP_TYPE_PointerTons1__isSessionValid:
+		return soap_in_PointerTons1__isSessionValid(soap, NULL, NULL, "ns1:isSessionValid");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse:
+		return soap_in_PointerTons1__getFacilityUserByFederalIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFederalIdResponse");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalId:
+		return soap_in_PointerTons1__getFacilityUserByFederalId(soap, NULL, NULL, "ns1:getFacilityUserByFederalId");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse:
+		return soap_in_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserIdResponse");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId:
+		return soap_in_PointerTons1__getFacilityUserByFacilityUserId(soap, NULL, NULL, "ns1:getFacilityUserByFacilityUserId");
+	case SOAP_TYPE_PointerTons1__getICATAPIVersionResponse:
+		return soap_in_PointerTons1__getICATAPIVersionResponse(soap, NULL, NULL, "ns1:getICATAPIVersionResponse");
+	case SOAP_TYPE_PointerTons1__getICATAPIVersion:
+		return soap_in_PointerTons1__getICATAPIVersion(soap, NULL, NULL, "ns1:getICATAPIVersion");
+	case SOAP_TYPE_PointerTons1__ingestMetadataResponse:
+		return soap_in_PointerTons1__ingestMetadataResponse(soap, NULL, NULL, "ns1:ingestMetadataResponse");
+	case SOAP_TYPE_PointerTons1__ingestMetadata:
+		return soap_in_PointerTons1__ingestMetadata(soap, NULL, NULL, "ns1:ingestMetadata");
+	case SOAP_TYPE_PointerTons1__removeDataSetParameterResponse:
+		return soap_in_PointerTons1__removeDataSetParameterResponse(soap, NULL, NULL, "ns1:removeDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__removeDataSetParameter:
+		return soap_in_PointerTons1__removeDataSetParameter(soap, NULL, NULL, "ns1:removeDataSetParameter");
+	case SOAP_TYPE_PointerTons1__removeDataSetResponse:
+		return soap_in_PointerTons1__removeDataSetResponse(soap, NULL, NULL, "ns1:removeDataSetResponse");
+	case SOAP_TYPE_PointerTons1__removeDataSet:
+		return soap_in_PointerTons1__removeDataSet(soap, NULL, NULL, "ns1:removeDataSet");
+	case SOAP_TYPE_PointerTons1__addDataSetParametersResponse:
+		return soap_in_PointerTons1__addDataSetParametersResponse(soap, NULL, NULL, "ns1:addDataSetParametersResponse");
+	case SOAP_TYPE_PointerTons1__addDataSetParameters:
+		return soap_in_PointerTons1__addDataSetParameters(soap, NULL, NULL, "ns1:addDataSetParameters");
+	case SOAP_TYPE_PointerTons1__addDataSetParameterResponse:
+		return soap_in_PointerTons1__addDataSetParameterResponse(soap, NULL, NULL, "ns1:addDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__addDataSetParameter:
+		return soap_in_PointerTons1__addDataSetParameter(soap, NULL, NULL, "ns1:addDataSetParameter");
+	case SOAP_TYPE_PointerTons1__setDataSetSampleResponse:
+		return soap_in_PointerTons1__setDataSetSampleResponse(soap, NULL, NULL, "ns1:setDataSetSampleResponse");
+	case SOAP_TYPE_PointerTons1__setDataSetSample:
+		return soap_in_PointerTons1__setDataSetSample(soap, NULL, NULL, "ns1:setDataSetSample");
+	case SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse:
+		return soap_in_PointerTons1__modifyDataSetParameterResponse(soap, NULL, NULL, "ns1:modifyDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataSetParameter:
+		return soap_in_PointerTons1__modifyDataSetParameter(soap, NULL, NULL, "ns1:modifyDataSetParameter");
+	case SOAP_TYPE_PointerTons1__modifyDataSetResponse:
+		return soap_in_PointerTons1__modifyDataSetResponse(soap, NULL, NULL, "ns1:modifyDataSetResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataSet:
+		return soap_in_PointerTons1__modifyDataSet(soap, NULL, NULL, "ns1:modifyDataSet");
+	case SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse:
+		return soap_in_PointerTons1__deleteDataSetParameterResponse(soap, NULL, NULL, "ns1:deleteDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataSetParameter:
+		return soap_in_PointerTons1__deleteDataSetParameter(soap, NULL, NULL, "ns1:deleteDataSetParameter");
+	case SOAP_TYPE_PointerTons1__deleteDataSetResponse:
+		return soap_in_PointerTons1__deleteDataSetResponse(soap, NULL, NULL, "ns1:deleteDataSetResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataSet:
+		return soap_in_PointerTons1__deleteDataSet(soap, NULL, NULL, "ns1:deleteDataSet");
+	case SOAP_TYPE_PointerTons1__createDataSetsResponse:
+		return soap_in_PointerTons1__createDataSetsResponse(soap, NULL, NULL, "ns1:createDataSetsResponse");
+	case SOAP_TYPE_PointerTons1__createDataSets:
+		return soap_in_PointerTons1__createDataSets(soap, NULL, NULL, "ns1:createDataSets");
+	case SOAP_TYPE_PointerTons1__createDataSetResponse:
+		return soap_in_PointerTons1__createDataSetResponse(soap, NULL, NULL, "ns1:createDataSetResponse");
+	case SOAP_TYPE_PointerTons1__createDataSet:
+		return soap_in_PointerTons1__createDataSet(soap, NULL, NULL, "ns1:createDataSet");
+	case SOAP_TYPE_PointerTons1__getDatasetsResponse:
+		return soap_in_PointerTons1__getDatasetsResponse(soap, NULL, NULL, "ns1:getDatasetsResponse");
+	case SOAP_TYPE_PointerTons1__getDatasets:
+		return soap_in_PointerTons1__getDatasets(soap, NULL, NULL, "ns1:getDatasets");
+	case SOAP_TYPE_PointerTons1__listDatafileFormatsResponse:
+		return soap_in_PointerTons1__listDatafileFormatsResponse(soap, NULL, NULL, "ns1:listDatafileFormatsResponse");
+	case SOAP_TYPE_PointerTons1__listDatafileFormats:
+		return soap_in_PointerTons1__listDatafileFormats(soap, NULL, NULL, "ns1:listDatafileFormats");
+	case SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse:
+		return soap_in_PointerTons1__searchByRunNumberPaginationResponse(soap, NULL, NULL, "ns1:searchByRunNumberPaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByRunNumberPagination:
+		return soap_in_PointerTons1__searchByRunNumberPagination(soap, NULL, NULL, "ns1:searchByRunNumberPagination");
+	case SOAP_TYPE_PointerTons1__searchByRunNumberResponse:
+		return soap_in_PointerTons1__searchByRunNumberResponse(soap, NULL, NULL, "ns1:searchByRunNumberResponse");
+	case SOAP_TYPE_PointerTons1__searchByRunNumber:
+		return soap_in_PointerTons1__searchByRunNumber(soap, NULL, NULL, "ns1:searchByRunNumber");
+	case SOAP_TYPE_PointerTons1__listDatasetStatusResponse:
+		return soap_in_PointerTons1__listDatasetStatusResponse(soap, NULL, NULL, "ns1:listDatasetStatusResponse");
+	case SOAP_TYPE_PointerTons1__listDatasetStatus:
+		return soap_in_PointerTons1__listDatasetStatus(soap, NULL, NULL, "ns1:listDatasetStatus");
+	case SOAP_TYPE_PointerTons1__listDatasetTypesResponse:
+		return soap_in_PointerTons1__listDatasetTypesResponse(soap, NULL, NULL, "ns1:listDatasetTypesResponse");
+	case SOAP_TYPE_PointerTons1__listDatasetTypes:
+		return soap_in_PointerTons1__listDatasetTypes(soap, NULL, NULL, "ns1:listDatasetTypes");
+	case SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse:
+		return soap_in_PointerTons1__searchDatasetsBySampleResponse(soap, NULL, NULL, "ns1:searchDatasetsBySampleResponse");
+	case SOAP_TYPE_PointerTons1__searchDatasetsBySample:
+		return soap_in_PointerTons1__searchDatasetsBySample(soap, NULL, NULL, "ns1:searchDatasetsBySample");
+	case SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse:
+		return soap_in_PointerTons1__searchSamplesBySampleNameResponse(soap, NULL, NULL, "ns1:searchSamplesBySampleNameResponse");
+	case SOAP_TYPE_PointerTons1__searchSamplesBySampleName:
+		return soap_in_PointerTons1__searchSamplesBySampleName(soap, NULL, NULL, "ns1:searchSamplesBySampleName");
+	case SOAP_TYPE_PointerTons1__listInvestigationTypesResponse:
+		return soap_in_PointerTons1__listInvestigationTypesResponse(soap, NULL, NULL, "ns1:listInvestigationTypesResponse");
+	case SOAP_TYPE_PointerTons1__listInvestigationTypes:
+		return soap_in_PointerTons1__listInvestigationTypes(soap, NULL, NULL, "ns1:listInvestigationTypes");
+	case SOAP_TYPE_PointerTons1__listFacilityCyclesResponse:
+		return soap_in_PointerTons1__listFacilityCyclesResponse(soap, NULL, NULL, "ns1:listFacilityCyclesResponse");
+	case SOAP_TYPE_PointerTons1__listFacilityCycles:
+		return soap_in_PointerTons1__listFacilityCycles(soap, NULL, NULL, "ns1:listFacilityCycles");
+	case SOAP_TYPE_PointerTons1__listParametersResponse:
+		return soap_in_PointerTons1__listParametersResponse(soap, NULL, NULL, "ns1:listParametersResponse");
+	case SOAP_TYPE_PointerTons1__listParameters:
+		return soap_in_PointerTons1__listParameters(soap, NULL, NULL, "ns1:listParameters");
+	case SOAP_TYPE_PointerTons1__listRolesResponse:
+		return soap_in_PointerTons1__listRolesResponse(soap, NULL, NULL, "ns1:listRolesResponse");
+	case SOAP_TYPE_PointerTons1__listRoles:
+		return soap_in_PointerTons1__listRoles(soap, NULL, NULL, "ns1:listRoles");
+	case SOAP_TYPE_PointerTons1__listInstrumentsResponse:
+		return soap_in_PointerTons1__listInstrumentsResponse(soap, NULL, NULL, "ns1:listInstrumentsResponse");
+	case SOAP_TYPE_PointerTons1__listInstruments:
+		return soap_in_PointerTons1__listInstruments(soap, NULL, NULL, "ns1:listInstruments");
+	case SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse:
+		return soap_in_PointerTons1__searchByUserSurnamePaginationResponse(soap, NULL, NULL, "ns1:searchByUserSurnamePaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserSurnamePagination:
+		return soap_in_PointerTons1__searchByUserSurnamePagination(soap, NULL, NULL, "ns1:searchByUserSurnamePagination");
+	case SOAP_TYPE_PointerTons1__searchByUserSurnameResponse:
+		return soap_in_PointerTons1__searchByUserSurnameResponse(soap, NULL, NULL, "ns1:searchByUserSurnameResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserSurname:
+		return soap_in_PointerTons1__searchByUserSurname(soap, NULL, NULL, "ns1:searchByUserSurname");
+	case SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse:
+		return soap_in_PointerTons1__searchByUserIDPaginationResponse(soap, NULL, NULL, "ns1:searchByUserIDPaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserIDPagination:
+		return soap_in_PointerTons1__searchByUserIDPagination(soap, NULL, NULL, "ns1:searchByUserIDPagination");
+	case SOAP_TYPE_PointerTons1__searchByUserIDResponse:
+		return soap_in_PointerTons1__searchByUserIDResponse(soap, NULL, NULL, "ns1:searchByUserIDResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserID:
+		return soap_in_PointerTons1__searchByUserID(soap, NULL, NULL, "ns1:searchByUserID");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse:
+		return soap_in_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPaginationResponse");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination:
+		return soap_in_PointerTons1__getMyInvestigationsIncludesPagination(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesPagination");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse:
+		return soap_in_PointerTons1__getMyInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getMyInvestigationsIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes:
+		return soap_in_PointerTons1__getMyInvestigationsIncludes(soap, NULL, NULL, "ns1:getMyInvestigationsIncludes");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsResponse:
+		return soap_in_PointerTons1__getMyInvestigationsResponse(soap, NULL, NULL, "ns1:getMyInvestigationsResponse");
+	case SOAP_TYPE_PointerTons1__getMyInvestigations:
+		return soap_in_PointerTons1__getMyInvestigations(soap, NULL, NULL, "ns1:getMyInvestigations");
+	case SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse:
+		return soap_in_PointerTons1__searchByKeywordsAllResponse(soap, NULL, NULL, "ns1:searchByKeywordsAllResponse");
+	case SOAP_TYPE_PointerTons1__searchByKeywordsAll:
+		return soap_in_PointerTons1__searchByKeywordsAll(soap, NULL, NULL, "ns1:searchByKeywordsAll");
+	case SOAP_TYPE_PointerTons1__searchByKeywordsResponse:
+		return soap_in_PointerTons1__searchByKeywordsResponse(soap, NULL, NULL, "ns1:searchByKeywordsResponse");
+	case SOAP_TYPE_PointerTons1__searchByKeywords:
+		return soap_in_PointerTons1__searchByKeywords(soap, NULL, NULL, "ns1:searchByKeywords");
+	case SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse:
+		return soap_in_PointerTons1__searchByAdvancedPaginationResponse(soap, NULL, NULL, "ns1:searchByAdvancedPaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByAdvancedPagination:
+		return soap_in_PointerTons1__searchByAdvancedPagination(soap, NULL, NULL, "ns1:searchByAdvancedPagination");
+	case SOAP_TYPE_PointerTons1__searchByAdvancedResponse:
+		return soap_in_PointerTons1__searchByAdvancedResponse(soap, NULL, NULL, "ns1:searchByAdvancedResponse");
+	case SOAP_TYPE_PointerTons1__searchByAdvanced:
+		return soap_in_PointerTons1__searchByAdvanced(soap, NULL, NULL, "ns1:searchByAdvanced");
+	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse:
+		return soap_in_PointerTons1__checkDatasetDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatasetDownloadAccessResponse");
+	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess:
+		return soap_in_PointerTons1__checkDatasetDownloadAccess(soap, NULL, NULL, "ns1:checkDatasetDownloadAccess");
+	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse:
+		return soap_in_PointerTons1__checkDatafileDownloadAccessResponse(soap, NULL, NULL, "ns1:checkDatafileDownloadAccessResponse");
+	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess:
+		return soap_in_PointerTons1__checkDatafileDownloadAccess(soap, NULL, NULL, "ns1:checkDatafileDownloadAccess");
+	case SOAP_TYPE_PointerTons1__downloadDatasetResponse:
+		return soap_in_PointerTons1__downloadDatasetResponse(soap, NULL, NULL, "ns1:downloadDatasetResponse");
+	case SOAP_TYPE_PointerTons1__downloadDataset:
+		return soap_in_PointerTons1__downloadDataset(soap, NULL, NULL, "ns1:downloadDataset");
+	case SOAP_TYPE_PointerTons1__downloadDatafilesResponse:
+		return soap_in_PointerTons1__downloadDatafilesResponse(soap, NULL, NULL, "ns1:downloadDatafilesResponse");
+	case SOAP_TYPE_PointerTons1__downloadDatafiles:
+		return soap_in_PointerTons1__downloadDatafiles(soap, NULL, NULL, "ns1:downloadDatafiles");
+	case SOAP_TYPE_PointerTons1__downloadDatafileResponse:
+		return soap_in_PointerTons1__downloadDatafileResponse(soap, NULL, NULL, "ns1:downloadDatafileResponse");
+	case SOAP_TYPE_PointerTons1__downloadDatafile:
+		return soap_in_PointerTons1__downloadDatafile(soap, NULL, NULL, "ns1:downloadDatafile");
+	case SOAP_TYPE_PointerTons1__getAllKeywordsResponse:
+		return soap_in_PointerTons1__getAllKeywordsResponse(soap, NULL, NULL, "ns1:getAllKeywordsResponse");
+	case SOAP_TYPE_PointerTons1__getAllKeywords:
+		return soap_in_PointerTons1__getAllKeywords(soap, NULL, NULL, "ns1:getAllKeywords");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse:
+		return soap_in_PointerTons1__getKeywordsForUserTypeResponse(soap, NULL, NULL, "ns1:getKeywordsForUserTypeResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserType:
+		return soap_in_PointerTons1__getKeywordsForUserType(soap, NULL, NULL, "ns1:getKeywordsForUserType");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse:
+		return soap_in_PointerTons1__getKeywordsForUserMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserMaxResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserMax:
+		return soap_in_PointerTons1__getKeywordsForUserMax(soap, NULL, NULL, "ns1:getKeywordsForUserMax");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse:
+		return soap_in_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMaxResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax:
+		return soap_in_PointerTons1__getKeywordsForUserStartWithMax(soap, NULL, NULL, "ns1:getKeywordsForUserStartWithMax");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserResponse:
+		return soap_in_PointerTons1__getKeywordsForUserResponse(soap, NULL, NULL, "ns1:getKeywordsForUserResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUser:
+		return soap_in_PointerTons1__getKeywordsForUser(soap, NULL, NULL, "ns1:getKeywordsForUser");
+	case SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse:
+		return soap_in_PointerTons1__deleteDataFileParameterResponse(soap, NULL, NULL, "ns1:deleteDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataFileParameter:
+		return soap_in_PointerTons1__deleteDataFileParameter(soap, NULL, NULL, "ns1:deleteDataFileParameter");
+	case SOAP_TYPE_PointerTons1__removeDataFileParameterResponse:
+		return soap_in_PointerTons1__removeDataFileParameterResponse(soap, NULL, NULL, "ns1:removeDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__removeDataFileParameter:
+		return soap_in_PointerTons1__removeDataFileParameter(soap, NULL, NULL, "ns1:removeDataFileParameter");
+	case SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse:
+		return soap_in_PointerTons1__modifyDataFileParameterResponse(soap, NULL, NULL, "ns1:modifyDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataFileParameter:
+		return soap_in_PointerTons1__modifyDataFileParameter(soap, NULL, NULL, "ns1:modifyDataFileParameter");
+	case SOAP_TYPE_PointerTons1__addDataFileParametersResponse:
+		return soap_in_PointerTons1__addDataFileParametersResponse(soap, NULL, NULL, "ns1:addDataFileParametersResponse");
+	case SOAP_TYPE_PointerTons1__addDataFileParameters:
+		return soap_in_PointerTons1__addDataFileParameters(soap, NULL, NULL, "ns1:addDataFileParameters");
+	case SOAP_TYPE_PointerTons1__modifyDataFileResponse:
+		return soap_in_PointerTons1__modifyDataFileResponse(soap, NULL, NULL, "ns1:modifyDataFileResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataFile:
+		return soap_in_PointerTons1__modifyDataFile(soap, NULL, NULL, "ns1:modifyDataFile");
+	case SOAP_TYPE_PointerTons1__removeDataFileResponse:
+		return soap_in_PointerTons1__removeDataFileResponse(soap, NULL, NULL, "ns1:removeDataFileResponse");
+	case SOAP_TYPE_PointerTons1__removeDataFile:
+		return soap_in_PointerTons1__removeDataFile(soap, NULL, NULL, "ns1:removeDataFile");
+	case SOAP_TYPE_PointerTons1__deleteDataFileResponse:
+		return soap_in_PointerTons1__deleteDataFileResponse(soap, NULL, NULL, "ns1:deleteDataFileResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataFile:
+		return soap_in_PointerTons1__deleteDataFile(soap, NULL, NULL, "ns1:deleteDataFile");
+	case SOAP_TYPE_PointerTons1__createDataFilesResponse:
+		return soap_in_PointerTons1__createDataFilesResponse(soap, NULL, NULL, "ns1:createDataFilesResponse");
+	case SOAP_TYPE_PointerTons1__createDataFiles:
+		return soap_in_PointerTons1__createDataFiles(soap, NULL, NULL, "ns1:createDataFiles");
+	case SOAP_TYPE_PointerTons1__createDataFileResponse:
+		return soap_in_PointerTons1__createDataFileResponse(soap, NULL, NULL, "ns1:createDataFileResponse");
+	case SOAP_TYPE_PointerTons1__createDataFile:
+		return soap_in_PointerTons1__createDataFile(soap, NULL, NULL, "ns1:createDataFile");
+	case SOAP_TYPE_PointerTons1__getDatafilesResponse:
+		return soap_in_PointerTons1__getDatafilesResponse(soap, NULL, NULL, "ns1:getDatafilesResponse");
+	case SOAP_TYPE_PointerTons1__getDatafiles:
+		return soap_in_PointerTons1__getDatafiles(soap, NULL, NULL, "ns1:getDatafiles");
+	case SOAP_TYPE_PointerTons1__getUserDetailsResponse:
+		return soap_in_PointerTons1__getUserDetailsResponse(soap, NULL, NULL, "ns1:getUserDetailsResponse");
+	case SOAP_TYPE_PointerTons1__getUserDetails:
+		return soap_in_PointerTons1__getUserDetails(soap, NULL, NULL, "ns1:getUserDetails");
+	case SOAP_TYPE_PointerTons1__updateAuthorisationResponse:
+		return soap_in_PointerTons1__updateAuthorisationResponse(soap, NULL, NULL, "ns1:updateAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__updateAuthorisation:
+		return soap_in_PointerTons1__updateAuthorisation(soap, NULL, NULL, "ns1:updateAuthorisation");
+	case SOAP_TYPE_PointerTons1__removeAuthorisationResponse:
+		return soap_in_PointerTons1__removeAuthorisationResponse(soap, NULL, NULL, "ns1:removeAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__removeAuthorisation:
+		return soap_in_PointerTons1__removeAuthorisation(soap, NULL, NULL, "ns1:removeAuthorisation");
+	case SOAP_TYPE_PointerTons1__deleteAuthorisationResponse:
+		return soap_in_PointerTons1__deleteAuthorisationResponse(soap, NULL, NULL, "ns1:deleteAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__deleteAuthorisation:
+		return soap_in_PointerTons1__deleteAuthorisation(soap, NULL, NULL, "ns1:deleteAuthorisation");
+	case SOAP_TYPE_PointerTons1__addAuthorisationResponse:
+		return soap_in_PointerTons1__addAuthorisationResponse(soap, NULL, NULL, "ns1:addAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__addAuthorisation:
+		return soap_in_PointerTons1__addAuthorisation(soap, NULL, NULL, "ns1:addAuthorisation");
+	case SOAP_TYPE_PointerTons1__getAuthorisationsResponse:
+		return soap_in_PointerTons1__getAuthorisationsResponse(soap, NULL, NULL, "ns1:getAuthorisationsResponse");
+	case SOAP_TYPE_PointerTons1__getAuthorisations:
+		return soap_in_PointerTons1__getAuthorisations(soap, NULL, NULL, "ns1:getAuthorisations");
+	case SOAP_TYPE_PointerTons1__modifySampleParameterResponse:
+		return soap_in_PointerTons1__modifySampleParameterResponse(soap, NULL, NULL, "ns1:modifySampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__modifySampleParameter:
+		return soap_in_PointerTons1__modifySampleParameter(soap, NULL, NULL, "ns1:modifySampleParameter");
+	case SOAP_TYPE_PointerTons1__deleteSampleParameterResponse:
+		return soap_in_PointerTons1__deleteSampleParameterResponse(soap, NULL, NULL, "ns1:deleteSampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__deleteSampleParameter:
+		return soap_in_PointerTons1__deleteSampleParameter(soap, NULL, NULL, "ns1:deleteSampleParameter");
+	case SOAP_TYPE_PointerTons1__removeSampleParameterResponse:
+		return soap_in_PointerTons1__removeSampleParameterResponse(soap, NULL, NULL, "ns1:removeSampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__removeSampleParameter:
+		return soap_in_PointerTons1__removeSampleParameter(soap, NULL, NULL, "ns1:removeSampleParameter");
+	case SOAP_TYPE_PointerTons1__modifySampleResponse:
+		return soap_in_PointerTons1__modifySampleResponse(soap, NULL, NULL, "ns1:modifySampleResponse");
+	case SOAP_TYPE_PointerTons1__modifySample:
+		return soap_in_PointerTons1__modifySample(soap, NULL, NULL, "ns1:modifySample");
+	case SOAP_TYPE_PointerTons1__deleteSampleResponse:
+		return soap_in_PointerTons1__deleteSampleResponse(soap, NULL, NULL, "ns1:deleteSampleResponse");
+	case SOAP_TYPE_PointerTons1__deleteSample:
+		return soap_in_PointerTons1__deleteSample(soap, NULL, NULL, "ns1:deleteSample");
+	case SOAP_TYPE_PointerTons1__removeSampleResponse:
+		return soap_in_PointerTons1__removeSampleResponse(soap, NULL, NULL, "ns1:removeSampleResponse");
+	case SOAP_TYPE_PointerTons1__removeSample:
+		return soap_in_PointerTons1__removeSample(soap, NULL, NULL, "ns1:removeSample");
+	case SOAP_TYPE_PointerTons1__deleteInvestigatorResponse:
+		return soap_in_PointerTons1__deleteInvestigatorResponse(soap, NULL, NULL, "ns1:deleteInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__deleteInvestigator:
+		return soap_in_PointerTons1__deleteInvestigator(soap, NULL, NULL, "ns1:deleteInvestigator");
+	case SOAP_TYPE_PointerTons1__modifyInvestigatorResponse:
+		return soap_in_PointerTons1__modifyInvestigatorResponse(soap, NULL, NULL, "ns1:modifyInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__modifyInvestigator:
+		return soap_in_PointerTons1__modifyInvestigator(soap, NULL, NULL, "ns1:modifyInvestigator");
+	case SOAP_TYPE_PointerTons1__removeInvestigatorResponse:
+		return soap_in_PointerTons1__removeInvestigatorResponse(soap, NULL, NULL, "ns1:removeInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__removeInvestigator:
+		return soap_in_PointerTons1__removeInvestigator(soap, NULL, NULL, "ns1:removeInvestigator");
+	case SOAP_TYPE_PointerTons1__modifyPublicationResponse:
+		return soap_in_PointerTons1__modifyPublicationResponse(soap, NULL, NULL, "ns1:modifyPublicationResponse");
+	case SOAP_TYPE_PointerTons1__modifyPublication:
+		return soap_in_PointerTons1__modifyPublication(soap, NULL, NULL, "ns1:modifyPublication");
+	case SOAP_TYPE_PointerTons1__deletePublicationResponse:
+		return soap_in_PointerTons1__deletePublicationResponse(soap, NULL, NULL, "ns1:deletePublicationResponse");
+	case SOAP_TYPE_PointerTons1__deletePublication:
+		return soap_in_PointerTons1__deletePublication(soap, NULL, NULL, "ns1:deletePublication");
+	case SOAP_TYPE_PointerTons1__removePublicationResponse:
+		return soap_in_PointerTons1__removePublicationResponse(soap, NULL, NULL, "ns1:removePublicationResponse");
+	case SOAP_TYPE_PointerTons1__removePublication:
+		return soap_in_PointerTons1__removePublication(soap, NULL, NULL, "ns1:removePublication");
+	case SOAP_TYPE_PointerTons1__deleteKeywordResponse:
+		return soap_in_PointerTons1__deleteKeywordResponse(soap, NULL, NULL, "ns1:deleteKeywordResponse");
+	case SOAP_TYPE_PointerTons1__deleteKeyword:
+		return soap_in_PointerTons1__deleteKeyword(soap, NULL, NULL, "ns1:deleteKeyword");
+	case SOAP_TYPE_PointerTons1__removeKeywordResponse:
+		return soap_in_PointerTons1__removeKeywordResponse(soap, NULL, NULL, "ns1:removeKeywordResponse");
+	case SOAP_TYPE_PointerTons1__removeKeyword:
+		return soap_in_PointerTons1__removeKeyword(soap, NULL, NULL, "ns1:removeKeyword");
+	case SOAP_TYPE_PointerTons1__modifyInvestigationResponse:
+		return soap_in_PointerTons1__modifyInvestigationResponse(soap, NULL, NULL, "ns1:modifyInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__modifyInvestigation:
+		return soap_in_PointerTons1__modifyInvestigation(soap, NULL, NULL, "ns1:modifyInvestigation");
+	case SOAP_TYPE_PointerTons1__deleteInvestigationResponse:
+		return soap_in_PointerTons1__deleteInvestigationResponse(soap, NULL, NULL, "ns1:deleteInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__deleteInvestigation:
+		return soap_in_PointerTons1__deleteInvestigation(soap, NULL, NULL, "ns1:deleteInvestigation");
+	case SOAP_TYPE_PointerTons1__removeInvestigationResponse:
+		return soap_in_PointerTons1__removeInvestigationResponse(soap, NULL, NULL, "ns1:removeInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__removeInvestigation:
+		return soap_in_PointerTons1__removeInvestigation(soap, NULL, NULL, "ns1:removeInvestigation");
+	case SOAP_TYPE_PointerTons1__createInvestigationResponse:
+		return soap_in_PointerTons1__createInvestigationResponse(soap, NULL, NULL, "ns1:createInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__createInvestigation:
+		return soap_in_PointerTons1__createInvestigation(soap, NULL, NULL, "ns1:createInvestigation");
+	case SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse:
+		return soap_in_PointerTons1__getInvestigationsIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationsIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getInvestigationsIncludes:
+		return soap_in_PointerTons1__getInvestigationsIncludes(soap, NULL, NULL, "ns1:getInvestigationsIncludes");
+	case SOAP_TYPE_PointerTons1__addDataFileParameterResponse:
+		return soap_in_PointerTons1__addDataFileParameterResponse(soap, NULL, NULL, "ns1:addDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__addDataFileParameter:
+		return soap_in_PointerTons1__addDataFileParameter(soap, NULL, NULL, "ns1:addDataFileParameter");
+	case SOAP_TYPE_PointerTons1__getDatafileResponse:
+		return soap_in_PointerTons1__getDatafileResponse(soap, NULL, NULL, "ns1:getDatafileResponse");
+	case SOAP_TYPE_PointerTons1__getDatafile:
+		return soap_in_PointerTons1__getDatafile(soap, NULL, NULL, "ns1:getDatafile");
+	case SOAP_TYPE_PointerTons1__getDatasetIncludesResponse:
+		return soap_in_PointerTons1__getDatasetIncludesResponse(soap, NULL, NULL, "ns1:getDatasetIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getDatasetIncludes:
+		return soap_in_PointerTons1__getDatasetIncludes(soap, NULL, NULL, "ns1:getDatasetIncludes");
+	case SOAP_TYPE_PointerTons1__getDatasetResponse:
+		return soap_in_PointerTons1__getDatasetResponse(soap, NULL, NULL, "ns1:getDatasetResponse");
+	case SOAP_TYPE_PointerTons1__getDataset:
+		return soap_in_PointerTons1__getDataset(soap, NULL, NULL, "ns1:getDataset");
+	case SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse:
+		return soap_in_PointerTons1__getInvestigationIncludesResponse(soap, NULL, NULL, "ns1:getInvestigationIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getInvestigationIncludes:
+		return soap_in_PointerTons1__getInvestigationIncludes(soap, NULL, NULL, "ns1:getInvestigationIncludes");
+	case SOAP_TYPE_PointerTons1__getInvestigationResponse:
+		return soap_in_PointerTons1__getInvestigationResponse(soap, NULL, NULL, "ns1:getInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__getInvestigation:
+		return soap_in_PointerTons1__getInvestigation(soap, NULL, NULL, "ns1:getInvestigation");
+	case SOAP_TYPE_PointerTons1__addInvestigatorResponse:
+		return soap_in_PointerTons1__addInvestigatorResponse(soap, NULL, NULL, "ns1:addInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__addInvestigator:
+		return soap_in_PointerTons1__addInvestigator(soap, NULL, NULL, "ns1:addInvestigator");
+	case SOAP_TYPE_PointerTons1__addKeywordResponse:
+		return soap_in_PointerTons1__addKeywordResponse(soap, NULL, NULL, "ns1:addKeywordResponse");
+	case SOAP_TYPE_PointerTons1__addKeyword:
+		return soap_in_PointerTons1__addKeyword(soap, NULL, NULL, "ns1:addKeyword");
+	case SOAP_TYPE_PointerTons1__addPublicationResponse:
+		return soap_in_PointerTons1__addPublicationResponse(soap, NULL, NULL, "ns1:addPublicationResponse");
+	case SOAP_TYPE_PointerTons1__addPublication:
+		return soap_in_PointerTons1__addPublication(soap, NULL, NULL, "ns1:addPublication");
+	case SOAP_TYPE_PointerTons1__addSampleParameterResponse:
+		return soap_in_PointerTons1__addSampleParameterResponse(soap, NULL, NULL, "ns1:addSampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__addSampleParameter:
+		return soap_in_PointerTons1__addSampleParameter(soap, NULL, NULL, "ns1:addSampleParameter");
+	case SOAP_TYPE_PointerTons1__logoutResponse:
+		return soap_in_PointerTons1__logoutResponse(soap, NULL, NULL, "ns1:logoutResponse");
+	case SOAP_TYPE_PointerTons1__logout:
+		return soap_in_PointerTons1__logout(soap, NULL, NULL, "ns1:logout");
+	case SOAP_TYPE_PointerTons1__addSampleResponse:
+		return soap_in_PointerTons1__addSampleResponse(soap, NULL, NULL, "ns1:addSampleResponse");
+	case SOAP_TYPE_PointerTons1__addSample:
+		return soap_in_PointerTons1__addSample(soap, NULL, NULL, "ns1:addSample");
+	case SOAP_TYPE_PointerTons1__loginLifetimeResponse:
+		return soap_in_PointerTons1__loginLifetimeResponse(soap, NULL, NULL, "ns1:loginLifetimeResponse");
+	case SOAP_TYPE_PointerTons1__loginLifetime:
+		return soap_in_PointerTons1__loginLifetime(soap, NULL, NULL, "ns1:loginLifetime");
+	case SOAP_TYPE_PointerTons1__loginResponse:
+		return soap_in_PointerTons1__loginResponse(soap, NULL, NULL, "ns1:loginResponse");
+	case SOAP_TYPE_PointerTons1__login:
+		return soap_in_PointerTons1__login(soap, NULL, NULL, "ns1:login");
+	case SOAP_TYPE_PointerTons1__ValidationException:
+		return soap_in_PointerTons1__ValidationException(soap, NULL, NULL, "ns1:ValidationException");
+	case SOAP_TYPE_PointerTons1__SessionException:
+		return soap_in_PointerTons1__SessionException(soap, NULL, NULL, "ns1:SessionException");
+	case SOAP_TYPE_PointerTons1__ParameterSearchException:
+		return soap_in_PointerTons1__ParameterSearchException(soap, NULL, NULL, "ns1:ParameterSearchException");
+	case SOAP_TYPE_PointerTons1__NoSuchUserException:
+		return soap_in_PointerTons1__NoSuchUserException(soap, NULL, NULL, "ns1:NoSuchUserException");
+	case SOAP_TYPE_PointerTons1__NoSuchObjectFoundException:
+		return soap_in_PointerTons1__NoSuchObjectFoundException(soap, NULL, NULL, "ns1:NoSuchObjectFoundException");
+	case SOAP_TYPE_PointerTons1__InsufficientPrivilegesException:
+		return soap_in_PointerTons1__InsufficientPrivilegesException(soap, NULL, NULL, "ns1:InsufficientPrivilegesException");
+	case SOAP_TYPE_PointerTons1__ICATAPIException:
+		return soap_in_PointerTons1__ICATAPIException(soap, NULL, NULL, "ns1:ICATAPIException");
+	case SOAP_TYPE_PointerTons1__logicalOperator:
+		return soap_in_PointerTons1__logicalOperator(soap, NULL, NULL, "ns1:logicalOperator");
+	case SOAP_TYPE_PointerTons1__parameterCondition:
+		return soap_in_PointerTons1__parameterCondition(soap, NULL, NULL, "ns1:parameterCondition");
+	case SOAP_TYPE_PointerTons1__shiftPK:
+		return soap_in_PointerTons1__shiftPK(soap, NULL, NULL, "ns1:shiftPK");
+	case SOAP_TYPE_PointerTons1__shift:
+		return soap_in_PointerTons1__shift(soap, NULL, NULL, "ns1:shift");
+	case SOAP_TYPE_PointerTons1__parameterPK:
+		return soap_in_PointerTons1__parameterPK(soap, NULL, NULL, "ns1:parameterPK");
+	case SOAP_TYPE_PointerTons1__parameterValued:
+		return soap_in_PointerTons1__parameterValued(soap, NULL, NULL, "ns1:parameterValued");
+	case SOAP_TYPE_PointerTons1__comparisonOperator:
+		return soap_in_PointerTons1__comparisonOperator(soap, NULL, NULL, "ns1:comparisonOperator");
+	case SOAP_TYPE_PointerTons1__relatedDatafilesPK:
+		return soap_in_PointerTons1__relatedDatafilesPK(soap, NULL, NULL, "ns1:relatedDatafilesPK");
+	case SOAP_TYPE_PointerTons1__datafileFormatPK:
+		return soap_in_PointerTons1__datafileFormatPK(soap, NULL, NULL, "ns1:datafileFormatPK");
+	case SOAP_TYPE_PointerTons1__relatedDatafiles:
+		return soap_in_PointerTons1__relatedDatafiles(soap, NULL, NULL, "ns1:relatedDatafiles");
+	case SOAP_TYPE_PointerTons1__datafileInclude:
+		return soap_in_PointerTons1__datafileInclude(soap, NULL, NULL, "ns1:datafileInclude");
+	case SOAP_TYPE_PointerTons1__parameterValueType:
+		return soap_in_PointerTons1__parameterValueType(soap, NULL, NULL, "ns1:parameterValueType");
+	case SOAP_TYPE_PointerToint:
+		return soap_in_PointerToint(soap, NULL, NULL, "xsd:int");
+	case SOAP_TYPE_PointerTons1__datasetInclude:
+		return soap_in_PointerTons1__datasetInclude(soap, NULL, NULL, "ns1:datasetInclude");
+	case SOAP_TYPE_PointerTons1__datafileFormat:
+		return soap_in_PointerTons1__datafileFormat(soap, NULL, NULL, "ns1:datafileFormat");
+	case SOAP_TYPE_PointerTodouble:
+		return soap_in_PointerTodouble(soap, NULL, NULL, "xsd:double");
+	case SOAP_TYPE_PointerTotime:
+		return soap_in_PointerTotime(soap, NULL, NULL, "xsd:dateTime");
+	case SOAP_TYPE_PointerTons1__advancedSearchDetails:
+		return soap_in_PointerTons1__advancedSearchDetails(soap, NULL, NULL, "ns1:advancedSearchDetails");
+	case SOAP_TYPE_PointerTons1__keyword:
+		return soap_in_PointerTons1__keyword(soap, NULL, NULL, "ns1:keyword");
+	case SOAP_TYPE_PointerTons1__icatAuthorisation:
+		return soap_in_PointerTons1__icatAuthorisation(soap, NULL, NULL, "ns1:icatAuthorisation");
+	case SOAP_TYPE_PointerTons1__elementType:
+		return soap_in_PointerTons1__elementType(soap, NULL, NULL, "ns1:elementType");
+	case SOAP_TYPE_PointerTons1__datasetParameter:
+		return soap_in_PointerTons1__datasetParameter(soap, NULL, NULL, "ns1:datasetParameter");
+	case SOAP_TYPE_PointerTons1__sampleParameterPK:
+		return soap_in_PointerTons1__sampleParameterPK(soap, NULL, NULL, "ns1:sampleParameterPK");
+	case SOAP_TYPE_PointerTons1__investigator:
+		return soap_in_PointerTons1__investigator(soap, NULL, NULL, "ns1:investigator");
+	case SOAP_TYPE_PointerTons1__parameterLogicalCondition:
+		return soap_in_PointerTons1__parameterLogicalCondition(soap, NULL, NULL, "ns1:parameterLogicalCondition");
+	case SOAP_TYPE_PointerTons1__datafileParameterPK:
+		return soap_in_PointerTons1__datafileParameterPK(soap, NULL, NULL, "ns1:datafileParameterPK");
+	case SOAP_TYPE_PointerTons1__publication:
+		return soap_in_PointerTons1__publication(soap, NULL, NULL, "ns1:publication");
+	case SOAP_TYPE_PointerTons1__datasetParameterPK:
+		return soap_in_PointerTons1__datasetParameterPK(soap, NULL, NULL, "ns1:datasetParameterPK");
+	case SOAP_TYPE_PointerTons1__investigationInclude:
+		return soap_in_PointerTons1__investigationInclude(soap, NULL, NULL, "ns1:investigationInclude");
+	case SOAP_TYPE_PointerTons1__keywordDetails:
+		return soap_in_PointerTons1__keywordDetails(soap, NULL, NULL, "ns1:keywordDetails");
+	case SOAP_TYPE_PointerToxsd__anyType:
+		return soap_in_PointerToxsd__anyType(soap, NULL, NULL, "xsd:anyType");
+	case SOAP_TYPE_PointerTons1__downloadInfo:
+		return soap_in_PointerTons1__downloadInfo(soap, NULL, NULL, "ns1:downloadInfo");
+	case SOAP_TYPE_PointerTons1__sampleParameter:
+		return soap_in_PointerTons1__sampleParameter(soap, NULL, NULL, "ns1:sampleParameter");
+	case SOAP_TYPE_PointerTons1__userDetails:
+		return soap_in_PointerTons1__userDetails(soap, NULL, NULL, "ns1:userDetails");
+	case SOAP_TYPE_PointerTons1__keywordType:
+		return soap_in_PointerTons1__keywordType(soap, NULL, NULL, "ns1:keywordType");
+	case SOAP_TYPE_PointerTons1__dataset:
+		return soap_in_PointerTons1__dataset(soap, NULL, NULL, "ns1:dataset");
+	case SOAP_TYPE_PointerTons1__keywordPK:
+		return soap_in_PointerTons1__keywordPK(soap, NULL, NULL, "ns1:keywordPK");
+	case SOAP_TYPE_PointerTons1__investigatorPK:
+		return soap_in_PointerTons1__investigatorPK(soap, NULL, NULL, "ns1:investigatorPK");
+	case SOAP_TYPE_PointerTons1__facilityUser:
+		return soap_in_PointerTons1__facilityUser(soap, NULL, NULL, "ns1:facilityUser");
+	case SOAP_TYPE_PointerTons1__facilityCycle:
+		return soap_in_PointerTons1__facilityCycle(soap, NULL, NULL, "ns1:facilityCycle");
+	case SOAP_TYPE_PointerTons1__datafileParameter:
+		return soap_in_PointerTons1__datafileParameter(soap, NULL, NULL, "ns1:datafileParameter");
+	case SOAP_TYPE_PointerTons1__investigation:
+		return soap_in_PointerTons1__investigation(soap, NULL, NULL, "ns1:investigation");
+	case SOAP_TYPE_PointerTons1__parameterType:
+		return soap_in_PointerTons1__parameterType(soap, NULL, NULL, "ns1:parameterType");
+	case SOAP_TYPE_PointerTons1__parameter:
+		return soap_in_PointerTons1__parameter(soap, NULL, NULL, "ns1:parameter");
+	case SOAP_TYPE_PointerTons1__parameterComparisonCondition:
+		return soap_in_PointerTons1__parameterComparisonCondition(soap, NULL, NULL, "ns1:parameterComparisonCondition");
+	case SOAP_TYPE_PointerTons1__datafile:
+		return soap_in_PointerTons1__datafile(soap, NULL, NULL, "ns1:datafile");
+	case SOAP_TYPE_PointerToLONG64:
+		return soap_in_PointerToLONG64(soap, NULL, NULL, "xsd:long");
+	case SOAP_TYPE_PointerTons1__icatRole:
+		return soap_in_PointerTons1__icatRole(soap, NULL, NULL, "ns1:icatRole");
+	case SOAP_TYPE_PointerTons1__sample:
+		return soap_in_PointerTons1__sample(soap, NULL, NULL, "ns1:sample");
+	case SOAP_TYPE_PointerTostd__string:
+		return soap_in_PointerTostd__string(soap, NULL, NULL, "xsd:string");
+	case SOAP_TYPE__QName:
+	{	char **s;
+		s = soap_in__QName(soap, NULL, NULL, "xsd:QName");
+		return s ? *s : NULL;
+	}
+	case SOAP_TYPE_string:
+	{	char **s;
+		s = soap_in_string(soap, NULL, NULL, "xsd:string");
+		return s ? *s : NULL;
+	}
+	default:
+	{	const char *t = soap->type;
+		if (!*t)
+			t = soap->tag;
+		if (!soap_match_tag(soap, t, "ns1:datasetInclude"))
+		{	*type = SOAP_TYPE_ns1__datasetInclude_;
+			return soap_in_ns1__datasetInclude_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:elementType"))
+		{	*type = SOAP_TYPE_ns1__elementType_;
+			return soap_in_ns1__elementType_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:logicalOperator"))
+		{	*type = SOAP_TYPE_ns1__logicalOperator_;
+			return soap_in_ns1__logicalOperator_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:investigationInclude"))
+		{	*type = SOAP_TYPE_ns1__investigationInclude_;
+			return soap_in_ns1__investigationInclude_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:keywordType"))
+		{	*type = SOAP_TYPE_ns1__keywordType_;
+			return soap_in_ns1__keywordType_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterType"))
+		{	*type = SOAP_TYPE_ns1__parameterType_;
+			return soap_in_ns1__parameterType_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:comparisonOperator"))
+		{	*type = SOAP_TYPE_ns1__comparisonOperator_;
+			return soap_in_ns1__comparisonOperator_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafileInclude"))
+		{	*type = SOAP_TYPE_ns1__datafileInclude_;
+			return soap_in_ns1__datafileInclude_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterValueType"))
+		{	*type = SOAP_TYPE_ns1__parameterValueType_;
+			return soap_in_ns1__parameterValueType_(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatasetsResponse"))
+		{	*type = SOAP_TYPE_ns1__getDatasetsResponse;
+			return soap_in_ns1__getDatasetsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatasets"))
+		{	*type = SOAP_TYPE_ns1__getDatasets;
+			return soap_in_ns1__getDatasets(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listParametersResponse"))
+		{	*type = SOAP_TYPE_ns1__listParametersResponse;
+			return soap_in_ns1__listParametersResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listParameters"))
+		{	*type = SOAP_TYPE_ns1__listParameters;
+			return soap_in_ns1__listParameters(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataFileParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyDataFileParameterResponse;
+			return soap_in_ns1__modifyDataFileParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataFileParameter"))
+		{	*type = SOAP_TYPE_ns1__modifyDataFileParameter;
+			return soap_in_ns1__modifyDataFileParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteSampleParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteSampleParameterResponse;
+			return soap_in_ns1__deleteSampleParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteSampleParameter"))
+		{	*type = SOAP_TYPE_ns1__deleteSampleParameter;
+			return soap_in_ns1__deleteSampleParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataFileParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__addDataFileParameterResponse;
+			return soap_in_ns1__addDataFileParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataFileParameter"))
+		{	*type = SOAP_TYPE_ns1__addDataFileParameter;
+			return soap_in_ns1__addDataFileParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatasetsBySampleResponse"))
+		{	*type = SOAP_TYPE_ns1__searchDatasetsBySampleResponse;
+			return soap_in_ns1__searchDatasetsBySampleResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatasetsBySample"))
+		{	*type = SOAP_TYPE_ns1__searchDatasetsBySample;
+			return soap_in_ns1__searchDatasetsBySample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createInvestigationResponse"))
+		{	*type = SOAP_TYPE_ns1__createInvestigationResponse;
+			return soap_in_ns1__createInvestigationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createInvestigation"))
+		{	*type = SOAP_TYPE_ns1__createInvestigation;
+			return soap_in_ns1__createInvestigation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addPublicationResponse"))
+		{	*type = SOAP_TYPE_ns1__addPublicationResponse;
+			return soap_in_ns1__addPublicationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addPublication"))
+		{	*type = SOAP_TYPE_ns1__addPublication;
+			return soap_in_ns1__addPublication(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataFileParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteDataFileParameterResponse;
+			return soap_in_ns1__deleteDataFileParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataFileParameter"))
+		{	*type = SOAP_TYPE_ns1__deleteDataFileParameter;
+			return soap_in_ns1__deleteDataFileParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getInvestigationResponse"))
+		{	*type = SOAP_TYPE_ns1__getInvestigationResponse;
+			return soap_in_ns1__getInvestigationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getInvestigation"))
+		{	*type = SOAP_TYPE_ns1__getInvestigation;
+			return soap_in_ns1__getInvestigation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getInvestigationIncludesResponse"))
+		{	*type = SOAP_TYPE_ns1__getInvestigationIncludesResponse;
+			return soap_in_ns1__getInvestigationIncludesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getInvestigationIncludes"))
+		{	*type = SOAP_TYPE_ns1__getInvestigationIncludes;
+			return soap_in_ns1__getInvestigationIncludes(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataFileResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyDataFileResponse;
+			return soap_in_ns1__modifyDataFileResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataFile"))
+		{	*type = SOAP_TYPE_ns1__modifyDataFile;
+			return soap_in_ns1__modifyDataFile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatafileResponse"))
+		{	*type = SOAP_TYPE_ns1__getDatafileResponse;
+			return soap_in_ns1__getDatafileResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatafile"))
+		{	*type = SOAP_TYPE_ns1__getDatafile;
+			return soap_in_ns1__getDatafile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:ICATAPIException"))
+		{	*type = SOAP_TYPE_ns1__ICATAPIException;
+			return soap_in_ns1__ICATAPIException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:ingestMetadataResponse"))
+		{	*type = SOAP_TYPE_ns1__ingestMetadataResponse;
+			return soap_in_ns1__ingestMetadataResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:ingestMetadata"))
+		{	*type = SOAP_TYPE_ns1__ingestMetadata;
+			return soap_in_ns1__ingestMetadata(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listRolesResponse"))
+		{	*type = SOAP_TYPE_ns1__listRolesResponse;
+			return soap_in_ns1__listRolesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listRoles"))
+		{	*type = SOAP_TYPE_ns1__listRoles;
+			return soap_in_ns1__listRoles(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatasetResponse"))
+		{	*type = SOAP_TYPE_ns1__getDatasetResponse;
+			return soap_in_ns1__getDatasetResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDataset"))
+		{	*type = SOAP_TYPE_ns1__getDataset;
+			return soap_in_ns1__getDataset(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatasetIncludesResponse"))
+		{	*type = SOAP_TYPE_ns1__getDatasetIncludesResponse;
+			return soap_in_ns1__getDatasetIncludesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatasetIncludes"))
+		{	*type = SOAP_TYPE_ns1__getDatasetIncludes;
+			return soap_in_ns1__getDatasetIncludes(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:updateAuthorisationResponse"))
+		{	*type = SOAP_TYPE_ns1__updateAuthorisationResponse;
+			return soap_in_ns1__updateAuthorisationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:updateAuthorisation"))
+		{	*type = SOAP_TYPE_ns1__updateAuthorisation;
+			return soap_in_ns1__updateAuthorisation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteAuthorisationResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteAuthorisationResponse;
+			return soap_in_ns1__deleteAuthorisationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteAuthorisation"))
+		{	*type = SOAP_TYPE_ns1__deleteAuthorisation;
+			return soap_in_ns1__deleteAuthorisation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deletePublicationResponse"))
+		{	*type = SOAP_TYPE_ns1__deletePublicationResponse;
+			return soap_in_ns1__deletePublicationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deletePublication"))
+		{	*type = SOAP_TYPE_ns1__deletePublication;
+			return soap_in_ns1__deletePublication(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:loginResponse"))
+		{	*type = SOAP_TYPE_ns1__loginResponse;
+			return soap_in_ns1__loginResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:login"))
+		{	*type = SOAP_TYPE_ns1__login;
+			return soap_in_ns1__login(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:loginLifetimeResponse"))
+		{	*type = SOAP_TYPE_ns1__loginLifetimeResponse;
+			return soap_in_ns1__loginLifetimeResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:loginLifetime"))
+		{	*type = SOAP_TYPE_ns1__loginLifetime;
+			return soap_in_ns1__loginLifetime(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addSampleResponse"))
+		{	*type = SOAP_TYPE_ns1__addSampleResponse;
+			return soap_in_ns1__addSampleResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addSample"))
+		{	*type = SOAP_TYPE_ns1__addSample;
+			return soap_in_ns1__addSample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addAuthorisationResponse"))
+		{	*type = SOAP_TYPE_ns1__addAuthorisationResponse;
+			return soap_in_ns1__addAuthorisationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addAuthorisation"))
+		{	*type = SOAP_TYPE_ns1__addAuthorisation;
+			return soap_in_ns1__addAuthorisation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataSetParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__addDataSetParameterResponse;
+			return soap_in_ns1__addDataSetParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataSetParameter"))
+		{	*type = SOAP_TYPE_ns1__addDataSetParameter;
+			return soap_in_ns1__addDataSetParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataFilesResponse"))
+		{	*type = SOAP_TYPE_ns1__createDataFilesResponse;
+			return soap_in_ns1__createDataFilesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataFiles"))
+		{	*type = SOAP_TYPE_ns1__createDataFiles;
+			return soap_in_ns1__createDataFiles(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyInvestigatorResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyInvestigatorResponse;
+			return soap_in_ns1__modifyInvestigatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyInvestigator"))
+		{	*type = SOAP_TYPE_ns1__modifyInvestigator;
+			return soap_in_ns1__modifyInvestigator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparatorResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByParameterComparatorResponse;
+			return soap_in_ns1__searchByParameterComparatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparator"))
+		{	*type = SOAP_TYPE_ns1__searchByParameterComparator;
+			return soap_in_ns1__searchByParameterComparator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifySampleParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__modifySampleParameterResponse;
+			return soap_in_ns1__modifySampleParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifySampleParameter"))
+		{	*type = SOAP_TYPE_ns1__modifySampleParameter;
+			return soap_in_ns1__modifySampleParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listDatafileFormatsResponse"))
+		{	*type = SOAP_TYPE_ns1__listDatafileFormatsResponse;
+			return soap_in_ns1__listDatafileFormatsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listDatafileFormats"))
+		{	*type = SOAP_TYPE_ns1__listDatafileFormats;
+			return soap_in_ns1__listDatafileFormats(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByAdvancedPaginationResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByAdvancedPaginationResponse;
+			return soap_in_ns1__searchByAdvancedPaginationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByAdvancedPagination"))
+		{	*type = SOAP_TYPE_ns1__searchByAdvancedPagination;
+			return soap_in_ns1__searchByAdvancedPagination(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByAdvancedResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByAdvancedResponse;
+			return soap_in_ns1__searchByAdvancedResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:advancedSearchDetails"))
+		{	*type = SOAP_TYPE_ns1__advancedSearchDetails;
+			return soap_in_ns1__advancedSearchDetails(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByAdvanced"))
+		{	*type = SOAP_TYPE_ns1__searchByAdvanced;
+			return soap_in_ns1__searchByAdvanced(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByRunNumberPaginationResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByRunNumberPaginationResponse;
+			return soap_in_ns1__searchByRunNumberPaginationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByRunNumberPagination"))
+		{	*type = SOAP_TYPE_ns1__searchByRunNumberPagination;
+			return soap_in_ns1__searchByRunNumberPagination(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByRunNumberResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByRunNumberResponse;
+			return soap_in_ns1__searchByRunNumberResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByRunNumber"))
+		{	*type = SOAP_TYPE_ns1__searchByRunNumber;
+			return soap_in_ns1__searchByRunNumber(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataSetParametersResponse"))
+		{	*type = SOAP_TYPE_ns1__addDataSetParametersResponse;
+			return soap_in_ns1__addDataSetParametersResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataSetParameters"))
+		{	*type = SOAP_TYPE_ns1__addDataSetParameters;
+			return soap_in_ns1__addDataSetParameters(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteKeywordResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteKeywordResponse;
+			return soap_in_ns1__deleteKeywordResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteKeyword"))
+		{	*type = SOAP_TYPE_ns1__deleteKeyword;
+			return soap_in_ns1__deleteKeyword(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteSampleResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteSampleResponse;
+			return soap_in_ns1__deleteSampleResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteSample"))
+		{	*type = SOAP_TYPE_ns1__deleteSample;
+			return soap_in_ns1__deleteSample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listDatasetStatusResponse"))
+		{	*type = SOAP_TYPE_ns1__listDatasetStatusResponse;
+			return soap_in_ns1__listDatasetStatusResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listDatasetStatus"))
+		{	*type = SOAP_TYPE_ns1__listDatasetStatus;
+			return soap_in_ns1__listDatasetStatus(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyInvestigationResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyInvestigationResponse;
+			return soap_in_ns1__modifyInvestigationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyInvestigation"))
+		{	*type = SOAP_TYPE_ns1__modifyInvestigation;
+			return soap_in_ns1__modifyInvestigation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addKeywordResponse"))
+		{	*type = SOAP_TYPE_ns1__addKeywordResponse;
+			return soap_in_ns1__addKeywordResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addKeyword"))
+		{	*type = SOAP_TYPE_ns1__addKeyword;
+			return soap_in_ns1__addKeyword(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:icatAuthorisation"))
+		{	*type = SOAP_TYPE_ns1__icatAuthorisation;
+			return soap_in_ns1__icatAuthorisation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getAuthorisationsResponse"))
+		{	*type = SOAP_TYPE_ns1__getAuthorisationsResponse;
+			return soap_in_ns1__getAuthorisationsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getAuthorisations"))
+		{	*type = SOAP_TYPE_ns1__getAuthorisations;
+			return soap_in_ns1__getAuthorisations(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataSetResponse"))
+		{	*type = SOAP_TYPE_ns1__removeDataSetResponse;
+			return soap_in_ns1__removeDataSetResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataSet"))
+		{	*type = SOAP_TYPE_ns1__removeDataSet;
+			return soap_in_ns1__removeDataSet(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataSetParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyDataSetParameterResponse;
+			return soap_in_ns1__modifyDataSetParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataSetParameter"))
+		{	*type = SOAP_TYPE_ns1__modifyDataSetParameter;
+			return soap_in_ns1__modifyDataSetParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listInvestigationTypesResponse"))
+		{	*type = SOAP_TYPE_ns1__listInvestigationTypesResponse;
+			return soap_in_ns1__listInvestigationTypesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listInvestigationTypes"))
+		{	*type = SOAP_TYPE_ns1__listInvestigationTypes;
+			return soap_in_ns1__listInvestigationTypes(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserTypeResponse"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserTypeResponse;
+			return soap_in_ns1__getKeywordsForUserTypeResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserType"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserType;
+			return soap_in_ns1__getKeywordsForUserType(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserMaxResponse"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserMaxResponse;
+			return soap_in_ns1__getKeywordsForUserMaxResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserMax"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserMax;
+			return soap_in_ns1__getKeywordsForUserMax(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserStartWithMaxResponse"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse;
+			return soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserStartWithMax"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMax;
+			return soap_in_ns1__getKeywordsForUserStartWithMax(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUserResponse"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUserResponse;
+			return soap_in_ns1__getKeywordsForUserResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getKeywordsForUser"))
+		{	*type = SOAP_TYPE_ns1__getKeywordsForUser;
+			return soap_in_ns1__getKeywordsForUser(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadDatafileResponse"))
+		{	*type = SOAP_TYPE_ns1__downloadDatafileResponse;
+			return soap_in_ns1__downloadDatafileResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadDatafile"))
+		{	*type = SOAP_TYPE_ns1__downloadDatafile;
+			return soap_in_ns1__downloadDatafile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparatorsResponse"))
+		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse;
+			return soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparators"))
+		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparators;
+			return soap_in_ns1__searchDatasetsByParameterComparators(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:setDataSetSampleResponse"))
+		{	*type = SOAP_TYPE_ns1__setDataSetSampleResponse;
+			return soap_in_ns1__setDataSetSampleResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:setDataSetSample"))
+		{	*type = SOAP_TYPE_ns1__setDataSetSample;
+			return soap_in_ns1__setDataSetSample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataSetParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteDataSetParameterResponse;
+			return soap_in_ns1__deleteDataSetParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataSetParameter"))
+		{	*type = SOAP_TYPE_ns1__deleteDataSetParameter;
+			return soap_in_ns1__deleteDataSetParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeSampleParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__removeSampleParameterResponse;
+			return soap_in_ns1__removeSampleParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeSampleParameter"))
+		{	*type = SOAP_TYPE_ns1__removeSampleParameter;
+			return soap_in_ns1__removeSampleParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparatorResponse"))
+		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse;
+			return soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatasetsByParameterComparator"))
+		{	*type = SOAP_TYPE_ns1__searchDatasetsByParameterComparator;
+			return soap_in_ns1__searchDatasetsByParameterComparator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataSetResponse"))
+		{	*type = SOAP_TYPE_ns1__createDataSetResponse;
+			return soap_in_ns1__createDataSetResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataSet"))
+		{	*type = SOAP_TYPE_ns1__createDataSet;
+			return soap_in_ns1__createDataSet(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addInvestigatorResponse"))
+		{	*type = SOAP_TYPE_ns1__addInvestigatorResponse;
+			return soap_in_ns1__addInvestigatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addInvestigator"))
+		{	*type = SOAP_TYPE_ns1__addInvestigator;
+			return soap_in_ns1__addInvestigator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteInvestigatorResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteInvestigatorResponse;
+			return soap_in_ns1__deleteInvestigatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteInvestigator"))
+		{	*type = SOAP_TYPE_ns1__deleteInvestigator;
+			return soap_in_ns1__deleteInvestigator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getICATAPIVersionResponse"))
+		{	*type = SOAP_TYPE_ns1__getICATAPIVersionResponse;
+			return soap_in_ns1__getICATAPIVersionResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getICATAPIVersion"))
+		{	*type = SOAP_TYPE_ns1__getICATAPIVersion;
+			return soap_in_ns1__getICATAPIVersion(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatafilesResponse"))
+		{	*type = SOAP_TYPE_ns1__getDatafilesResponse;
+			return soap_in_ns1__getDatafilesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getDatafiles"))
+		{	*type = SOAP_TYPE_ns1__getDatafiles;
+			return soap_in_ns1__getDatafiles(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByParameterOperatorResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByParameterOperatorResponse;
+			return soap_in_ns1__searchByParameterOperatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterLogicalCondition"))
+		{	*type = SOAP_TYPE_ns1__parameterLogicalCondition;
+			return soap_in_ns1__parameterLogicalCondition(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByParameterOperator"))
+		{	*type = SOAP_TYPE_ns1__searchByParameterOperator;
+			return soap_in_ns1__searchByParameterOperator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:isSessionValidResponse"))
+		{	*type = SOAP_TYPE_ns1__isSessionValidResponse;
+			return soap_in_ns1__isSessionValidResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:isSessionValid"))
+		{	*type = SOAP_TYPE_ns1__isSessionValid;
+			return soap_in_ns1__isSessionValid(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataSetResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteDataSetResponse;
+			return soap_in_ns1__deleteDataSetResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataSet"))
+		{	*type = SOAP_TYPE_ns1__deleteDataSet;
+			return soap_in_ns1__deleteDataSet(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparatorResponse"))
+		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse;
+			return soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparator"))
+		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparator;
+			return soap_in_ns1__searchDatafilesByParameterComparator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getInvestigationsIncludesResponse"))
+		{	*type = SOAP_TYPE_ns1__getInvestigationsIncludesResponse;
+			return soap_in_ns1__getInvestigationsIncludesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getInvestigationsIncludes"))
+		{	*type = SOAP_TYPE_ns1__getInvestigationsIncludes;
+			return soap_in_ns1__getInvestigationsIncludes(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataFileParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__removeDataFileParameterResponse;
+			return soap_in_ns1__removeDataFileParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataFileParameter"))
+		{	*type = SOAP_TYPE_ns1__removeDataFileParameter;
+			return soap_in_ns1__removeDataFileParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserIDPaginationResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByUserIDPaginationResponse;
+			return soap_in_ns1__searchByUserIDPaginationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserIDPagination"))
+		{	*type = SOAP_TYPE_ns1__searchByUserIDPagination;
+			return soap_in_ns1__searchByUserIDPagination(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserIDResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByUserIDResponse;
+			return soap_in_ns1__searchByUserIDResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserID"))
+		{	*type = SOAP_TYPE_ns1__searchByUserID;
+			return soap_in_ns1__searchByUserID(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyPublicationResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyPublicationResponse;
+			return soap_in_ns1__modifyPublicationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyPublication"))
+		{	*type = SOAP_TYPE_ns1__modifyPublication;
+			return soap_in_ns1__modifyPublication(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataSetParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__removeDataSetParameterResponse;
+			return soap_in_ns1__removeDataSetParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataSetParameter"))
+		{	*type = SOAP_TYPE_ns1__removeDataSetParameter;
+			return soap_in_ns1__removeDataSetParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludesPaginationResponse"))
+		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse;
+			return soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludesPagination"))
+		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination;
+			return soap_in_ns1__getMyInvestigationsIncludesPagination(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludesResponse"))
+		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse;
+			return soap_in_ns1__getMyInvestigationsIncludesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsIncludes"))
+		{	*type = SOAP_TYPE_ns1__getMyInvestigationsIncludes;
+			return soap_in_ns1__getMyInvestigationsIncludes(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getMyInvestigationsResponse"))
+		{	*type = SOAP_TYPE_ns1__getMyInvestigationsResponse;
+			return soap_in_ns1__getMyInvestigationsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getMyInvestigations"))
+		{	*type = SOAP_TYPE_ns1__getMyInvestigations;
+			return soap_in_ns1__getMyInvestigations(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByKeywordsAllResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByKeywordsAllResponse;
+			return soap_in_ns1__searchByKeywordsAllResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:keywordDetails"))
+		{	*type = SOAP_TYPE_ns1__keywordDetails;
+			return soap_in_ns1__keywordDetails(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByKeywordsAll"))
+		{	*type = SOAP_TYPE_ns1__searchByKeywordsAll;
+			return soap_in_ns1__searchByKeywordsAll(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByKeywordsResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByKeywordsResponse;
+			return soap_in_ns1__searchByKeywordsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByKeywords"))
+		{	*type = SOAP_TYPE_ns1__searchByKeywords;
+			return soap_in_ns1__searchByKeywords(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:checkDatasetDownloadAccessResponse"))
+		{	*type = SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse;
+			return soap_in_ns1__checkDatasetDownloadAccessResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:checkDatasetDownloadAccess"))
+		{	*type = SOAP_TYPE_ns1__checkDatasetDownloadAccess;
+			return soap_in_ns1__checkDatasetDownloadAccess(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserSurnamePaginationResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse;
+			return soap_in_ns1__searchByUserSurnamePaginationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserSurnamePagination"))
+		{	*type = SOAP_TYPE_ns1__searchByUserSurnamePagination;
+			return soap_in_ns1__searchByUserSurnamePagination(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserSurnameResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByUserSurnameResponse;
+			return soap_in_ns1__searchByUserSurnameResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByUserSurname"))
+		{	*type = SOAP_TYPE_ns1__searchByUserSurname;
+			return soap_in_ns1__searchByUserSurname(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataFileResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteDataFileResponse;
+			return soap_in_ns1__deleteDataFileResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteDataFile"))
+		{	*type = SOAP_TYPE_ns1__deleteDataFile;
+			return soap_in_ns1__deleteDataFile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadInfo"))
+		{	*type = SOAP_TYPE_ns1__downloadInfo;
+			return soap_in_ns1__downloadInfo(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:checkDatafileDownloadAccessResponse"))
+		{	*type = SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse;
+			return soap_in_ns1__checkDatafileDownloadAccessResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:checkDatafileDownloadAccess"))
+		{	*type = SOAP_TYPE_ns1__checkDatafileDownloadAccess;
+			return soap_in_ns1__checkDatafileDownloadAccess(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFacilityUserIdResponse"))
+		{	*type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse;
+			return soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFacilityUserId"))
+		{	*type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserId;
+			return soap_in_ns1__getFacilityUserByFacilityUserId(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addSampleParameterResponse"))
+		{	*type = SOAP_TYPE_ns1__addSampleParameterResponse;
+			return soap_in_ns1__addSampleParameterResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addSampleParameter"))
+		{	*type = SOAP_TYPE_ns1__addSampleParameter;
+			return soap_in_ns1__addSampleParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataSetResponse"))
+		{	*type = SOAP_TYPE_ns1__modifyDataSetResponse;
+			return soap_in_ns1__modifyDataSetResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifyDataSet"))
+		{	*type = SOAP_TYPE_ns1__modifyDataSet;
+			return soap_in_ns1__modifyDataSet(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadDatafilesResponse"))
+		{	*type = SOAP_TYPE_ns1__downloadDatafilesResponse;
+			return soap_in_ns1__downloadDatafilesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadDatafiles"))
+		{	*type = SOAP_TYPE_ns1__downloadDatafiles;
+			return soap_in_ns1__downloadDatafiles(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:NoSuchUserException"))
+		{	*type = SOAP_TYPE_ns1__NoSuchUserException;
+			return soap_in_ns1__NoSuchUserException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:userDetails"))
+		{	*type = SOAP_TYPE_ns1__userDetails;
+			return soap_in_ns1__userDetails(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getUserDetailsResponse"))
+		{	*type = SOAP_TYPE_ns1__getUserDetailsResponse;
+			return soap_in_ns1__getUserDetailsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getUserDetails"))
+		{	*type = SOAP_TYPE_ns1__getUserDetails;
+			return soap_in_ns1__getUserDetails(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getAllKeywordsResponse"))
+		{	*type = SOAP_TYPE_ns1__getAllKeywordsResponse;
+			return soap_in_ns1__getAllKeywordsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getAllKeywords"))
+		{	*type = SOAP_TYPE_ns1__getAllKeywords;
+			return soap_in_ns1__getAllKeywords(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removePublicationResponse"))
+		{	*type = SOAP_TYPE_ns1__removePublicationResponse;
+			return soap_in_ns1__removePublicationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removePublication"))
+		{	*type = SOAP_TYPE_ns1__removePublication;
+			return soap_in_ns1__removePublication(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataSetsResponse"))
+		{	*type = SOAP_TYPE_ns1__createDataSetsResponse;
+			return soap_in_ns1__createDataSetsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataSets"))
+		{	*type = SOAP_TYPE_ns1__createDataSets;
+			return soap_in_ns1__createDataSets(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteInvestigationResponse"))
+		{	*type = SOAP_TYPE_ns1__deleteInvestigationResponse;
+			return soap_in_ns1__deleteInvestigationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:deleteInvestigation"))
+		{	*type = SOAP_TYPE_ns1__deleteInvestigation;
+			return soap_in_ns1__deleteInvestigation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeKeywordResponse"))
+		{	*type = SOAP_TYPE_ns1__removeKeywordResponse;
+			return soap_in_ns1__removeKeywordResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeKeyword"))
+		{	*type = SOAP_TYPE_ns1__removeKeyword;
+			return soap_in_ns1__removeKeyword(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeInvestigatorResponse"))
+		{	*type = SOAP_TYPE_ns1__removeInvestigatorResponse;
+			return soap_in_ns1__removeInvestigatorResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeInvestigator"))
+		{	*type = SOAP_TYPE_ns1__removeInvestigator;
+			return soap_in_ns1__removeInvestigator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeInvestigationResponse"))
+		{	*type = SOAP_TYPE_ns1__removeInvestigationResponse;
+			return soap_in_ns1__removeInvestigationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeInvestigation"))
+		{	*type = SOAP_TYPE_ns1__removeInvestigation;
+			return soap_in_ns1__removeInvestigation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFederalIdResponse"))
+		{	*type = SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse;
+			return soap_in_ns1__getFacilityUserByFederalIdResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:getFacilityUserByFederalId"))
+		{	*type = SOAP_TYPE_ns1__getFacilityUserByFederalId;
+			return soap_in_ns1__getFacilityUserByFederalId(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadDatasetResponse"))
+		{	*type = SOAP_TYPE_ns1__downloadDatasetResponse;
+			return soap_in_ns1__downloadDatasetResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:downloadDataset"))
+		{	*type = SOAP_TYPE_ns1__downloadDataset;
+			return soap_in_ns1__downloadDataset(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:logoutResponse"))
+		{	*type = SOAP_TYPE_ns1__logoutResponse;
+			return soap_in_ns1__logoutResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:logout"))
+		{	*type = SOAP_TYPE_ns1__logout;
+			return soap_in_ns1__logout(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listFacilityCyclesResponse"))
+		{	*type = SOAP_TYPE_ns1__listFacilityCyclesResponse;
+			return soap_in_ns1__listFacilityCyclesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listFacilityCycles"))
+		{	*type = SOAP_TYPE_ns1__listFacilityCycles;
+			return soap_in_ns1__listFacilityCycles(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataFileParametersResponse"))
+		{	*type = SOAP_TYPE_ns1__addDataFileParametersResponse;
+			return soap_in_ns1__addDataFileParametersResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:addDataFileParameters"))
+		{	*type = SOAP_TYPE_ns1__addDataFileParameters;
+			return soap_in_ns1__addDataFileParameters(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeAuthorisationResponse"))
+		{	*type = SOAP_TYPE_ns1__removeAuthorisationResponse;
+			return soap_in_ns1__removeAuthorisationResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeAuthorisation"))
+		{	*type = SOAP_TYPE_ns1__removeAuthorisation;
+			return soap_in_ns1__removeAuthorisation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataFileResponse"))
+		{	*type = SOAP_TYPE_ns1__removeDataFileResponse;
+			return soap_in_ns1__removeDataFileResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeDataFile"))
+		{	*type = SOAP_TYPE_ns1__removeDataFile;
+			return soap_in_ns1__removeDataFile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparatorsResponse"))
+		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse;
+			return soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchDatafilesByParameterComparators"))
+		{	*type = SOAP_TYPE_ns1__searchDatafilesByParameterComparators;
+			return soap_in_ns1__searchDatafilesByParameterComparators(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:ParameterSearchException"))
+		{	*type = SOAP_TYPE_ns1__ParameterSearchException;
+			return soap_in_ns1__ParameterSearchException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:shiftPK"))
+		{	*type = SOAP_TYPE_ns1__shiftPK;
+			return soap_in_ns1__shiftPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:shift"))
+		{	*type = SOAP_TYPE_ns1__shift;
+			return soap_in_ns1__shift(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:publication"))
+		{	*type = SOAP_TYPE_ns1__publication;
+			return soap_in_ns1__publication(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:keywordPK"))
+		{	*type = SOAP_TYPE_ns1__keywordPK;
+			return soap_in_ns1__keywordPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:keyword"))
+		{	*type = SOAP_TYPE_ns1__keyword;
+			return soap_in_ns1__keyword(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:investigatorPK"))
+		{	*type = SOAP_TYPE_ns1__investigatorPK;
+			return soap_in_ns1__investigatorPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:facilityUser"))
+		{	*type = SOAP_TYPE_ns1__facilityUser;
+			return soap_in_ns1__facilityUser(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:investigator"))
+		{	*type = SOAP_TYPE_ns1__investigator;
+			return soap_in_ns1__investigator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:facilityCycle"))
+		{	*type = SOAP_TYPE_ns1__facilityCycle;
+			return soap_in_ns1__facilityCycle(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datasetParameterPK"))
+		{	*type = SOAP_TYPE_ns1__datasetParameterPK;
+			return soap_in_ns1__datasetParameterPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datasetParameter"))
+		{	*type = SOAP_TYPE_ns1__datasetParameter;
+			return soap_in_ns1__datasetParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:dataset"))
+		{	*type = SOAP_TYPE_ns1__dataset;
+			return soap_in_ns1__dataset(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:investigation"))
+		{	*type = SOAP_TYPE_ns1__investigation;
+			return soap_in_ns1__investigation(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparatorsResponse"))
+		{	*type = SOAP_TYPE_ns1__searchByParameterComparatorsResponse;
+			return soap_in_ns1__searchByParameterComparatorsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterPK"))
+		{	*type = SOAP_TYPE_ns1__parameterPK;
+			return soap_in_ns1__parameterPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameter"))
+		{	*type = SOAP_TYPE_ns1__parameter;
+			return soap_in_ns1__parameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterValued"))
+		{	*type = SOAP_TYPE_ns1__parameterValued;
+			return soap_in_ns1__parameterValued(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterCondition"))
+		{	*type = SOAP_TYPE_ns1__parameterCondition;
+			return soap_in_ns1__parameterCondition(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterComparisonCondition"))
+		{	*type = SOAP_TYPE_ns1__parameterComparisonCondition;
+			return soap_in_ns1__parameterComparisonCondition(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchByParameterComparators"))
+		{	*type = SOAP_TYPE_ns1__searchByParameterComparators;
+			return soap_in_ns1__searchByParameterComparators(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifySampleResponse"))
+		{	*type = SOAP_TYPE_ns1__modifySampleResponse;
+			return soap_in_ns1__modifySampleResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:modifySample"))
+		{	*type = SOAP_TYPE_ns1__modifySample;
+			return soap_in_ns1__modifySample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:ValidationException"))
+		{	*type = SOAP_TYPE_ns1__ValidationException;
+			return soap_in_ns1__ValidationException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataFileResponse"))
+		{	*type = SOAP_TYPE_ns1__createDataFileResponse;
+			return soap_in_ns1__createDataFileResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:relatedDatafilesPK"))
+		{	*type = SOAP_TYPE_ns1__relatedDatafilesPK;
+			return soap_in_ns1__relatedDatafilesPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:relatedDatafiles"))
+		{	*type = SOAP_TYPE_ns1__relatedDatafiles;
+			return soap_in_ns1__relatedDatafiles(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafileParameterPK"))
+		{	*type = SOAP_TYPE_ns1__datafileParameterPK;
+			return soap_in_ns1__datafileParameterPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafileParameter"))
+		{	*type = SOAP_TYPE_ns1__datafileParameter;
+			return soap_in_ns1__datafileParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafileFormatPK"))
+		{	*type = SOAP_TYPE_ns1__datafileFormatPK;
+			return soap_in_ns1__datafileFormatPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafileFormat"))
+		{	*type = SOAP_TYPE_ns1__datafileFormat;
+			return soap_in_ns1__datafileFormat(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafile"))
+		{	*type = SOAP_TYPE_ns1__datafile;
+			return soap_in_ns1__datafile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:createDataFile"))
+		{	*type = SOAP_TYPE_ns1__createDataFile;
+			return soap_in_ns1__createDataFile(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listInstrumentsResponse"))
+		{	*type = SOAP_TYPE_ns1__listInstrumentsResponse;
+			return soap_in_ns1__listInstrumentsResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listInstruments"))
+		{	*type = SOAP_TYPE_ns1__listInstruments;
+			return soap_in_ns1__listInstruments(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:NoSuchObjectFoundException"))
+		{	*type = SOAP_TYPE_ns1__NoSuchObjectFoundException;
+			return soap_in_ns1__NoSuchObjectFoundException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:InsufficientPrivilegesException"))
+		{	*type = SOAP_TYPE_ns1__InsufficientPrivilegesException;
+			return soap_in_ns1__InsufficientPrivilegesException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeSampleResponse"))
+		{	*type = SOAP_TYPE_ns1__removeSampleResponse;
+			return soap_in_ns1__removeSampleResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:removeSample"))
+		{	*type = SOAP_TYPE_ns1__removeSample;
+			return soap_in_ns1__removeSample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:icatRole"))
+		{	*type = SOAP_TYPE_ns1__icatRole;
+			return soap_in_ns1__icatRole(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:entityPrimaryKeyBaseBean"))
+		{	*type = SOAP_TYPE_ns1__entityPrimaryKeyBaseBean;
+			return soap_in_ns1__entityPrimaryKeyBaseBean(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:sampleParameterPK"))
+		{	*type = SOAP_TYPE_ns1__sampleParameterPK;
+			return soap_in_ns1__sampleParameterPK(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:sampleParameter"))
+		{	*type = SOAP_TYPE_ns1__sampleParameter;
+			return soap_in_ns1__sampleParameter(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:entityBaseBean"))
+		{	*type = SOAP_TYPE_ns1__entityBaseBean;
+			return soap_in_ns1__entityBaseBean(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:sample"))
+		{	*type = SOAP_TYPE_ns1__sample;
+			return soap_in_ns1__sample(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchSamplesBySampleNameResponse"))
+		{	*type = SOAP_TYPE_ns1__searchSamplesBySampleNameResponse;
+			return soap_in_ns1__searchSamplesBySampleNameResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:searchSamplesBySampleName"))
+		{	*type = SOAP_TYPE_ns1__searchSamplesBySampleName;
+			return soap_in_ns1__searchSamplesBySampleName(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:SessionException"))
+		{	*type = SOAP_TYPE_ns1__SessionException;
+			return soap_in_ns1__SessionException(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listDatasetTypesResponse"))
+		{	*type = SOAP_TYPE_ns1__listDatasetTypesResponse;
+			return soap_in_ns1__listDatasetTypesResponse(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:listDatasetTypes"))
+		{	*type = SOAP_TYPE_ns1__listDatasetTypes;
+			return soap_in_ns1__listDatasetTypes(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:string"))
+		{	*type = SOAP_TYPE_std__string;
+			return soap_in_std__string(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:string"))
+		{	*type = SOAP_TYPE_xsd__string;
+			return soap_in_xsd__string(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:long"))
+		{	*type = SOAP_TYPE_xsd__long;
+			return soap_in_xsd__long(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:int"))
+		{	*type = SOAP_TYPE_xsd__int;
+			return soap_in_xsd__int(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:float"))
+		{	*type = SOAP_TYPE_xsd__float;
+			return soap_in_xsd__float(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:double"))
+		{	*type = SOAP_TYPE_xsd__double;
+			return soap_in_xsd__double(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:dateTime"))
+		{	*type = SOAP_TYPE_xsd__dateTime;
+			return soap_in_xsd__dateTime(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:boolean"))
+		{	*type = SOAP_TYPE_xsd__boolean;
+			return soap_in_xsd__boolean(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:anyType"))
+		{	*type = SOAP_TYPE_xsd__anyType;
+			return soap_in_xsd__anyType(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:byte"))
+		{	*type = SOAP_TYPE_byte;
+			return soap_in_byte(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:int"))
+		{	*type = SOAP_TYPE_int;
+			return soap_in_int(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:long"))
+		{	*type = SOAP_TYPE_LONG64;
+			return soap_in_LONG64(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:float"))
+		{	*type = SOAP_TYPE_float;
+			return soap_in_float(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:double"))
+		{	*type = SOAP_TYPE_double;
+			return soap_in_double(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:dateTime"))
+		{	*type = SOAP_TYPE_time;
+			return soap_in_time(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datasetInclude"))
+		{	*type = SOAP_TYPE_ns1__datasetInclude;
+			return soap_in_ns1__datasetInclude(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:elementType"))
+		{	*type = SOAP_TYPE_ns1__elementType;
+			return soap_in_ns1__elementType(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:logicalOperator"))
+		{	*type = SOAP_TYPE_ns1__logicalOperator;
+			return soap_in_ns1__logicalOperator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:investigationInclude"))
+		{	*type = SOAP_TYPE_ns1__investigationInclude;
+			return soap_in_ns1__investigationInclude(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:keywordType"))
+		{	*type = SOAP_TYPE_ns1__keywordType;
+			return soap_in_ns1__keywordType(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterType"))
+		{	*type = SOAP_TYPE_ns1__parameterType;
+			return soap_in_ns1__parameterType(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:comparisonOperator"))
+		{	*type = SOAP_TYPE_ns1__comparisonOperator;
+			return soap_in_ns1__comparisonOperator(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:datafileInclude"))
+		{	*type = SOAP_TYPE_ns1__datafileInclude;
+			return soap_in_ns1__datafileInclude(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "ns1:parameterValueType"))
+		{	*type = SOAP_TYPE_ns1__parameterValueType;
+			return soap_in_ns1__parameterValueType(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:boolean"))
+		{	*type = SOAP_TYPE_bool;
+			return soap_in_bool(soap, NULL, NULL, NULL);
+		}
+		if (!soap_match_tag(soap, t, "xsd:QName"))
+		{	char **s;
+			*type = SOAP_TYPE__QName;
+			s = soap_in__QName(soap, NULL, NULL, NULL);
+			return s ? *s : NULL;
+		}
+		if (!soap_match_tag(soap, t, "xsd:string"))
+		{	char **s;
+			*type = SOAP_TYPE_string;
+			s = soap_in_string(soap, NULL, NULL, NULL);
+			return s ? *s : NULL;
+		}
+		t = soap->tag;
+	}
+	}
+	soap->error = SOAP_TAG_MISMATCH;
+	return NULL;
+}
+
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_ignore_element(struct soap *soap)
+{
+	if (!soap_peek_element(soap))
+	{	int t;
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Unexpected element '%s' in input (level=%u, %d)\n", soap->tag, soap->level, soap->body));
+		if (soap->mustUnderstand && !soap->other)
+			return soap->error = SOAP_MUSTUNDERSTAND;
+		if (((soap->mode & SOAP_XML_STRICT) && soap->part != SOAP_IN_HEADER) || !soap_match_tag(soap, soap->tag, "SOAP-ENV:"))
+		{	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "REJECTING element '%s'\n", soap->tag));
+			return soap->error = SOAP_TAG_MISMATCH;
+		}
+		if (!*soap->id || !soap_getelement(soap, &t))
+		{	soap->peeked = 0;
+			if (soap->fignore)
+				soap->error = soap->fignore(soap, soap->tag);
+			else
+				soap->error = SOAP_OK;
+			DBGLOG(TEST, if (!soap->error) SOAP_MESSAGE(fdebug, "IGNORING element '%s'\n", soap->tag));
+			if (!soap->error && soap->body)
+			{	soap->level++;
+				while (!soap_ignore_element(soap))
+					;
+				if (soap->error == SOAP_NO_TAG)
+					soap->error = soap_element_end_in(soap, NULL);
+			}
+		}
+	}
+	return soap->error;
+}
+
+#ifndef WITH_NOIDREF
+SOAP_FMAC3 int SOAP_FMAC4 soap_putindependent(struct soap *soap)
+{
+	int i;
+	struct soap_plist *pp;
+	if (soap->version == 1 && soap->encodingStyle && !(soap->mode & (SOAP_XML_TREE | SOAP_XML_GRAPH)))
+		for (i = 0; i < SOAP_PTRHASH; i++)
+			for (pp = soap->pht[i]; pp; pp = pp->next)
+				if (pp->mark1 == 2 || pp->mark2 == 2)
+					if (soap_putelement(soap, pp->ptr, "id", pp->id, pp->type))
+						return soap->error;
+	return SOAP_OK;
+}
+#endif
+
+#ifndef WITH_NOIDREF
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+SOAP_FMAC3 int SOAP_FMAC4 soap_putelement(struct soap *soap, const void *ptr, const char *tag, int id, int type)
+{
+	switch (type)
+	{
+	case SOAP_TYPE_byte:
+		return soap_out_byte(soap, tag, id, (const char *)ptr, "xsd:byte");
+	case SOAP_TYPE_int:
+		return soap_out_int(soap, tag, id, (const int *)ptr, "xsd:int");
+	case SOAP_TYPE_LONG64:
+		return soap_out_LONG64(soap, tag, id, (const LONG64 *)ptr, "xsd:long");
+	case SOAP_TYPE_float:
+		return soap_out_float(soap, tag, id, (const float *)ptr, "xsd:float");
+	case SOAP_TYPE_double:
+		return soap_out_double(soap, tag, id, (const double *)ptr, "xsd:double");
+	case SOAP_TYPE_time:
+		return soap_out_time(soap, tag, id, (const time_t *)ptr, "xsd:dateTime");
+	case SOAP_TYPE_ns1__datasetInclude:
+		return soap_out_ns1__datasetInclude(soap, tag, id, (const enum ns1__datasetInclude *)ptr, "ns1:datasetInclude");
+	case SOAP_TYPE_ns1__elementType:
+		return soap_out_ns1__elementType(soap, tag, id, (const enum ns1__elementType *)ptr, "ns1:elementType");
+	case SOAP_TYPE_ns1__logicalOperator:
+		return soap_out_ns1__logicalOperator(soap, tag, id, (const enum ns1__logicalOperator *)ptr, "ns1:logicalOperator");
+	case SOAP_TYPE_ns1__investigationInclude:
+		return soap_out_ns1__investigationInclude(soap, tag, id, (const enum ns1__investigationInclude *)ptr, "ns1:investigationInclude");
+	case SOAP_TYPE_ns1__keywordType:
+		return soap_out_ns1__keywordType(soap, tag, id, (const enum ns1__keywordType *)ptr, "ns1:keywordType");
+	case SOAP_TYPE_ns1__parameterType:
+		return soap_out_ns1__parameterType(soap, tag, id, (const enum ns1__parameterType *)ptr, "ns1:parameterType");
+	case SOAP_TYPE_ns1__comparisonOperator:
+		return soap_out_ns1__comparisonOperator(soap, tag, id, (const enum ns1__comparisonOperator *)ptr, "ns1:comparisonOperator");
+	case SOAP_TYPE_ns1__datafileInclude:
+		return soap_out_ns1__datafileInclude(soap, tag, id, (const enum ns1__datafileInclude *)ptr, "ns1:datafileInclude");
+	case SOAP_TYPE_ns1__parameterValueType:
+		return soap_out_ns1__parameterValueType(soap, tag, id, (const enum ns1__parameterValueType *)ptr, "ns1:parameterValueType");
+	case SOAP_TYPE_bool:
+		return soap_out_bool(soap, tag, id, (const bool *)ptr, "xsd:boolean");
+	case SOAP_TYPE_ns1__datasetInclude_:
+		return ((ns1__datasetInclude_ *)ptr)->soap_out(soap, tag, id, "ns1:datasetInclude");
+	case SOAP_TYPE_ns1__elementType_:
+		return ((ns1__elementType_ *)ptr)->soap_out(soap, tag, id, "ns1:elementType");
+	case SOAP_TYPE_ns1__logicalOperator_:
+		return ((ns1__logicalOperator_ *)ptr)->soap_out(soap, tag, id, "ns1:logicalOperator");
+	case SOAP_TYPE_ns1__investigationInclude_:
+		return ((ns1__investigationInclude_ *)ptr)->soap_out(soap, tag, id, "ns1:investigationInclude");
+	case SOAP_TYPE_ns1__keywordType_:
+		return ((ns1__keywordType_ *)ptr)->soap_out(soap, tag, id, "ns1:keywordType");
+	case SOAP_TYPE_ns1__parameterType_:
+		return ((ns1__parameterType_ *)ptr)->soap_out(soap, tag, id, "ns1:parameterType");
+	case SOAP_TYPE_ns1__comparisonOperator_:
+		return ((ns1__comparisonOperator_ *)ptr)->soap_out(soap, tag, id, "ns1:comparisonOperator");
+	case SOAP_TYPE_ns1__datafileInclude_:
+		return ((ns1__datafileInclude_ *)ptr)->soap_out(soap, tag, id, "ns1:datafileInclude");
+	case SOAP_TYPE_ns1__parameterValueType_:
+		return ((ns1__parameterValueType_ *)ptr)->soap_out(soap, tag, id, "ns1:parameterValueType");
+	case SOAP_TYPE_ns1__getDatasetsResponse:
+		return ((ns1__getDatasetsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetsResponse");
+	case SOAP_TYPE_ns1__getDatasets:
+		return ((ns1__getDatasets *)ptr)->soap_out(soap, tag, id, "ns1:getDatasets");
+	case SOAP_TYPE_ns1__listParametersResponse:
+		return ((ns1__listParametersResponse *)ptr)->soap_out(soap, tag, id, "ns1:listParametersResponse");
+	case SOAP_TYPE_ns1__listParameters:
+		return ((ns1__listParameters *)ptr)->soap_out(soap, tag, id, "ns1:listParameters");
+	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
+		return ((ns1__modifyDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFileParameterResponse");
+	case SOAP_TYPE_ns1__modifyDataFileParameter:
+		return ((ns1__modifyDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFileParameter");
+	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
+		return ((ns1__deleteSampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteSampleParameterResponse");
+	case SOAP_TYPE_ns1__deleteSampleParameter:
+		return ((ns1__deleteSampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:deleteSampleParameter");
+	case SOAP_TYPE_ns1__addDataFileParameterResponse:
+		return ((ns1__addDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParameterResponse");
+	case SOAP_TYPE_ns1__addDataFileParameter:
+		return ((ns1__addDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParameter");
+	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
+		return ((ns1__searchDatasetsBySampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsBySampleResponse");
+	case SOAP_TYPE_ns1__searchDatasetsBySample:
+		return ((ns1__searchDatasetsBySample *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsBySample");
+	case SOAP_TYPE_ns1__createInvestigationResponse:
+		return ((ns1__createInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:createInvestigationResponse");
+	case SOAP_TYPE_ns1__createInvestigation:
+		return ((ns1__createInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:createInvestigation");
+	case SOAP_TYPE_ns1__addPublicationResponse:
+		return ((ns1__addPublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:addPublicationResponse");
+	case SOAP_TYPE_ns1__addPublication:
+		return ((ns1__addPublication *)ptr)->soap_out(soap, tag, id, "ns1:addPublication");
+	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
+		return ((ns1__deleteDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFileParameterResponse");
+	case SOAP_TYPE_ns1__deleteDataFileParameter:
+		return ((ns1__deleteDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFileParameter");
+	case SOAP_TYPE_ns1__getInvestigationResponse:
+		return ((ns1__getInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationResponse");
+	case SOAP_TYPE_ns1__getInvestigation:
+		return ((ns1__getInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigation");
+	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
+		return ((ns1__getInvestigationIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationIncludesResponse");
+	case SOAP_TYPE_ns1__getInvestigationIncludes:
+		return ((ns1__getInvestigationIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationIncludes");
+	case SOAP_TYPE_ns1__modifyDataFileResponse:
+		return ((ns1__modifyDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFileResponse");
+	case SOAP_TYPE_ns1__modifyDataFile:
+		return ((ns1__modifyDataFile *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataFile");
+	case SOAP_TYPE_ns1__getDatafileResponse:
+		return ((ns1__getDatafileResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatafileResponse");
+	case SOAP_TYPE_ns1__getDatafile:
+		return ((ns1__getDatafile *)ptr)->soap_out(soap, tag, id, "ns1:getDatafile");
+	case SOAP_TYPE_ns1__ICATAPIException:
+		return ((ns1__ICATAPIException *)ptr)->soap_out(soap, tag, id, "ns1:ICATAPIException");
+	case SOAP_TYPE_ns1__ingestMetadataResponse:
+		return ((ns1__ingestMetadataResponse *)ptr)->soap_out(soap, tag, id, "ns1:ingestMetadataResponse");
+	case SOAP_TYPE_ns1__ingestMetadata:
+		return ((ns1__ingestMetadata *)ptr)->soap_out(soap, tag, id, "ns1:ingestMetadata");
+	case SOAP_TYPE_ns1__listRolesResponse:
+		return ((ns1__listRolesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listRolesResponse");
+	case SOAP_TYPE_ns1__listRoles:
+		return ((ns1__listRoles *)ptr)->soap_out(soap, tag, id, "ns1:listRoles");
+	case SOAP_TYPE_ns1__getDatasetResponse:
+		return ((ns1__getDatasetResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetResponse");
+	case SOAP_TYPE_ns1__getDataset:
+		return ((ns1__getDataset *)ptr)->soap_out(soap, tag, id, "ns1:getDataset");
+	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
+		return ((ns1__getDatasetIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetIncludesResponse");
+	case SOAP_TYPE_ns1__getDatasetIncludes:
+		return ((ns1__getDatasetIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getDatasetIncludes");
+	case SOAP_TYPE_ns1__updateAuthorisationResponse:
+		return ((ns1__updateAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:updateAuthorisationResponse");
+	case SOAP_TYPE_ns1__updateAuthorisation:
+		return ((ns1__updateAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:updateAuthorisation");
+	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
+		return ((ns1__deleteAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteAuthorisationResponse");
+	case SOAP_TYPE_ns1__deleteAuthorisation:
+		return ((ns1__deleteAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:deleteAuthorisation");
+	case SOAP_TYPE_ns1__deletePublicationResponse:
+		return ((ns1__deletePublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:deletePublicationResponse");
+	case SOAP_TYPE_ns1__deletePublication:
+		return ((ns1__deletePublication *)ptr)->soap_out(soap, tag, id, "ns1:deletePublication");
+	case SOAP_TYPE_ns1__loginResponse:
+		return ((ns1__loginResponse *)ptr)->soap_out(soap, tag, id, "ns1:loginResponse");
+	case SOAP_TYPE_ns1__login:
+		return ((ns1__login *)ptr)->soap_out(soap, tag, id, "ns1:login");
+	case SOAP_TYPE_ns1__loginLifetimeResponse:
+		return ((ns1__loginLifetimeResponse *)ptr)->soap_out(soap, tag, id, "ns1:loginLifetimeResponse");
+	case SOAP_TYPE_ns1__loginLifetime:
+		return ((ns1__loginLifetime *)ptr)->soap_out(soap, tag, id, "ns1:loginLifetime");
+	case SOAP_TYPE_ns1__addSampleResponse:
+		return ((ns1__addSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:addSampleResponse");
+	case SOAP_TYPE_ns1__addSample:
+		return ((ns1__addSample *)ptr)->soap_out(soap, tag, id, "ns1:addSample");
+	case SOAP_TYPE_ns1__addAuthorisationResponse:
+		return ((ns1__addAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:addAuthorisationResponse");
+	case SOAP_TYPE_ns1__addAuthorisation:
+		return ((ns1__addAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:addAuthorisation");
+	case SOAP_TYPE_ns1__addDataSetParameterResponse:
+		return ((ns1__addDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParameterResponse");
+	case SOAP_TYPE_ns1__addDataSetParameter:
+		return ((ns1__addDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParameter");
+	case SOAP_TYPE_ns1__createDataFilesResponse:
+		return ((ns1__createDataFilesResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataFilesResponse");
+	case SOAP_TYPE_ns1__createDataFiles:
+		return ((ns1__createDataFiles *)ptr)->soap_out(soap, tag, id, "ns1:createDataFiles");
+	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
+		return ((ns1__modifyInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigatorResponse");
+	case SOAP_TYPE_ns1__modifyInvestigator:
+		return ((ns1__modifyInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigator");
+	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
+		return ((ns1__searchByParameterComparatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparatorResponse");
+	case SOAP_TYPE_ns1__searchByParameterComparator:
+		return ((ns1__searchByParameterComparator *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparator");
+	case SOAP_TYPE_ns1__modifySampleParameterResponse:
+		return ((ns1__modifySampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifySampleParameterResponse");
+	case SOAP_TYPE_ns1__modifySampleParameter:
+		return ((ns1__modifySampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:modifySampleParameter");
+	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
+		return ((ns1__listDatafileFormatsResponse *)ptr)->soap_out(soap, tag, id, "ns1:listDatafileFormatsResponse");
+	case SOAP_TYPE_ns1__listDatafileFormats:
+		return ((ns1__listDatafileFormats *)ptr)->soap_out(soap, tag, id, "ns1:listDatafileFormats");
+	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
+		return ((ns1__searchByAdvancedPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvancedPaginationResponse");
+	case SOAP_TYPE_ns1__searchByAdvancedPagination:
+		return ((ns1__searchByAdvancedPagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvancedPagination");
+	case SOAP_TYPE_ns1__searchByAdvancedResponse:
+		return ((ns1__searchByAdvancedResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvancedResponse");
+	case SOAP_TYPE_ns1__advancedSearchDetails:
+		return ((ns1__advancedSearchDetails *)ptr)->soap_out(soap, tag, id, "ns1:advancedSearchDetails");
+	case SOAP_TYPE_ns1__searchByAdvanced:
+		return ((ns1__searchByAdvanced *)ptr)->soap_out(soap, tag, id, "ns1:searchByAdvanced");
+	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
+		return ((ns1__searchByRunNumberPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumberPaginationResponse");
+	case SOAP_TYPE_ns1__searchByRunNumberPagination:
+		return ((ns1__searchByRunNumberPagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumberPagination");
+	case SOAP_TYPE_ns1__searchByRunNumberResponse:
+		return ((ns1__searchByRunNumberResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumberResponse");
+	case SOAP_TYPE_ns1__searchByRunNumber:
+		return ((ns1__searchByRunNumber *)ptr)->soap_out(soap, tag, id, "ns1:searchByRunNumber");
+	case SOAP_TYPE_ns1__addDataSetParametersResponse:
+		return ((ns1__addDataSetParametersResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParametersResponse");
+	case SOAP_TYPE_ns1__addDataSetParameters:
+		return ((ns1__addDataSetParameters *)ptr)->soap_out(soap, tag, id, "ns1:addDataSetParameters");
+	case SOAP_TYPE_ns1__deleteKeywordResponse:
+		return ((ns1__deleteKeywordResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteKeywordResponse");
+	case SOAP_TYPE_ns1__deleteKeyword:
+		return ((ns1__deleteKeyword *)ptr)->soap_out(soap, tag, id, "ns1:deleteKeyword");
+	case SOAP_TYPE_ns1__deleteSampleResponse:
+		return ((ns1__deleteSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteSampleResponse");
+	case SOAP_TYPE_ns1__deleteSample:
+		return ((ns1__deleteSample *)ptr)->soap_out(soap, tag, id, "ns1:deleteSample");
+	case SOAP_TYPE_ns1__listDatasetStatusResponse:
+		return ((ns1__listDatasetStatusResponse *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetStatusResponse");
+	case SOAP_TYPE_ns1__listDatasetStatus:
+		return ((ns1__listDatasetStatus *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetStatus");
+	case SOAP_TYPE_ns1__modifyInvestigationResponse:
+		return ((ns1__modifyInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigationResponse");
+	case SOAP_TYPE_ns1__modifyInvestigation:
+		return ((ns1__modifyInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:modifyInvestigation");
+	case SOAP_TYPE_ns1__addKeywordResponse:
+		return ((ns1__addKeywordResponse *)ptr)->soap_out(soap, tag, id, "ns1:addKeywordResponse");
+	case SOAP_TYPE_ns1__addKeyword:
+		return ((ns1__addKeyword *)ptr)->soap_out(soap, tag, id, "ns1:addKeyword");
+	case SOAP_TYPE_ns1__icatAuthorisation:
+		return ((ns1__icatAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:icatAuthorisation");
+	case SOAP_TYPE_ns1__getAuthorisationsResponse:
+		return ((ns1__getAuthorisationsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getAuthorisationsResponse");
+	case SOAP_TYPE_ns1__getAuthorisations:
+		return ((ns1__getAuthorisations *)ptr)->soap_out(soap, tag, id, "ns1:getAuthorisations");
+	case SOAP_TYPE_ns1__removeDataSetResponse:
+		return ((ns1__removeDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSetResponse");
+	case SOAP_TYPE_ns1__removeDataSet:
+		return ((ns1__removeDataSet *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSet");
+	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
+		return ((ns1__modifyDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSetParameterResponse");
+	case SOAP_TYPE_ns1__modifyDataSetParameter:
+		return ((ns1__modifyDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSetParameter");
+	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
+		return ((ns1__listInvestigationTypesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listInvestigationTypesResponse");
+	case SOAP_TYPE_ns1__listInvestigationTypes:
+		return ((ns1__listInvestigationTypes *)ptr)->soap_out(soap, tag, id, "ns1:listInvestigationTypes");
+	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
+		return ((ns1__getKeywordsForUserTypeResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserTypeResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUserType:
+		return ((ns1__getKeywordsForUserType *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserType");
+	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
+		return ((ns1__getKeywordsForUserMaxResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserMaxResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUserMax:
+		return ((ns1__getKeywordsForUserMax *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserMax");
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
+		return ((ns1__getKeywordsForUserStartWithMaxResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserStartWithMaxResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
+		return ((ns1__getKeywordsForUserStartWithMax *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserStartWithMax");
+	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
+		return ((ns1__getKeywordsForUserResponse *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUserResponse");
+	case SOAP_TYPE_ns1__getKeywordsForUser:
+		return ((ns1__getKeywordsForUser *)ptr)->soap_out(soap, tag, id, "ns1:getKeywordsForUser");
+	case SOAP_TYPE_ns1__downloadDatafileResponse:
+		return ((ns1__downloadDatafileResponse *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafileResponse");
+	case SOAP_TYPE_ns1__downloadDatafile:
+		return ((ns1__downloadDatafile *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafile");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
+		return ((ns1__searchDatasetsByParameterComparatorsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparatorsResponse");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
+		return ((ns1__searchDatasetsByParameterComparators *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparators");
+	case SOAP_TYPE_ns1__setDataSetSampleResponse:
+		return ((ns1__setDataSetSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:setDataSetSampleResponse");
+	case SOAP_TYPE_ns1__setDataSetSample:
+		return ((ns1__setDataSetSample *)ptr)->soap_out(soap, tag, id, "ns1:setDataSetSample");
+	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
+		return ((ns1__deleteDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSetParameterResponse");
+	case SOAP_TYPE_ns1__deleteDataSetParameter:
+		return ((ns1__deleteDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSetParameter");
+	case SOAP_TYPE_ns1__removeSampleParameterResponse:
+		return ((ns1__removeSampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeSampleParameterResponse");
+	case SOAP_TYPE_ns1__removeSampleParameter:
+		return ((ns1__removeSampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:removeSampleParameter");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
+		return ((ns1__searchDatasetsByParameterComparatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparatorResponse");
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
+		return ((ns1__searchDatasetsByParameterComparator *)ptr)->soap_out(soap, tag, id, "ns1:searchDatasetsByParameterComparator");
+	case SOAP_TYPE_ns1__createDataSetResponse:
+		return ((ns1__createDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataSetResponse");
+	case SOAP_TYPE_ns1__createDataSet:
+		return ((ns1__createDataSet *)ptr)->soap_out(soap, tag, id, "ns1:createDataSet");
+	case SOAP_TYPE_ns1__addInvestigatorResponse:
+		return ((ns1__addInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:addInvestigatorResponse");
+	case SOAP_TYPE_ns1__addInvestigator:
+		return ((ns1__addInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:addInvestigator");
+	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
+		return ((ns1__deleteInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigatorResponse");
+	case SOAP_TYPE_ns1__deleteInvestigator:
+		return ((ns1__deleteInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigator");
+	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
+		return ((ns1__getICATAPIVersionResponse *)ptr)->soap_out(soap, tag, id, "ns1:getICATAPIVersionResponse");
+	case SOAP_TYPE_ns1__getICATAPIVersion:
+		return ((ns1__getICATAPIVersion *)ptr)->soap_out(soap, tag, id, "ns1:getICATAPIVersion");
+	case SOAP_TYPE_ns1__getDatafilesResponse:
+		return ((ns1__getDatafilesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getDatafilesResponse");
+	case SOAP_TYPE_ns1__getDatafiles:
+		return ((ns1__getDatafiles *)ptr)->soap_out(soap, tag, id, "ns1:getDatafiles");
+	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
+		return ((ns1__searchByParameterOperatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterOperatorResponse");
+	case SOAP_TYPE_ns1__parameterLogicalCondition:
+		return ((ns1__parameterLogicalCondition *)ptr)->soap_out(soap, tag, id, "ns1:parameterLogicalCondition");
+	case SOAP_TYPE_ns1__searchByParameterOperator:
+		return ((ns1__searchByParameterOperator *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterOperator");
+	case SOAP_TYPE_ns1__isSessionValidResponse:
+		return ((ns1__isSessionValidResponse *)ptr)->soap_out(soap, tag, id, "ns1:isSessionValidResponse");
+	case SOAP_TYPE_ns1__isSessionValid:
+		return ((ns1__isSessionValid *)ptr)->soap_out(soap, tag, id, "ns1:isSessionValid");
+	case SOAP_TYPE_ns1__deleteDataSetResponse:
+		return ((ns1__deleteDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSetResponse");
+	case SOAP_TYPE_ns1__deleteDataSet:
+		return ((ns1__deleteDataSet *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataSet");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
+		return ((ns1__searchDatafilesByParameterComparatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparatorResponse");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
+		return ((ns1__searchDatafilesByParameterComparator *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparator");
+	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
+		return ((ns1__getInvestigationsIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationsIncludesResponse");
+	case SOAP_TYPE_ns1__getInvestigationsIncludes:
+		return ((ns1__getInvestigationsIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getInvestigationsIncludes");
+	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
+		return ((ns1__removeDataFileParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFileParameterResponse");
+	case SOAP_TYPE_ns1__removeDataFileParameter:
+		return ((ns1__removeDataFileParameter *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFileParameter");
+	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
+		return ((ns1__searchByUserIDPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserIDPaginationResponse");
+	case SOAP_TYPE_ns1__searchByUserIDPagination:
+		return ((ns1__searchByUserIDPagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserIDPagination");
+	case SOAP_TYPE_ns1__searchByUserIDResponse:
+		return ((ns1__searchByUserIDResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserIDResponse");
+	case SOAP_TYPE_ns1__searchByUserID:
+		return ((ns1__searchByUserID *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserID");
+	case SOAP_TYPE_ns1__modifyPublicationResponse:
+		return ((ns1__modifyPublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyPublicationResponse");
+	case SOAP_TYPE_ns1__modifyPublication:
+		return ((ns1__modifyPublication *)ptr)->soap_out(soap, tag, id, "ns1:modifyPublication");
+	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
+		return ((ns1__removeDataSetParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSetParameterResponse");
+	case SOAP_TYPE_ns1__removeDataSetParameter:
+		return ((ns1__removeDataSetParameter *)ptr)->soap_out(soap, tag, id, "ns1:removeDataSetParameter");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
+		return ((ns1__getMyInvestigationsIncludesPaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludesPaginationResponse");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
+		return ((ns1__getMyInvestigationsIncludesPagination *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludesPagination");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
+		return ((ns1__getMyInvestigationsIncludesResponse *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludesResponse");
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
+		return ((ns1__getMyInvestigationsIncludes *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsIncludes");
+	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
+		return ((ns1__getMyInvestigationsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigationsResponse");
+	case SOAP_TYPE_ns1__getMyInvestigations:
+		return ((ns1__getMyInvestigations *)ptr)->soap_out(soap, tag, id, "ns1:getMyInvestigations");
+	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
+		return ((ns1__searchByKeywordsAllResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywordsAllResponse");
+	case SOAP_TYPE_ns1__keywordDetails:
+		return ((ns1__keywordDetails *)ptr)->soap_out(soap, tag, id, "ns1:keywordDetails");
+	case SOAP_TYPE_ns1__searchByKeywordsAll:
+		return ((ns1__searchByKeywordsAll *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywordsAll");
+	case SOAP_TYPE_ns1__searchByKeywordsResponse:
+		return ((ns1__searchByKeywordsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywordsResponse");
+	case SOAP_TYPE_ns1__searchByKeywords:
+		return ((ns1__searchByKeywords *)ptr)->soap_out(soap, tag, id, "ns1:searchByKeywords");
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
+		return ((ns1__checkDatasetDownloadAccessResponse *)ptr)->soap_out(soap, tag, id, "ns1:checkDatasetDownloadAccessResponse");
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
+		return ((ns1__checkDatasetDownloadAccess *)ptr)->soap_out(soap, tag, id, "ns1:checkDatasetDownloadAccess");
+	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
+		return ((ns1__searchByUserSurnamePaginationResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurnamePaginationResponse");
+	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
+		return ((ns1__searchByUserSurnamePagination *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurnamePagination");
+	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
+		return ((ns1__searchByUserSurnameResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurnameResponse");
+	case SOAP_TYPE_ns1__searchByUserSurname:
+		return ((ns1__searchByUserSurname *)ptr)->soap_out(soap, tag, id, "ns1:searchByUserSurname");
+	case SOAP_TYPE_ns1__deleteDataFileResponse:
+		return ((ns1__deleteDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFileResponse");
+	case SOAP_TYPE_ns1__deleteDataFile:
+		return ((ns1__deleteDataFile *)ptr)->soap_out(soap, tag, id, "ns1:deleteDataFile");
+	case SOAP_TYPE_ns1__downloadInfo:
+		return ((ns1__downloadInfo *)ptr)->soap_out(soap, tag, id, "ns1:downloadInfo");
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
+		return ((ns1__checkDatafileDownloadAccessResponse *)ptr)->soap_out(soap, tag, id, "ns1:checkDatafileDownloadAccessResponse");
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
+		return ((ns1__checkDatafileDownloadAccess *)ptr)->soap_out(soap, tag, id, "ns1:checkDatafileDownloadAccess");
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
+		return ((ns1__getFacilityUserByFacilityUserIdResponse *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFacilityUserIdResponse");
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
+		return ((ns1__getFacilityUserByFacilityUserId *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFacilityUserId");
+	case SOAP_TYPE_ns1__addSampleParameterResponse:
+		return ((ns1__addSampleParameterResponse *)ptr)->soap_out(soap, tag, id, "ns1:addSampleParameterResponse");
+	case SOAP_TYPE_ns1__addSampleParameter:
+		return ((ns1__addSampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:addSampleParameter");
+	case SOAP_TYPE_ns1__modifyDataSetResponse:
+		return ((ns1__modifyDataSetResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSetResponse");
+	case SOAP_TYPE_ns1__modifyDataSet:
+		return ((ns1__modifyDataSet *)ptr)->soap_out(soap, tag, id, "ns1:modifyDataSet");
+	case SOAP_TYPE_ns1__downloadDatafilesResponse:
+		return ((ns1__downloadDatafilesResponse *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafilesResponse");
+	case SOAP_TYPE_ns1__downloadDatafiles:
+		return ((ns1__downloadDatafiles *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatafiles");
+	case SOAP_TYPE_ns1__NoSuchUserException:
+		return ((ns1__NoSuchUserException *)ptr)->soap_out(soap, tag, id, "ns1:NoSuchUserException");
+	case SOAP_TYPE_ns1__userDetails:
+		return ((ns1__userDetails *)ptr)->soap_out(soap, tag, id, "ns1:userDetails");
+	case SOAP_TYPE_ns1__getUserDetailsResponse:
+		return ((ns1__getUserDetailsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getUserDetailsResponse");
+	case SOAP_TYPE_ns1__getUserDetails:
+		return ((ns1__getUserDetails *)ptr)->soap_out(soap, tag, id, "ns1:getUserDetails");
+	case SOAP_TYPE_ns1__getAllKeywordsResponse:
+		return ((ns1__getAllKeywordsResponse *)ptr)->soap_out(soap, tag, id, "ns1:getAllKeywordsResponse");
+	case SOAP_TYPE_ns1__getAllKeywords:
+		return ((ns1__getAllKeywords *)ptr)->soap_out(soap, tag, id, "ns1:getAllKeywords");
+	case SOAP_TYPE_ns1__removePublicationResponse:
+		return ((ns1__removePublicationResponse *)ptr)->soap_out(soap, tag, id, "ns1:removePublicationResponse");
+	case SOAP_TYPE_ns1__removePublication:
+		return ((ns1__removePublication *)ptr)->soap_out(soap, tag, id, "ns1:removePublication");
+	case SOAP_TYPE_ns1__createDataSetsResponse:
+		return ((ns1__createDataSetsResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataSetsResponse");
+	case SOAP_TYPE_ns1__createDataSets:
+		return ((ns1__createDataSets *)ptr)->soap_out(soap, tag, id, "ns1:createDataSets");
+	case SOAP_TYPE_ns1__deleteInvestigationResponse:
+		return ((ns1__deleteInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigationResponse");
+	case SOAP_TYPE_ns1__deleteInvestigation:
+		return ((ns1__deleteInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:deleteInvestigation");
+	case SOAP_TYPE_ns1__removeKeywordResponse:
+		return ((ns1__removeKeywordResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeKeywordResponse");
+	case SOAP_TYPE_ns1__removeKeyword:
+		return ((ns1__removeKeyword *)ptr)->soap_out(soap, tag, id, "ns1:removeKeyword");
+	case SOAP_TYPE_ns1__removeInvestigatorResponse:
+		return ((ns1__removeInvestigatorResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigatorResponse");
+	case SOAP_TYPE_ns1__removeInvestigator:
+		return ((ns1__removeInvestigator *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigator");
+	case SOAP_TYPE_ns1__removeInvestigationResponse:
+		return ((ns1__removeInvestigationResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigationResponse");
+	case SOAP_TYPE_ns1__removeInvestigation:
+		return ((ns1__removeInvestigation *)ptr)->soap_out(soap, tag, id, "ns1:removeInvestigation");
+	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
+		return ((ns1__getFacilityUserByFederalIdResponse *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFederalIdResponse");
+	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
+		return ((ns1__getFacilityUserByFederalId *)ptr)->soap_out(soap, tag, id, "ns1:getFacilityUserByFederalId");
+	case SOAP_TYPE_ns1__downloadDatasetResponse:
+		return ((ns1__downloadDatasetResponse *)ptr)->soap_out(soap, tag, id, "ns1:downloadDatasetResponse");
+	case SOAP_TYPE_ns1__downloadDataset:
+		return ((ns1__downloadDataset *)ptr)->soap_out(soap, tag, id, "ns1:downloadDataset");
+	case SOAP_TYPE_ns1__logoutResponse:
+		return ((ns1__logoutResponse *)ptr)->soap_out(soap, tag, id, "ns1:logoutResponse");
+	case SOAP_TYPE_ns1__logout:
+		return ((ns1__logout *)ptr)->soap_out(soap, tag, id, "ns1:logout");
+	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
+		return ((ns1__listFacilityCyclesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listFacilityCyclesResponse");
+	case SOAP_TYPE_ns1__listFacilityCycles:
+		return ((ns1__listFacilityCycles *)ptr)->soap_out(soap, tag, id, "ns1:listFacilityCycles");
+	case SOAP_TYPE_ns1__addDataFileParametersResponse:
+		return ((ns1__addDataFileParametersResponse *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParametersResponse");
+	case SOAP_TYPE_ns1__addDataFileParameters:
+		return ((ns1__addDataFileParameters *)ptr)->soap_out(soap, tag, id, "ns1:addDataFileParameters");
+	case SOAP_TYPE_ns1__removeAuthorisationResponse:
+		return ((ns1__removeAuthorisationResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeAuthorisationResponse");
+	case SOAP_TYPE_ns1__removeAuthorisation:
+		return ((ns1__removeAuthorisation *)ptr)->soap_out(soap, tag, id, "ns1:removeAuthorisation");
+	case SOAP_TYPE_ns1__removeDataFileResponse:
+		return ((ns1__removeDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFileResponse");
+	case SOAP_TYPE_ns1__removeDataFile:
+		return ((ns1__removeDataFile *)ptr)->soap_out(soap, tag, id, "ns1:removeDataFile");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
+		return ((ns1__searchDatafilesByParameterComparatorsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparatorsResponse");
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
+		return ((ns1__searchDatafilesByParameterComparators *)ptr)->soap_out(soap, tag, id, "ns1:searchDatafilesByParameterComparators");
+	case SOAP_TYPE_ns1__ParameterSearchException:
+		return ((ns1__ParameterSearchException *)ptr)->soap_out(soap, tag, id, "ns1:ParameterSearchException");
+	case SOAP_TYPE_ns1__shiftPK:
+		return ((ns1__shiftPK *)ptr)->soap_out(soap, tag, id, "ns1:shiftPK");
+	case SOAP_TYPE_ns1__shift:
+		return ((ns1__shift *)ptr)->soap_out(soap, tag, id, "ns1:shift");
+	case SOAP_TYPE_ns1__publication:
+		return ((ns1__publication *)ptr)->soap_out(soap, tag, id, "ns1:publication");
+	case SOAP_TYPE_ns1__keywordPK:
+		return ((ns1__keywordPK *)ptr)->soap_out(soap, tag, id, "ns1:keywordPK");
+	case SOAP_TYPE_ns1__keyword:
+		return ((ns1__keyword *)ptr)->soap_out(soap, tag, id, "ns1:keyword");
+	case SOAP_TYPE_ns1__investigatorPK:
+		return ((ns1__investigatorPK *)ptr)->soap_out(soap, tag, id, "ns1:investigatorPK");
+	case SOAP_TYPE_ns1__facilityUser:
+		return ((ns1__facilityUser *)ptr)->soap_out(soap, tag, id, "ns1:facilityUser");
+	case SOAP_TYPE_ns1__investigator:
+		return ((ns1__investigator *)ptr)->soap_out(soap, tag, id, "ns1:investigator");
+	case SOAP_TYPE_ns1__facilityCycle:
+		return ((ns1__facilityCycle *)ptr)->soap_out(soap, tag, id, "ns1:facilityCycle");
+	case SOAP_TYPE_ns1__datasetParameterPK:
+		return ((ns1__datasetParameterPK *)ptr)->soap_out(soap, tag, id, "ns1:datasetParameterPK");
+	case SOAP_TYPE_ns1__datasetParameter:
+		return ((ns1__datasetParameter *)ptr)->soap_out(soap, tag, id, "ns1:datasetParameter");
+	case SOAP_TYPE_ns1__dataset:
+		return ((ns1__dataset *)ptr)->soap_out(soap, tag, id, "ns1:dataset");
+	case SOAP_TYPE_ns1__investigation:
+		return ((ns1__investigation *)ptr)->soap_out(soap, tag, id, "ns1:investigation");
+	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
+		return ((ns1__searchByParameterComparatorsResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparatorsResponse");
+	case SOAP_TYPE_ns1__parameterPK:
+		return ((ns1__parameterPK *)ptr)->soap_out(soap, tag, id, "ns1:parameterPK");
+	case SOAP_TYPE_ns1__parameter:
+		return ((ns1__parameter *)ptr)->soap_out(soap, tag, id, "ns1:parameter");
+	case SOAP_TYPE_ns1__parameterValued:
+		return ((ns1__parameterValued *)ptr)->soap_out(soap, tag, id, "ns1:parameterValued");
+	case SOAP_TYPE_ns1__parameterCondition:
+		return ((ns1__parameterCondition *)ptr)->soap_out(soap, tag, id, "ns1:parameterCondition");
+	case SOAP_TYPE_ns1__parameterComparisonCondition:
+		return ((ns1__parameterComparisonCondition *)ptr)->soap_out(soap, tag, id, "ns1:parameterComparisonCondition");
+	case SOAP_TYPE_ns1__searchByParameterComparators:
+		return ((ns1__searchByParameterComparators *)ptr)->soap_out(soap, tag, id, "ns1:searchByParameterComparators");
+	case SOAP_TYPE_ns1__modifySampleResponse:
+		return ((ns1__modifySampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:modifySampleResponse");
+	case SOAP_TYPE_ns1__modifySample:
+		return ((ns1__modifySample *)ptr)->soap_out(soap, tag, id, "ns1:modifySample");
+	case SOAP_TYPE_ns1__ValidationException:
+		return ((ns1__ValidationException *)ptr)->soap_out(soap, tag, id, "ns1:ValidationException");
+	case SOAP_TYPE_ns1__createDataFileResponse:
+		return ((ns1__createDataFileResponse *)ptr)->soap_out(soap, tag, id, "ns1:createDataFileResponse");
+	case SOAP_TYPE_ns1__relatedDatafilesPK:
+		return ((ns1__relatedDatafilesPK *)ptr)->soap_out(soap, tag, id, "ns1:relatedDatafilesPK");
+	case SOAP_TYPE_ns1__relatedDatafiles:
+		return ((ns1__relatedDatafiles *)ptr)->soap_out(soap, tag, id, "ns1:relatedDatafiles");
+	case SOAP_TYPE_ns1__datafileParameterPK:
+		return ((ns1__datafileParameterPK *)ptr)->soap_out(soap, tag, id, "ns1:datafileParameterPK");
+	case SOAP_TYPE_ns1__datafileParameter:
+		return ((ns1__datafileParameter *)ptr)->soap_out(soap, tag, id, "ns1:datafileParameter");
+	case SOAP_TYPE_ns1__datafileFormatPK:
+		return ((ns1__datafileFormatPK *)ptr)->soap_out(soap, tag, id, "ns1:datafileFormatPK");
+	case SOAP_TYPE_ns1__datafileFormat:
+		return ((ns1__datafileFormat *)ptr)->soap_out(soap, tag, id, "ns1:datafileFormat");
+	case SOAP_TYPE_ns1__datafile:
+		return ((ns1__datafile *)ptr)->soap_out(soap, tag, id, "ns1:datafile");
+	case SOAP_TYPE_ns1__createDataFile:
+		return ((ns1__createDataFile *)ptr)->soap_out(soap, tag, id, "ns1:createDataFile");
+	case SOAP_TYPE_ns1__listInstrumentsResponse:
+		return ((ns1__listInstrumentsResponse *)ptr)->soap_out(soap, tag, id, "ns1:listInstrumentsResponse");
+	case SOAP_TYPE_ns1__listInstruments:
+		return ((ns1__listInstruments *)ptr)->soap_out(soap, tag, id, "ns1:listInstruments");
+	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
+		return ((ns1__NoSuchObjectFoundException *)ptr)->soap_out(soap, tag, id, "ns1:NoSuchObjectFoundException");
+	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
+		return ((ns1__InsufficientPrivilegesException *)ptr)->soap_out(soap, tag, id, "ns1:InsufficientPrivilegesException");
+	case SOAP_TYPE_ns1__removeSampleResponse:
+		return ((ns1__removeSampleResponse *)ptr)->soap_out(soap, tag, id, "ns1:removeSampleResponse");
+	case SOAP_TYPE_ns1__removeSample:
+		return ((ns1__removeSample *)ptr)->soap_out(soap, tag, id, "ns1:removeSample");
+	case SOAP_TYPE_ns1__icatRole:
+		return ((ns1__icatRole *)ptr)->soap_out(soap, tag, id, "ns1:icatRole");
+	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
+		return ((ns1__entityPrimaryKeyBaseBean *)ptr)->soap_out(soap, tag, id, "ns1:entityPrimaryKeyBaseBean");
+	case SOAP_TYPE_ns1__sampleParameterPK:
+		return ((ns1__sampleParameterPK *)ptr)->soap_out(soap, tag, id, "ns1:sampleParameterPK");
+	case SOAP_TYPE_ns1__sampleParameter:
+		return ((ns1__sampleParameter *)ptr)->soap_out(soap, tag, id, "ns1:sampleParameter");
+	case SOAP_TYPE_ns1__entityBaseBean:
+		return ((ns1__entityBaseBean *)ptr)->soap_out(soap, tag, id, "ns1:entityBaseBean");
+	case SOAP_TYPE_ns1__sample:
+		return ((ns1__sample *)ptr)->soap_out(soap, tag, id, "ns1:sample");
+	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
+		return ((ns1__searchSamplesBySampleNameResponse *)ptr)->soap_out(soap, tag, id, "ns1:searchSamplesBySampleNameResponse");
+	case SOAP_TYPE_ns1__searchSamplesBySampleName:
+		return ((ns1__searchSamplesBySampleName *)ptr)->soap_out(soap, tag, id, "ns1:searchSamplesBySampleName");
+	case SOAP_TYPE_ns1__SessionException:
+		return ((ns1__SessionException *)ptr)->soap_out(soap, tag, id, "ns1:SessionException");
+	case SOAP_TYPE_ns1__listDatasetTypesResponse:
+		return ((ns1__listDatasetTypesResponse *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetTypesResponse");
+	case SOAP_TYPE_ns1__listDatasetTypes:
+		return ((ns1__listDatasetTypes *)ptr)->soap_out(soap, tag, id, "ns1:listDatasetTypes");
+	case SOAP_TYPE_std__string:
+		return soap_out_std__string(soap, tag, id, (const std::string *)ptr, "xsd:string");
+	case SOAP_TYPE_xsd__string:
+		return ((xsd__string *)ptr)->soap_out(soap, tag, id, "xsd:string");
+	case SOAP_TYPE_xsd__long:
+		return ((xsd__long *)ptr)->soap_out(soap, tag, id, "xsd:long");
+	case SOAP_TYPE_xsd__int:
+		return ((xsd__int *)ptr)->soap_out(soap, tag, id, "xsd:int");
+	case SOAP_TYPE_xsd__float:
+		return ((xsd__float *)ptr)->soap_out(soap, tag, id, "xsd:float");
+	case SOAP_TYPE_xsd__double:
+		return ((xsd__double *)ptr)->soap_out(soap, tag, id, "xsd:double");
+	case SOAP_TYPE_xsd__dateTime:
+		return ((xsd__dateTime *)ptr)->soap_out(soap, tag, id, "xsd:dateTime");
+	case SOAP_TYPE_xsd__boolean:
+		return ((xsd__boolean *)ptr)->soap_out(soap, tag, id, "xsd:boolean");
+	case SOAP_TYPE_xsd__anyType:
+		return ((xsd__anyType *)ptr)->soap_out(soap, tag, id, "xsd:anyType");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse:
+		return soap_out_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, tag, id, (ns1__searchDatafilesByParameterComparatorsResponse *const*)ptr, "ns1:searchDatafilesByParameterComparatorsResponse");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators:
+		return soap_out_PointerTons1__searchDatafilesByParameterComparators(soap, tag, id, (ns1__searchDatafilesByParameterComparators *const*)ptr, "ns1:searchDatafilesByParameterComparators");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse:
+		return soap_out_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, tag, id, (ns1__searchDatafilesByParameterComparatorResponse *const*)ptr, "ns1:searchDatafilesByParameterComparatorResponse");
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator:
+		return soap_out_PointerTons1__searchDatafilesByParameterComparator(soap, tag, id, (ns1__searchDatafilesByParameterComparator *const*)ptr, "ns1:searchDatafilesByParameterComparator");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse:
+		return soap_out_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, tag, id, (ns1__searchDatasetsByParameterComparatorsResponse *const*)ptr, "ns1:searchDatasetsByParameterComparatorsResponse");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators:
+		return soap_out_PointerTons1__searchDatasetsByParameterComparators(soap, tag, id, (ns1__searchDatasetsByParameterComparators *const*)ptr, "ns1:searchDatasetsByParameterComparators");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse:
+		return soap_out_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, tag, id, (ns1__searchDatasetsByParameterComparatorResponse *const*)ptr, "ns1:searchDatasetsByParameterComparatorResponse");
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator:
+		return soap_out_PointerTons1__searchDatasetsByParameterComparator(soap, tag, id, (ns1__searchDatasetsByParameterComparator *const*)ptr, "ns1:searchDatasetsByParameterComparator");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse:
+		return soap_out_PointerTons1__searchByParameterComparatorsResponse(soap, tag, id, (ns1__searchByParameterComparatorsResponse *const*)ptr, "ns1:searchByParameterComparatorsResponse");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparators:
+		return soap_out_PointerTons1__searchByParameterComparators(soap, tag, id, (ns1__searchByParameterComparators *const*)ptr, "ns1:searchByParameterComparators");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse:
+		return soap_out_PointerTons1__searchByParameterComparatorResponse(soap, tag, id, (ns1__searchByParameterComparatorResponse *const*)ptr, "ns1:searchByParameterComparatorResponse");
+	case SOAP_TYPE_PointerTons1__searchByParameterComparator:
+		return soap_out_PointerTons1__searchByParameterComparator(soap, tag, id, (ns1__searchByParameterComparator *const*)ptr, "ns1:searchByParameterComparator");
+	case SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse:
+		return soap_out_PointerTons1__searchByParameterOperatorResponse(soap, tag, id, (ns1__searchByParameterOperatorResponse *const*)ptr, "ns1:searchByParameterOperatorResponse");
+	case SOAP_TYPE_PointerTons1__searchByParameterOperator:
+		return soap_out_PointerTons1__searchByParameterOperator(soap, tag, id, (ns1__searchByParameterOperator *const*)ptr, "ns1:searchByParameterOperator");
+	case SOAP_TYPE_PointerTons1__isSessionValidResponse:
+		return soap_out_PointerTons1__isSessionValidResponse(soap, tag, id, (ns1__isSessionValidResponse *const*)ptr, "ns1:isSessionValidResponse");
+	case SOAP_TYPE_PointerTons1__isSessionValid:
+		return soap_out_PointerTons1__isSessionValid(soap, tag, id, (ns1__isSessionValid *const*)ptr, "ns1:isSessionValid");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse:
+		return soap_out_PointerTons1__getFacilityUserByFederalIdResponse(soap, tag, id, (ns1__getFacilityUserByFederalIdResponse *const*)ptr, "ns1:getFacilityUserByFederalIdResponse");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalId:
+		return soap_out_PointerTons1__getFacilityUserByFederalId(soap, tag, id, (ns1__getFacilityUserByFederalId *const*)ptr, "ns1:getFacilityUserByFederalId");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse:
+		return soap_out_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, tag, id, (ns1__getFacilityUserByFacilityUserIdResponse *const*)ptr, "ns1:getFacilityUserByFacilityUserIdResponse");
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId:
+		return soap_out_PointerTons1__getFacilityUserByFacilityUserId(soap, tag, id, (ns1__getFacilityUserByFacilityUserId *const*)ptr, "ns1:getFacilityUserByFacilityUserId");
+	case SOAP_TYPE_PointerTons1__getICATAPIVersionResponse:
+		return soap_out_PointerTons1__getICATAPIVersionResponse(soap, tag, id, (ns1__getICATAPIVersionResponse *const*)ptr, "ns1:getICATAPIVersionResponse");
+	case SOAP_TYPE_PointerTons1__getICATAPIVersion:
+		return soap_out_PointerTons1__getICATAPIVersion(soap, tag, id, (ns1__getICATAPIVersion *const*)ptr, "ns1:getICATAPIVersion");
+	case SOAP_TYPE_PointerTons1__ingestMetadataResponse:
+		return soap_out_PointerTons1__ingestMetadataResponse(soap, tag, id, (ns1__ingestMetadataResponse *const*)ptr, "ns1:ingestMetadataResponse");
+	case SOAP_TYPE_PointerTons1__ingestMetadata:
+		return soap_out_PointerTons1__ingestMetadata(soap, tag, id, (ns1__ingestMetadata *const*)ptr, "ns1:ingestMetadata");
+	case SOAP_TYPE_PointerTons1__removeDataSetParameterResponse:
+		return soap_out_PointerTons1__removeDataSetParameterResponse(soap, tag, id, (ns1__removeDataSetParameterResponse *const*)ptr, "ns1:removeDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__removeDataSetParameter:
+		return soap_out_PointerTons1__removeDataSetParameter(soap, tag, id, (ns1__removeDataSetParameter *const*)ptr, "ns1:removeDataSetParameter");
+	case SOAP_TYPE_PointerTons1__removeDataSetResponse:
+		return soap_out_PointerTons1__removeDataSetResponse(soap, tag, id, (ns1__removeDataSetResponse *const*)ptr, "ns1:removeDataSetResponse");
+	case SOAP_TYPE_PointerTons1__removeDataSet:
+		return soap_out_PointerTons1__removeDataSet(soap, tag, id, (ns1__removeDataSet *const*)ptr, "ns1:removeDataSet");
+	case SOAP_TYPE_PointerTons1__addDataSetParametersResponse:
+		return soap_out_PointerTons1__addDataSetParametersResponse(soap, tag, id, (ns1__addDataSetParametersResponse *const*)ptr, "ns1:addDataSetParametersResponse");
+	case SOAP_TYPE_PointerTons1__addDataSetParameters:
+		return soap_out_PointerTons1__addDataSetParameters(soap, tag, id, (ns1__addDataSetParameters *const*)ptr, "ns1:addDataSetParameters");
+	case SOAP_TYPE_PointerTons1__addDataSetParameterResponse:
+		return soap_out_PointerTons1__addDataSetParameterResponse(soap, tag, id, (ns1__addDataSetParameterResponse *const*)ptr, "ns1:addDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__addDataSetParameter:
+		return soap_out_PointerTons1__addDataSetParameter(soap, tag, id, (ns1__addDataSetParameter *const*)ptr, "ns1:addDataSetParameter");
+	case SOAP_TYPE_PointerTons1__setDataSetSampleResponse:
+		return soap_out_PointerTons1__setDataSetSampleResponse(soap, tag, id, (ns1__setDataSetSampleResponse *const*)ptr, "ns1:setDataSetSampleResponse");
+	case SOAP_TYPE_PointerTons1__setDataSetSample:
+		return soap_out_PointerTons1__setDataSetSample(soap, tag, id, (ns1__setDataSetSample *const*)ptr, "ns1:setDataSetSample");
+	case SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse:
+		return soap_out_PointerTons1__modifyDataSetParameterResponse(soap, tag, id, (ns1__modifyDataSetParameterResponse *const*)ptr, "ns1:modifyDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataSetParameter:
+		return soap_out_PointerTons1__modifyDataSetParameter(soap, tag, id, (ns1__modifyDataSetParameter *const*)ptr, "ns1:modifyDataSetParameter");
+	case SOAP_TYPE_PointerTons1__modifyDataSetResponse:
+		return soap_out_PointerTons1__modifyDataSetResponse(soap, tag, id, (ns1__modifyDataSetResponse *const*)ptr, "ns1:modifyDataSetResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataSet:
+		return soap_out_PointerTons1__modifyDataSet(soap, tag, id, (ns1__modifyDataSet *const*)ptr, "ns1:modifyDataSet");
+	case SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse:
+		return soap_out_PointerTons1__deleteDataSetParameterResponse(soap, tag, id, (ns1__deleteDataSetParameterResponse *const*)ptr, "ns1:deleteDataSetParameterResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataSetParameter:
+		return soap_out_PointerTons1__deleteDataSetParameter(soap, tag, id, (ns1__deleteDataSetParameter *const*)ptr, "ns1:deleteDataSetParameter");
+	case SOAP_TYPE_PointerTons1__deleteDataSetResponse:
+		return soap_out_PointerTons1__deleteDataSetResponse(soap, tag, id, (ns1__deleteDataSetResponse *const*)ptr, "ns1:deleteDataSetResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataSet:
+		return soap_out_PointerTons1__deleteDataSet(soap, tag, id, (ns1__deleteDataSet *const*)ptr, "ns1:deleteDataSet");
+	case SOAP_TYPE_PointerTons1__createDataSetsResponse:
+		return soap_out_PointerTons1__createDataSetsResponse(soap, tag, id, (ns1__createDataSetsResponse *const*)ptr, "ns1:createDataSetsResponse");
+	case SOAP_TYPE_PointerTons1__createDataSets:
+		return soap_out_PointerTons1__createDataSets(soap, tag, id, (ns1__createDataSets *const*)ptr, "ns1:createDataSets");
+	case SOAP_TYPE_PointerTons1__createDataSetResponse:
+		return soap_out_PointerTons1__createDataSetResponse(soap, tag, id, (ns1__createDataSetResponse *const*)ptr, "ns1:createDataSetResponse");
+	case SOAP_TYPE_PointerTons1__createDataSet:
+		return soap_out_PointerTons1__createDataSet(soap, tag, id, (ns1__createDataSet *const*)ptr, "ns1:createDataSet");
+	case SOAP_TYPE_PointerTons1__getDatasetsResponse:
+		return soap_out_PointerTons1__getDatasetsResponse(soap, tag, id, (ns1__getDatasetsResponse *const*)ptr, "ns1:getDatasetsResponse");
+	case SOAP_TYPE_PointerTons1__getDatasets:
+		return soap_out_PointerTons1__getDatasets(soap, tag, id, (ns1__getDatasets *const*)ptr, "ns1:getDatasets");
+	case SOAP_TYPE_PointerTons1__listDatafileFormatsResponse:
+		return soap_out_PointerTons1__listDatafileFormatsResponse(soap, tag, id, (ns1__listDatafileFormatsResponse *const*)ptr, "ns1:listDatafileFormatsResponse");
+	case SOAP_TYPE_PointerTons1__listDatafileFormats:
+		return soap_out_PointerTons1__listDatafileFormats(soap, tag, id, (ns1__listDatafileFormats *const*)ptr, "ns1:listDatafileFormats");
+	case SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse:
+		return soap_out_PointerTons1__searchByRunNumberPaginationResponse(soap, tag, id, (ns1__searchByRunNumberPaginationResponse *const*)ptr, "ns1:searchByRunNumberPaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByRunNumberPagination:
+		return soap_out_PointerTons1__searchByRunNumberPagination(soap, tag, id, (ns1__searchByRunNumberPagination *const*)ptr, "ns1:searchByRunNumberPagination");
+	case SOAP_TYPE_PointerTons1__searchByRunNumberResponse:
+		return soap_out_PointerTons1__searchByRunNumberResponse(soap, tag, id, (ns1__searchByRunNumberResponse *const*)ptr, "ns1:searchByRunNumberResponse");
+	case SOAP_TYPE_PointerTons1__searchByRunNumber:
+		return soap_out_PointerTons1__searchByRunNumber(soap, tag, id, (ns1__searchByRunNumber *const*)ptr, "ns1:searchByRunNumber");
+	case SOAP_TYPE_PointerTons1__listDatasetStatusResponse:
+		return soap_out_PointerTons1__listDatasetStatusResponse(soap, tag, id, (ns1__listDatasetStatusResponse *const*)ptr, "ns1:listDatasetStatusResponse");
+	case SOAP_TYPE_PointerTons1__listDatasetStatus:
+		return soap_out_PointerTons1__listDatasetStatus(soap, tag, id, (ns1__listDatasetStatus *const*)ptr, "ns1:listDatasetStatus");
+	case SOAP_TYPE_PointerTons1__listDatasetTypesResponse:
+		return soap_out_PointerTons1__listDatasetTypesResponse(soap, tag, id, (ns1__listDatasetTypesResponse *const*)ptr, "ns1:listDatasetTypesResponse");
+	case SOAP_TYPE_PointerTons1__listDatasetTypes:
+		return soap_out_PointerTons1__listDatasetTypes(soap, tag, id, (ns1__listDatasetTypes *const*)ptr, "ns1:listDatasetTypes");
+	case SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse:
+		return soap_out_PointerTons1__searchDatasetsBySampleResponse(soap, tag, id, (ns1__searchDatasetsBySampleResponse *const*)ptr, "ns1:searchDatasetsBySampleResponse");
+	case SOAP_TYPE_PointerTons1__searchDatasetsBySample:
+		return soap_out_PointerTons1__searchDatasetsBySample(soap, tag, id, (ns1__searchDatasetsBySample *const*)ptr, "ns1:searchDatasetsBySample");
+	case SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse:
+		return soap_out_PointerTons1__searchSamplesBySampleNameResponse(soap, tag, id, (ns1__searchSamplesBySampleNameResponse *const*)ptr, "ns1:searchSamplesBySampleNameResponse");
+	case SOAP_TYPE_PointerTons1__searchSamplesBySampleName:
+		return soap_out_PointerTons1__searchSamplesBySampleName(soap, tag, id, (ns1__searchSamplesBySampleName *const*)ptr, "ns1:searchSamplesBySampleName");
+	case SOAP_TYPE_PointerTons1__listInvestigationTypesResponse:
+		return soap_out_PointerTons1__listInvestigationTypesResponse(soap, tag, id, (ns1__listInvestigationTypesResponse *const*)ptr, "ns1:listInvestigationTypesResponse");
+	case SOAP_TYPE_PointerTons1__listInvestigationTypes:
+		return soap_out_PointerTons1__listInvestigationTypes(soap, tag, id, (ns1__listInvestigationTypes *const*)ptr, "ns1:listInvestigationTypes");
+	case SOAP_TYPE_PointerTons1__listFacilityCyclesResponse:
+		return soap_out_PointerTons1__listFacilityCyclesResponse(soap, tag, id, (ns1__listFacilityCyclesResponse *const*)ptr, "ns1:listFacilityCyclesResponse");
+	case SOAP_TYPE_PointerTons1__listFacilityCycles:
+		return soap_out_PointerTons1__listFacilityCycles(soap, tag, id, (ns1__listFacilityCycles *const*)ptr, "ns1:listFacilityCycles");
+	case SOAP_TYPE_PointerTons1__listParametersResponse:
+		return soap_out_PointerTons1__listParametersResponse(soap, tag, id, (ns1__listParametersResponse *const*)ptr, "ns1:listParametersResponse");
+	case SOAP_TYPE_PointerTons1__listParameters:
+		return soap_out_PointerTons1__listParameters(soap, tag, id, (ns1__listParameters *const*)ptr, "ns1:listParameters");
+	case SOAP_TYPE_PointerTons1__listRolesResponse:
+		return soap_out_PointerTons1__listRolesResponse(soap, tag, id, (ns1__listRolesResponse *const*)ptr, "ns1:listRolesResponse");
+	case SOAP_TYPE_PointerTons1__listRoles:
+		return soap_out_PointerTons1__listRoles(soap, tag, id, (ns1__listRoles *const*)ptr, "ns1:listRoles");
+	case SOAP_TYPE_PointerTons1__listInstrumentsResponse:
+		return soap_out_PointerTons1__listInstrumentsResponse(soap, tag, id, (ns1__listInstrumentsResponse *const*)ptr, "ns1:listInstrumentsResponse");
+	case SOAP_TYPE_PointerTons1__listInstruments:
+		return soap_out_PointerTons1__listInstruments(soap, tag, id, (ns1__listInstruments *const*)ptr, "ns1:listInstruments");
+	case SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse:
+		return soap_out_PointerTons1__searchByUserSurnamePaginationResponse(soap, tag, id, (ns1__searchByUserSurnamePaginationResponse *const*)ptr, "ns1:searchByUserSurnamePaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserSurnamePagination:
+		return soap_out_PointerTons1__searchByUserSurnamePagination(soap, tag, id, (ns1__searchByUserSurnamePagination *const*)ptr, "ns1:searchByUserSurnamePagination");
+	case SOAP_TYPE_PointerTons1__searchByUserSurnameResponse:
+		return soap_out_PointerTons1__searchByUserSurnameResponse(soap, tag, id, (ns1__searchByUserSurnameResponse *const*)ptr, "ns1:searchByUserSurnameResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserSurname:
+		return soap_out_PointerTons1__searchByUserSurname(soap, tag, id, (ns1__searchByUserSurname *const*)ptr, "ns1:searchByUserSurname");
+	case SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse:
+		return soap_out_PointerTons1__searchByUserIDPaginationResponse(soap, tag, id, (ns1__searchByUserIDPaginationResponse *const*)ptr, "ns1:searchByUserIDPaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserIDPagination:
+		return soap_out_PointerTons1__searchByUserIDPagination(soap, tag, id, (ns1__searchByUserIDPagination *const*)ptr, "ns1:searchByUserIDPagination");
+	case SOAP_TYPE_PointerTons1__searchByUserIDResponse:
+		return soap_out_PointerTons1__searchByUserIDResponse(soap, tag, id, (ns1__searchByUserIDResponse *const*)ptr, "ns1:searchByUserIDResponse");
+	case SOAP_TYPE_PointerTons1__searchByUserID:
+		return soap_out_PointerTons1__searchByUserID(soap, tag, id, (ns1__searchByUserID *const*)ptr, "ns1:searchByUserID");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse:
+		return soap_out_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, tag, id, (ns1__getMyInvestigationsIncludesPaginationResponse *const*)ptr, "ns1:getMyInvestigationsIncludesPaginationResponse");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination:
+		return soap_out_PointerTons1__getMyInvestigationsIncludesPagination(soap, tag, id, (ns1__getMyInvestigationsIncludesPagination *const*)ptr, "ns1:getMyInvestigationsIncludesPagination");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse:
+		return soap_out_PointerTons1__getMyInvestigationsIncludesResponse(soap, tag, id, (ns1__getMyInvestigationsIncludesResponse *const*)ptr, "ns1:getMyInvestigationsIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes:
+		return soap_out_PointerTons1__getMyInvestigationsIncludes(soap, tag, id, (ns1__getMyInvestigationsIncludes *const*)ptr, "ns1:getMyInvestigationsIncludes");
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsResponse:
+		return soap_out_PointerTons1__getMyInvestigationsResponse(soap, tag, id, (ns1__getMyInvestigationsResponse *const*)ptr, "ns1:getMyInvestigationsResponse");
+	case SOAP_TYPE_PointerTons1__getMyInvestigations:
+		return soap_out_PointerTons1__getMyInvestigations(soap, tag, id, (ns1__getMyInvestigations *const*)ptr, "ns1:getMyInvestigations");
+	case SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse:
+		return soap_out_PointerTons1__searchByKeywordsAllResponse(soap, tag, id, (ns1__searchByKeywordsAllResponse *const*)ptr, "ns1:searchByKeywordsAllResponse");
+	case SOAP_TYPE_PointerTons1__searchByKeywordsAll:
+		return soap_out_PointerTons1__searchByKeywordsAll(soap, tag, id, (ns1__searchByKeywordsAll *const*)ptr, "ns1:searchByKeywordsAll");
+	case SOAP_TYPE_PointerTons1__searchByKeywordsResponse:
+		return soap_out_PointerTons1__searchByKeywordsResponse(soap, tag, id, (ns1__searchByKeywordsResponse *const*)ptr, "ns1:searchByKeywordsResponse");
+	case SOAP_TYPE_PointerTons1__searchByKeywords:
+		return soap_out_PointerTons1__searchByKeywords(soap, tag, id, (ns1__searchByKeywords *const*)ptr, "ns1:searchByKeywords");
+	case SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse:
+		return soap_out_PointerTons1__searchByAdvancedPaginationResponse(soap, tag, id, (ns1__searchByAdvancedPaginationResponse *const*)ptr, "ns1:searchByAdvancedPaginationResponse");
+	case SOAP_TYPE_PointerTons1__searchByAdvancedPagination:
+		return soap_out_PointerTons1__searchByAdvancedPagination(soap, tag, id, (ns1__searchByAdvancedPagination *const*)ptr, "ns1:searchByAdvancedPagination");
+	case SOAP_TYPE_PointerTons1__searchByAdvancedResponse:
+		return soap_out_PointerTons1__searchByAdvancedResponse(soap, tag, id, (ns1__searchByAdvancedResponse *const*)ptr, "ns1:searchByAdvancedResponse");
+	case SOAP_TYPE_PointerTons1__searchByAdvanced:
+		return soap_out_PointerTons1__searchByAdvanced(soap, tag, id, (ns1__searchByAdvanced *const*)ptr, "ns1:searchByAdvanced");
+	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse:
+		return soap_out_PointerTons1__checkDatasetDownloadAccessResponse(soap, tag, id, (ns1__checkDatasetDownloadAccessResponse *const*)ptr, "ns1:checkDatasetDownloadAccessResponse");
+	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess:
+		return soap_out_PointerTons1__checkDatasetDownloadAccess(soap, tag, id, (ns1__checkDatasetDownloadAccess *const*)ptr, "ns1:checkDatasetDownloadAccess");
+	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse:
+		return soap_out_PointerTons1__checkDatafileDownloadAccessResponse(soap, tag, id, (ns1__checkDatafileDownloadAccessResponse *const*)ptr, "ns1:checkDatafileDownloadAccessResponse");
+	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess:
+		return soap_out_PointerTons1__checkDatafileDownloadAccess(soap, tag, id, (ns1__checkDatafileDownloadAccess *const*)ptr, "ns1:checkDatafileDownloadAccess");
+	case SOAP_TYPE_PointerTons1__downloadDatasetResponse:
+		return soap_out_PointerTons1__downloadDatasetResponse(soap, tag, id, (ns1__downloadDatasetResponse *const*)ptr, "ns1:downloadDatasetResponse");
+	case SOAP_TYPE_PointerTons1__downloadDataset:
+		return soap_out_PointerTons1__downloadDataset(soap, tag, id, (ns1__downloadDataset *const*)ptr, "ns1:downloadDataset");
+	case SOAP_TYPE_PointerTons1__downloadDatafilesResponse:
+		return soap_out_PointerTons1__downloadDatafilesResponse(soap, tag, id, (ns1__downloadDatafilesResponse *const*)ptr, "ns1:downloadDatafilesResponse");
+	case SOAP_TYPE_PointerTons1__downloadDatafiles:
+		return soap_out_PointerTons1__downloadDatafiles(soap, tag, id, (ns1__downloadDatafiles *const*)ptr, "ns1:downloadDatafiles");
+	case SOAP_TYPE_PointerTons1__downloadDatafileResponse:
+		return soap_out_PointerTons1__downloadDatafileResponse(soap, tag, id, (ns1__downloadDatafileResponse *const*)ptr, "ns1:downloadDatafileResponse");
+	case SOAP_TYPE_PointerTons1__downloadDatafile:
+		return soap_out_PointerTons1__downloadDatafile(soap, tag, id, (ns1__downloadDatafile *const*)ptr, "ns1:downloadDatafile");
+	case SOAP_TYPE_PointerTons1__getAllKeywordsResponse:
+		return soap_out_PointerTons1__getAllKeywordsResponse(soap, tag, id, (ns1__getAllKeywordsResponse *const*)ptr, "ns1:getAllKeywordsResponse");
+	case SOAP_TYPE_PointerTons1__getAllKeywords:
+		return soap_out_PointerTons1__getAllKeywords(soap, tag, id, (ns1__getAllKeywords *const*)ptr, "ns1:getAllKeywords");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse:
+		return soap_out_PointerTons1__getKeywordsForUserTypeResponse(soap, tag, id, (ns1__getKeywordsForUserTypeResponse *const*)ptr, "ns1:getKeywordsForUserTypeResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserType:
+		return soap_out_PointerTons1__getKeywordsForUserType(soap, tag, id, (ns1__getKeywordsForUserType *const*)ptr, "ns1:getKeywordsForUserType");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse:
+		return soap_out_PointerTons1__getKeywordsForUserMaxResponse(soap, tag, id, (ns1__getKeywordsForUserMaxResponse *const*)ptr, "ns1:getKeywordsForUserMaxResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserMax:
+		return soap_out_PointerTons1__getKeywordsForUserMax(soap, tag, id, (ns1__getKeywordsForUserMax *const*)ptr, "ns1:getKeywordsForUserMax");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse:
+		return soap_out_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, tag, id, (ns1__getKeywordsForUserStartWithMaxResponse *const*)ptr, "ns1:getKeywordsForUserStartWithMaxResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax:
+		return soap_out_PointerTons1__getKeywordsForUserStartWithMax(soap, tag, id, (ns1__getKeywordsForUserStartWithMax *const*)ptr, "ns1:getKeywordsForUserStartWithMax");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserResponse:
+		return soap_out_PointerTons1__getKeywordsForUserResponse(soap, tag, id, (ns1__getKeywordsForUserResponse *const*)ptr, "ns1:getKeywordsForUserResponse");
+	case SOAP_TYPE_PointerTons1__getKeywordsForUser:
+		return soap_out_PointerTons1__getKeywordsForUser(soap, tag, id, (ns1__getKeywordsForUser *const*)ptr, "ns1:getKeywordsForUser");
+	case SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse:
+		return soap_out_PointerTons1__deleteDataFileParameterResponse(soap, tag, id, (ns1__deleteDataFileParameterResponse *const*)ptr, "ns1:deleteDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataFileParameter:
+		return soap_out_PointerTons1__deleteDataFileParameter(soap, tag, id, (ns1__deleteDataFileParameter *const*)ptr, "ns1:deleteDataFileParameter");
+	case SOAP_TYPE_PointerTons1__removeDataFileParameterResponse:
+		return soap_out_PointerTons1__removeDataFileParameterResponse(soap, tag, id, (ns1__removeDataFileParameterResponse *const*)ptr, "ns1:removeDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__removeDataFileParameter:
+		return soap_out_PointerTons1__removeDataFileParameter(soap, tag, id, (ns1__removeDataFileParameter *const*)ptr, "ns1:removeDataFileParameter");
+	case SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse:
+		return soap_out_PointerTons1__modifyDataFileParameterResponse(soap, tag, id, (ns1__modifyDataFileParameterResponse *const*)ptr, "ns1:modifyDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataFileParameter:
+		return soap_out_PointerTons1__modifyDataFileParameter(soap, tag, id, (ns1__modifyDataFileParameter *const*)ptr, "ns1:modifyDataFileParameter");
+	case SOAP_TYPE_PointerTons1__addDataFileParametersResponse:
+		return soap_out_PointerTons1__addDataFileParametersResponse(soap, tag, id, (ns1__addDataFileParametersResponse *const*)ptr, "ns1:addDataFileParametersResponse");
+	case SOAP_TYPE_PointerTons1__addDataFileParameters:
+		return soap_out_PointerTons1__addDataFileParameters(soap, tag, id, (ns1__addDataFileParameters *const*)ptr, "ns1:addDataFileParameters");
+	case SOAP_TYPE_PointerTons1__modifyDataFileResponse:
+		return soap_out_PointerTons1__modifyDataFileResponse(soap, tag, id, (ns1__modifyDataFileResponse *const*)ptr, "ns1:modifyDataFileResponse");
+	case SOAP_TYPE_PointerTons1__modifyDataFile:
+		return soap_out_PointerTons1__modifyDataFile(soap, tag, id, (ns1__modifyDataFile *const*)ptr, "ns1:modifyDataFile");
+	case SOAP_TYPE_PointerTons1__removeDataFileResponse:
+		return soap_out_PointerTons1__removeDataFileResponse(soap, tag, id, (ns1__removeDataFileResponse *const*)ptr, "ns1:removeDataFileResponse");
+	case SOAP_TYPE_PointerTons1__removeDataFile:
+		return soap_out_PointerTons1__removeDataFile(soap, tag, id, (ns1__removeDataFile *const*)ptr, "ns1:removeDataFile");
+	case SOAP_TYPE_PointerTons1__deleteDataFileResponse:
+		return soap_out_PointerTons1__deleteDataFileResponse(soap, tag, id, (ns1__deleteDataFileResponse *const*)ptr, "ns1:deleteDataFileResponse");
+	case SOAP_TYPE_PointerTons1__deleteDataFile:
+		return soap_out_PointerTons1__deleteDataFile(soap, tag, id, (ns1__deleteDataFile *const*)ptr, "ns1:deleteDataFile");
+	case SOAP_TYPE_PointerTons1__createDataFilesResponse:
+		return soap_out_PointerTons1__createDataFilesResponse(soap, tag, id, (ns1__createDataFilesResponse *const*)ptr, "ns1:createDataFilesResponse");
+	case SOAP_TYPE_PointerTons1__createDataFiles:
+		return soap_out_PointerTons1__createDataFiles(soap, tag, id, (ns1__createDataFiles *const*)ptr, "ns1:createDataFiles");
+	case SOAP_TYPE_PointerTons1__createDataFileResponse:
+		return soap_out_PointerTons1__createDataFileResponse(soap, tag, id, (ns1__createDataFileResponse *const*)ptr, "ns1:createDataFileResponse");
+	case SOAP_TYPE_PointerTons1__createDataFile:
+		return soap_out_PointerTons1__createDataFile(soap, tag, id, (ns1__createDataFile *const*)ptr, "ns1:createDataFile");
+	case SOAP_TYPE_PointerTons1__getDatafilesResponse:
+		return soap_out_PointerTons1__getDatafilesResponse(soap, tag, id, (ns1__getDatafilesResponse *const*)ptr, "ns1:getDatafilesResponse");
+	case SOAP_TYPE_PointerTons1__getDatafiles:
+		return soap_out_PointerTons1__getDatafiles(soap, tag, id, (ns1__getDatafiles *const*)ptr, "ns1:getDatafiles");
+	case SOAP_TYPE_PointerTons1__getUserDetailsResponse:
+		return soap_out_PointerTons1__getUserDetailsResponse(soap, tag, id, (ns1__getUserDetailsResponse *const*)ptr, "ns1:getUserDetailsResponse");
+	case SOAP_TYPE_PointerTons1__getUserDetails:
+		return soap_out_PointerTons1__getUserDetails(soap, tag, id, (ns1__getUserDetails *const*)ptr, "ns1:getUserDetails");
+	case SOAP_TYPE_PointerTons1__updateAuthorisationResponse:
+		return soap_out_PointerTons1__updateAuthorisationResponse(soap, tag, id, (ns1__updateAuthorisationResponse *const*)ptr, "ns1:updateAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__updateAuthorisation:
+		return soap_out_PointerTons1__updateAuthorisation(soap, tag, id, (ns1__updateAuthorisation *const*)ptr, "ns1:updateAuthorisation");
+	case SOAP_TYPE_PointerTons1__removeAuthorisationResponse:
+		return soap_out_PointerTons1__removeAuthorisationResponse(soap, tag, id, (ns1__removeAuthorisationResponse *const*)ptr, "ns1:removeAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__removeAuthorisation:
+		return soap_out_PointerTons1__removeAuthorisation(soap, tag, id, (ns1__removeAuthorisation *const*)ptr, "ns1:removeAuthorisation");
+	case SOAP_TYPE_PointerTons1__deleteAuthorisationResponse:
+		return soap_out_PointerTons1__deleteAuthorisationResponse(soap, tag, id, (ns1__deleteAuthorisationResponse *const*)ptr, "ns1:deleteAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__deleteAuthorisation:
+		return soap_out_PointerTons1__deleteAuthorisation(soap, tag, id, (ns1__deleteAuthorisation *const*)ptr, "ns1:deleteAuthorisation");
+	case SOAP_TYPE_PointerTons1__addAuthorisationResponse:
+		return soap_out_PointerTons1__addAuthorisationResponse(soap, tag, id, (ns1__addAuthorisationResponse *const*)ptr, "ns1:addAuthorisationResponse");
+	case SOAP_TYPE_PointerTons1__addAuthorisation:
+		return soap_out_PointerTons1__addAuthorisation(soap, tag, id, (ns1__addAuthorisation *const*)ptr, "ns1:addAuthorisation");
+	case SOAP_TYPE_PointerTons1__getAuthorisationsResponse:
+		return soap_out_PointerTons1__getAuthorisationsResponse(soap, tag, id, (ns1__getAuthorisationsResponse *const*)ptr, "ns1:getAuthorisationsResponse");
+	case SOAP_TYPE_PointerTons1__getAuthorisations:
+		return soap_out_PointerTons1__getAuthorisations(soap, tag, id, (ns1__getAuthorisations *const*)ptr, "ns1:getAuthorisations");
+	case SOAP_TYPE_PointerTons1__modifySampleParameterResponse:
+		return soap_out_PointerTons1__modifySampleParameterResponse(soap, tag, id, (ns1__modifySampleParameterResponse *const*)ptr, "ns1:modifySampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__modifySampleParameter:
+		return soap_out_PointerTons1__modifySampleParameter(soap, tag, id, (ns1__modifySampleParameter *const*)ptr, "ns1:modifySampleParameter");
+	case SOAP_TYPE_PointerTons1__deleteSampleParameterResponse:
+		return soap_out_PointerTons1__deleteSampleParameterResponse(soap, tag, id, (ns1__deleteSampleParameterResponse *const*)ptr, "ns1:deleteSampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__deleteSampleParameter:
+		return soap_out_PointerTons1__deleteSampleParameter(soap, tag, id, (ns1__deleteSampleParameter *const*)ptr, "ns1:deleteSampleParameter");
+	case SOAP_TYPE_PointerTons1__removeSampleParameterResponse:
+		return soap_out_PointerTons1__removeSampleParameterResponse(soap, tag, id, (ns1__removeSampleParameterResponse *const*)ptr, "ns1:removeSampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__removeSampleParameter:
+		return soap_out_PointerTons1__removeSampleParameter(soap, tag, id, (ns1__removeSampleParameter *const*)ptr, "ns1:removeSampleParameter");
+	case SOAP_TYPE_PointerTons1__modifySampleResponse:
+		return soap_out_PointerTons1__modifySampleResponse(soap, tag, id, (ns1__modifySampleResponse *const*)ptr, "ns1:modifySampleResponse");
+	case SOAP_TYPE_PointerTons1__modifySample:
+		return soap_out_PointerTons1__modifySample(soap, tag, id, (ns1__modifySample *const*)ptr, "ns1:modifySample");
+	case SOAP_TYPE_PointerTons1__deleteSampleResponse:
+		return soap_out_PointerTons1__deleteSampleResponse(soap, tag, id, (ns1__deleteSampleResponse *const*)ptr, "ns1:deleteSampleResponse");
+	case SOAP_TYPE_PointerTons1__deleteSample:
+		return soap_out_PointerTons1__deleteSample(soap, tag, id, (ns1__deleteSample *const*)ptr, "ns1:deleteSample");
+	case SOAP_TYPE_PointerTons1__removeSampleResponse:
+		return soap_out_PointerTons1__removeSampleResponse(soap, tag, id, (ns1__removeSampleResponse *const*)ptr, "ns1:removeSampleResponse");
+	case SOAP_TYPE_PointerTons1__removeSample:
+		return soap_out_PointerTons1__removeSample(soap, tag, id, (ns1__removeSample *const*)ptr, "ns1:removeSample");
+	case SOAP_TYPE_PointerTons1__deleteInvestigatorResponse:
+		return soap_out_PointerTons1__deleteInvestigatorResponse(soap, tag, id, (ns1__deleteInvestigatorResponse *const*)ptr, "ns1:deleteInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__deleteInvestigator:
+		return soap_out_PointerTons1__deleteInvestigator(soap, tag, id, (ns1__deleteInvestigator *const*)ptr, "ns1:deleteInvestigator");
+	case SOAP_TYPE_PointerTons1__modifyInvestigatorResponse:
+		return soap_out_PointerTons1__modifyInvestigatorResponse(soap, tag, id, (ns1__modifyInvestigatorResponse *const*)ptr, "ns1:modifyInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__modifyInvestigator:
+		return soap_out_PointerTons1__modifyInvestigator(soap, tag, id, (ns1__modifyInvestigator *const*)ptr, "ns1:modifyInvestigator");
+	case SOAP_TYPE_PointerTons1__removeInvestigatorResponse:
+		return soap_out_PointerTons1__removeInvestigatorResponse(soap, tag, id, (ns1__removeInvestigatorResponse *const*)ptr, "ns1:removeInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__removeInvestigator:
+		return soap_out_PointerTons1__removeInvestigator(soap, tag, id, (ns1__removeInvestigator *const*)ptr, "ns1:removeInvestigator");
+	case SOAP_TYPE_PointerTons1__modifyPublicationResponse:
+		return soap_out_PointerTons1__modifyPublicationResponse(soap, tag, id, (ns1__modifyPublicationResponse *const*)ptr, "ns1:modifyPublicationResponse");
+	case SOAP_TYPE_PointerTons1__modifyPublication:
+		return soap_out_PointerTons1__modifyPublication(soap, tag, id, (ns1__modifyPublication *const*)ptr, "ns1:modifyPublication");
+	case SOAP_TYPE_PointerTons1__deletePublicationResponse:
+		return soap_out_PointerTons1__deletePublicationResponse(soap, tag, id, (ns1__deletePublicationResponse *const*)ptr, "ns1:deletePublicationResponse");
+	case SOAP_TYPE_PointerTons1__deletePublication:
+		return soap_out_PointerTons1__deletePublication(soap, tag, id, (ns1__deletePublication *const*)ptr, "ns1:deletePublication");
+	case SOAP_TYPE_PointerTons1__removePublicationResponse:
+		return soap_out_PointerTons1__removePublicationResponse(soap, tag, id, (ns1__removePublicationResponse *const*)ptr, "ns1:removePublicationResponse");
+	case SOAP_TYPE_PointerTons1__removePublication:
+		return soap_out_PointerTons1__removePublication(soap, tag, id, (ns1__removePublication *const*)ptr, "ns1:removePublication");
+	case SOAP_TYPE_PointerTons1__deleteKeywordResponse:
+		return soap_out_PointerTons1__deleteKeywordResponse(soap, tag, id, (ns1__deleteKeywordResponse *const*)ptr, "ns1:deleteKeywordResponse");
+	case SOAP_TYPE_PointerTons1__deleteKeyword:
+		return soap_out_PointerTons1__deleteKeyword(soap, tag, id, (ns1__deleteKeyword *const*)ptr, "ns1:deleteKeyword");
+	case SOAP_TYPE_PointerTons1__removeKeywordResponse:
+		return soap_out_PointerTons1__removeKeywordResponse(soap, tag, id, (ns1__removeKeywordResponse *const*)ptr, "ns1:removeKeywordResponse");
+	case SOAP_TYPE_PointerTons1__removeKeyword:
+		return soap_out_PointerTons1__removeKeyword(soap, tag, id, (ns1__removeKeyword *const*)ptr, "ns1:removeKeyword");
+	case SOAP_TYPE_PointerTons1__modifyInvestigationResponse:
+		return soap_out_PointerTons1__modifyInvestigationResponse(soap, tag, id, (ns1__modifyInvestigationResponse *const*)ptr, "ns1:modifyInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__modifyInvestigation:
+		return soap_out_PointerTons1__modifyInvestigation(soap, tag, id, (ns1__modifyInvestigation *const*)ptr, "ns1:modifyInvestigation");
+	case SOAP_TYPE_PointerTons1__deleteInvestigationResponse:
+		return soap_out_PointerTons1__deleteInvestigationResponse(soap, tag, id, (ns1__deleteInvestigationResponse *const*)ptr, "ns1:deleteInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__deleteInvestigation:
+		return soap_out_PointerTons1__deleteInvestigation(soap, tag, id, (ns1__deleteInvestigation *const*)ptr, "ns1:deleteInvestigation");
+	case SOAP_TYPE_PointerTons1__removeInvestigationResponse:
+		return soap_out_PointerTons1__removeInvestigationResponse(soap, tag, id, (ns1__removeInvestigationResponse *const*)ptr, "ns1:removeInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__removeInvestigation:
+		return soap_out_PointerTons1__removeInvestigation(soap, tag, id, (ns1__removeInvestigation *const*)ptr, "ns1:removeInvestigation");
+	case SOAP_TYPE_PointerTons1__createInvestigationResponse:
+		return soap_out_PointerTons1__createInvestigationResponse(soap, tag, id, (ns1__createInvestigationResponse *const*)ptr, "ns1:createInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__createInvestigation:
+		return soap_out_PointerTons1__createInvestigation(soap, tag, id, (ns1__createInvestigation *const*)ptr, "ns1:createInvestigation");
+	case SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse:
+		return soap_out_PointerTons1__getInvestigationsIncludesResponse(soap, tag, id, (ns1__getInvestigationsIncludesResponse *const*)ptr, "ns1:getInvestigationsIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getInvestigationsIncludes:
+		return soap_out_PointerTons1__getInvestigationsIncludes(soap, tag, id, (ns1__getInvestigationsIncludes *const*)ptr, "ns1:getInvestigationsIncludes");
+	case SOAP_TYPE_PointerTons1__addDataFileParameterResponse:
+		return soap_out_PointerTons1__addDataFileParameterResponse(soap, tag, id, (ns1__addDataFileParameterResponse *const*)ptr, "ns1:addDataFileParameterResponse");
+	case SOAP_TYPE_PointerTons1__addDataFileParameter:
+		return soap_out_PointerTons1__addDataFileParameter(soap, tag, id, (ns1__addDataFileParameter *const*)ptr, "ns1:addDataFileParameter");
+	case SOAP_TYPE_PointerTons1__getDatafileResponse:
+		return soap_out_PointerTons1__getDatafileResponse(soap, tag, id, (ns1__getDatafileResponse *const*)ptr, "ns1:getDatafileResponse");
+	case SOAP_TYPE_PointerTons1__getDatafile:
+		return soap_out_PointerTons1__getDatafile(soap, tag, id, (ns1__getDatafile *const*)ptr, "ns1:getDatafile");
+	case SOAP_TYPE_PointerTons1__getDatasetIncludesResponse:
+		return soap_out_PointerTons1__getDatasetIncludesResponse(soap, tag, id, (ns1__getDatasetIncludesResponse *const*)ptr, "ns1:getDatasetIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getDatasetIncludes:
+		return soap_out_PointerTons1__getDatasetIncludes(soap, tag, id, (ns1__getDatasetIncludes *const*)ptr, "ns1:getDatasetIncludes");
+	case SOAP_TYPE_PointerTons1__getDatasetResponse:
+		return soap_out_PointerTons1__getDatasetResponse(soap, tag, id, (ns1__getDatasetResponse *const*)ptr, "ns1:getDatasetResponse");
+	case SOAP_TYPE_PointerTons1__getDataset:
+		return soap_out_PointerTons1__getDataset(soap, tag, id, (ns1__getDataset *const*)ptr, "ns1:getDataset");
+	case SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse:
+		return soap_out_PointerTons1__getInvestigationIncludesResponse(soap, tag, id, (ns1__getInvestigationIncludesResponse *const*)ptr, "ns1:getInvestigationIncludesResponse");
+	case SOAP_TYPE_PointerTons1__getInvestigationIncludes:
+		return soap_out_PointerTons1__getInvestigationIncludes(soap, tag, id, (ns1__getInvestigationIncludes *const*)ptr, "ns1:getInvestigationIncludes");
+	case SOAP_TYPE_PointerTons1__getInvestigationResponse:
+		return soap_out_PointerTons1__getInvestigationResponse(soap, tag, id, (ns1__getInvestigationResponse *const*)ptr, "ns1:getInvestigationResponse");
+	case SOAP_TYPE_PointerTons1__getInvestigation:
+		return soap_out_PointerTons1__getInvestigation(soap, tag, id, (ns1__getInvestigation *const*)ptr, "ns1:getInvestigation");
+	case SOAP_TYPE_PointerTons1__addInvestigatorResponse:
+		return soap_out_PointerTons1__addInvestigatorResponse(soap, tag, id, (ns1__addInvestigatorResponse *const*)ptr, "ns1:addInvestigatorResponse");
+	case SOAP_TYPE_PointerTons1__addInvestigator:
+		return soap_out_PointerTons1__addInvestigator(soap, tag, id, (ns1__addInvestigator *const*)ptr, "ns1:addInvestigator");
+	case SOAP_TYPE_PointerTons1__addKeywordResponse:
+		return soap_out_PointerTons1__addKeywordResponse(soap, tag, id, (ns1__addKeywordResponse *const*)ptr, "ns1:addKeywordResponse");
+	case SOAP_TYPE_PointerTons1__addKeyword:
+		return soap_out_PointerTons1__addKeyword(soap, tag, id, (ns1__addKeyword *const*)ptr, "ns1:addKeyword");
+	case SOAP_TYPE_PointerTons1__addPublicationResponse:
+		return soap_out_PointerTons1__addPublicationResponse(soap, tag, id, (ns1__addPublicationResponse *const*)ptr, "ns1:addPublicationResponse");
+	case SOAP_TYPE_PointerTons1__addPublication:
+		return soap_out_PointerTons1__addPublication(soap, tag, id, (ns1__addPublication *const*)ptr, "ns1:addPublication");
+	case SOAP_TYPE_PointerTons1__addSampleParameterResponse:
+		return soap_out_PointerTons1__addSampleParameterResponse(soap, tag, id, (ns1__addSampleParameterResponse *const*)ptr, "ns1:addSampleParameterResponse");
+	case SOAP_TYPE_PointerTons1__addSampleParameter:
+		return soap_out_PointerTons1__addSampleParameter(soap, tag, id, (ns1__addSampleParameter *const*)ptr, "ns1:addSampleParameter");
+	case SOAP_TYPE_PointerTons1__logoutResponse:
+		return soap_out_PointerTons1__logoutResponse(soap, tag, id, (ns1__logoutResponse *const*)ptr, "ns1:logoutResponse");
+	case SOAP_TYPE_PointerTons1__logout:
+		return soap_out_PointerTons1__logout(soap, tag, id, (ns1__logout *const*)ptr, "ns1:logout");
+	case SOAP_TYPE_PointerTons1__addSampleResponse:
+		return soap_out_PointerTons1__addSampleResponse(soap, tag, id, (ns1__addSampleResponse *const*)ptr, "ns1:addSampleResponse");
+	case SOAP_TYPE_PointerTons1__addSample:
+		return soap_out_PointerTons1__addSample(soap, tag, id, (ns1__addSample *const*)ptr, "ns1:addSample");
+	case SOAP_TYPE_PointerTons1__loginLifetimeResponse:
+		return soap_out_PointerTons1__loginLifetimeResponse(soap, tag, id, (ns1__loginLifetimeResponse *const*)ptr, "ns1:loginLifetimeResponse");
+	case SOAP_TYPE_PointerTons1__loginLifetime:
+		return soap_out_PointerTons1__loginLifetime(soap, tag, id, (ns1__loginLifetime *const*)ptr, "ns1:loginLifetime");
+	case SOAP_TYPE_PointerTons1__loginResponse:
+		return soap_out_PointerTons1__loginResponse(soap, tag, id, (ns1__loginResponse *const*)ptr, "ns1:loginResponse");
+	case SOAP_TYPE_PointerTons1__login:
+		return soap_out_PointerTons1__login(soap, tag, id, (ns1__login *const*)ptr, "ns1:login");
+	case SOAP_TYPE_PointerTons1__ValidationException:
+		return soap_out_PointerTons1__ValidationException(soap, tag, id, (ns1__ValidationException *const*)ptr, "ns1:ValidationException");
+	case SOAP_TYPE_PointerTons1__SessionException:
+		return soap_out_PointerTons1__SessionException(soap, tag, id, (ns1__SessionException *const*)ptr, "ns1:SessionException");
+	case SOAP_TYPE_PointerTons1__ParameterSearchException:
+		return soap_out_PointerTons1__ParameterSearchException(soap, tag, id, (ns1__ParameterSearchException *const*)ptr, "ns1:ParameterSearchException");
+	case SOAP_TYPE_PointerTons1__NoSuchUserException:
+		return soap_out_PointerTons1__NoSuchUserException(soap, tag, id, (ns1__NoSuchUserException *const*)ptr, "ns1:NoSuchUserException");
+	case SOAP_TYPE_PointerTons1__NoSuchObjectFoundException:
+		return soap_out_PointerTons1__NoSuchObjectFoundException(soap, tag, id, (ns1__NoSuchObjectFoundException *const*)ptr, "ns1:NoSuchObjectFoundException");
+	case SOAP_TYPE_PointerTons1__InsufficientPrivilegesException:
+		return soap_out_PointerTons1__InsufficientPrivilegesException(soap, tag, id, (ns1__InsufficientPrivilegesException *const*)ptr, "ns1:InsufficientPrivilegesException");
+	case SOAP_TYPE_PointerTons1__ICATAPIException:
+		return soap_out_PointerTons1__ICATAPIException(soap, tag, id, (ns1__ICATAPIException *const*)ptr, "ns1:ICATAPIException");
+	case SOAP_TYPE_PointerTons1__logicalOperator:
+		return soap_out_PointerTons1__logicalOperator(soap, tag, id, (enum ns1__logicalOperator *const*)ptr, "ns1:logicalOperator");
+	case SOAP_TYPE_PointerTons1__parameterCondition:
+		return soap_out_PointerTons1__parameterCondition(soap, tag, id, (ns1__parameterCondition *const*)ptr, "ns1:parameterCondition");
+	case SOAP_TYPE_PointerTons1__shiftPK:
+		return soap_out_PointerTons1__shiftPK(soap, tag, id, (ns1__shiftPK *const*)ptr, "ns1:shiftPK");
+	case SOAP_TYPE_PointerTons1__shift:
+		return soap_out_PointerTons1__shift(soap, tag, id, (ns1__shift *const*)ptr, "ns1:shift");
+	case SOAP_TYPE_PointerTons1__parameterPK:
+		return soap_out_PointerTons1__parameterPK(soap, tag, id, (ns1__parameterPK *const*)ptr, "ns1:parameterPK");
+	case SOAP_TYPE_PointerTons1__parameterValued:
+		return soap_out_PointerTons1__parameterValued(soap, tag, id, (ns1__parameterValued *const*)ptr, "ns1:parameterValued");
+	case SOAP_TYPE_PointerTons1__comparisonOperator:
+		return soap_out_PointerTons1__comparisonOperator(soap, tag, id, (enum ns1__comparisonOperator *const*)ptr, "ns1:comparisonOperator");
+	case SOAP_TYPE_PointerTons1__relatedDatafilesPK:
+		return soap_out_PointerTons1__relatedDatafilesPK(soap, tag, id, (ns1__relatedDatafilesPK *const*)ptr, "ns1:relatedDatafilesPK");
+	case SOAP_TYPE_PointerTons1__datafileFormatPK:
+		return soap_out_PointerTons1__datafileFormatPK(soap, tag, id, (ns1__datafileFormatPK *const*)ptr, "ns1:datafileFormatPK");
+	case SOAP_TYPE_PointerTons1__relatedDatafiles:
+		return soap_out_PointerTons1__relatedDatafiles(soap, tag, id, (ns1__relatedDatafiles *const*)ptr, "ns1:relatedDatafiles");
+	case SOAP_TYPE_PointerTons1__datafileInclude:
+		return soap_out_PointerTons1__datafileInclude(soap, tag, id, (enum ns1__datafileInclude *const*)ptr, "ns1:datafileInclude");
+	case SOAP_TYPE_PointerTons1__parameterValueType:
+		return soap_out_PointerTons1__parameterValueType(soap, tag, id, (enum ns1__parameterValueType *const*)ptr, "ns1:parameterValueType");
+	case SOAP_TYPE_PointerToint:
+		return soap_out_PointerToint(soap, tag, id, (int *const*)ptr, "xsd:int");
+	case SOAP_TYPE_PointerTons1__datasetInclude:
+		return soap_out_PointerTons1__datasetInclude(soap, tag, id, (enum ns1__datasetInclude *const*)ptr, "ns1:datasetInclude");
+	case SOAP_TYPE_PointerTons1__datafileFormat:
+		return soap_out_PointerTons1__datafileFormat(soap, tag, id, (ns1__datafileFormat *const*)ptr, "ns1:datafileFormat");
+	case SOAP_TYPE_PointerTodouble:
+		return soap_out_PointerTodouble(soap, tag, id, (double *const*)ptr, "xsd:double");
+	case SOAP_TYPE_PointerTotime:
+		return soap_out_PointerTotime(soap, tag, id, (time_t *const*)ptr, "xsd:dateTime");
+	case SOAP_TYPE_PointerTons1__advancedSearchDetails:
+		return soap_out_PointerTons1__advancedSearchDetails(soap, tag, id, (ns1__advancedSearchDetails *const*)ptr, "ns1:advancedSearchDetails");
+	case SOAP_TYPE_PointerTons1__keyword:
+		return soap_out_PointerTons1__keyword(soap, tag, id, (ns1__keyword *const*)ptr, "ns1:keyword");
+	case SOAP_TYPE_PointerTons1__icatAuthorisation:
+		return soap_out_PointerTons1__icatAuthorisation(soap, tag, id, (ns1__icatAuthorisation *const*)ptr, "ns1:icatAuthorisation");
+	case SOAP_TYPE_PointerTons1__elementType:
+		return soap_out_PointerTons1__elementType(soap, tag, id, (enum ns1__elementType *const*)ptr, "ns1:elementType");
+	case SOAP_TYPE_PointerTons1__datasetParameter:
+		return soap_out_PointerTons1__datasetParameter(soap, tag, id, (ns1__datasetParameter *const*)ptr, "ns1:datasetParameter");
+	case SOAP_TYPE_PointerTons1__sampleParameterPK:
+		return soap_out_PointerTons1__sampleParameterPK(soap, tag, id, (ns1__sampleParameterPK *const*)ptr, "ns1:sampleParameterPK");
+	case SOAP_TYPE_PointerTons1__investigator:
+		return soap_out_PointerTons1__investigator(soap, tag, id, (ns1__investigator *const*)ptr, "ns1:investigator");
+	case SOAP_TYPE_PointerTons1__parameterLogicalCondition:
+		return soap_out_PointerTons1__parameterLogicalCondition(soap, tag, id, (ns1__parameterLogicalCondition *const*)ptr, "ns1:parameterLogicalCondition");
+	case SOAP_TYPE_PointerTons1__datafileParameterPK:
+		return soap_out_PointerTons1__datafileParameterPK(soap, tag, id, (ns1__datafileParameterPK *const*)ptr, "ns1:datafileParameterPK");
+	case SOAP_TYPE_PointerTons1__publication:
+		return soap_out_PointerTons1__publication(soap, tag, id, (ns1__publication *const*)ptr, "ns1:publication");
+	case SOAP_TYPE_PointerTons1__datasetParameterPK:
+		return soap_out_PointerTons1__datasetParameterPK(soap, tag, id, (ns1__datasetParameterPK *const*)ptr, "ns1:datasetParameterPK");
+	case SOAP_TYPE_PointerTons1__investigationInclude:
+		return soap_out_PointerTons1__investigationInclude(soap, tag, id, (enum ns1__investigationInclude *const*)ptr, "ns1:investigationInclude");
+	case SOAP_TYPE_PointerTons1__keywordDetails:
+		return soap_out_PointerTons1__keywordDetails(soap, tag, id, (ns1__keywordDetails *const*)ptr, "ns1:keywordDetails");
+	case SOAP_TYPE_PointerToxsd__anyType:
+		return soap_out_PointerToxsd__anyType(soap, tag, id, (xsd__anyType *const*)ptr, "xsd:anyType");
+	case SOAP_TYPE_PointerTons1__downloadInfo:
+		return soap_out_PointerTons1__downloadInfo(soap, tag, id, (ns1__downloadInfo *const*)ptr, "ns1:downloadInfo");
+	case SOAP_TYPE_PointerTons1__sampleParameter:
+		return soap_out_PointerTons1__sampleParameter(soap, tag, id, (ns1__sampleParameter *const*)ptr, "ns1:sampleParameter");
+	case SOAP_TYPE_PointerTons1__userDetails:
+		return soap_out_PointerTons1__userDetails(soap, tag, id, (ns1__userDetails *const*)ptr, "ns1:userDetails");
+	case SOAP_TYPE_PointerTons1__keywordType:
+		return soap_out_PointerTons1__keywordType(soap, tag, id, (enum ns1__keywordType *const*)ptr, "ns1:keywordType");
+	case SOAP_TYPE_PointerTons1__dataset:
+		return soap_out_PointerTons1__dataset(soap, tag, id, (ns1__dataset *const*)ptr, "ns1:dataset");
+	case SOAP_TYPE_PointerTons1__keywordPK:
+		return soap_out_PointerTons1__keywordPK(soap, tag, id, (ns1__keywordPK *const*)ptr, "ns1:keywordPK");
+	case SOAP_TYPE_PointerTons1__investigatorPK:
+		return soap_out_PointerTons1__investigatorPK(soap, tag, id, (ns1__investigatorPK *const*)ptr, "ns1:investigatorPK");
+	case SOAP_TYPE_PointerTons1__facilityUser:
+		return soap_out_PointerTons1__facilityUser(soap, tag, id, (ns1__facilityUser *const*)ptr, "ns1:facilityUser");
+	case SOAP_TYPE_PointerTons1__facilityCycle:
+		return soap_out_PointerTons1__facilityCycle(soap, tag, id, (ns1__facilityCycle *const*)ptr, "ns1:facilityCycle");
+	case SOAP_TYPE_PointerTons1__datafileParameter:
+		return soap_out_PointerTons1__datafileParameter(soap, tag, id, (ns1__datafileParameter *const*)ptr, "ns1:datafileParameter");
+	case SOAP_TYPE_PointerTons1__investigation:
+		return soap_out_PointerTons1__investigation(soap, tag, id, (ns1__investigation *const*)ptr, "ns1:investigation");
+	case SOAP_TYPE_PointerTons1__parameterType:
+		return soap_out_PointerTons1__parameterType(soap, tag, id, (enum ns1__parameterType *const*)ptr, "ns1:parameterType");
+	case SOAP_TYPE_PointerTons1__parameter:
+		return soap_out_PointerTons1__parameter(soap, tag, id, (ns1__parameter *const*)ptr, "ns1:parameter");
+	case SOAP_TYPE_PointerTons1__parameterComparisonCondition:
+		return soap_out_PointerTons1__parameterComparisonCondition(soap, tag, id, (ns1__parameterComparisonCondition *const*)ptr, "ns1:parameterComparisonCondition");
+	case SOAP_TYPE_PointerTons1__datafile:
+		return soap_out_PointerTons1__datafile(soap, tag, id, (ns1__datafile *const*)ptr, "ns1:datafile");
+	case SOAP_TYPE_PointerToLONG64:
+		return soap_out_PointerToLONG64(soap, tag, id, (LONG64 *const*)ptr, "xsd:long");
+	case SOAP_TYPE_PointerTons1__icatRole:
+		return soap_out_PointerTons1__icatRole(soap, tag, id, (ns1__icatRole *const*)ptr, "ns1:icatRole");
+	case SOAP_TYPE_PointerTons1__sample:
+		return soap_out_PointerTons1__sample(soap, tag, id, (ns1__sample *const*)ptr, "ns1:sample");
+	case SOAP_TYPE_PointerTostd__string:
+		return soap_out_PointerTostd__string(soap, tag, id, (std::string *const*)ptr, "xsd:string");
+	case SOAP_TYPE__QName:
+		return soap_out_string(soap, tag, id, (char*const*)&ptr, "xsd:QName");
+	case SOAP_TYPE_string:
+		return soap_out_string(soap, tag, id, (char*const*)&ptr, "xsd:string");
+	}
+	return SOAP_OK;
+}
+
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+#ifndef WITH_NOIDREF
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+SOAP_FMAC3 void SOAP_FMAC4 soap_markelement(struct soap *soap, const void *ptr, int type)
+{
+	(void)soap; (void)ptr; (void)type; /* appease -Wall -Werror */
+	switch (type)
+	{
+	case SOAP_TYPE_ns1__datasetInclude_:
+		((ns1__datasetInclude_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__elementType_:
+		((ns1__elementType_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__logicalOperator_:
+		((ns1__logicalOperator_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__investigationInclude_:
+		((ns1__investigationInclude_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__keywordType_:
+		((ns1__keywordType_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterType_:
+		((ns1__parameterType_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__comparisonOperator_:
+		((ns1__comparisonOperator_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datafileInclude_:
+		((ns1__datafileInclude_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterValueType_:
+		((ns1__parameterValueType_ *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatasetsResponse:
+		((ns1__getDatasetsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatasets:
+		((ns1__getDatasets *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listParametersResponse:
+		((ns1__listParametersResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listParameters:
+		((ns1__listParameters *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
+		((ns1__modifyDataFileParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFileParameter:
+		((ns1__modifyDataFileParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
+		((ns1__deleteSampleParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteSampleParameter:
+		((ns1__deleteSampleParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParameterResponse:
+		((ns1__addDataFileParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParameter:
+		((ns1__addDataFileParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
+		((ns1__searchDatasetsBySampleResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsBySample:
+		((ns1__searchDatasetsBySample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createInvestigationResponse:
+		((ns1__createInvestigationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createInvestigation:
+		((ns1__createInvestigation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addPublicationResponse:
+		((ns1__addPublicationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addPublication:
+		((ns1__addPublication *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
+		((ns1__deleteDataFileParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFileParameter:
+		((ns1__deleteDataFileParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationResponse:
+		((ns1__getInvestigationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getInvestigation:
+		((ns1__getInvestigation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
+		((ns1__getInvestigationIncludesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationIncludes:
+		((ns1__getInvestigationIncludes *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFileResponse:
+		((ns1__modifyDataFileResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFile:
+		((ns1__modifyDataFile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatafileResponse:
+		((ns1__getDatafileResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatafile:
+		((ns1__getDatafile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__ICATAPIException:
+		((ns1__ICATAPIException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__ingestMetadataResponse:
+		((ns1__ingestMetadataResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__ingestMetadata:
+		((ns1__ingestMetadata *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listRolesResponse:
+		((ns1__listRolesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listRoles:
+		((ns1__listRoles *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatasetResponse:
+		((ns1__getDatasetResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDataset:
+		((ns1__getDataset *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
+		((ns1__getDatasetIncludesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatasetIncludes:
+		((ns1__getDatasetIncludes *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__updateAuthorisationResponse:
+		((ns1__updateAuthorisationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__updateAuthorisation:
+		((ns1__updateAuthorisation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
+		((ns1__deleteAuthorisationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteAuthorisation:
+		((ns1__deleteAuthorisation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deletePublicationResponse:
+		((ns1__deletePublicationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deletePublication:
+		((ns1__deletePublication *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__loginResponse:
+		((ns1__loginResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__login:
+		((ns1__login *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__loginLifetimeResponse:
+		((ns1__loginLifetimeResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__loginLifetime:
+		((ns1__loginLifetime *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addSampleResponse:
+		((ns1__addSampleResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addSample:
+		((ns1__addSample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addAuthorisationResponse:
+		((ns1__addAuthorisationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addAuthorisation:
+		((ns1__addAuthorisation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParameterResponse:
+		((ns1__addDataSetParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParameter:
+		((ns1__addDataSetParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataFilesResponse:
+		((ns1__createDataFilesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataFiles:
+		((ns1__createDataFiles *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
+		((ns1__modifyInvestigatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigator:
+		((ns1__modifyInvestigator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
+		((ns1__searchByParameterComparatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparator:
+		((ns1__searchByParameterComparator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifySampleParameterResponse:
+		((ns1__modifySampleParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifySampleParameter:
+		((ns1__modifySampleParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
+		((ns1__listDatafileFormatsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listDatafileFormats:
+		((ns1__listDatafileFormats *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
+		((ns1__searchByAdvancedPaginationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvancedPagination:
+		((ns1__searchByAdvancedPagination *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvancedResponse:
+		((ns1__searchByAdvancedResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__advancedSearchDetails:
+		((ns1__advancedSearchDetails *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvanced:
+		((ns1__searchByAdvanced *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
+		((ns1__searchByRunNumberPaginationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumberPagination:
+		((ns1__searchByRunNumberPagination *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumberResponse:
+		((ns1__searchByRunNumberResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumber:
+		((ns1__searchByRunNumber *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParametersResponse:
+		((ns1__addDataSetParametersResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParameters:
+		((ns1__addDataSetParameters *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteKeywordResponse:
+		((ns1__deleteKeywordResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteKeyword:
+		((ns1__deleteKeyword *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteSampleResponse:
+		((ns1__deleteSampleResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteSample:
+		((ns1__deleteSample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listDatasetStatusResponse:
+		((ns1__listDatasetStatusResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listDatasetStatus:
+		((ns1__listDatasetStatus *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigationResponse:
+		((ns1__modifyInvestigationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigation:
+		((ns1__modifyInvestigation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addKeywordResponse:
+		((ns1__addKeywordResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addKeyword:
+		((ns1__addKeyword *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__icatAuthorisation:
+		((ns1__icatAuthorisation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getAuthorisationsResponse:
+		((ns1__getAuthorisationsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getAuthorisations:
+		((ns1__getAuthorisations *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataSetResponse:
+		((ns1__removeDataSetResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataSet:
+		((ns1__removeDataSet *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
+		((ns1__modifyDataSetParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSetParameter:
+		((ns1__modifyDataSetParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
+		((ns1__listInvestigationTypesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listInvestigationTypes:
+		((ns1__listInvestigationTypes *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
+		((ns1__getKeywordsForUserTypeResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserType:
+		((ns1__getKeywordsForUserType *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
+		((ns1__getKeywordsForUserMaxResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserMax:
+		((ns1__getKeywordsForUserMax *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
+		((ns1__getKeywordsForUserStartWithMaxResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
+		((ns1__getKeywordsForUserStartWithMax *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
+		((ns1__getKeywordsForUserResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUser:
+		((ns1__getKeywordsForUser *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafileResponse:
+		((ns1__downloadDatafileResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafile:
+		((ns1__downloadDatafile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
+		((ns1__searchDatasetsByParameterComparatorsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
+		((ns1__searchDatasetsByParameterComparators *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__setDataSetSampleResponse:
+		((ns1__setDataSetSampleResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__setDataSetSample:
+		((ns1__setDataSetSample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
+		((ns1__deleteDataSetParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSetParameter:
+		((ns1__deleteDataSetParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeSampleParameterResponse:
+		((ns1__removeSampleParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeSampleParameter:
+		((ns1__removeSampleParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
+		((ns1__searchDatasetsByParameterComparatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
+		((ns1__searchDatasetsByParameterComparator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataSetResponse:
+		((ns1__createDataSetResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataSet:
+		((ns1__createDataSet *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addInvestigatorResponse:
+		((ns1__addInvestigatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addInvestigator:
+		((ns1__addInvestigator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
+		((ns1__deleteInvestigatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigator:
+		((ns1__deleteInvestigator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
+		((ns1__getICATAPIVersionResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getICATAPIVersion:
+		((ns1__getICATAPIVersion *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatafilesResponse:
+		((ns1__getDatafilesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getDatafiles:
+		((ns1__getDatafiles *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
+		((ns1__searchByParameterOperatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterLogicalCondition:
+		((ns1__parameterLogicalCondition *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterOperator:
+		((ns1__searchByParameterOperator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__isSessionValidResponse:
+		((ns1__isSessionValidResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__isSessionValid:
+		((ns1__isSessionValid *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSetResponse:
+		((ns1__deleteDataSetResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSet:
+		((ns1__deleteDataSet *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
+		((ns1__searchDatafilesByParameterComparatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
+		((ns1__searchDatafilesByParameterComparator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
+		((ns1__getInvestigationsIncludesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationsIncludes:
+		((ns1__getInvestigationsIncludes *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
+		((ns1__removeDataFileParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataFileParameter:
+		((ns1__removeDataFileParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
+		((ns1__searchByUserIDPaginationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserIDPagination:
+		((ns1__searchByUserIDPagination *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserIDResponse:
+		((ns1__searchByUserIDResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserID:
+		((ns1__searchByUserID *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyPublicationResponse:
+		((ns1__modifyPublicationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyPublication:
+		((ns1__modifyPublication *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
+		((ns1__removeDataSetParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataSetParameter:
+		((ns1__removeDataSetParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
+		((ns1__getMyInvestigationsIncludesPaginationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
+		((ns1__getMyInvestigationsIncludesPagination *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
+		((ns1__getMyInvestigationsIncludesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
+		((ns1__getMyInvestigationsIncludes *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
+		((ns1__getMyInvestigationsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigations:
+		((ns1__getMyInvestigations *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
+		((ns1__searchByKeywordsAllResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__keywordDetails:
+		((ns1__keywordDetails *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywordsAll:
+		((ns1__searchByKeywordsAll *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywordsResponse:
+		((ns1__searchByKeywordsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywords:
+		((ns1__searchByKeywords *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
+		((ns1__checkDatasetDownloadAccessResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
+		((ns1__checkDatasetDownloadAccess *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
+		((ns1__searchByUserSurnamePaginationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
+		((ns1__searchByUserSurnamePagination *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
+		((ns1__searchByUserSurnameResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurname:
+		((ns1__searchByUserSurname *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFileResponse:
+		((ns1__deleteDataFileResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFile:
+		((ns1__deleteDataFile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadInfo:
+		((ns1__downloadInfo *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
+		((ns1__checkDatafileDownloadAccessResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
+		((ns1__checkDatafileDownloadAccess *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
+		((ns1__getFacilityUserByFacilityUserIdResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
+		((ns1__getFacilityUserByFacilityUserId *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addSampleParameterResponse:
+		((ns1__addSampleParameterResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addSampleParameter:
+		((ns1__addSampleParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSetResponse:
+		((ns1__modifyDataSetResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSet:
+		((ns1__modifyDataSet *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafilesResponse:
+		((ns1__downloadDatafilesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafiles:
+		((ns1__downloadDatafiles *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__NoSuchUserException:
+		((ns1__NoSuchUserException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__userDetails:
+		((ns1__userDetails *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getUserDetailsResponse:
+		((ns1__getUserDetailsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getUserDetails:
+		((ns1__getUserDetails *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getAllKeywordsResponse:
+		((ns1__getAllKeywordsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getAllKeywords:
+		((ns1__getAllKeywords *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removePublicationResponse:
+		((ns1__removePublicationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removePublication:
+		((ns1__removePublication *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataSetsResponse:
+		((ns1__createDataSetsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataSets:
+		((ns1__createDataSets *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigationResponse:
+		((ns1__deleteInvestigationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigation:
+		((ns1__deleteInvestigation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeKeywordResponse:
+		((ns1__removeKeywordResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeKeyword:
+		((ns1__removeKeyword *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigatorResponse:
+		((ns1__removeInvestigatorResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigator:
+		((ns1__removeInvestigator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigationResponse:
+		((ns1__removeInvestigationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigation:
+		((ns1__removeInvestigation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
+		((ns1__getFacilityUserByFederalIdResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
+		((ns1__getFacilityUserByFederalId *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadDatasetResponse:
+		((ns1__downloadDatasetResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__downloadDataset:
+		((ns1__downloadDataset *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__logoutResponse:
+		((ns1__logoutResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__logout:
+		((ns1__logout *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
+		((ns1__listFacilityCyclesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listFacilityCycles:
+		((ns1__listFacilityCycles *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParametersResponse:
+		((ns1__addDataFileParametersResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParameters:
+		((ns1__addDataFileParameters *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeAuthorisationResponse:
+		((ns1__removeAuthorisationResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeAuthorisation:
+		((ns1__removeAuthorisation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataFileResponse:
+		((ns1__removeDataFileResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeDataFile:
+		((ns1__removeDataFile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
+		((ns1__searchDatafilesByParameterComparatorsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
+		((ns1__searchDatafilesByParameterComparators *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__ParameterSearchException:
+		((ns1__ParameterSearchException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__shiftPK:
+		((ns1__shiftPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__shift:
+		((ns1__shift *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__publication:
+		((ns1__publication *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__keywordPK:
+		((ns1__keywordPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__keyword:
+		((ns1__keyword *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__investigatorPK:
+		((ns1__investigatorPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__facilityUser:
+		((ns1__facilityUser *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__investigator:
+		((ns1__investigator *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__facilityCycle:
+		((ns1__facilityCycle *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datasetParameterPK:
+		((ns1__datasetParameterPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datasetParameter:
+		((ns1__datasetParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__dataset:
+		((ns1__dataset *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__investigation:
+		((ns1__investigation *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
+		((ns1__searchByParameterComparatorsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterPK:
+		((ns1__parameterPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameter:
+		((ns1__parameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterValued:
+		((ns1__parameterValued *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterCondition:
+		((ns1__parameterCondition *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__parameterComparisonCondition:
+		((ns1__parameterComparisonCondition *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparators:
+		((ns1__searchByParameterComparators *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifySampleResponse:
+		((ns1__modifySampleResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__modifySample:
+		((ns1__modifySample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__ValidationException:
+		((ns1__ValidationException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataFileResponse:
+		((ns1__createDataFileResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__relatedDatafilesPK:
+		((ns1__relatedDatafilesPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__relatedDatafiles:
+		((ns1__relatedDatafiles *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datafileParameterPK:
+		((ns1__datafileParameterPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datafileParameter:
+		((ns1__datafileParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datafileFormatPK:
+		((ns1__datafileFormatPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datafileFormat:
+		((ns1__datafileFormat *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__datafile:
+		((ns1__datafile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__createDataFile:
+		((ns1__createDataFile *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listInstrumentsResponse:
+		((ns1__listInstrumentsResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listInstruments:
+		((ns1__listInstruments *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
+		((ns1__NoSuchObjectFoundException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
+		((ns1__InsufficientPrivilegesException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeSampleResponse:
+		((ns1__removeSampleResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__removeSample:
+		((ns1__removeSample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__icatRole:
+		((ns1__icatRole *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
+		((ns1__entityPrimaryKeyBaseBean *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__sampleParameterPK:
+		((ns1__sampleParameterPK *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__sampleParameter:
+		((ns1__sampleParameter *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__entityBaseBean:
+		((ns1__entityBaseBean *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__sample:
+		((ns1__sample *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
+		((ns1__searchSamplesBySampleNameResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__searchSamplesBySampleName:
+		((ns1__searchSamplesBySampleName *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__SessionException:
+		((ns1__SessionException *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listDatasetTypesResponse:
+		((ns1__listDatasetTypesResponse *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_ns1__listDatasetTypes:
+		((ns1__listDatasetTypes *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_std__string:
+		soap_serialize_std__string(soap, (const std::string *)ptr);
+		break;
+	case SOAP_TYPE_xsd__string:
+		((xsd__string *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__long:
+		((xsd__long *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__int:
+		((xsd__int *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__float:
+		((xsd__float *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__double:
+		((xsd__double *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__dateTime:
+		((xsd__dateTime *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__boolean:
+		((xsd__boolean *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE_xsd__anyType:
+		((xsd__anyType *)ptr)->soap_serialize(soap);
+		break;
+	case SOAP_TYPE___ns1__searchDatafilesByParameterComparators:
+		soap_serialize___ns1__searchDatafilesByParameterComparators(soap, (const struct __ns1__searchDatafilesByParameterComparators *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatafilesByParameterComparator:
+		soap_serialize___ns1__searchDatafilesByParameterComparator(soap, (const struct __ns1__searchDatafilesByParameterComparator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatasetsByParameterComparators:
+		soap_serialize___ns1__searchDatasetsByParameterComparators(soap, (const struct __ns1__searchDatasetsByParameterComparators *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatasetsByParameterComparator:
+		soap_serialize___ns1__searchDatasetsByParameterComparator(soap, (const struct __ns1__searchDatasetsByParameterComparator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByParameterComparators:
+		soap_serialize___ns1__searchByParameterComparators(soap, (const struct __ns1__searchByParameterComparators *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByParameterComparator:
+		soap_serialize___ns1__searchByParameterComparator(soap, (const struct __ns1__searchByParameterComparator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByParameterOperator:
+		soap_serialize___ns1__searchByParameterOperator(soap, (const struct __ns1__searchByParameterOperator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__isSessionValid:
+		soap_serialize___ns1__isSessionValid(soap, (const struct __ns1__isSessionValid *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getFacilityUserByFederalId:
+		soap_serialize___ns1__getFacilityUserByFederalId(soap, (const struct __ns1__getFacilityUserByFederalId *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getFacilityUserByFacilityUserId:
+		soap_serialize___ns1__getFacilityUserByFacilityUserId(soap, (const struct __ns1__getFacilityUserByFacilityUserId *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getICATAPIVersion:
+		soap_serialize___ns1__getICATAPIVersion(soap, (const struct __ns1__getICATAPIVersion *)ptr);
+		break;
+	case SOAP_TYPE___ns1__ingestMetadata:
+		soap_serialize___ns1__ingestMetadata(soap, (const struct __ns1__ingestMetadata *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSetParameter:
+		soap_serialize___ns1__removeDataSetParameter(soap, (const struct __ns1__removeDataSetParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSetParameterResponse:
+		soap_serialize___ns1__removeDataSetParameterResponse(soap, (const struct __ns1__removeDataSetParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSet:
+		soap_serialize___ns1__removeDataSet(soap, (const struct __ns1__removeDataSet *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSetResponse:
+		soap_serialize___ns1__removeDataSetResponse(soap, (const struct __ns1__removeDataSetResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataSetParameters:
+		soap_serialize___ns1__addDataSetParameters(soap, (const struct __ns1__addDataSetParameters *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataSetParameter:
+		soap_serialize___ns1__addDataSetParameter(soap, (const struct __ns1__addDataSetParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__setDataSetSample:
+		soap_serialize___ns1__setDataSetSample(soap, (const struct __ns1__setDataSetSample *)ptr);
+		break;
+	case SOAP_TYPE___ns1__setDataSetSampleResponse:
+		soap_serialize___ns1__setDataSetSampleResponse(soap, (const struct __ns1__setDataSetSampleResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSetParameter:
+		soap_serialize___ns1__modifyDataSetParameter(soap, (const struct __ns1__modifyDataSetParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSetParameterResponse:
+		soap_serialize___ns1__modifyDataSetParameterResponse(soap, (const struct __ns1__modifyDataSetParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSet:
+		soap_serialize___ns1__modifyDataSet(soap, (const struct __ns1__modifyDataSet *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSetResponse:
+		soap_serialize___ns1__modifyDataSetResponse(soap, (const struct __ns1__modifyDataSetResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSetParameter:
+		soap_serialize___ns1__deleteDataSetParameter(soap, (const struct __ns1__deleteDataSetParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSetParameterResponse:
+		soap_serialize___ns1__deleteDataSetParameterResponse(soap, (const struct __ns1__deleteDataSetParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSet:
+		soap_serialize___ns1__deleteDataSet(soap, (const struct __ns1__deleteDataSet *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSetResponse:
+		soap_serialize___ns1__deleteDataSetResponse(soap, (const struct __ns1__deleteDataSetResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataSets:
+		soap_serialize___ns1__createDataSets(soap, (const struct __ns1__createDataSets *)ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataSet:
+		soap_serialize___ns1__createDataSet(soap, (const struct __ns1__createDataSet *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatasets:
+		soap_serialize___ns1__getDatasets(soap, (const struct __ns1__getDatasets *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listDatafileFormats:
+		soap_serialize___ns1__listDatafileFormats(soap, (const struct __ns1__listDatafileFormats *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByRunNumberPagination:
+		soap_serialize___ns1__searchByRunNumberPagination(soap, (const struct __ns1__searchByRunNumberPagination *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByRunNumber:
+		soap_serialize___ns1__searchByRunNumber(soap, (const struct __ns1__searchByRunNumber *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listDatasetStatus:
+		soap_serialize___ns1__listDatasetStatus(soap, (const struct __ns1__listDatasetStatus *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listDatasetTypes:
+		soap_serialize___ns1__listDatasetTypes(soap, (const struct __ns1__listDatasetTypes *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatasetsBySample:
+		soap_serialize___ns1__searchDatasetsBySample(soap, (const struct __ns1__searchDatasetsBySample *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchSamplesBySampleName:
+		soap_serialize___ns1__searchSamplesBySampleName(soap, (const struct __ns1__searchSamplesBySampleName *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listInvestigationTypes:
+		soap_serialize___ns1__listInvestigationTypes(soap, (const struct __ns1__listInvestigationTypes *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listFacilityCycles:
+		soap_serialize___ns1__listFacilityCycles(soap, (const struct __ns1__listFacilityCycles *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listParameters:
+		soap_serialize___ns1__listParameters(soap, (const struct __ns1__listParameters *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listRoles:
+		soap_serialize___ns1__listRoles(soap, (const struct __ns1__listRoles *)ptr);
+		break;
+	case SOAP_TYPE___ns1__listInstruments:
+		soap_serialize___ns1__listInstruments(soap, (const struct __ns1__listInstruments *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserSurnamePagination:
+		soap_serialize___ns1__searchByUserSurnamePagination(soap, (const struct __ns1__searchByUserSurnamePagination *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserSurname:
+		soap_serialize___ns1__searchByUserSurname(soap, (const struct __ns1__searchByUserSurname *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserIDPagination:
+		soap_serialize___ns1__searchByUserIDPagination(soap, (const struct __ns1__searchByUserIDPagination *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserID:
+		soap_serialize___ns1__searchByUserID(soap, (const struct __ns1__searchByUserID *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination:
+		soap_serialize___ns1__getMyInvestigationsIncludesPagination(soap, (const struct __ns1__getMyInvestigationsIncludesPagination *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getMyInvestigationsIncludes:
+		soap_serialize___ns1__getMyInvestigationsIncludes(soap, (const struct __ns1__getMyInvestigationsIncludes *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getMyInvestigations:
+		soap_serialize___ns1__getMyInvestigations(soap, (const struct __ns1__getMyInvestigations *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByKeywordsAll:
+		soap_serialize___ns1__searchByKeywordsAll(soap, (const struct __ns1__searchByKeywordsAll *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByKeywords:
+		soap_serialize___ns1__searchByKeywords(soap, (const struct __ns1__searchByKeywords *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByAdvancedPagination:
+		soap_serialize___ns1__searchByAdvancedPagination(soap, (const struct __ns1__searchByAdvancedPagination *)ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByAdvanced:
+		soap_serialize___ns1__searchByAdvanced(soap, (const struct __ns1__searchByAdvanced *)ptr);
+		break;
+	case SOAP_TYPE___ns1__checkDatasetDownloadAccess:
+		soap_serialize___ns1__checkDatasetDownloadAccess(soap, (const struct __ns1__checkDatasetDownloadAccess *)ptr);
+		break;
+	case SOAP_TYPE___ns1__checkDatafileDownloadAccess:
+		soap_serialize___ns1__checkDatafileDownloadAccess(soap, (const struct __ns1__checkDatafileDownloadAccess *)ptr);
+		break;
+	case SOAP_TYPE___ns1__downloadDataset:
+		soap_serialize___ns1__downloadDataset(soap, (const struct __ns1__downloadDataset *)ptr);
+		break;
+	case SOAP_TYPE___ns1__downloadDatafiles:
+		soap_serialize___ns1__downloadDatafiles(soap, (const struct __ns1__downloadDatafiles *)ptr);
+		break;
+	case SOAP_TYPE___ns1__downloadDatafile:
+		soap_serialize___ns1__downloadDatafile(soap, (const struct __ns1__downloadDatafile *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getAllKeywords:
+		soap_serialize___ns1__getAllKeywords(soap, (const struct __ns1__getAllKeywords *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUserType:
+		soap_serialize___ns1__getKeywordsForUserType(soap, (const struct __ns1__getKeywordsForUserType *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUserMax:
+		soap_serialize___ns1__getKeywordsForUserMax(soap, (const struct __ns1__getKeywordsForUserMax *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUserStartWithMax:
+		soap_serialize___ns1__getKeywordsForUserStartWithMax(soap, (const struct __ns1__getKeywordsForUserStartWithMax *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUser:
+		soap_serialize___ns1__getKeywordsForUser(soap, (const struct __ns1__getKeywordsForUser *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFileParameter:
+		soap_serialize___ns1__deleteDataFileParameter(soap, (const struct __ns1__deleteDataFileParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFileParameterResponse:
+		soap_serialize___ns1__deleteDataFileParameterResponse(soap, (const struct __ns1__deleteDataFileParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFileParameter:
+		soap_serialize___ns1__removeDataFileParameter(soap, (const struct __ns1__removeDataFileParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFileParameterResponse:
+		soap_serialize___ns1__removeDataFileParameterResponse(soap, (const struct __ns1__removeDataFileParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFileParameter:
+		soap_serialize___ns1__modifyDataFileParameter(soap, (const struct __ns1__modifyDataFileParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFileParameterResponse:
+		soap_serialize___ns1__modifyDataFileParameterResponse(soap, (const struct __ns1__modifyDataFileParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataFileParameters:
+		soap_serialize___ns1__addDataFileParameters(soap, (const struct __ns1__addDataFileParameters *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFile:
+		soap_serialize___ns1__modifyDataFile(soap, (const struct __ns1__modifyDataFile *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFileResponse:
+		soap_serialize___ns1__modifyDataFileResponse(soap, (const struct __ns1__modifyDataFileResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFile:
+		soap_serialize___ns1__removeDataFile(soap, (const struct __ns1__removeDataFile *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFileResponse:
+		soap_serialize___ns1__removeDataFileResponse(soap, (const struct __ns1__removeDataFileResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFile:
+		soap_serialize___ns1__deleteDataFile(soap, (const struct __ns1__deleteDataFile *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFileResponse:
+		soap_serialize___ns1__deleteDataFileResponse(soap, (const struct __ns1__deleteDataFileResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataFiles:
+		soap_serialize___ns1__createDataFiles(soap, (const struct __ns1__createDataFiles *)ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataFile:
+		soap_serialize___ns1__createDataFile(soap, (const struct __ns1__createDataFile *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatafiles:
+		soap_serialize___ns1__getDatafiles(soap, (const struct __ns1__getDatafiles *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getUserDetails:
+		soap_serialize___ns1__getUserDetails(soap, (const struct __ns1__getUserDetails *)ptr);
+		break;
+	case SOAP_TYPE___ns1__updateAuthorisation:
+		soap_serialize___ns1__updateAuthorisation(soap, (const struct __ns1__updateAuthorisation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__updateAuthorisationResponse:
+		soap_serialize___ns1__updateAuthorisationResponse(soap, (const struct __ns1__updateAuthorisationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeAuthorisation:
+		soap_serialize___ns1__removeAuthorisation(soap, (const struct __ns1__removeAuthorisation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeAuthorisationResponse:
+		soap_serialize___ns1__removeAuthorisationResponse(soap, (const struct __ns1__removeAuthorisationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteAuthorisation:
+		soap_serialize___ns1__deleteAuthorisation(soap, (const struct __ns1__deleteAuthorisation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteAuthorisationResponse:
+		soap_serialize___ns1__deleteAuthorisationResponse(soap, (const struct __ns1__deleteAuthorisationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addAuthorisation:
+		soap_serialize___ns1__addAuthorisation(soap, (const struct __ns1__addAuthorisation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getAuthorisations:
+		soap_serialize___ns1__getAuthorisations(soap, (const struct __ns1__getAuthorisations *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySampleParameter:
+		soap_serialize___ns1__modifySampleParameter(soap, (const struct __ns1__modifySampleParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySampleParameterResponse:
+		soap_serialize___ns1__modifySampleParameterResponse(soap, (const struct __ns1__modifySampleParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSampleParameter:
+		soap_serialize___ns1__deleteSampleParameter(soap, (const struct __ns1__deleteSampleParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSampleParameterResponse:
+		soap_serialize___ns1__deleteSampleParameterResponse(soap, (const struct __ns1__deleteSampleParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSampleParameter:
+		soap_serialize___ns1__removeSampleParameter(soap, (const struct __ns1__removeSampleParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSampleParameterResponse:
+		soap_serialize___ns1__removeSampleParameterResponse(soap, (const struct __ns1__removeSampleParameterResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySample:
+		soap_serialize___ns1__modifySample(soap, (const struct __ns1__modifySample *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySampleResponse:
+		soap_serialize___ns1__modifySampleResponse(soap, (const struct __ns1__modifySampleResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSample:
+		soap_serialize___ns1__deleteSample(soap, (const struct __ns1__deleteSample *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSampleResponse:
+		soap_serialize___ns1__deleteSampleResponse(soap, (const struct __ns1__deleteSampleResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSample:
+		soap_serialize___ns1__removeSample(soap, (const struct __ns1__removeSample *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSampleResponse:
+		soap_serialize___ns1__removeSampleResponse(soap, (const struct __ns1__removeSampleResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigator:
+		soap_serialize___ns1__deleteInvestigator(soap, (const struct __ns1__deleteInvestigator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigatorResponse:
+		soap_serialize___ns1__deleteInvestigatorResponse(soap, (const struct __ns1__deleteInvestigatorResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigator:
+		soap_serialize___ns1__modifyInvestigator(soap, (const struct __ns1__modifyInvestigator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigatorResponse:
+		soap_serialize___ns1__modifyInvestigatorResponse(soap, (const struct __ns1__modifyInvestigatorResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigator:
+		soap_serialize___ns1__removeInvestigator(soap, (const struct __ns1__removeInvestigator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigatorResponse:
+		soap_serialize___ns1__removeInvestigatorResponse(soap, (const struct __ns1__removeInvestigatorResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyPublication:
+		soap_serialize___ns1__modifyPublication(soap, (const struct __ns1__modifyPublication *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyPublicationResponse:
+		soap_serialize___ns1__modifyPublicationResponse(soap, (const struct __ns1__modifyPublicationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deletePublication:
+		soap_serialize___ns1__deletePublication(soap, (const struct __ns1__deletePublication *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deletePublicationResponse:
+		soap_serialize___ns1__deletePublicationResponse(soap, (const struct __ns1__deletePublicationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removePublication:
+		soap_serialize___ns1__removePublication(soap, (const struct __ns1__removePublication *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removePublicationResponse:
+		soap_serialize___ns1__removePublicationResponse(soap, (const struct __ns1__removePublicationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteKeyword:
+		soap_serialize___ns1__deleteKeyword(soap, (const struct __ns1__deleteKeyword *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteKeywordResponse:
+		soap_serialize___ns1__deleteKeywordResponse(soap, (const struct __ns1__deleteKeywordResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeKeyword:
+		soap_serialize___ns1__removeKeyword(soap, (const struct __ns1__removeKeyword *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeKeywordResponse:
+		soap_serialize___ns1__removeKeywordResponse(soap, (const struct __ns1__removeKeywordResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigation:
+		soap_serialize___ns1__modifyInvestigation(soap, (const struct __ns1__modifyInvestigation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigationResponse:
+		soap_serialize___ns1__modifyInvestigationResponse(soap, (const struct __ns1__modifyInvestigationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigation:
+		soap_serialize___ns1__deleteInvestigation(soap, (const struct __ns1__deleteInvestigation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigationResponse:
+		soap_serialize___ns1__deleteInvestigationResponse(soap, (const struct __ns1__deleteInvestigationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigation:
+		soap_serialize___ns1__removeInvestigation(soap, (const struct __ns1__removeInvestigation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigationResponse:
+		soap_serialize___ns1__removeInvestigationResponse(soap, (const struct __ns1__removeInvestigationResponse *)ptr);
+		break;
+	case SOAP_TYPE___ns1__createInvestigation:
+		soap_serialize___ns1__createInvestigation(soap, (const struct __ns1__createInvestigation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getInvestigationsIncludes:
+		soap_serialize___ns1__getInvestigationsIncludes(soap, (const struct __ns1__getInvestigationsIncludes *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataFileParameter:
+		soap_serialize___ns1__addDataFileParameter(soap, (const struct __ns1__addDataFileParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatafile:
+		soap_serialize___ns1__getDatafile(soap, (const struct __ns1__getDatafile *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatasetIncludes:
+		soap_serialize___ns1__getDatasetIncludes(soap, (const struct __ns1__getDatasetIncludes *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getDataset:
+		soap_serialize___ns1__getDataset(soap, (const struct __ns1__getDataset *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getInvestigationIncludes:
+		soap_serialize___ns1__getInvestigationIncludes(soap, (const struct __ns1__getInvestigationIncludes *)ptr);
+		break;
+	case SOAP_TYPE___ns1__getInvestigation:
+		soap_serialize___ns1__getInvestigation(soap, (const struct __ns1__getInvestigation *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addInvestigator:
+		soap_serialize___ns1__addInvestigator(soap, (const struct __ns1__addInvestigator *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addKeyword:
+		soap_serialize___ns1__addKeyword(soap, (const struct __ns1__addKeyword *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addPublication:
+		soap_serialize___ns1__addPublication(soap, (const struct __ns1__addPublication *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addSampleParameter:
+		soap_serialize___ns1__addSampleParameter(soap, (const struct __ns1__addSampleParameter *)ptr);
+		break;
+	case SOAP_TYPE___ns1__logout:
+		soap_serialize___ns1__logout(soap, (const struct __ns1__logout *)ptr);
+		break;
+	case SOAP_TYPE___ns1__addSample:
+		soap_serialize___ns1__addSample(soap, (const struct __ns1__addSample *)ptr);
+		break;
+	case SOAP_TYPE___ns1__loginLifetime:
+		soap_serialize___ns1__loginLifetime(soap, (const struct __ns1__loginLifetime *)ptr);
+		break;
+	case SOAP_TYPE___ns1__login:
+		soap_serialize___ns1__login(soap, (const struct __ns1__login *)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse:
+		soap_serialize_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, (ns1__searchDatafilesByParameterComparatorsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators:
+		soap_serialize_PointerTons1__searchDatafilesByParameterComparators(soap, (ns1__searchDatafilesByParameterComparators *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse:
+		soap_serialize_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, (ns1__searchDatafilesByParameterComparatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator:
+		soap_serialize_PointerTons1__searchDatafilesByParameterComparator(soap, (ns1__searchDatafilesByParameterComparator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse:
+		soap_serialize_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, (ns1__searchDatasetsByParameterComparatorsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators:
+		soap_serialize_PointerTons1__searchDatasetsByParameterComparators(soap, (ns1__searchDatasetsByParameterComparators *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse:
+		soap_serialize_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, (ns1__searchDatasetsByParameterComparatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator:
+		soap_serialize_PointerTons1__searchDatasetsByParameterComparator(soap, (ns1__searchDatasetsByParameterComparator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse:
+		soap_serialize_PointerTons1__searchByParameterComparatorsResponse(soap, (ns1__searchByParameterComparatorsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByParameterComparators:
+		soap_serialize_PointerTons1__searchByParameterComparators(soap, (ns1__searchByParameterComparators *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse:
+		soap_serialize_PointerTons1__searchByParameterComparatorResponse(soap, (ns1__searchByParameterComparatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByParameterComparator:
+		soap_serialize_PointerTons1__searchByParameterComparator(soap, (ns1__searchByParameterComparator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse:
+		soap_serialize_PointerTons1__searchByParameterOperatorResponse(soap, (ns1__searchByParameterOperatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByParameterOperator:
+		soap_serialize_PointerTons1__searchByParameterOperator(soap, (ns1__searchByParameterOperator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__isSessionValidResponse:
+		soap_serialize_PointerTons1__isSessionValidResponse(soap, (ns1__isSessionValidResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__isSessionValid:
+		soap_serialize_PointerTons1__isSessionValid(soap, (ns1__isSessionValid *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse:
+		soap_serialize_PointerTons1__getFacilityUserByFederalIdResponse(soap, (ns1__getFacilityUserByFederalIdResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFederalId:
+		soap_serialize_PointerTons1__getFacilityUserByFederalId(soap, (ns1__getFacilityUserByFederalId *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse:
+		soap_serialize_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, (ns1__getFacilityUserByFacilityUserIdResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId:
+		soap_serialize_PointerTons1__getFacilityUserByFacilityUserId(soap, (ns1__getFacilityUserByFacilityUserId *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getICATAPIVersionResponse:
+		soap_serialize_PointerTons1__getICATAPIVersionResponse(soap, (ns1__getICATAPIVersionResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getICATAPIVersion:
+		soap_serialize_PointerTons1__getICATAPIVersion(soap, (ns1__getICATAPIVersion *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__ingestMetadataResponse:
+		soap_serialize_PointerTons1__ingestMetadataResponse(soap, (ns1__ingestMetadataResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__ingestMetadata:
+		soap_serialize_PointerTons1__ingestMetadata(soap, (ns1__ingestMetadata *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataSetParameterResponse:
+		soap_serialize_PointerTons1__removeDataSetParameterResponse(soap, (ns1__removeDataSetParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataSetParameter:
+		soap_serialize_PointerTons1__removeDataSetParameter(soap, (ns1__removeDataSetParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataSetResponse:
+		soap_serialize_PointerTons1__removeDataSetResponse(soap, (ns1__removeDataSetResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataSet:
+		soap_serialize_PointerTons1__removeDataSet(soap, (ns1__removeDataSet *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataSetParametersResponse:
+		soap_serialize_PointerTons1__addDataSetParametersResponse(soap, (ns1__addDataSetParametersResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataSetParameters:
+		soap_serialize_PointerTons1__addDataSetParameters(soap, (ns1__addDataSetParameters *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataSetParameterResponse:
+		soap_serialize_PointerTons1__addDataSetParameterResponse(soap, (ns1__addDataSetParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataSetParameter:
+		soap_serialize_PointerTons1__addDataSetParameter(soap, (ns1__addDataSetParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__setDataSetSampleResponse:
+		soap_serialize_PointerTons1__setDataSetSampleResponse(soap, (ns1__setDataSetSampleResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__setDataSetSample:
+		soap_serialize_PointerTons1__setDataSetSample(soap, (ns1__setDataSetSample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse:
+		soap_serialize_PointerTons1__modifyDataSetParameterResponse(soap, (ns1__modifyDataSetParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataSetParameter:
+		soap_serialize_PointerTons1__modifyDataSetParameter(soap, (ns1__modifyDataSetParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataSetResponse:
+		soap_serialize_PointerTons1__modifyDataSetResponse(soap, (ns1__modifyDataSetResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataSet:
+		soap_serialize_PointerTons1__modifyDataSet(soap, (ns1__modifyDataSet *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse:
+		soap_serialize_PointerTons1__deleteDataSetParameterResponse(soap, (ns1__deleteDataSetParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataSetParameter:
+		soap_serialize_PointerTons1__deleteDataSetParameter(soap, (ns1__deleteDataSetParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataSetResponse:
+		soap_serialize_PointerTons1__deleteDataSetResponse(soap, (ns1__deleteDataSetResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataSet:
+		soap_serialize_PointerTons1__deleteDataSet(soap, (ns1__deleteDataSet *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataSetsResponse:
+		soap_serialize_PointerTons1__createDataSetsResponse(soap, (ns1__createDataSetsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataSets:
+		soap_serialize_PointerTons1__createDataSets(soap, (ns1__createDataSets *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataSetResponse:
+		soap_serialize_PointerTons1__createDataSetResponse(soap, (ns1__createDataSetResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataSet:
+		soap_serialize_PointerTons1__createDataSet(soap, (ns1__createDataSet *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatasetsResponse:
+		soap_serialize_PointerTons1__getDatasetsResponse(soap, (ns1__getDatasetsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatasets:
+		soap_serialize_PointerTons1__getDatasets(soap, (ns1__getDatasets *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listDatafileFormatsResponse:
+		soap_serialize_PointerTons1__listDatafileFormatsResponse(soap, (ns1__listDatafileFormatsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listDatafileFormats:
+		soap_serialize_PointerTons1__listDatafileFormats(soap, (ns1__listDatafileFormats *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse:
+		soap_serialize_PointerTons1__searchByRunNumberPaginationResponse(soap, (ns1__searchByRunNumberPaginationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByRunNumberPagination:
+		soap_serialize_PointerTons1__searchByRunNumberPagination(soap, (ns1__searchByRunNumberPagination *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByRunNumberResponse:
+		soap_serialize_PointerTons1__searchByRunNumberResponse(soap, (ns1__searchByRunNumberResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByRunNumber:
+		soap_serialize_PointerTons1__searchByRunNumber(soap, (ns1__searchByRunNumber *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listDatasetStatusResponse:
+		soap_serialize_PointerTons1__listDatasetStatusResponse(soap, (ns1__listDatasetStatusResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listDatasetStatus:
+		soap_serialize_PointerTons1__listDatasetStatus(soap, (ns1__listDatasetStatus *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listDatasetTypesResponse:
+		soap_serialize_PointerTons1__listDatasetTypesResponse(soap, (ns1__listDatasetTypesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listDatasetTypes:
+		soap_serialize_PointerTons1__listDatasetTypes(soap, (ns1__listDatasetTypes *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse:
+		soap_serialize_PointerTons1__searchDatasetsBySampleResponse(soap, (ns1__searchDatasetsBySampleResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchDatasetsBySample:
+		soap_serialize_PointerTons1__searchDatasetsBySample(soap, (ns1__searchDatasetsBySample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse:
+		soap_serialize_PointerTons1__searchSamplesBySampleNameResponse(soap, (ns1__searchSamplesBySampleNameResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchSamplesBySampleName:
+		soap_serialize_PointerTons1__searchSamplesBySampleName(soap, (ns1__searchSamplesBySampleName *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listInvestigationTypesResponse:
+		soap_serialize_PointerTons1__listInvestigationTypesResponse(soap, (ns1__listInvestigationTypesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listInvestigationTypes:
+		soap_serialize_PointerTons1__listInvestigationTypes(soap, (ns1__listInvestigationTypes *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listFacilityCyclesResponse:
+		soap_serialize_PointerTons1__listFacilityCyclesResponse(soap, (ns1__listFacilityCyclesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listFacilityCycles:
+		soap_serialize_PointerTons1__listFacilityCycles(soap, (ns1__listFacilityCycles *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listParametersResponse:
+		soap_serialize_PointerTons1__listParametersResponse(soap, (ns1__listParametersResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listParameters:
+		soap_serialize_PointerTons1__listParameters(soap, (ns1__listParameters *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listRolesResponse:
+		soap_serialize_PointerTons1__listRolesResponse(soap, (ns1__listRolesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listRoles:
+		soap_serialize_PointerTons1__listRoles(soap, (ns1__listRoles *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listInstrumentsResponse:
+		soap_serialize_PointerTons1__listInstrumentsResponse(soap, (ns1__listInstrumentsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__listInstruments:
+		soap_serialize_PointerTons1__listInstruments(soap, (ns1__listInstruments *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse:
+		soap_serialize_PointerTons1__searchByUserSurnamePaginationResponse(soap, (ns1__searchByUserSurnamePaginationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserSurnamePagination:
+		soap_serialize_PointerTons1__searchByUserSurnamePagination(soap, (ns1__searchByUserSurnamePagination *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserSurnameResponse:
+		soap_serialize_PointerTons1__searchByUserSurnameResponse(soap, (ns1__searchByUserSurnameResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserSurname:
+		soap_serialize_PointerTons1__searchByUserSurname(soap, (ns1__searchByUserSurname *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse:
+		soap_serialize_PointerTons1__searchByUserIDPaginationResponse(soap, (ns1__searchByUserIDPaginationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserIDPagination:
+		soap_serialize_PointerTons1__searchByUserIDPagination(soap, (ns1__searchByUserIDPagination *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserIDResponse:
+		soap_serialize_PointerTons1__searchByUserIDResponse(soap, (ns1__searchByUserIDResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByUserID:
+		soap_serialize_PointerTons1__searchByUserID(soap, (ns1__searchByUserID *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse:
+		soap_serialize_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, (ns1__getMyInvestigationsIncludesPaginationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination:
+		soap_serialize_PointerTons1__getMyInvestigationsIncludesPagination(soap, (ns1__getMyInvestigationsIncludesPagination *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse:
+		soap_serialize_PointerTons1__getMyInvestigationsIncludesResponse(soap, (ns1__getMyInvestigationsIncludesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes:
+		soap_serialize_PointerTons1__getMyInvestigationsIncludes(soap, (ns1__getMyInvestigationsIncludes *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getMyInvestigationsResponse:
+		soap_serialize_PointerTons1__getMyInvestigationsResponse(soap, (ns1__getMyInvestigationsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getMyInvestigations:
+		soap_serialize_PointerTons1__getMyInvestigations(soap, (ns1__getMyInvestigations *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse:
+		soap_serialize_PointerTons1__searchByKeywordsAllResponse(soap, (ns1__searchByKeywordsAllResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByKeywordsAll:
+		soap_serialize_PointerTons1__searchByKeywordsAll(soap, (ns1__searchByKeywordsAll *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByKeywordsResponse:
+		soap_serialize_PointerTons1__searchByKeywordsResponse(soap, (ns1__searchByKeywordsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByKeywords:
+		soap_serialize_PointerTons1__searchByKeywords(soap, (ns1__searchByKeywords *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse:
+		soap_serialize_PointerTons1__searchByAdvancedPaginationResponse(soap, (ns1__searchByAdvancedPaginationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByAdvancedPagination:
+		soap_serialize_PointerTons1__searchByAdvancedPagination(soap, (ns1__searchByAdvancedPagination *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByAdvancedResponse:
+		soap_serialize_PointerTons1__searchByAdvancedResponse(soap, (ns1__searchByAdvancedResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__searchByAdvanced:
+		soap_serialize_PointerTons1__searchByAdvanced(soap, (ns1__searchByAdvanced *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse:
+		soap_serialize_PointerTons1__checkDatasetDownloadAccessResponse(soap, (ns1__checkDatasetDownloadAccessResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess:
+		soap_serialize_PointerTons1__checkDatasetDownloadAccess(soap, (ns1__checkDatasetDownloadAccess *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse:
+		soap_serialize_PointerTons1__checkDatafileDownloadAccessResponse(soap, (ns1__checkDatafileDownloadAccessResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess:
+		soap_serialize_PointerTons1__checkDatafileDownloadAccess(soap, (ns1__checkDatafileDownloadAccess *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadDatasetResponse:
+		soap_serialize_PointerTons1__downloadDatasetResponse(soap, (ns1__downloadDatasetResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadDataset:
+		soap_serialize_PointerTons1__downloadDataset(soap, (ns1__downloadDataset *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadDatafilesResponse:
+		soap_serialize_PointerTons1__downloadDatafilesResponse(soap, (ns1__downloadDatafilesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadDatafiles:
+		soap_serialize_PointerTons1__downloadDatafiles(soap, (ns1__downloadDatafiles *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadDatafileResponse:
+		soap_serialize_PointerTons1__downloadDatafileResponse(soap, (ns1__downloadDatafileResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadDatafile:
+		soap_serialize_PointerTons1__downloadDatafile(soap, (ns1__downloadDatafile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getAllKeywordsResponse:
+		soap_serialize_PointerTons1__getAllKeywordsResponse(soap, (ns1__getAllKeywordsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getAllKeywords:
+		soap_serialize_PointerTons1__getAllKeywords(soap, (ns1__getAllKeywords *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse:
+		soap_serialize_PointerTons1__getKeywordsForUserTypeResponse(soap, (ns1__getKeywordsForUserTypeResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserType:
+		soap_serialize_PointerTons1__getKeywordsForUserType(soap, (ns1__getKeywordsForUserType *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse:
+		soap_serialize_PointerTons1__getKeywordsForUserMaxResponse(soap, (ns1__getKeywordsForUserMaxResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserMax:
+		soap_serialize_PointerTons1__getKeywordsForUserMax(soap, (ns1__getKeywordsForUserMax *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse:
+		soap_serialize_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, (ns1__getKeywordsForUserStartWithMaxResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax:
+		soap_serialize_PointerTons1__getKeywordsForUserStartWithMax(soap, (ns1__getKeywordsForUserStartWithMax *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUserResponse:
+		soap_serialize_PointerTons1__getKeywordsForUserResponse(soap, (ns1__getKeywordsForUserResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getKeywordsForUser:
+		soap_serialize_PointerTons1__getKeywordsForUser(soap, (ns1__getKeywordsForUser *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse:
+		soap_serialize_PointerTons1__deleteDataFileParameterResponse(soap, (ns1__deleteDataFileParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataFileParameter:
+		soap_serialize_PointerTons1__deleteDataFileParameter(soap, (ns1__deleteDataFileParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataFileParameterResponse:
+		soap_serialize_PointerTons1__removeDataFileParameterResponse(soap, (ns1__removeDataFileParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataFileParameter:
+		soap_serialize_PointerTons1__removeDataFileParameter(soap, (ns1__removeDataFileParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse:
+		soap_serialize_PointerTons1__modifyDataFileParameterResponse(soap, (ns1__modifyDataFileParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataFileParameter:
+		soap_serialize_PointerTons1__modifyDataFileParameter(soap, (ns1__modifyDataFileParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataFileParametersResponse:
+		soap_serialize_PointerTons1__addDataFileParametersResponse(soap, (ns1__addDataFileParametersResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataFileParameters:
+		soap_serialize_PointerTons1__addDataFileParameters(soap, (ns1__addDataFileParameters *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataFileResponse:
+		soap_serialize_PointerTons1__modifyDataFileResponse(soap, (ns1__modifyDataFileResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyDataFile:
+		soap_serialize_PointerTons1__modifyDataFile(soap, (ns1__modifyDataFile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataFileResponse:
+		soap_serialize_PointerTons1__removeDataFileResponse(soap, (ns1__removeDataFileResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeDataFile:
+		soap_serialize_PointerTons1__removeDataFile(soap, (ns1__removeDataFile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataFileResponse:
+		soap_serialize_PointerTons1__deleteDataFileResponse(soap, (ns1__deleteDataFileResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteDataFile:
+		soap_serialize_PointerTons1__deleteDataFile(soap, (ns1__deleteDataFile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataFilesResponse:
+		soap_serialize_PointerTons1__createDataFilesResponse(soap, (ns1__createDataFilesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataFiles:
+		soap_serialize_PointerTons1__createDataFiles(soap, (ns1__createDataFiles *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataFileResponse:
+		soap_serialize_PointerTons1__createDataFileResponse(soap, (ns1__createDataFileResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createDataFile:
+		soap_serialize_PointerTons1__createDataFile(soap, (ns1__createDataFile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatafilesResponse:
+		soap_serialize_PointerTons1__getDatafilesResponse(soap, (ns1__getDatafilesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatafiles:
+		soap_serialize_PointerTons1__getDatafiles(soap, (ns1__getDatafiles *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getUserDetailsResponse:
+		soap_serialize_PointerTons1__getUserDetailsResponse(soap, (ns1__getUserDetailsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getUserDetails:
+		soap_serialize_PointerTons1__getUserDetails(soap, (ns1__getUserDetails *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__updateAuthorisationResponse:
+		soap_serialize_PointerTons1__updateAuthorisationResponse(soap, (ns1__updateAuthorisationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__updateAuthorisation:
+		soap_serialize_PointerTons1__updateAuthorisation(soap, (ns1__updateAuthorisation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeAuthorisationResponse:
+		soap_serialize_PointerTons1__removeAuthorisationResponse(soap, (ns1__removeAuthorisationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeAuthorisation:
+		soap_serialize_PointerTons1__removeAuthorisation(soap, (ns1__removeAuthorisation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteAuthorisationResponse:
+		soap_serialize_PointerTons1__deleteAuthorisationResponse(soap, (ns1__deleteAuthorisationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteAuthorisation:
+		soap_serialize_PointerTons1__deleteAuthorisation(soap, (ns1__deleteAuthorisation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addAuthorisationResponse:
+		soap_serialize_PointerTons1__addAuthorisationResponse(soap, (ns1__addAuthorisationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addAuthorisation:
+		soap_serialize_PointerTons1__addAuthorisation(soap, (ns1__addAuthorisation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getAuthorisationsResponse:
+		soap_serialize_PointerTons1__getAuthorisationsResponse(soap, (ns1__getAuthorisationsResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getAuthorisations:
+		soap_serialize_PointerTons1__getAuthorisations(soap, (ns1__getAuthorisations *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifySampleParameterResponse:
+		soap_serialize_PointerTons1__modifySampleParameterResponse(soap, (ns1__modifySampleParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifySampleParameter:
+		soap_serialize_PointerTons1__modifySampleParameter(soap, (ns1__modifySampleParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteSampleParameterResponse:
+		soap_serialize_PointerTons1__deleteSampleParameterResponse(soap, (ns1__deleteSampleParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteSampleParameter:
+		soap_serialize_PointerTons1__deleteSampleParameter(soap, (ns1__deleteSampleParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeSampleParameterResponse:
+		soap_serialize_PointerTons1__removeSampleParameterResponse(soap, (ns1__removeSampleParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeSampleParameter:
+		soap_serialize_PointerTons1__removeSampleParameter(soap, (ns1__removeSampleParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifySampleResponse:
+		soap_serialize_PointerTons1__modifySampleResponse(soap, (ns1__modifySampleResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifySample:
+		soap_serialize_PointerTons1__modifySample(soap, (ns1__modifySample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteSampleResponse:
+		soap_serialize_PointerTons1__deleteSampleResponse(soap, (ns1__deleteSampleResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteSample:
+		soap_serialize_PointerTons1__deleteSample(soap, (ns1__deleteSample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeSampleResponse:
+		soap_serialize_PointerTons1__removeSampleResponse(soap, (ns1__removeSampleResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeSample:
+		soap_serialize_PointerTons1__removeSample(soap, (ns1__removeSample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteInvestigatorResponse:
+		soap_serialize_PointerTons1__deleteInvestigatorResponse(soap, (ns1__deleteInvestigatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteInvestigator:
+		soap_serialize_PointerTons1__deleteInvestigator(soap, (ns1__deleteInvestigator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyInvestigatorResponse:
+		soap_serialize_PointerTons1__modifyInvestigatorResponse(soap, (ns1__modifyInvestigatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyInvestigator:
+		soap_serialize_PointerTons1__modifyInvestigator(soap, (ns1__modifyInvestigator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeInvestigatorResponse:
+		soap_serialize_PointerTons1__removeInvestigatorResponse(soap, (ns1__removeInvestigatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeInvestigator:
+		soap_serialize_PointerTons1__removeInvestigator(soap, (ns1__removeInvestigator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyPublicationResponse:
+		soap_serialize_PointerTons1__modifyPublicationResponse(soap, (ns1__modifyPublicationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyPublication:
+		soap_serialize_PointerTons1__modifyPublication(soap, (ns1__modifyPublication *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deletePublicationResponse:
+		soap_serialize_PointerTons1__deletePublicationResponse(soap, (ns1__deletePublicationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deletePublication:
+		soap_serialize_PointerTons1__deletePublication(soap, (ns1__deletePublication *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removePublicationResponse:
+		soap_serialize_PointerTons1__removePublicationResponse(soap, (ns1__removePublicationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removePublication:
+		soap_serialize_PointerTons1__removePublication(soap, (ns1__removePublication *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteKeywordResponse:
+		soap_serialize_PointerTons1__deleteKeywordResponse(soap, (ns1__deleteKeywordResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteKeyword:
+		soap_serialize_PointerTons1__deleteKeyword(soap, (ns1__deleteKeyword *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeKeywordResponse:
+		soap_serialize_PointerTons1__removeKeywordResponse(soap, (ns1__removeKeywordResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeKeyword:
+		soap_serialize_PointerTons1__removeKeyword(soap, (ns1__removeKeyword *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyInvestigationResponse:
+		soap_serialize_PointerTons1__modifyInvestigationResponse(soap, (ns1__modifyInvestigationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__modifyInvestigation:
+		soap_serialize_PointerTons1__modifyInvestigation(soap, (ns1__modifyInvestigation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteInvestigationResponse:
+		soap_serialize_PointerTons1__deleteInvestigationResponse(soap, (ns1__deleteInvestigationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__deleteInvestigation:
+		soap_serialize_PointerTons1__deleteInvestigation(soap, (ns1__deleteInvestigation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeInvestigationResponse:
+		soap_serialize_PointerTons1__removeInvestigationResponse(soap, (ns1__removeInvestigationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__removeInvestigation:
+		soap_serialize_PointerTons1__removeInvestigation(soap, (ns1__removeInvestigation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createInvestigationResponse:
+		soap_serialize_PointerTons1__createInvestigationResponse(soap, (ns1__createInvestigationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__createInvestigation:
+		soap_serialize_PointerTons1__createInvestigation(soap, (ns1__createInvestigation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse:
+		soap_serialize_PointerTons1__getInvestigationsIncludesResponse(soap, (ns1__getInvestigationsIncludesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getInvestigationsIncludes:
+		soap_serialize_PointerTons1__getInvestigationsIncludes(soap, (ns1__getInvestigationsIncludes *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataFileParameterResponse:
+		soap_serialize_PointerTons1__addDataFileParameterResponse(soap, (ns1__addDataFileParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addDataFileParameter:
+		soap_serialize_PointerTons1__addDataFileParameter(soap, (ns1__addDataFileParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatafileResponse:
+		soap_serialize_PointerTons1__getDatafileResponse(soap, (ns1__getDatafileResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatafile:
+		soap_serialize_PointerTons1__getDatafile(soap, (ns1__getDatafile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatasetIncludesResponse:
+		soap_serialize_PointerTons1__getDatasetIncludesResponse(soap, (ns1__getDatasetIncludesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatasetIncludes:
+		soap_serialize_PointerTons1__getDatasetIncludes(soap, (ns1__getDatasetIncludes *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDatasetResponse:
+		soap_serialize_PointerTons1__getDatasetResponse(soap, (ns1__getDatasetResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getDataset:
+		soap_serialize_PointerTons1__getDataset(soap, (ns1__getDataset *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse:
+		soap_serialize_PointerTons1__getInvestigationIncludesResponse(soap, (ns1__getInvestigationIncludesResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getInvestigationIncludes:
+		soap_serialize_PointerTons1__getInvestigationIncludes(soap, (ns1__getInvestigationIncludes *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getInvestigationResponse:
+		soap_serialize_PointerTons1__getInvestigationResponse(soap, (ns1__getInvestigationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__getInvestigation:
+		soap_serialize_PointerTons1__getInvestigation(soap, (ns1__getInvestigation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addInvestigatorResponse:
+		soap_serialize_PointerTons1__addInvestigatorResponse(soap, (ns1__addInvestigatorResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addInvestigator:
+		soap_serialize_PointerTons1__addInvestigator(soap, (ns1__addInvestigator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addKeywordResponse:
+		soap_serialize_PointerTons1__addKeywordResponse(soap, (ns1__addKeywordResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addKeyword:
+		soap_serialize_PointerTons1__addKeyword(soap, (ns1__addKeyword *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addPublicationResponse:
+		soap_serialize_PointerTons1__addPublicationResponse(soap, (ns1__addPublicationResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addPublication:
+		soap_serialize_PointerTons1__addPublication(soap, (ns1__addPublication *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addSampleParameterResponse:
+		soap_serialize_PointerTons1__addSampleParameterResponse(soap, (ns1__addSampleParameterResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addSampleParameter:
+		soap_serialize_PointerTons1__addSampleParameter(soap, (ns1__addSampleParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__logoutResponse:
+		soap_serialize_PointerTons1__logoutResponse(soap, (ns1__logoutResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__logout:
+		soap_serialize_PointerTons1__logout(soap, (ns1__logout *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addSampleResponse:
+		soap_serialize_PointerTons1__addSampleResponse(soap, (ns1__addSampleResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__addSample:
+		soap_serialize_PointerTons1__addSample(soap, (ns1__addSample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__loginLifetimeResponse:
+		soap_serialize_PointerTons1__loginLifetimeResponse(soap, (ns1__loginLifetimeResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__loginLifetime:
+		soap_serialize_PointerTons1__loginLifetime(soap, (ns1__loginLifetime *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__loginResponse:
+		soap_serialize_PointerTons1__loginResponse(soap, (ns1__loginResponse *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__login:
+		soap_serialize_PointerTons1__login(soap, (ns1__login *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__ValidationException:
+		soap_serialize_PointerTons1__ValidationException(soap, (ns1__ValidationException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__SessionException:
+		soap_serialize_PointerTons1__SessionException(soap, (ns1__SessionException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__ParameterSearchException:
+		soap_serialize_PointerTons1__ParameterSearchException(soap, (ns1__ParameterSearchException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__NoSuchUserException:
+		soap_serialize_PointerTons1__NoSuchUserException(soap, (ns1__NoSuchUserException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__NoSuchObjectFoundException:
+		soap_serialize_PointerTons1__NoSuchObjectFoundException(soap, (ns1__NoSuchObjectFoundException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__InsufficientPrivilegesException:
+		soap_serialize_PointerTons1__InsufficientPrivilegesException(soap, (ns1__InsufficientPrivilegesException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__ICATAPIException:
+		soap_serialize_PointerTons1__ICATAPIException(soap, (ns1__ICATAPIException *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__logicalOperator:
+		soap_serialize_PointerTons1__logicalOperator(soap, (enum ns1__logicalOperator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterCondition:
+		soap_serialize_PointerTons1__parameterCondition(soap, (ns1__parameterCondition *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__shiftPK:
+		soap_serialize_PointerTons1__shiftPK(soap, (ns1__shiftPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__shift:
+		soap_serialize_PointerTons1__shift(soap, (ns1__shift *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterPK:
+		soap_serialize_PointerTons1__parameterPK(soap, (ns1__parameterPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterValued:
+		soap_serialize_PointerTons1__parameterValued(soap, (ns1__parameterValued *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__comparisonOperator:
+		soap_serialize_PointerTons1__comparisonOperator(soap, (enum ns1__comparisonOperator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__relatedDatafilesPK:
+		soap_serialize_PointerTons1__relatedDatafilesPK(soap, (ns1__relatedDatafilesPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datafileFormatPK:
+		soap_serialize_PointerTons1__datafileFormatPK(soap, (ns1__datafileFormatPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__relatedDatafiles:
+		soap_serialize_PointerTons1__relatedDatafiles(soap, (ns1__relatedDatafiles *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datafileInclude:
+		soap_serialize_PointerTons1__datafileInclude(soap, (enum ns1__datafileInclude *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterValueType:
+		soap_serialize_PointerTons1__parameterValueType(soap, (enum ns1__parameterValueType *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerToint:
+		soap_serialize_PointerToint(soap, (int *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datasetInclude:
+		soap_serialize_PointerTons1__datasetInclude(soap, (enum ns1__datasetInclude *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datafileFormat:
+		soap_serialize_PointerTons1__datafileFormat(soap, (ns1__datafileFormat *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTodouble:
+		soap_serialize_PointerTodouble(soap, (double *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTotime:
+		soap_serialize_PointerTotime(soap, (time_t *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__advancedSearchDetails:
+		soap_serialize_PointerTons1__advancedSearchDetails(soap, (ns1__advancedSearchDetails *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__keyword:
+		soap_serialize_PointerTons1__keyword(soap, (ns1__keyword *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__icatAuthorisation:
+		soap_serialize_PointerTons1__icatAuthorisation(soap, (ns1__icatAuthorisation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__elementType:
+		soap_serialize_PointerTons1__elementType(soap, (enum ns1__elementType *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datasetParameter:
+		soap_serialize_PointerTons1__datasetParameter(soap, (ns1__datasetParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__sampleParameterPK:
+		soap_serialize_PointerTons1__sampleParameterPK(soap, (ns1__sampleParameterPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__investigator:
+		soap_serialize_PointerTons1__investigator(soap, (ns1__investigator *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterLogicalCondition:
+		soap_serialize_PointerTons1__parameterLogicalCondition(soap, (ns1__parameterLogicalCondition *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datafileParameterPK:
+		soap_serialize_PointerTons1__datafileParameterPK(soap, (ns1__datafileParameterPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__publication:
+		soap_serialize_PointerTons1__publication(soap, (ns1__publication *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datasetParameterPK:
+		soap_serialize_PointerTons1__datasetParameterPK(soap, (ns1__datasetParameterPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__investigationInclude:
+		soap_serialize_PointerTons1__investigationInclude(soap, (enum ns1__investigationInclude *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__keywordDetails:
+		soap_serialize_PointerTons1__keywordDetails(soap, (ns1__keywordDetails *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerToxsd__anyType:
+		soap_serialize_PointerToxsd__anyType(soap, (xsd__anyType *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__downloadInfo:
+		soap_serialize_PointerTons1__downloadInfo(soap, (ns1__downloadInfo *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__sampleParameter:
+		soap_serialize_PointerTons1__sampleParameter(soap, (ns1__sampleParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__userDetails:
+		soap_serialize_PointerTons1__userDetails(soap, (ns1__userDetails *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__keywordType:
+		soap_serialize_PointerTons1__keywordType(soap, (enum ns1__keywordType *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__dataset:
+		soap_serialize_PointerTons1__dataset(soap, (ns1__dataset *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__keywordPK:
+		soap_serialize_PointerTons1__keywordPK(soap, (ns1__keywordPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__investigatorPK:
+		soap_serialize_PointerTons1__investigatorPK(soap, (ns1__investigatorPK *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__facilityUser:
+		soap_serialize_PointerTons1__facilityUser(soap, (ns1__facilityUser *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__facilityCycle:
+		soap_serialize_PointerTons1__facilityCycle(soap, (ns1__facilityCycle *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datafileParameter:
+		soap_serialize_PointerTons1__datafileParameter(soap, (ns1__datafileParameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__investigation:
+		soap_serialize_PointerTons1__investigation(soap, (ns1__investigation *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterType:
+		soap_serialize_PointerTons1__parameterType(soap, (enum ns1__parameterType *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameter:
+		soap_serialize_PointerTons1__parameter(soap, (ns1__parameter *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__parameterComparisonCondition:
+		soap_serialize_PointerTons1__parameterComparisonCondition(soap, (ns1__parameterComparisonCondition *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__datafile:
+		soap_serialize_PointerTons1__datafile(soap, (ns1__datafile *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerToLONG64:
+		soap_serialize_PointerToLONG64(soap, (LONG64 *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__icatRole:
+		soap_serialize_PointerTons1__icatRole(soap, (ns1__icatRole *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTons1__sample:
+		soap_serialize_PointerTons1__sample(soap, (ns1__sample *const*)ptr);
+		break;
+	case SOAP_TYPE_PointerTostd__string:
+		soap_serialize_PointerTostd__string(soap, (std::string *const*)ptr);
+		break;
+	case SOAP_TYPE__QName:
+		soap_serialize_string(soap, (char*const*)&ptr);
+		break;
+	case SOAP_TYPE_string:
+		soap_serialize_string(soap, (char*const*)&ptr);
+		break;
+	}
+}
+
+#ifdef __cplusplus
+}
+#endif
+#endif
+
+SOAP_FMAC3 void * SOAP_FMAC4 soap_instantiate(struct soap *soap, int t, const char *type, const char *arrayType, size_t *n)
+{
+	switch (t)
+	{
+	case SOAP_TYPE_xsd__anyType:
+		return (void*)soap_instantiate_xsd__anyType(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__boolean:
+		return (void*)soap_instantiate_xsd__boolean(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__dateTime:
+		return (void*)soap_instantiate_xsd__dateTime(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__double:
+		return (void*)soap_instantiate_xsd__double(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__float:
+		return (void*)soap_instantiate_xsd__float(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__int:
+		return (void*)soap_instantiate_xsd__int(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__long:
+		return (void*)soap_instantiate_xsd__long(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__string:
+		return (void*)soap_instantiate_std__string(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_xsd__string:
+		return (void*)soap_instantiate_xsd__string(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterValueType_:
+		return (void*)soap_instantiate_ns1__parameterValueType_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datafileInclude_:
+		return (void*)soap_instantiate_ns1__datafileInclude_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__comparisonOperator_:
+		return (void*)soap_instantiate_ns1__comparisonOperator_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterType_:
+		return (void*)soap_instantiate_ns1__parameterType_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__keywordType_:
+		return (void*)soap_instantiate_ns1__keywordType_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__investigationInclude_:
+		return (void*)soap_instantiate_ns1__investigationInclude_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__logicalOperator_:
+		return (void*)soap_instantiate_ns1__logicalOperator_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__elementType_:
+		return (void*)soap_instantiate_ns1__elementType_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datasetInclude_:
+		return (void*)soap_instantiate_ns1__datasetInclude_(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listDatasetTypes:
+		return (void*)soap_instantiate_ns1__listDatasetTypes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listDatasetTypesResponse:
+		return (void*)soap_instantiate_ns1__listDatasetTypesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__SessionException:
+		return (void*)soap_instantiate_ns1__SessionException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchSamplesBySampleName:
+		return (void*)soap_instantiate_ns1__searchSamplesBySampleName(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
+		return (void*)soap_instantiate_ns1__searchSamplesBySampleNameResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__entityBaseBean:
+		return (void*)soap_instantiate_ns1__entityBaseBean(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
+		return (void*)soap_instantiate_ns1__entityPrimaryKeyBaseBean(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeSample:
+		return (void*)soap_instantiate_ns1__removeSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeSampleResponse:
+		return (void*)soap_instantiate_ns1__removeSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
+		return (void*)soap_instantiate_ns1__InsufficientPrivilegesException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
+		return (void*)soap_instantiate_ns1__NoSuchObjectFoundException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listInstruments:
+		return (void*)soap_instantiate_ns1__listInstruments(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listInstrumentsResponse:
+		return (void*)soap_instantiate_ns1__listInstrumentsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataFile:
+		return (void*)soap_instantiate_ns1__createDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataFileResponse:
+		return (void*)soap_instantiate_ns1__createDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__ValidationException:
+		return (void*)soap_instantiate_ns1__ValidationException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifySample:
+		return (void*)soap_instantiate_ns1__modifySample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifySampleResponse:
+		return (void*)soap_instantiate_ns1__modifySampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByParameterComparators:
+		return (void*)soap_instantiate_ns1__searchByParameterComparators(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterCondition:
+		return (void*)soap_instantiate_ns1__parameterCondition(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterValued:
+		return (void*)soap_instantiate_ns1__parameterValued(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
+		return (void*)soap_instantiate_ns1__searchByParameterComparatorsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__ParameterSearchException:
+		return (void*)soap_instantiate_ns1__ParameterSearchException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
+		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparators(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
+		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataFile:
+		return (void*)soap_instantiate_ns1__removeDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataFileResponse:
+		return (void*)soap_instantiate_ns1__removeDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeAuthorisation:
+		return (void*)soap_instantiate_ns1__removeAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeAuthorisationResponse:
+		return (void*)soap_instantiate_ns1__removeAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataFileParameters:
+		return (void*)soap_instantiate_ns1__addDataFileParameters(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataFileParametersResponse:
+		return (void*)soap_instantiate_ns1__addDataFileParametersResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listFacilityCycles:
+		return (void*)soap_instantiate_ns1__listFacilityCycles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
+		return (void*)soap_instantiate_ns1__listFacilityCyclesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__logout:
+		return (void*)soap_instantiate_ns1__logout(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__logoutResponse:
+		return (void*)soap_instantiate_ns1__logoutResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadDataset:
+		return (void*)soap_instantiate_ns1__downloadDataset(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadDatasetResponse:
+		return (void*)soap_instantiate_ns1__downloadDatasetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
+		return (void*)soap_instantiate_ns1__getFacilityUserByFederalId(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
+		return (void*)soap_instantiate_ns1__getFacilityUserByFederalIdResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeInvestigation:
+		return (void*)soap_instantiate_ns1__removeInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeInvestigationResponse:
+		return (void*)soap_instantiate_ns1__removeInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeInvestigator:
+		return (void*)soap_instantiate_ns1__removeInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeInvestigatorResponse:
+		return (void*)soap_instantiate_ns1__removeInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeKeyword:
+		return (void*)soap_instantiate_ns1__removeKeyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeKeywordResponse:
+		return (void*)soap_instantiate_ns1__removeKeywordResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteInvestigation:
+		return (void*)soap_instantiate_ns1__deleteInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteInvestigationResponse:
+		return (void*)soap_instantiate_ns1__deleteInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataSets:
+		return (void*)soap_instantiate_ns1__createDataSets(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataSetsResponse:
+		return (void*)soap_instantiate_ns1__createDataSetsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removePublication:
+		return (void*)soap_instantiate_ns1__removePublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removePublicationResponse:
+		return (void*)soap_instantiate_ns1__removePublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getAllKeywords:
+		return (void*)soap_instantiate_ns1__getAllKeywords(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getAllKeywordsResponse:
+		return (void*)soap_instantiate_ns1__getAllKeywordsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getUserDetails:
+		return (void*)soap_instantiate_ns1__getUserDetails(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getUserDetailsResponse:
+		return (void*)soap_instantiate_ns1__getUserDetailsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__userDetails:
+		return (void*)soap_instantiate_ns1__userDetails(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__NoSuchUserException:
+		return (void*)soap_instantiate_ns1__NoSuchUserException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadDatafiles:
+		return (void*)soap_instantiate_ns1__downloadDatafiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadDatafilesResponse:
+		return (void*)soap_instantiate_ns1__downloadDatafilesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataSet:
+		return (void*)soap_instantiate_ns1__modifyDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataSetResponse:
+		return (void*)soap_instantiate_ns1__modifyDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addSampleParameter:
+		return (void*)soap_instantiate_ns1__addSampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addSampleParameterResponse:
+		return (void*)soap_instantiate_ns1__addSampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
+		return (void*)soap_instantiate_ns1__getFacilityUserByFacilityUserId(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
+		return (void*)soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
+		return (void*)soap_instantiate_ns1__checkDatafileDownloadAccess(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
+		return (void*)soap_instantiate_ns1__checkDatafileDownloadAccessResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadInfo:
+		return (void*)soap_instantiate_ns1__downloadInfo(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataFile:
+		return (void*)soap_instantiate_ns1__deleteDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataFileResponse:
+		return (void*)soap_instantiate_ns1__deleteDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserSurname:
+		return (void*)soap_instantiate_ns1__searchByUserSurname(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
+		return (void*)soap_instantiate_ns1__searchByUserSurnameResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
+		return (void*)soap_instantiate_ns1__searchByUserSurnamePagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
+		return (void*)soap_instantiate_ns1__searchByUserSurnamePaginationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
+		return (void*)soap_instantiate_ns1__checkDatasetDownloadAccess(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
+		return (void*)soap_instantiate_ns1__checkDatasetDownloadAccessResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByKeywords:
+		return (void*)soap_instantiate_ns1__searchByKeywords(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByKeywordsResponse:
+		return (void*)soap_instantiate_ns1__searchByKeywordsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByKeywordsAll:
+		return (void*)soap_instantiate_ns1__searchByKeywordsAll(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__keywordDetails:
+		return (void*)soap_instantiate_ns1__keywordDetails(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
+		return (void*)soap_instantiate_ns1__searchByKeywordsAllResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getMyInvestigations:
+		return (void*)soap_instantiate_ns1__getMyInvestigations(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
+		return (void*)soap_instantiate_ns1__getMyInvestigationsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
+		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
+		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
+		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludesPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
+		return (void*)soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataSetParameter:
+		return (void*)soap_instantiate_ns1__removeDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
+		return (void*)soap_instantiate_ns1__removeDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyPublication:
+		return (void*)soap_instantiate_ns1__modifyPublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyPublicationResponse:
+		return (void*)soap_instantiate_ns1__modifyPublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserID:
+		return (void*)soap_instantiate_ns1__searchByUserID(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserIDResponse:
+		return (void*)soap_instantiate_ns1__searchByUserIDResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserIDPagination:
+		return (void*)soap_instantiate_ns1__searchByUserIDPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
+		return (void*)soap_instantiate_ns1__searchByUserIDPaginationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataFileParameter:
+		return (void*)soap_instantiate_ns1__removeDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
+		return (void*)soap_instantiate_ns1__removeDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getInvestigationsIncludes:
+		return (void*)soap_instantiate_ns1__getInvestigationsIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
+		return (void*)soap_instantiate_ns1__getInvestigationsIncludesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
+		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
+		return (void*)soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataSet:
+		return (void*)soap_instantiate_ns1__deleteDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataSetResponse:
+		return (void*)soap_instantiate_ns1__deleteDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__isSessionValid:
+		return (void*)soap_instantiate_ns1__isSessionValid(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__isSessionValidResponse:
+		return (void*)soap_instantiate_ns1__isSessionValidResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByParameterOperator:
+		return (void*)soap_instantiate_ns1__searchByParameterOperator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
+		return (void*)soap_instantiate_ns1__searchByParameterOperatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatafiles:
+		return (void*)soap_instantiate_ns1__getDatafiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatafilesResponse:
+		return (void*)soap_instantiate_ns1__getDatafilesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getICATAPIVersion:
+		return (void*)soap_instantiate_ns1__getICATAPIVersion(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
+		return (void*)soap_instantiate_ns1__getICATAPIVersionResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteInvestigator:
+		return (void*)soap_instantiate_ns1__deleteInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
+		return (void*)soap_instantiate_ns1__deleteInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addInvestigator:
+		return (void*)soap_instantiate_ns1__addInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addInvestigatorResponse:
+		return (void*)soap_instantiate_ns1__addInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataSet:
+		return (void*)soap_instantiate_ns1__createDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataSetResponse:
+		return (void*)soap_instantiate_ns1__createDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
+		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
+		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeSampleParameter:
+		return (void*)soap_instantiate_ns1__removeSampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeSampleParameterResponse:
+		return (void*)soap_instantiate_ns1__removeSampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataSetParameter:
+		return (void*)soap_instantiate_ns1__deleteDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
+		return (void*)soap_instantiate_ns1__deleteDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__setDataSetSample:
+		return (void*)soap_instantiate_ns1__setDataSetSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__setDataSetSampleResponse:
+		return (void*)soap_instantiate_ns1__setDataSetSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
+		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparators(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
+		return (void*)soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadDatafile:
+		return (void*)soap_instantiate_ns1__downloadDatafile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__downloadDatafileResponse:
+		return (void*)soap_instantiate_ns1__downloadDatafileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUser:
+		return (void*)soap_instantiate_ns1__getKeywordsForUser(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserStartWithMax(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserMax:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserMax(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserMaxResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserType:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserType(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
+		return (void*)soap_instantiate_ns1__getKeywordsForUserTypeResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listInvestigationTypes:
+		return (void*)soap_instantiate_ns1__listInvestigationTypes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
+		return (void*)soap_instantiate_ns1__listInvestigationTypesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataSetParameter:
+		return (void*)soap_instantiate_ns1__modifyDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
+		return (void*)soap_instantiate_ns1__modifyDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataSet:
+		return (void*)soap_instantiate_ns1__removeDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__removeDataSetResponse:
+		return (void*)soap_instantiate_ns1__removeDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getAuthorisations:
+		return (void*)soap_instantiate_ns1__getAuthorisations(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getAuthorisationsResponse:
+		return (void*)soap_instantiate_ns1__getAuthorisationsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addKeyword:
+		return (void*)soap_instantiate_ns1__addKeyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addKeywordResponse:
+		return (void*)soap_instantiate_ns1__addKeywordResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyInvestigation:
+		return (void*)soap_instantiate_ns1__modifyInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyInvestigationResponse:
+		return (void*)soap_instantiate_ns1__modifyInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listDatasetStatus:
+		return (void*)soap_instantiate_ns1__listDatasetStatus(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listDatasetStatusResponse:
+		return (void*)soap_instantiate_ns1__listDatasetStatusResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteSample:
+		return (void*)soap_instantiate_ns1__deleteSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteSampleResponse:
+		return (void*)soap_instantiate_ns1__deleteSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteKeyword:
+		return (void*)soap_instantiate_ns1__deleteKeyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteKeywordResponse:
+		return (void*)soap_instantiate_ns1__deleteKeywordResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataSetParameters:
+		return (void*)soap_instantiate_ns1__addDataSetParameters(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataSetParametersResponse:
+		return (void*)soap_instantiate_ns1__addDataSetParametersResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByRunNumber:
+		return (void*)soap_instantiate_ns1__searchByRunNumber(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByRunNumberResponse:
+		return (void*)soap_instantiate_ns1__searchByRunNumberResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByRunNumberPagination:
+		return (void*)soap_instantiate_ns1__searchByRunNumberPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
+		return (void*)soap_instantiate_ns1__searchByRunNumberPaginationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByAdvanced:
+		return (void*)soap_instantiate_ns1__searchByAdvanced(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__advancedSearchDetails:
+		return (void*)soap_instantiate_ns1__advancedSearchDetails(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByAdvancedResponse:
+		return (void*)soap_instantiate_ns1__searchByAdvancedResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByAdvancedPagination:
+		return (void*)soap_instantiate_ns1__searchByAdvancedPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
+		return (void*)soap_instantiate_ns1__searchByAdvancedPaginationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listDatafileFormats:
+		return (void*)soap_instantiate_ns1__listDatafileFormats(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
+		return (void*)soap_instantiate_ns1__listDatafileFormatsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifySampleParameter:
+		return (void*)soap_instantiate_ns1__modifySampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifySampleParameterResponse:
+		return (void*)soap_instantiate_ns1__modifySampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByParameterComparator:
+		return (void*)soap_instantiate_ns1__searchByParameterComparator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
+		return (void*)soap_instantiate_ns1__searchByParameterComparatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyInvestigator:
+		return (void*)soap_instantiate_ns1__modifyInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
+		return (void*)soap_instantiate_ns1__modifyInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataFiles:
+		return (void*)soap_instantiate_ns1__createDataFiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createDataFilesResponse:
+		return (void*)soap_instantiate_ns1__createDataFilesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataSetParameter:
+		return (void*)soap_instantiate_ns1__addDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataSetParameterResponse:
+		return (void*)soap_instantiate_ns1__addDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addAuthorisation:
+		return (void*)soap_instantiate_ns1__addAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addAuthorisationResponse:
+		return (void*)soap_instantiate_ns1__addAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addSample:
+		return (void*)soap_instantiate_ns1__addSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addSampleResponse:
+		return (void*)soap_instantiate_ns1__addSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__loginLifetime:
+		return (void*)soap_instantiate_ns1__loginLifetime(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__loginLifetimeResponse:
+		return (void*)soap_instantiate_ns1__loginLifetimeResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__login:
+		return (void*)soap_instantiate_ns1__login(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__loginResponse:
+		return (void*)soap_instantiate_ns1__loginResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deletePublication:
+		return (void*)soap_instantiate_ns1__deletePublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deletePublicationResponse:
+		return (void*)soap_instantiate_ns1__deletePublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteAuthorisation:
+		return (void*)soap_instantiate_ns1__deleteAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
+		return (void*)soap_instantiate_ns1__deleteAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__updateAuthorisation:
+		return (void*)soap_instantiate_ns1__updateAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__updateAuthorisationResponse:
+		return (void*)soap_instantiate_ns1__updateAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatasetIncludes:
+		return (void*)soap_instantiate_ns1__getDatasetIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
+		return (void*)soap_instantiate_ns1__getDatasetIncludesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDataset:
+		return (void*)soap_instantiate_ns1__getDataset(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatasetResponse:
+		return (void*)soap_instantiate_ns1__getDatasetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listRoles:
+		return (void*)soap_instantiate_ns1__listRoles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listRolesResponse:
+		return (void*)soap_instantiate_ns1__listRolesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__ingestMetadata:
+		return (void*)soap_instantiate_ns1__ingestMetadata(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__ingestMetadataResponse:
+		return (void*)soap_instantiate_ns1__ingestMetadataResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__ICATAPIException:
+		return (void*)soap_instantiate_ns1__ICATAPIException(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatafile:
+		return (void*)soap_instantiate_ns1__getDatafile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatafileResponse:
+		return (void*)soap_instantiate_ns1__getDatafileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataFile:
+		return (void*)soap_instantiate_ns1__modifyDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataFileResponse:
+		return (void*)soap_instantiate_ns1__modifyDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getInvestigationIncludes:
+		return (void*)soap_instantiate_ns1__getInvestigationIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
+		return (void*)soap_instantiate_ns1__getInvestigationIncludesResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getInvestigation:
+		return (void*)soap_instantiate_ns1__getInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getInvestigationResponse:
+		return (void*)soap_instantiate_ns1__getInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataFileParameter:
+		return (void*)soap_instantiate_ns1__deleteDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
+		return (void*)soap_instantiate_ns1__deleteDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addPublication:
+		return (void*)soap_instantiate_ns1__addPublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addPublicationResponse:
+		return (void*)soap_instantiate_ns1__addPublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createInvestigation:
+		return (void*)soap_instantiate_ns1__createInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__createInvestigationResponse:
+		return (void*)soap_instantiate_ns1__createInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatasetsBySample:
+		return (void*)soap_instantiate_ns1__searchDatasetsBySample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
+		return (void*)soap_instantiate_ns1__searchDatasetsBySampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataFileParameter:
+		return (void*)soap_instantiate_ns1__addDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__addDataFileParameterResponse:
+		return (void*)soap_instantiate_ns1__addDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteSampleParameter:
+		return (void*)soap_instantiate_ns1__deleteSampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
+		return (void*)soap_instantiate_ns1__deleteSampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataFileParameter:
+		return (void*)soap_instantiate_ns1__modifyDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
+		return (void*)soap_instantiate_ns1__modifyDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listParameters:
+		return (void*)soap_instantiate_ns1__listParameters(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__listParametersResponse:
+		return (void*)soap_instantiate_ns1__listParametersResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatasets:
+		return (void*)soap_instantiate_ns1__getDatasets(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__getDatasetsResponse:
+		return (void*)soap_instantiate_ns1__getDatasetsResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__sample:
+		return (void*)soap_instantiate_ns1__sample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__sampleParameter:
+		return (void*)soap_instantiate_ns1__sampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__sampleParameterPK:
+		return (void*)soap_instantiate_ns1__sampleParameterPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__icatRole:
+		return (void*)soap_instantiate_ns1__icatRole(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datafile:
+		return (void*)soap_instantiate_ns1__datafile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datafileFormat:
+		return (void*)soap_instantiate_ns1__datafileFormat(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datafileFormatPK:
+		return (void*)soap_instantiate_ns1__datafileFormatPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datafileParameter:
+		return (void*)soap_instantiate_ns1__datafileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datafileParameterPK:
+		return (void*)soap_instantiate_ns1__datafileParameterPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__relatedDatafiles:
+		return (void*)soap_instantiate_ns1__relatedDatafiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__relatedDatafilesPK:
+		return (void*)soap_instantiate_ns1__relatedDatafilesPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterComparisonCondition:
+		return (void*)soap_instantiate_ns1__parameterComparisonCondition(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameter:
+		return (void*)soap_instantiate_ns1__parameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterPK:
+		return (void*)soap_instantiate_ns1__parameterPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__investigation:
+		return (void*)soap_instantiate_ns1__investigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__dataset:
+		return (void*)soap_instantiate_ns1__dataset(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datasetParameter:
+		return (void*)soap_instantiate_ns1__datasetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__datasetParameterPK:
+		return (void*)soap_instantiate_ns1__datasetParameterPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__facilityCycle:
+		return (void*)soap_instantiate_ns1__facilityCycle(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__investigator:
+		return (void*)soap_instantiate_ns1__investigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__facilityUser:
+		return (void*)soap_instantiate_ns1__facilityUser(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__investigatorPK:
+		return (void*)soap_instantiate_ns1__investigatorPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__keyword:
+		return (void*)soap_instantiate_ns1__keyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__keywordPK:
+		return (void*)soap_instantiate_ns1__keywordPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__publication:
+		return (void*)soap_instantiate_ns1__publication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__shift:
+		return (void*)soap_instantiate_ns1__shift(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__shiftPK:
+		return (void*)soap_instantiate_ns1__shiftPK(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__parameterLogicalCondition:
+		return (void*)soap_instantiate_ns1__parameterLogicalCondition(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_ns1__icatAuthorisation:
+		return (void*)soap_instantiate_ns1__icatAuthorisation(soap, -1, type, arrayType, n);
+#ifndef WITH_NOGLOBAL
+	case SOAP_TYPE_SOAP_ENV__Detail:
+		return (void*)soap_instantiate_SOAP_ENV__Detail(soap, -1, type, arrayType, n);
+#endif
+	case SOAP_TYPE___ns1__login:
+		return (void*)soap_instantiate___ns1__login(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__loginLifetime:
+		return (void*)soap_instantiate___ns1__loginLifetime(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addSample:
+		return (void*)soap_instantiate___ns1__addSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__logout:
+		return (void*)soap_instantiate___ns1__logout(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addSampleParameter:
+		return (void*)soap_instantiate___ns1__addSampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addPublication:
+		return (void*)soap_instantiate___ns1__addPublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addKeyword:
+		return (void*)soap_instantiate___ns1__addKeyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addInvestigator:
+		return (void*)soap_instantiate___ns1__addInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getInvestigation:
+		return (void*)soap_instantiate___ns1__getInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getInvestigationIncludes:
+		return (void*)soap_instantiate___ns1__getInvestigationIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getDataset:
+		return (void*)soap_instantiate___ns1__getDataset(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getDatasetIncludes:
+		return (void*)soap_instantiate___ns1__getDatasetIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getDatafile:
+		return (void*)soap_instantiate___ns1__getDatafile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addDataFileParameter:
+		return (void*)soap_instantiate___ns1__addDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getInvestigationsIncludes:
+		return (void*)soap_instantiate___ns1__getInvestigationsIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__createInvestigation:
+		return (void*)soap_instantiate___ns1__createInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeInvestigationResponse:
+		return (void*)soap_instantiate___ns1__removeInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeInvestigation:
+		return (void*)soap_instantiate___ns1__removeInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteInvestigationResponse:
+		return (void*)soap_instantiate___ns1__deleteInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteInvestigation:
+		return (void*)soap_instantiate___ns1__deleteInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyInvestigationResponse:
+		return (void*)soap_instantiate___ns1__modifyInvestigationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyInvestigation:
+		return (void*)soap_instantiate___ns1__modifyInvestigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeKeywordResponse:
+		return (void*)soap_instantiate___ns1__removeKeywordResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeKeyword:
+		return (void*)soap_instantiate___ns1__removeKeyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteKeywordResponse:
+		return (void*)soap_instantiate___ns1__deleteKeywordResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteKeyword:
+		return (void*)soap_instantiate___ns1__deleteKeyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removePublicationResponse:
+		return (void*)soap_instantiate___ns1__removePublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removePublication:
+		return (void*)soap_instantiate___ns1__removePublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deletePublicationResponse:
+		return (void*)soap_instantiate___ns1__deletePublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deletePublication:
+		return (void*)soap_instantiate___ns1__deletePublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyPublicationResponse:
+		return (void*)soap_instantiate___ns1__modifyPublicationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyPublication:
+		return (void*)soap_instantiate___ns1__modifyPublication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeInvestigatorResponse:
+		return (void*)soap_instantiate___ns1__removeInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeInvestigator:
+		return (void*)soap_instantiate___ns1__removeInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyInvestigatorResponse:
+		return (void*)soap_instantiate___ns1__modifyInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyInvestigator:
+		return (void*)soap_instantiate___ns1__modifyInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteInvestigatorResponse:
+		return (void*)soap_instantiate___ns1__deleteInvestigatorResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteInvestigator:
+		return (void*)soap_instantiate___ns1__deleteInvestigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeSampleResponse:
+		return (void*)soap_instantiate___ns1__removeSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeSample:
+		return (void*)soap_instantiate___ns1__removeSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteSampleResponse:
+		return (void*)soap_instantiate___ns1__deleteSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteSample:
+		return (void*)soap_instantiate___ns1__deleteSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifySampleResponse:
+		return (void*)soap_instantiate___ns1__modifySampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifySample:
+		return (void*)soap_instantiate___ns1__modifySample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeSampleParameterResponse:
+		return (void*)soap_instantiate___ns1__removeSampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeSampleParameter:
+		return (void*)soap_instantiate___ns1__removeSampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteSampleParameterResponse:
+		return (void*)soap_instantiate___ns1__deleteSampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteSampleParameter:
+		return (void*)soap_instantiate___ns1__deleteSampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifySampleParameterResponse:
+		return (void*)soap_instantiate___ns1__modifySampleParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifySampleParameter:
+		return (void*)soap_instantiate___ns1__modifySampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getAuthorisations:
+		return (void*)soap_instantiate___ns1__getAuthorisations(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addAuthorisation:
+		return (void*)soap_instantiate___ns1__addAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteAuthorisationResponse:
+		return (void*)soap_instantiate___ns1__deleteAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteAuthorisation:
+		return (void*)soap_instantiate___ns1__deleteAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeAuthorisationResponse:
+		return (void*)soap_instantiate___ns1__removeAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeAuthorisation:
+		return (void*)soap_instantiate___ns1__removeAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__updateAuthorisationResponse:
+		return (void*)soap_instantiate___ns1__updateAuthorisationResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__updateAuthorisation:
+		return (void*)soap_instantiate___ns1__updateAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getUserDetails:
+		return (void*)soap_instantiate___ns1__getUserDetails(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getDatafiles:
+		return (void*)soap_instantiate___ns1__getDatafiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__createDataFile:
+		return (void*)soap_instantiate___ns1__createDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__createDataFiles:
+		return (void*)soap_instantiate___ns1__createDataFiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataFileResponse:
+		return (void*)soap_instantiate___ns1__deleteDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataFile:
+		return (void*)soap_instantiate___ns1__deleteDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataFileResponse:
+		return (void*)soap_instantiate___ns1__removeDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataFile:
+		return (void*)soap_instantiate___ns1__removeDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataFileResponse:
+		return (void*)soap_instantiate___ns1__modifyDataFileResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataFile:
+		return (void*)soap_instantiate___ns1__modifyDataFile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addDataFileParameters:
+		return (void*)soap_instantiate___ns1__addDataFileParameters(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataFileParameterResponse:
+		return (void*)soap_instantiate___ns1__modifyDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataFileParameter:
+		return (void*)soap_instantiate___ns1__modifyDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataFileParameterResponse:
+		return (void*)soap_instantiate___ns1__removeDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataFileParameter:
+		return (void*)soap_instantiate___ns1__removeDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataFileParameterResponse:
+		return (void*)soap_instantiate___ns1__deleteDataFileParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataFileParameter:
+		return (void*)soap_instantiate___ns1__deleteDataFileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getKeywordsForUser:
+		return (void*)soap_instantiate___ns1__getKeywordsForUser(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getKeywordsForUserStartWithMax:
+		return (void*)soap_instantiate___ns1__getKeywordsForUserStartWithMax(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getKeywordsForUserMax:
+		return (void*)soap_instantiate___ns1__getKeywordsForUserMax(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getKeywordsForUserType:
+		return (void*)soap_instantiate___ns1__getKeywordsForUserType(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getAllKeywords:
+		return (void*)soap_instantiate___ns1__getAllKeywords(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__downloadDatafile:
+		return (void*)soap_instantiate___ns1__downloadDatafile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__downloadDatafiles:
+		return (void*)soap_instantiate___ns1__downloadDatafiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__downloadDataset:
+		return (void*)soap_instantiate___ns1__downloadDataset(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__checkDatafileDownloadAccess:
+		return (void*)soap_instantiate___ns1__checkDatafileDownloadAccess(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__checkDatasetDownloadAccess:
+		return (void*)soap_instantiate___ns1__checkDatasetDownloadAccess(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByAdvanced:
+		return (void*)soap_instantiate___ns1__searchByAdvanced(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByAdvancedPagination:
+		return (void*)soap_instantiate___ns1__searchByAdvancedPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByKeywords:
+		return (void*)soap_instantiate___ns1__searchByKeywords(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByKeywordsAll:
+		return (void*)soap_instantiate___ns1__searchByKeywordsAll(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getMyInvestigations:
+		return (void*)soap_instantiate___ns1__getMyInvestigations(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getMyInvestigationsIncludes:
+		return (void*)soap_instantiate___ns1__getMyInvestigationsIncludes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination:
+		return (void*)soap_instantiate___ns1__getMyInvestigationsIncludesPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByUserID:
+		return (void*)soap_instantiate___ns1__searchByUserID(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByUserIDPagination:
+		return (void*)soap_instantiate___ns1__searchByUserIDPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByUserSurname:
+		return (void*)soap_instantiate___ns1__searchByUserSurname(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByUserSurnamePagination:
+		return (void*)soap_instantiate___ns1__searchByUserSurnamePagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listInstruments:
+		return (void*)soap_instantiate___ns1__listInstruments(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listRoles:
+		return (void*)soap_instantiate___ns1__listRoles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listParameters:
+		return (void*)soap_instantiate___ns1__listParameters(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listFacilityCycles:
+		return (void*)soap_instantiate___ns1__listFacilityCycles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listInvestigationTypes:
+		return (void*)soap_instantiate___ns1__listInvestigationTypes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchSamplesBySampleName:
+		return (void*)soap_instantiate___ns1__searchSamplesBySampleName(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchDatasetsBySample:
+		return (void*)soap_instantiate___ns1__searchDatasetsBySample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listDatasetTypes:
+		return (void*)soap_instantiate___ns1__listDatasetTypes(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listDatasetStatus:
+		return (void*)soap_instantiate___ns1__listDatasetStatus(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByRunNumber:
+		return (void*)soap_instantiate___ns1__searchByRunNumber(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByRunNumberPagination:
+		return (void*)soap_instantiate___ns1__searchByRunNumberPagination(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__listDatafileFormats:
+		return (void*)soap_instantiate___ns1__listDatafileFormats(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getDatasets:
+		return (void*)soap_instantiate___ns1__getDatasets(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__createDataSet:
+		return (void*)soap_instantiate___ns1__createDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__createDataSets:
+		return (void*)soap_instantiate___ns1__createDataSets(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataSetResponse:
+		return (void*)soap_instantiate___ns1__deleteDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataSet:
+		return (void*)soap_instantiate___ns1__deleteDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataSetParameterResponse:
+		return (void*)soap_instantiate___ns1__deleteDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__deleteDataSetParameter:
+		return (void*)soap_instantiate___ns1__deleteDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataSetResponse:
+		return (void*)soap_instantiate___ns1__modifyDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataSet:
+		return (void*)soap_instantiate___ns1__modifyDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataSetParameterResponse:
+		return (void*)soap_instantiate___ns1__modifyDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__modifyDataSetParameter:
+		return (void*)soap_instantiate___ns1__modifyDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__setDataSetSampleResponse:
+		return (void*)soap_instantiate___ns1__setDataSetSampleResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__setDataSetSample:
+		return (void*)soap_instantiate___ns1__setDataSetSample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addDataSetParameter:
+		return (void*)soap_instantiate___ns1__addDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__addDataSetParameters:
+		return (void*)soap_instantiate___ns1__addDataSetParameters(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataSetResponse:
+		return (void*)soap_instantiate___ns1__removeDataSetResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataSet:
+		return (void*)soap_instantiate___ns1__removeDataSet(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataSetParameterResponse:
+		return (void*)soap_instantiate___ns1__removeDataSetParameterResponse(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__removeDataSetParameter:
+		return (void*)soap_instantiate___ns1__removeDataSetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__ingestMetadata:
+		return (void*)soap_instantiate___ns1__ingestMetadata(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getICATAPIVersion:
+		return (void*)soap_instantiate___ns1__getICATAPIVersion(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getFacilityUserByFacilityUserId:
+		return (void*)soap_instantiate___ns1__getFacilityUserByFacilityUserId(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__getFacilityUserByFederalId:
+		return (void*)soap_instantiate___ns1__getFacilityUserByFederalId(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__isSessionValid:
+		return (void*)soap_instantiate___ns1__isSessionValid(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByParameterOperator:
+		return (void*)soap_instantiate___ns1__searchByParameterOperator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByParameterComparator:
+		return (void*)soap_instantiate___ns1__searchByParameterComparator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchByParameterComparators:
+		return (void*)soap_instantiate___ns1__searchByParameterComparators(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchDatasetsByParameterComparator:
+		return (void*)soap_instantiate___ns1__searchDatasetsByParameterComparator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchDatasetsByParameterComparators:
+		return (void*)soap_instantiate___ns1__searchDatasetsByParameterComparators(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchDatafilesByParameterComparator:
+		return (void*)soap_instantiate___ns1__searchDatafilesByParameterComparator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE___ns1__searchDatafilesByParameterComparators:
+		return (void*)soap_instantiate___ns1__searchDatafilesByParameterComparators(soap, -1, type, arrayType, n);
+#ifndef WITH_NOGLOBAL
+	case SOAP_TYPE_SOAP_ENV__Header:
+		return (void*)soap_instantiate_SOAP_ENV__Header(soap, -1, type, arrayType, n);
+#endif
+#ifndef WITH_NOGLOBAL
+	case SOAP_TYPE_SOAP_ENV__Code:
+		return (void*)soap_instantiate_SOAP_ENV__Code(soap, -1, type, arrayType, n);
+#endif
+#ifndef WITH_NOGLOBAL
+	case SOAP_TYPE_SOAP_ENV__Reason:
+		return (void*)soap_instantiate_SOAP_ENV__Reason(soap, -1, type, arrayType, n);
+#endif
+#ifndef WITH_NOGLOBAL
+	case SOAP_TYPE_SOAP_ENV__Fault:
+		return (void*)soap_instantiate_SOAP_ENV__Fault(soap, -1, type, arrayType, n);
+#endif
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__parameterCondition(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__shift(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__publication(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__keyword(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__investigator(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__sampleParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__parameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__icatRole(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datafileFormat(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datasetParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerToxsd__anyType(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfLONG64:
+		return (void*)soap_instantiate_std__vectorTemplateOfLONG64(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__dataset(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__facilityCycle(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datafileParameter(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__datafile(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__investigation(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample:
+		return (void*)soap_instantiate_std__vectorTemplateOfPointerTons1__sample(soap, -1, type, arrayType, n);
+	case SOAP_TYPE_std__vectorTemplateOfstd__string:
+		return (void*)soap_instantiate_std__vectorTemplateOfstd__string(soap, -1, type, arrayType, n);
+	}
+	return NULL;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_fdelete(struct soap_clist *p)
+{	switch (p->type)
+	{
+	case SOAP_TYPE_xsd__anyType:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__anyType*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__anyType*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__boolean:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__boolean*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__boolean*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__dateTime:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__dateTime*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__dateTime*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__double:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__double*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__double*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__float:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__float*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__float*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__int:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__int*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__int*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__long:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__long*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__long*)p->ptr);
+		break;
+	case SOAP_TYPE_std__string:
+		if (p->size < 0)
+			SOAP_DELETE((std::string*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::string*)p->ptr);
+		break;
+	case SOAP_TYPE_xsd__string:
+		if (p->size < 0)
+			SOAP_DELETE((xsd__string*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((xsd__string*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterValueType_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterValueType_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterValueType_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datafileInclude_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datafileInclude_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datafileInclude_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__comparisonOperator_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__comparisonOperator_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__comparisonOperator_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterType_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterType_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterType_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__keywordType_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__keywordType_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__keywordType_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__investigationInclude_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__investigationInclude_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__investigationInclude_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__logicalOperator_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__logicalOperator_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__logicalOperator_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__elementType_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__elementType_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__elementType_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datasetInclude_:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datasetInclude_*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datasetInclude_*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listDatasetTypes:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listDatasetTypes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listDatasetTypes*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listDatasetTypesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listDatasetTypesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listDatasetTypesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__SessionException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__SessionException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__SessionException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchSamplesBySampleName:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchSamplesBySampleName*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchSamplesBySampleName*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchSamplesBySampleNameResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchSamplesBySampleNameResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchSamplesBySampleNameResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__entityBaseBean:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__entityBaseBean*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__entityBaseBean*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__entityPrimaryKeyBaseBean:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__entityPrimaryKeyBaseBean*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__entityPrimaryKeyBaseBean*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeSample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeSample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__InsufficientPrivilegesException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__InsufficientPrivilegesException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__InsufficientPrivilegesException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__NoSuchObjectFoundException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__NoSuchObjectFoundException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__NoSuchObjectFoundException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listInstruments:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listInstruments*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listInstruments*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listInstrumentsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listInstrumentsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listInstrumentsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__ValidationException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__ValidationException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__ValidationException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifySample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifySample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifySample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifySampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifySampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifySampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparators:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByParameterComparators*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByParameterComparators*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterCondition:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterCondition*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterCondition*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterValued:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterValued*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterValued*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparatorsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByParameterComparatorsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByParameterComparatorsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__ParameterSearchException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__ParameterSearchException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__ParameterSearchException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparators:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatafilesByParameterComparators*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparators*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatafilesByParameterComparatorsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparatorsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParameters:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataFileParameters*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataFileParameters*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParametersResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataFileParametersResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataFileParametersResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listFacilityCycles:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listFacilityCycles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listFacilityCycles*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listFacilityCyclesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listFacilityCyclesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listFacilityCyclesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__logout:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__logout*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__logout*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__logoutResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__logoutResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__logoutResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadDataset:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadDataset*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadDataset*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadDatasetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadDatasetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadDatasetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFederalId:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getFacilityUserByFederalId*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFederalId*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getFacilityUserByFederalIdResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFederalIdResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeKeyword:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeKeyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeKeyword*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeKeywordResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeKeywordResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeKeywordResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataSets:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataSets*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataSets*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataSetsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataSetsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataSetsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removePublication:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removePublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removePublication*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removePublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removePublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removePublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getAllKeywords:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getAllKeywords*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getAllKeywords*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getAllKeywordsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getAllKeywordsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getAllKeywordsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getUserDetails:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getUserDetails*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getUserDetails*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getUserDetailsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getUserDetailsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getUserDetailsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__userDetails:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__userDetails*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__userDetails*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__NoSuchUserException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__NoSuchUserException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__NoSuchUserException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafiles:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadDatafiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadDatafiles*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafilesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadDatafilesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadDatafilesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addSampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addSampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addSampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addSampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addSampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addSampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserId:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getFacilityUserByFacilityUserId*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFacilityUserId*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getFacilityUserByFacilityUserIdResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getFacilityUserByFacilityUserIdResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccess:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__checkDatafileDownloadAccess*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__checkDatafileDownloadAccess*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__checkDatafileDownloadAccessResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__checkDatafileDownloadAccessResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadInfo:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadInfo*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadInfo*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurname:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserSurname*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserSurname*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurnameResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserSurnameResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserSurnameResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurnamePagination:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserSurnamePagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserSurnamePagination*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserSurnamePaginationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserSurnamePaginationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccess:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__checkDatasetDownloadAccess*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__checkDatasetDownloadAccess*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__checkDatasetDownloadAccessResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__checkDatasetDownloadAccessResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywords:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByKeywords*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByKeywords*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywordsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByKeywordsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByKeywordsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywordsAll:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByKeywordsAll*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByKeywordsAll*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__keywordDetails:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__keywordDetails*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__keywordDetails*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByKeywordsAllResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByKeywordsAllResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByKeywordsAllResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigations:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getMyInvestigations*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getMyInvestigations*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getMyInvestigationsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getMyInvestigationsIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getMyInvestigationsIncludesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getMyInvestigationsIncludesPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludesPagination*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getMyInvestigationsIncludesPaginationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getMyInvestigationsIncludesPaginationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyPublication:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyPublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyPublication*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyPublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyPublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyPublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserID:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserID*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserID*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserIDResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserIDResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserIDResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserIDPagination:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserIDPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserIDPagination*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByUserIDPaginationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByUserIDPaginationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByUserIDPaginationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationsIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getInvestigationsIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getInvestigationsIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationsIncludesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getInvestigationsIncludesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getInvestigationsIncludesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatafilesByParameterComparator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatafilesByParameterComparatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatafilesByParameterComparatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__isSessionValid:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__isSessionValid*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__isSessionValid*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__isSessionValidResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__isSessionValidResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__isSessionValidResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterOperator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByParameterOperator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByParameterOperator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterOperatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByParameterOperatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByParameterOperatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatafiles:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatafiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatafiles*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatafilesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatafilesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatafilesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getICATAPIVersion:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getICATAPIVersion*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getICATAPIVersion*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getICATAPIVersionResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getICATAPIVersionResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getICATAPIVersionResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatasetsByParameterComparator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatasetsByParameterComparatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeSampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeSampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeSampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeSampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeSampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeSampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__setDataSetSample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__setDataSetSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__setDataSetSample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__setDataSetSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__setDataSetSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__setDataSetSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparators:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatasetsByParameterComparators*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparators*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatasetsByParameterComparatorsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatasetsByParameterComparatorsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadDatafile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadDatafile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__downloadDatafileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__downloadDatafileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__downloadDatafileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUser:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUser*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUser*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMax:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserStartWithMax*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserStartWithMax*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserStartWithMaxResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserStartWithMaxResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserMax:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserMax*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserMax*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserMaxResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserMaxResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserMaxResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserType:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserType*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserType*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getKeywordsForUserTypeResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getKeywordsForUserTypeResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getKeywordsForUserTypeResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listInvestigationTypes:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listInvestigationTypes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listInvestigationTypes*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listInvestigationTypesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listInvestigationTypesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listInvestigationTypesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__removeDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__removeDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__removeDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getAuthorisations:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getAuthorisations*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getAuthorisations*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getAuthorisationsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getAuthorisationsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getAuthorisationsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addKeyword:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addKeyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addKeyword*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addKeywordResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addKeywordResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addKeywordResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listDatasetStatus:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listDatasetStatus*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listDatasetStatus*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listDatasetStatusResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listDatasetStatusResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listDatasetStatusResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteSample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteSample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteKeyword:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteKeyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteKeyword*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteKeywordResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteKeywordResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteKeywordResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParameters:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataSetParameters*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataSetParameters*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParametersResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataSetParametersResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataSetParametersResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumber:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByRunNumber*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByRunNumber*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumberResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByRunNumberResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByRunNumberResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumberPagination:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByRunNumberPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByRunNumberPagination*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByRunNumberPaginationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByRunNumberPaginationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByRunNumberPaginationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvanced:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByAdvanced*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByAdvanced*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__advancedSearchDetails:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__advancedSearchDetails*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__advancedSearchDetails*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvancedResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByAdvancedResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByAdvancedResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvancedPagination:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByAdvancedPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByAdvancedPagination*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByAdvancedPaginationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByAdvancedPaginationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByAdvancedPaginationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listDatafileFormats:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listDatafileFormats*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listDatafileFormats*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listDatafileFormatsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listDatafileFormatsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listDatafileFormatsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifySampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifySampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifySampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifySampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifySampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifySampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByParameterComparator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByParameterComparator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchByParameterComparatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchByParameterComparatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchByParameterComparatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataFiles:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataFiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataFiles*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createDataFilesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createDataFilesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createDataFilesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addSample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addSample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__loginLifetime:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__loginLifetime*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__loginLifetime*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__loginLifetimeResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__loginLifetimeResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__loginLifetimeResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__login:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__login*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__login*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__loginResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__loginResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__loginResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deletePublication:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deletePublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deletePublication*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deletePublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deletePublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deletePublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__updateAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__updateAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__updateAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__updateAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__updateAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__updateAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatasetIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatasetIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatasetIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatasetIncludesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatasetIncludesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatasetIncludesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDataset:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDataset*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDataset*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatasetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatasetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatasetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listRoles:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listRoles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listRoles*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listRolesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listRolesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listRolesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__ingestMetadata:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__ingestMetadata*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__ingestMetadata*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__ingestMetadataResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__ingestMetadataResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__ingestMetadataResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__ICATAPIException:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__ICATAPIException*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__ICATAPIException*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatafile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatafile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatafile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatafileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatafileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatafileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getInvestigationIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getInvestigationIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationIncludesResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getInvestigationIncludesResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getInvestigationIncludesResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addPublication:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addPublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addPublication*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addPublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addPublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addPublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__createInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__createInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__createInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsBySample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatasetsBySample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatasetsBySample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__searchDatasetsBySampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__searchDatasetsBySampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__searchDatasetsBySampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__addDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__addDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__addDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteSampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteSampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteSampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__deleteSampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__deleteSampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__deleteSampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__modifyDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__modifyDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__modifyDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listParameters:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listParameters*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listParameters*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__listParametersResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__listParametersResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__listParametersResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatasets:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatasets*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatasets*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__getDatasetsResponse:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__getDatasetsResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__getDatasetsResponse*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__sample:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__sample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__sample*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__sampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__sampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__sampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__sampleParameterPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__sampleParameterPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__sampleParameterPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__icatRole:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__icatRole*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__icatRole*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datafile:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datafile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datafile*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datafileFormat:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datafileFormat*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datafileFormat*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datafileFormatPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datafileFormatPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datafileFormatPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datafileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datafileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datafileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datafileParameterPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datafileParameterPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datafileParameterPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__relatedDatafiles:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__relatedDatafiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__relatedDatafiles*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__relatedDatafilesPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__relatedDatafilesPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__relatedDatafilesPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterComparisonCondition:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterComparisonCondition*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterComparisonCondition*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__investigation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__investigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__investigation*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__dataset:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__dataset*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__dataset*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datasetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datasetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datasetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__datasetParameterPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__datasetParameterPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__datasetParameterPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__facilityCycle:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__facilityCycle*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__facilityCycle*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__investigator:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__investigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__investigator*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__facilityUser:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__facilityUser*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__facilityUser*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__investigatorPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__investigatorPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__investigatorPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__keyword:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__keyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__keyword*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__keywordPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__keywordPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__keywordPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__publication:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__publication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__publication*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__shift:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__shift*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__shift*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__shiftPK:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__shiftPK*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__shiftPK*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__parameterLogicalCondition:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__parameterLogicalCondition*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__parameterLogicalCondition*)p->ptr);
+		break;
+	case SOAP_TYPE_ns1__icatAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((ns1__icatAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((ns1__icatAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE_SOAP_ENV__Detail:
+		if (p->size < 0)
+			SOAP_DELETE((struct SOAP_ENV__Detail*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct SOAP_ENV__Detail*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__login:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__login*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__login*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__loginLifetime:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__loginLifetime*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__loginLifetime*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addSample:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addSample*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__logout:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__logout*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__logout*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addSampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addSampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addSampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addPublication:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addPublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addPublication*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addKeyword:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addKeyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addKeyword*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getInvestigationIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getInvestigationIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getInvestigationIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getDataset:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getDataset*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getDataset*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatasetIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getDatasetIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getDatasetIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatafile:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getDatafile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getDatafile*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getInvestigationsIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getInvestigationsIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getInvestigationsIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__createInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__createInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__createInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyInvestigationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyInvestigation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeKeywordResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeKeywordResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeKeywordResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeKeyword:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeKeyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeKeyword*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteKeywordResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteKeywordResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteKeywordResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteKeyword:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteKeyword*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteKeyword*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removePublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removePublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removePublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removePublication:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removePublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removePublication*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deletePublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deletePublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deletePublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deletePublication:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deletePublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deletePublication*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyPublicationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyPublicationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyPublicationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyPublication:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyPublication*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyPublication*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigatorResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteInvestigatorResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigatorResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteInvestigator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteInvestigator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteInvestigator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSample:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeSample*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSample:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteSample*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifySampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifySampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySample:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifySample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifySample*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeSampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeSampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeSampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeSampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeSampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteSampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteSampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteSampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteSampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteSampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySampleParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifySampleParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifySampleParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifySampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifySampleParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifySampleParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getAuthorisations:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getAuthorisations*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getAuthorisations*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__updateAuthorisationResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__updateAuthorisationResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__updateAuthorisationResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__updateAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__updateAuthorisation*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__updateAuthorisation*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getUserDetails:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getUserDetails*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getUserDetails*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatafiles:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getDatafiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getDatafiles*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__createDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__createDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataFiles:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__createDataFiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__createDataFiles*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFileResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataFileResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFileResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFile:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataFile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFile*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataFileParameters:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addDataFileParameters*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addDataFileParameters*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFileParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataFileParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFileParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataFileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataFileParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataFileParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUser:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getKeywordsForUser*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUser*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUserStartWithMax:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getKeywordsForUserStartWithMax*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUserStartWithMax*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUserMax:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getKeywordsForUserMax*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUserMax*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getKeywordsForUserType:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getKeywordsForUserType*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getKeywordsForUserType*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getAllKeywords:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getAllKeywords*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getAllKeywords*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__downloadDatafile:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__downloadDatafile*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__downloadDatafile*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__downloadDatafiles:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__downloadDatafiles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__downloadDatafiles*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__downloadDataset:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__downloadDataset*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__downloadDataset*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__checkDatafileDownloadAccess:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__checkDatafileDownloadAccess*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__checkDatafileDownloadAccess*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__checkDatasetDownloadAccess:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__checkDatasetDownloadAccess*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__checkDatasetDownloadAccess*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByAdvanced:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByAdvanced*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByAdvanced*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByAdvancedPagination:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByAdvancedPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByAdvancedPagination*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByKeywords:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByKeywords*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByKeywords*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByKeywordsAll:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByKeywordsAll*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByKeywordsAll*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getMyInvestigations:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getMyInvestigations*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getMyInvestigations*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getMyInvestigationsIncludes:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getMyInvestigationsIncludes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getMyInvestigationsIncludes*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getMyInvestigationsIncludesPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getMyInvestigationsIncludesPagination*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserID:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByUserID*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByUserID*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserIDPagination:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByUserIDPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByUserIDPagination*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserSurname:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByUserSurname*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByUserSurname*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByUserSurnamePagination:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByUserSurnamePagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByUserSurnamePagination*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listInstruments:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listInstruments*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listInstruments*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listRoles:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listRoles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listRoles*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listParameters:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listParameters*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listParameters*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listFacilityCycles:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listFacilityCycles*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listFacilityCycles*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listInvestigationTypes:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listInvestigationTypes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listInvestigationTypes*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchSamplesBySampleName:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchSamplesBySampleName*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchSamplesBySampleName*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatasetsBySample:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchDatasetsBySample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchDatasetsBySample*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listDatasetTypes:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listDatasetTypes*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listDatasetTypes*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listDatasetStatus:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listDatasetStatus*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listDatasetStatus*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByRunNumber:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByRunNumber*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByRunNumber*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByRunNumberPagination:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByRunNumberPagination*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByRunNumberPagination*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__listDatafileFormats:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__listDatafileFormats*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__listDatafileFormats*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getDatasets:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getDatasets*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getDatasets*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__createDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__createDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__createDataSets:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__createDataSets*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__createDataSets*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__deleteDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__deleteDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__deleteDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__modifyDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__modifyDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__modifyDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__setDataSetSampleResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__setDataSetSampleResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__setDataSetSampleResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__setDataSetSample:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__setDataSetSample*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__setDataSetSample*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__addDataSetParameters:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__addDataSetParameters*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__addDataSetParameters*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSetResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataSetResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataSetResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSet:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataSet*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataSet*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSetParameterResponse:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataSetParameterResponse*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataSetParameterResponse*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__removeDataSetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__removeDataSetParameter*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__removeDataSetParameter*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__ingestMetadata:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__ingestMetadata*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__ingestMetadata*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getICATAPIVersion:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getICATAPIVersion*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getICATAPIVersion*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getFacilityUserByFacilityUserId:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getFacilityUserByFacilityUserId*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getFacilityUserByFacilityUserId*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__getFacilityUserByFederalId:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__getFacilityUserByFederalId*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__getFacilityUserByFederalId*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__isSessionValid:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__isSessionValid*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__isSessionValid*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByParameterOperator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByParameterOperator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByParameterOperator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByParameterComparator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByParameterComparator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByParameterComparator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchByParameterComparators:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchByParameterComparators*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchByParameterComparators*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatasetsByParameterComparator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchDatasetsByParameterComparator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchDatasetsByParameterComparator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatasetsByParameterComparators:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchDatasetsByParameterComparators*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchDatasetsByParameterComparators*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatafilesByParameterComparator:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchDatafilesByParameterComparator*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchDatafilesByParameterComparator*)p->ptr);
+		break;
+	case SOAP_TYPE___ns1__searchDatafilesByParameterComparators:
+		if (p->size < 0)
+			SOAP_DELETE((struct __ns1__searchDatafilesByParameterComparators*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct __ns1__searchDatafilesByParameterComparators*)p->ptr);
+		break;
+	case SOAP_TYPE_SOAP_ENV__Header:
+		if (p->size < 0)
+			SOAP_DELETE((struct SOAP_ENV__Header*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct SOAP_ENV__Header*)p->ptr);
+		break;
+	case SOAP_TYPE_SOAP_ENV__Code:
+		if (p->size < 0)
+			SOAP_DELETE((struct SOAP_ENV__Code*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct SOAP_ENV__Code*)p->ptr);
+		break;
+	case SOAP_TYPE_SOAP_ENV__Reason:
+		if (p->size < 0)
+			SOAP_DELETE((struct SOAP_ENV__Reason*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct SOAP_ENV__Reason*)p->ptr);
+		break;
+	case SOAP_TYPE_SOAP_ENV__Fault:
+		if (p->size < 0)
+			SOAP_DELETE((struct SOAP_ENV__Fault*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((struct SOAP_ENV__Fault*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__parameterCondition * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__parameterCondition * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__shift * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__shift * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__publication * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__publication * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__keyword * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__keyword * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__investigator * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__investigator * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__relatedDatafiles * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__relatedDatafiles * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__sampleParameter * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__sampleParameter * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__parameter * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__parameter * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__icatRole * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__icatRole * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__datafileFormat * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__datafileFormat * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__datasetParameter * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__datasetParameter * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__icatAuthorisation * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__icatAuthorisation * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<xsd__anyType * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<xsd__anyType * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfLONG64:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<LONG64 >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<LONG64 >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__dataset * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__dataset * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__facilityCycle * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__facilityCycle * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__datafileParameter * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__datafileParameter * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__datafile * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__datafile * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__investigation * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__investigation * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__parameterComparisonCondition * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__parameterComparisonCondition * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<ns1__sample * >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<ns1__sample * >*)p->ptr);
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfstd__string:
+		if (p->size < 0)
+			SOAP_DELETE((std::vector<std::string >*)p->ptr);
+		else
+			SOAP_DELETE_ARRAY((std::vector<std::string >*)p->ptr);
+		break;
+	default:	return SOAP_ERR;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 void* SOAP_FMAC4 soap_class_id_enter(struct soap *soap, const char *id, void *p, int t, size_t n, const char *type, const char *arrayType)
+{	return soap_id_enter(soap, id, p, t, n, 0, type, arrayType, soap_instantiate);
+}
+
+SOAP_FMAC3 void* SOAP_FMAC4 soap_container_id_forward(struct soap *soap, const char *href, void *p, size_t len, int st, int tt, size_t n, unsigned int k)
+{	return soap_id_forward(soap, href, p, len, st, tt, n, k, soap_container_insert);
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_container_insert(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+#ifdef WIN32
+#pragma warning(push)
+#pragma warning(disable:4065)
+#endif
+{
+	(void)soap; (void)st; (void)p; (void)len; (void)q; (void)n; /* appease -Wall -Werror */
+	switch (tt)
+	{
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__parameterCondition * >*)p)[len] = *(ns1__parameterCondition **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__shift * >*)p)[len] = *(ns1__shift **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__publication * >*)p)[len] = *(ns1__publication **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__keyword * >*)p)[len] = *(ns1__keyword **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__investigator * >*)p)[len] = *(ns1__investigator **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__relatedDatafiles * >*)p)[len] = *(ns1__relatedDatafiles **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__sampleParameter * >*)p)[len] = *(ns1__sampleParameter **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__parameter * >*)p)[len] = *(ns1__parameter **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__icatRole * >*)p)[len] = *(ns1__icatRole **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__datafileFormat * >*)p)[len] = *(ns1__datafileFormat **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__datasetParameter * >*)p)[len] = *(ns1__datasetParameter **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__icatAuthorisation * >*)p)[len] = *(ns1__icatAuthorisation **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<xsd__anyType * >*)p)[len] = *(xsd__anyType **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfLONG64:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<LONG64 >*)p)[len] = *(LONG64 *)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__dataset * >*)p)[len] = *(ns1__dataset **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__facilityCycle * >*)p)[len] = *(ns1__facilityCycle **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__datafileParameter * >*)p)[len] = *(ns1__datafileParameter **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__datafile * >*)p)[len] = *(ns1__datafile **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__investigation * >*)p)[len] = *(ns1__investigation **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__parameterComparisonCondition * >*)p)[len] = *(ns1__parameterComparisonCondition **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<ns1__sample * >*)p)[len] = *(ns1__sample **)q;
+		break;
+	case SOAP_TYPE_std__vectorTemplateOfstd__string:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Container insert type=%d in %d location=%p object=%p len=%lu\n", st, tt, p, q, (unsigned long)len));
+		(*(std::vector<std::string >*)p)[len] = *(std::string *)q;
+		break;
+	default:
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Could not insert type=%d in %d\n", st, tt));
+	}
+#ifdef WIN32
+#pragma warning(pop)
+#endif
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_byte(struct soap *soap, char *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_byte
+	*a = SOAP_DEFAULT_byte;
+#else
+	*a = (char)0;
+#endif
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_byte(struct soap *soap, const char *tag, int id, const char *a, const char *type)
+{
+	return soap_outbyte(soap, tag, id, a, type, SOAP_TYPE_byte);
+}
+
+SOAP_FMAC3 char * SOAP_FMAC4 soap_in_byte(struct soap *soap, const char *tag, char *a, const char *type)
+{	char *p;
+	p = soap_inbyte(soap, tag, a, type, SOAP_TYPE_byte);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_byte(struct soap *soap, const char *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_byte);
+	if (soap_out_byte(soap, tag?tag:"byte", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 char * SOAP_FMAC4 soap_get_byte(struct soap *soap, char *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_byte(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_int(struct soap *soap, int *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_int
+	*a = SOAP_DEFAULT_int;
+#else
+	*a = (int)0;
+#endif
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_int(struct soap *soap, const char *tag, int id, const int *a, const char *type)
+{
+	return soap_outint(soap, tag, id, a, type, SOAP_TYPE_int);
+}
+
+SOAP_FMAC3 int * SOAP_FMAC4 soap_in_int(struct soap *soap, const char *tag, int *a, const char *type)
+{	int *p;
+	p = soap_inint(soap, tag, a, type, SOAP_TYPE_int);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_int(struct soap *soap, const int *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_int);
+	if (soap_out_int(soap, tag?tag:"int", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 int * SOAP_FMAC4 soap_get_int(struct soap *soap, int *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_int(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_LONG64(struct soap *soap, LONG64 *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_LONG64
+	*a = SOAP_DEFAULT_LONG64;
+#else
+	*a = (LONG64)0;
+#endif
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_LONG64(struct soap *soap, const char *tag, int id, const LONG64 *a, const char *type)
+{
+	return soap_outLONG64(soap, tag, id, a, type, SOAP_TYPE_LONG64);
+}
+
+SOAP_FMAC3 LONG64 * SOAP_FMAC4 soap_in_LONG64(struct soap *soap, const char *tag, LONG64 *a, const char *type)
+{	LONG64 *p;
+	p = soap_inLONG64(soap, tag, a, type, SOAP_TYPE_LONG64);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_LONG64(struct soap *soap, const LONG64 *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_LONG64);
+	if (soap_out_LONG64(soap, tag?tag:"long", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 LONG64 * SOAP_FMAC4 soap_get_LONG64(struct soap *soap, LONG64 *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_LONG64(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_float(struct soap *soap, float *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_float
+	*a = SOAP_DEFAULT_float;
+#else
+	*a = (float)0;
+#endif
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_float(struct soap *soap, const char *tag, int id, const float *a, const char *type)
+{
+	return soap_outfloat(soap, tag, id, a, type, SOAP_TYPE_float);
+}
+
+SOAP_FMAC3 float * SOAP_FMAC4 soap_in_float(struct soap *soap, const char *tag, float *a, const char *type)
+{	float *p;
+	p = soap_infloat(soap, tag, a, type, SOAP_TYPE_float);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_float(struct soap *soap, const float *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_float);
+	if (soap_out_float(soap, tag?tag:"float", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 float * SOAP_FMAC4 soap_get_float(struct soap *soap, float *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_float(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_double(struct soap *soap, double *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_double
+	*a = SOAP_DEFAULT_double;
+#else
+	*a = (double)0;
+#endif
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_double(struct soap *soap, const char *tag, int id, const double *a, const char *type)
+{
+	return soap_outdouble(soap, tag, id, a, type, SOAP_TYPE_double);
+}
+
+SOAP_FMAC3 double * SOAP_FMAC4 soap_in_double(struct soap *soap, const char *tag, double *a, const char *type)
+{	double *p;
+	p = soap_indouble(soap, tag, a, type, SOAP_TYPE_double);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_double(struct soap *soap, const double *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_double);
+	if (soap_out_double(soap, tag?tag:"double", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 double * SOAP_FMAC4 soap_get_double(struct soap *soap, double *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_double(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_time(struct soap *soap, time_t *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_time
+	*a = SOAP_DEFAULT_time;
+#else
+	*a = (time_t)0;
+#endif
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_time(struct soap *soap, const char *tag, int id, const time_t *a, const char *type)
+{
+	return soap_outdateTime(soap, tag, id, a, type, SOAP_TYPE_time);
+}
+
+SOAP_FMAC3 time_t * SOAP_FMAC4 soap_in_time(struct soap *soap, const char *tag, time_t *a, const char *type)
+{	time_t *p;
+	p = soap_indateTime(soap, tag, a, type, SOAP_TYPE_time);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_time(struct soap *soap, const time_t *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_time);
+	if (soap_out_time(soap, tag?tag:"dateTime", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 time_t * SOAP_FMAC4 soap_get_time(struct soap *soap, time_t *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_time(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__datasetInclude
+	*a = SOAP_DEFAULT_ns1__datasetInclude;
+#else
+	*a = (enum ns1__datasetInclude)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__datasetInclude[] =
+{	{ (long)ns1__datasetInclude__DATASET_USCOREAND_USCOREDATAFILES_USCOREONLY, "DATASET_AND_DATAFILES_ONLY" },
+	{ (long)ns1__datasetInclude__DATASET_USCOREPARAMETERS_USCOREONLY, "DATASET_PARAMETERS_ONLY" },
+	{ (long)ns1__datasetInclude__DATASET_USCOREDATAFILES_USCOREAND_USCOREPARAMETERS, "DATASET_DATAFILES_AND_PARAMETERS" },
+	{ (long)ns1__datasetInclude__NONE, "NONE" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__datasetInclude2s(struct soap *soap, enum ns1__datasetInclude n)
+{	const char *s = soap_code_str(soap_codes_ns1__datasetInclude, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetInclude(struct soap *soap, const char *tag, int id, const enum ns1__datasetInclude *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datasetInclude), type) || soap_send(soap, soap_ns1__datasetInclude2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__datasetInclude(struct soap *soap, const char *s, enum ns1__datasetInclude *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__datasetInclude, s);
+	if (map)
+		*a = (enum ns1__datasetInclude)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 3)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__datasetInclude)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__datasetInclude * SOAP_FMAC4 soap_in_ns1__datasetInclude(struct soap *soap, const char *tag, enum ns1__datasetInclude *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__datasetInclude *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetInclude, sizeof(enum ns1__datasetInclude), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__datasetInclude(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__datasetInclude *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datasetInclude, 0, sizeof(enum ns1__datasetInclude), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__datasetInclude(struct soap *soap, const enum ns1__datasetInclude *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__datasetInclude);
+	if (soap_out_ns1__datasetInclude(soap, tag?tag:"ns1:datasetInclude", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__datasetInclude * SOAP_FMAC4 soap_get_ns1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datasetInclude(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__elementType(struct soap *soap, enum ns1__elementType *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__elementType
+	*a = SOAP_DEFAULT_ns1__elementType;
+#else
+	*a = (enum ns1__elementType)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__elementType[] =
+{	{ (long)ns1__elementType__STUDY, "STUDY" },
+	{ (long)ns1__elementType__INVESTIGATION, "INVESTIGATION" },
+	{ (long)ns1__elementType__INVESTIGATOR, "INVESTIGATOR" },
+	{ (long)ns1__elementType__KEYWORD, "KEYWORD" },
+	{ (long)ns1__elementType__SAMPLE, "SAMPLE" },
+	{ (long)ns1__elementType__SAMPLE_USCOREPARAMETER, "SAMPLE_PARAMETER" },
+	{ (long)ns1__elementType__PUBLICATION, "PUBLICATION" },
+	{ (long)ns1__elementType__DATASET, "DATASET" },
+	{ (long)ns1__elementType__DATASET_USCOREPARAMETER, "DATASET_PARAMETER" },
+	{ (long)ns1__elementType__DATAFILE, "DATAFILE" },
+	{ (long)ns1__elementType__DATAFILE_USCOREPARAMETER, "DATAFILE_PARAMETER" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__elementType2s(struct soap *soap, enum ns1__elementType n)
+{	const char *s = soap_code_str(soap_codes_ns1__elementType, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__elementType(struct soap *soap, const char *tag, int id, const enum ns1__elementType *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__elementType), type) || soap_send(soap, soap_ns1__elementType2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__elementType(struct soap *soap, const char *s, enum ns1__elementType *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__elementType, s);
+	if (map)
+		*a = (enum ns1__elementType)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 10)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__elementType)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__elementType * SOAP_FMAC4 soap_in_ns1__elementType(struct soap *soap, const char *tag, enum ns1__elementType *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__elementType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__elementType, sizeof(enum ns1__elementType), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__elementType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__elementType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__elementType, 0, sizeof(enum ns1__elementType), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__elementType(struct soap *soap, const enum ns1__elementType *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__elementType);
+	if (soap_out_ns1__elementType(soap, tag?tag:"ns1:elementType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__elementType * SOAP_FMAC4 soap_get_ns1__elementType(struct soap *soap, enum ns1__elementType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__elementType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__logicalOperator
+	*a = SOAP_DEFAULT_ns1__logicalOperator;
+#else
+	*a = (enum ns1__logicalOperator)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__logicalOperator[] =
+{	{ (long)ns1__logicalOperator__AND, "AND" },
+	{ (long)ns1__logicalOperator__OR, "OR" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__logicalOperator2s(struct soap *soap, enum ns1__logicalOperator n)
+{	const char *s = soap_code_str(soap_codes_ns1__logicalOperator, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logicalOperator(struct soap *soap, const char *tag, int id, const enum ns1__logicalOperator *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__logicalOperator), type) || soap_send(soap, soap_ns1__logicalOperator2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__logicalOperator(struct soap *soap, const char *s, enum ns1__logicalOperator *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__logicalOperator, s);
+	if (map)
+		*a = (enum ns1__logicalOperator)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 1)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__logicalOperator)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__logicalOperator * SOAP_FMAC4 soap_in_ns1__logicalOperator(struct soap *soap, const char *tag, enum ns1__logicalOperator *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__logicalOperator *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logicalOperator, sizeof(enum ns1__logicalOperator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__logicalOperator(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__logicalOperator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__logicalOperator, 0, sizeof(enum ns1__logicalOperator), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__logicalOperator(struct soap *soap, const enum ns1__logicalOperator *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__logicalOperator);
+	if (soap_out_ns1__logicalOperator(soap, tag?tag:"ns1:logicalOperator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__logicalOperator * SOAP_FMAC4 soap_get_ns1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__logicalOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__investigationInclude
+	*a = SOAP_DEFAULT_ns1__investigationInclude;
+#else
+	*a = (enum ns1__investigationInclude)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__investigationInclude[] =
+{	{ (long)ns1__investigationInclude__INVESTIGATORS_USCOREONLY, "INVESTIGATORS_ONLY" },
+	{ (long)ns1__investigationInclude__KEYWORDS_USCOREONLY, "KEYWORDS_ONLY" },
+	{ (long)ns1__investigationInclude__PUBLICATIONS_USCOREONLY, "PUBLICATIONS_ONLY" },
+	{ (long)ns1__investigationInclude__INVESTIGATORS_USCOREAND_USCOREKEYWORDS, "INVESTIGATORS_AND_KEYWORDS" },
+	{ (long)ns1__investigationInclude__INVESTIGATORS_USCOREAND_USCORESHIFTS, "INVESTIGATORS_AND_SHIFTS" },
+	{ (long)ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES, "INVESTIGATORS_SHIFTS_AND_SAMPLES" },
+	{ (long)ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCORESAMPLES_USCOREAND_USCOREPUBLICATIONS, "INVESTIGATORS_SHIFTS_SAMPLES_AND_PUBLICATIONS" },
+	{ (long)ns1__investigationInclude__DATASETS_USCOREONLY, "DATASETS_ONLY" },
+	{ (long)ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATASET_USCOREPARAMETERS_USCOREONLY, "DATASETS_AND_DATASET_PARAMETERS_ONLY" },
+	{ (long)ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATAFILES, "DATASETS_AND_DATAFILES" },
+	{ (long)ns1__investigationInclude__DATASETS_USCOREDATAFILES_USCOREAND_USCOREPARAMETERS, "DATASETS_DATAFILES_AND_PARAMETERS" },
+	{ (long)ns1__investigationInclude__SAMPLES_USCOREONLY, "SAMPLES_ONLY" },
+	{ (long)ns1__investigationInclude__ROLE_USCOREONLY, "ROLE_ONLY" },
+	{ (long)ns1__investigationInclude__SHIFT_USCOREONLY, "SHIFT_ONLY" },
+	{ (long)ns1__investigationInclude__ALL, "ALL" },
+	{ (long)ns1__investigationInclude__NONE, "NONE" },
+	{ (long)ns1__investigationInclude__ALL_USCOREEXCEPT_USCOREDATASETS_USCOREAND_USCOREDATAFILES, "ALL_EXCEPT_DATASETS_AND_DATAFILES" },
+	{ (long)ns1__investigationInclude__ALL_USCOREEXCEPT_USCOREDATASETS_USCOREDATAFILES_USCOREAND_USCOREROLES, "ALL_EXCEPT_DATASETS_DATAFILES_AND_ROLES" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__investigationInclude2s(struct soap *soap, enum ns1__investigationInclude n)
+{	const char *s = soap_code_str(soap_codes_ns1__investigationInclude, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigationInclude(struct soap *soap, const char *tag, int id, const enum ns1__investigationInclude *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigationInclude), type) || soap_send(soap, soap_ns1__investigationInclude2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__investigationInclude(struct soap *soap, const char *s, enum ns1__investigationInclude *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__investigationInclude, s);
+	if (map)
+		*a = (enum ns1__investigationInclude)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 17)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__investigationInclude)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__investigationInclude * SOAP_FMAC4 soap_in_ns1__investigationInclude(struct soap *soap, const char *tag, enum ns1__investigationInclude *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__investigationInclude *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigationInclude, sizeof(enum ns1__investigationInclude), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__investigationInclude(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__investigationInclude *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigationInclude, 0, sizeof(enum ns1__investigationInclude), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__investigationInclude(struct soap *soap, const enum ns1__investigationInclude *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__investigationInclude);
+	if (soap_out_ns1__investigationInclude(soap, tag?tag:"ns1:investigationInclude", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__investigationInclude * SOAP_FMAC4 soap_get_ns1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__investigationInclude(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__keywordType(struct soap *soap, enum ns1__keywordType *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__keywordType
+	*a = SOAP_DEFAULT_ns1__keywordType;
+#else
+	*a = (enum ns1__keywordType)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__keywordType[] =
+{	{ (long)ns1__keywordType__ALL, "ALL" },
+	{ (long)ns1__keywordType__ALPHA_USCORENUMERIC, "ALPHA_NUMERIC" },
+	{ (long)ns1__keywordType__ALPHA, "ALPHA" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__keywordType2s(struct soap *soap, enum ns1__keywordType n)
+{	const char *s = soap_code_str(soap_codes_ns1__keywordType, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordType(struct soap *soap, const char *tag, int id, const enum ns1__keywordType *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keywordType), type) || soap_send(soap, soap_ns1__keywordType2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__keywordType(struct soap *soap, const char *s, enum ns1__keywordType *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__keywordType, s);
+	if (map)
+		*a = (enum ns1__keywordType)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 2)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__keywordType)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__keywordType * SOAP_FMAC4 soap_in_ns1__keywordType(struct soap *soap, const char *tag, enum ns1__keywordType *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__keywordType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordType, sizeof(enum ns1__keywordType), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__keywordType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__keywordType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keywordType, 0, sizeof(enum ns1__keywordType), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__keywordType(struct soap *soap, const enum ns1__keywordType *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__keywordType);
+	if (soap_out_ns1__keywordType(soap, tag?tag:"ns1:keywordType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__keywordType * SOAP_FMAC4 soap_get_ns1__keywordType(struct soap *soap, enum ns1__keywordType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__keywordType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__parameterType(struct soap *soap, enum ns1__parameterType *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__parameterType
+	*a = SOAP_DEFAULT_ns1__parameterType;
+#else
+	*a = (enum ns1__parameterType)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__parameterType[] =
+{	{ (long)ns1__parameterType__DATAFILE, "DATAFILE" },
+	{ (long)ns1__parameterType__DATASET, "DATASET" },
+	{ (long)ns1__parameterType__SAMPLE, "SAMPLE" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__parameterType2s(struct soap *soap, enum ns1__parameterType n)
+{	const char *s = soap_code_str(soap_codes_ns1__parameterType, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterType(struct soap *soap, const char *tag, int id, const enum ns1__parameterType *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterType), type) || soap_send(soap, soap_ns1__parameterType2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__parameterType(struct soap *soap, const char *s, enum ns1__parameterType *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__parameterType, s);
+	if (map)
+		*a = (enum ns1__parameterType)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 2)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__parameterType)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__parameterType * SOAP_FMAC4 soap_in_ns1__parameterType(struct soap *soap, const char *tag, enum ns1__parameterType *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__parameterType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterType, sizeof(enum ns1__parameterType), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__parameterType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__parameterType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterType, 0, sizeof(enum ns1__parameterType), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__parameterType(struct soap *soap, const enum ns1__parameterType *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__parameterType);
+	if (soap_out_ns1__parameterType(soap, tag?tag:"ns1:parameterType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__parameterType * SOAP_FMAC4 soap_get_ns1__parameterType(struct soap *soap, enum ns1__parameterType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__comparisonOperator
+	*a = SOAP_DEFAULT_ns1__comparisonOperator;
+#else
+	*a = (enum ns1__comparisonOperator)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__comparisonOperator[] =
+{	{ (long)ns1__comparisonOperator__GREATER_USCORETHAN, "GREATER_THAN" },
+	{ (long)ns1__comparisonOperator__LESS_USCORETHAN, "LESS_THAN" },
+	{ (long)ns1__comparisonOperator__EQUAL, "EQUAL" },
+	{ (long)ns1__comparisonOperator__GREATER_USCOREEQUAL, "GREATER_EQUAL" },
+	{ (long)ns1__comparisonOperator__LESS_USCOREEQUAL, "LESS_EQUAL" },
+	{ (long)ns1__comparisonOperator__BETWEEN, "BETWEEN" },
+	{ (long)ns1__comparisonOperator__BETWEEN_USCOREEQUAL, "BETWEEN_EQUAL" },
+	{ (long)ns1__comparisonOperator__BETWEEN_USCOREEQUAL_USCORELEFT, "BETWEEN_EQUAL_LEFT" },
+	{ (long)ns1__comparisonOperator__BETWEEN_USCOREEQUAL_USCORERIGHT, "BETWEEN_EQUAL_RIGHT" },
+	{ (long)ns1__comparisonOperator__CONTAIN, "CONTAIN" },
+	{ (long)ns1__comparisonOperator__START_USCOREWITH, "START_WITH" },
+	{ (long)ns1__comparisonOperator__END_USCOREWITH, "END_WITH" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__comparisonOperator2s(struct soap *soap, enum ns1__comparisonOperator n)
+{	const char *s = soap_code_str(soap_codes_ns1__comparisonOperator, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__comparisonOperator(struct soap *soap, const char *tag, int id, const enum ns1__comparisonOperator *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__comparisonOperator), type) || soap_send(soap, soap_ns1__comparisonOperator2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__comparisonOperator(struct soap *soap, const char *s, enum ns1__comparisonOperator *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__comparisonOperator, s);
+	if (map)
+		*a = (enum ns1__comparisonOperator)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 11)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__comparisonOperator)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__comparisonOperator * SOAP_FMAC4 soap_in_ns1__comparisonOperator(struct soap *soap, const char *tag, enum ns1__comparisonOperator *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__comparisonOperator *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__comparisonOperator, sizeof(enum ns1__comparisonOperator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__comparisonOperator(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__comparisonOperator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__comparisonOperator, 0, sizeof(enum ns1__comparisonOperator), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__comparisonOperator(struct soap *soap, const enum ns1__comparisonOperator *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__comparisonOperator);
+	if (soap_out_ns1__comparisonOperator(soap, tag?tag:"ns1:comparisonOperator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__comparisonOperator * SOAP_FMAC4 soap_get_ns1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__comparisonOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__datafileInclude
+	*a = SOAP_DEFAULT_ns1__datafileInclude;
+#else
+	*a = (enum ns1__datafileInclude)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__datafileInclude[] =
+{	{ (long)ns1__datafileInclude__DATAFILE_USCOREPARAMETERS, "DATAFILE_PARAMETERS" },
+	{ (long)ns1__datafileInclude__RELATED_USCOREDATAFILES, "RELATED_DATAFILES" },
+	{ (long)ns1__datafileInclude__ALL, "ALL" },
+	{ (long)ns1__datafileInclude__NONE, "NONE" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__datafileInclude2s(struct soap *soap, enum ns1__datafileInclude n)
+{	const char *s = soap_code_str(soap_codes_ns1__datafileInclude, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileInclude(struct soap *soap, const char *tag, int id, const enum ns1__datafileInclude *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileInclude), type) || soap_send(soap, soap_ns1__datafileInclude2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__datafileInclude(struct soap *soap, const char *s, enum ns1__datafileInclude *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__datafileInclude, s);
+	if (map)
+		*a = (enum ns1__datafileInclude)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 3)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__datafileInclude)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__datafileInclude * SOAP_FMAC4 soap_in_ns1__datafileInclude(struct soap *soap, const char *tag, enum ns1__datafileInclude *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__datafileInclude *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileInclude, sizeof(enum ns1__datafileInclude), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__datafileInclude(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__datafileInclude *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileInclude, 0, sizeof(enum ns1__datafileInclude), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__datafileInclude(struct soap *soap, const enum ns1__datafileInclude *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__datafileInclude);
+	if (soap_out_ns1__datafileInclude(soap, tag?tag:"ns1:datafileInclude", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__datafileInclude * SOAP_FMAC4 soap_get_ns1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafileInclude(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_ns1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_ns1__parameterValueType
+	*a = SOAP_DEFAULT_ns1__parameterValueType;
+#else
+	*a = (enum ns1__parameterValueType)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_ns1__parameterValueType[] =
+{	{ (long)ns1__parameterValueType__NUMERIC, "NUMERIC" },
+	{ (long)ns1__parameterValueType__STRING, "STRING" },
+	{ (long)ns1__parameterValueType__DATE_USCOREAND_USCORETIME, "DATE_AND_TIME" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_ns1__parameterValueType2s(struct soap *soap, enum ns1__parameterValueType n)
+{	const char *s = soap_code_str(soap_codes_ns1__parameterValueType, (long)n);
+	if (s)
+		return s;
+	return soap_long2s(soap, (long)n);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterValueType(struct soap *soap, const char *tag, int id, const enum ns1__parameterValueType *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterValueType), type) || soap_send(soap, soap_ns1__parameterValueType2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2ns1__parameterValueType(struct soap *soap, const char *s, enum ns1__parameterValueType *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_ns1__parameterValueType, s);
+	if (map)
+		*a = (enum ns1__parameterValueType)map->code;
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || ((soap->mode & SOAP_XML_STRICT) && (n < 0 || n > 2)))
+			return soap->error = SOAP_TYPE;
+		*a = (enum ns1__parameterValueType)n;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 enum ns1__parameterValueType * SOAP_FMAC4 soap_in_ns1__parameterValueType(struct soap *soap, const char *tag, enum ns1__parameterValueType *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (enum ns1__parameterValueType *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterValueType, sizeof(enum ns1__parameterValueType), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2ns1__parameterValueType(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__parameterValueType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterValueType, 0, sizeof(enum ns1__parameterValueType), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_ns1__parameterValueType(struct soap *soap, const enum ns1__parameterValueType *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_ns1__parameterValueType);
+	if (soap_out_ns1__parameterValueType(soap, tag?tag:"ns1:parameterValueType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__parameterValueType * SOAP_FMAC4 soap_get_ns1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterValueType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_bool(struct soap *soap, bool *a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_bool
+	*a = SOAP_DEFAULT_bool;
+#else
+	*a = (bool)0;
+#endif
+}
+
+static const struct soap_code_map soap_codes_bool[] =
+{	{ (long)false, "false" },
+	{ (long)true, "true" },
+	{ 0, NULL }
+};
+
+SOAP_FMAC3S const char* SOAP_FMAC4S soap_bool2s(struct soap *soap, bool n)
+{
+	(void)soap; /* appease -Wall -Werror */
+return soap_code_str(soap_codes_bool, n!=0);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_bool(struct soap *soap, const char *tag, int id, const bool *a, const char *type)
+{	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_bool), type) || soap_send(soap, soap_bool2s(soap, *a)))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3S int SOAP_FMAC4S soap_s2bool(struct soap *soap, const char *s, bool *a)
+{
+	const struct soap_code_map *map;
+	if (!s)
+		return soap->error;
+	map = soap_code(soap_codes_bool, s);
+	if (map)
+		*a = (bool)(map->code != 0);
+	else
+	{	long n;
+		if (soap_s2long(soap, s, &n) || n < 0 || n > 1)
+			return soap->error = SOAP_TYPE;
+		*a = (bool)(n != 0);
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 bool * SOAP_FMAC4 soap_in_bool(struct soap *soap, const char *tag, bool *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	if (*soap->type && soap_match_tag(soap, soap->type, type) && soap_match_tag(soap, soap->type, ":boolean"))
+	{	soap->error = SOAP_TYPE;
+		return NULL;
+	}
+	a = (bool *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_bool, sizeof(bool), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	if (soap->body && !*soap->href)
+	{	if (!a || soap_s2bool(soap, soap_value(soap), a) || soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (bool *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_bool, 0, sizeof(bool), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_bool(struct soap *soap, const bool *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_bool);
+	if (soap_out_bool(soap, tag?tag:"boolean", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 bool * SOAP_FMAC4 soap_get_bool(struct soap *soap, bool *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_bool(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+void ns1__datasetInclude_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__datasetInclude(soap, &this->ns1__datasetInclude_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datasetInclude_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__datasetInclude_::__item, SOAP_TYPE_ns1__datasetInclude);
+	/* transient soap skipped */
+}
+
+int ns1__datasetInclude_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datasetInclude_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetInclude_(struct soap *soap, const char *tag, int id, const ns1__datasetInclude_ *a, const char *type)
+{
+	return soap_out_ns1__datasetInclude(soap, tag, id, &(a->ns1__datasetInclude_::__item), "ns1:datasetInclude");
+}
+
+void *ns1__datasetInclude_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datasetInclude_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datasetInclude_ * SOAP_FMAC4 soap_in_ns1__datasetInclude_(struct soap *soap, const char *tag, ns1__datasetInclude_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__datasetInclude_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetInclude_, sizeof(ns1__datasetInclude_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datasetInclude_)
+			return (ns1__datasetInclude_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__datasetInclude(soap, tag, &(a->ns1__datasetInclude_::__item), "ns1:datasetInclude"))
+		return NULL;
+	return a;
+}
+
+int ns1__datasetInclude_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datasetInclude_);
+	if (this->soap_out(soap, tag?tag:"ns1:datasetInclude", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datasetInclude_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datasetInclude_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datasetInclude_ * SOAP_FMAC4 soap_get_ns1__datasetInclude_(struct soap *soap, ns1__datasetInclude_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datasetInclude_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datasetInclude_ * SOAP_FMAC2 soap_instantiate_ns1__datasetInclude_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datasetInclude_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datasetInclude_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_);
+		if (size)
+			*size = sizeof(ns1__datasetInclude_);
+		((ns1__datasetInclude_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datasetInclude_);
+		for (int i = 0; i < n; i++)
+			((ns1__datasetInclude_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datasetInclude_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datasetInclude_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datasetInclude_ %p -> %p\n", q, p));
+	*(ns1__datasetInclude_*)p = *(ns1__datasetInclude_*)q;
+}
+
+void ns1__elementType_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__elementType(soap, &this->ns1__elementType_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__elementType_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__elementType_::__item, SOAP_TYPE_ns1__elementType);
+	/* transient soap skipped */
+}
+
+int ns1__elementType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__elementType_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__elementType_(struct soap *soap, const char *tag, int id, const ns1__elementType_ *a, const char *type)
+{
+	return soap_out_ns1__elementType(soap, tag, id, &(a->ns1__elementType_::__item), "ns1:elementType");
+}
+
+void *ns1__elementType_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__elementType_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__elementType_ * SOAP_FMAC4 soap_in_ns1__elementType_(struct soap *soap, const char *tag, ns1__elementType_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__elementType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__elementType_, sizeof(ns1__elementType_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__elementType_)
+			return (ns1__elementType_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__elementType(soap, tag, &(a->ns1__elementType_::__item), "ns1:elementType"))
+		return NULL;
+	return a;
+}
+
+int ns1__elementType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__elementType_);
+	if (this->soap_out(soap, tag?tag:"ns1:elementType", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__elementType_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__elementType_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__elementType_ * SOAP_FMAC4 soap_get_ns1__elementType_(struct soap *soap, ns1__elementType_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__elementType_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__elementType_ * SOAP_FMAC2 soap_instantiate_ns1__elementType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__elementType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__elementType_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_);
+		if (size)
+			*size = sizeof(ns1__elementType_);
+		((ns1__elementType_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__elementType_);
+		for (int i = 0; i < n; i++)
+			((ns1__elementType_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__elementType_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__elementType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__elementType_ %p -> %p\n", q, p));
+	*(ns1__elementType_*)p = *(ns1__elementType_*)q;
+}
+
+void ns1__logicalOperator_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__logicalOperator(soap, &this->ns1__logicalOperator_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__logicalOperator_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__logicalOperator_::__item, SOAP_TYPE_ns1__logicalOperator);
+	/* transient soap skipped */
+}
+
+int ns1__logicalOperator_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__logicalOperator_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logicalOperator_(struct soap *soap, const char *tag, int id, const ns1__logicalOperator_ *a, const char *type)
+{
+	return soap_out_ns1__logicalOperator(soap, tag, id, &(a->ns1__logicalOperator_::__item), "ns1:logicalOperator");
+}
+
+void *ns1__logicalOperator_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__logicalOperator_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__logicalOperator_ * SOAP_FMAC4 soap_in_ns1__logicalOperator_(struct soap *soap, const char *tag, ns1__logicalOperator_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__logicalOperator_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logicalOperator_, sizeof(ns1__logicalOperator_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__logicalOperator_)
+			return (ns1__logicalOperator_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__logicalOperator(soap, tag, &(a->ns1__logicalOperator_::__item), "ns1:logicalOperator"))
+		return NULL;
+	return a;
+}
+
+int ns1__logicalOperator_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__logicalOperator_);
+	if (this->soap_out(soap, tag?tag:"ns1:logicalOperator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__logicalOperator_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__logicalOperator_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__logicalOperator_ * SOAP_FMAC4 soap_get_ns1__logicalOperator_(struct soap *soap, ns1__logicalOperator_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__logicalOperator_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__logicalOperator_ * SOAP_FMAC2 soap_instantiate_ns1__logicalOperator_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__logicalOperator_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__logicalOperator_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_);
+		if (size)
+			*size = sizeof(ns1__logicalOperator_);
+		((ns1__logicalOperator_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__logicalOperator_);
+		for (int i = 0; i < n; i++)
+			((ns1__logicalOperator_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__logicalOperator_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__logicalOperator_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__logicalOperator_ %p -> %p\n", q, p));
+	*(ns1__logicalOperator_*)p = *(ns1__logicalOperator_*)q;
+}
+
+void ns1__investigationInclude_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__investigationInclude(soap, &this->ns1__investigationInclude_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__investigationInclude_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__investigationInclude_::__item, SOAP_TYPE_ns1__investigationInclude);
+	/* transient soap skipped */
+}
+
+int ns1__investigationInclude_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__investigationInclude_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigationInclude_(struct soap *soap, const char *tag, int id, const ns1__investigationInclude_ *a, const char *type)
+{
+	return soap_out_ns1__investigationInclude(soap, tag, id, &(a->ns1__investigationInclude_::__item), "ns1:investigationInclude");
+}
+
+void *ns1__investigationInclude_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__investigationInclude_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__investigationInclude_ * SOAP_FMAC4 soap_in_ns1__investigationInclude_(struct soap *soap, const char *tag, ns1__investigationInclude_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__investigationInclude_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigationInclude_, sizeof(ns1__investigationInclude_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__investigationInclude_)
+			return (ns1__investigationInclude_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__investigationInclude(soap, tag, &(a->ns1__investigationInclude_::__item), "ns1:investigationInclude"))
+		return NULL;
+	return a;
+}
+
+int ns1__investigationInclude_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigationInclude_);
+	if (this->soap_out(soap, tag?tag:"ns1:investigationInclude", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__investigationInclude_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__investigationInclude_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__investigationInclude_ * SOAP_FMAC4 soap_get_ns1__investigationInclude_(struct soap *soap, ns1__investigationInclude_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__investigationInclude_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__investigationInclude_ * SOAP_FMAC2 soap_instantiate_ns1__investigationInclude_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigationInclude_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigationInclude_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_);
+		if (size)
+			*size = sizeof(ns1__investigationInclude_);
+		((ns1__investigationInclude_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__investigationInclude_);
+		for (int i = 0; i < n; i++)
+			((ns1__investigationInclude_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__investigationInclude_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigationInclude_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigationInclude_ %p -> %p\n", q, p));
+	*(ns1__investigationInclude_*)p = *(ns1__investigationInclude_*)q;
+}
+
+void ns1__keywordType_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__keywordType(soap, &this->ns1__keywordType_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__keywordType_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__keywordType_::__item, SOAP_TYPE_ns1__keywordType);
+	/* transient soap skipped */
+}
+
+int ns1__keywordType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__keywordType_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordType_(struct soap *soap, const char *tag, int id, const ns1__keywordType_ *a, const char *type)
+{
+	return soap_out_ns1__keywordType(soap, tag, id, &(a->ns1__keywordType_::__item), "ns1:keywordType");
+}
+
+void *ns1__keywordType_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__keywordType_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__keywordType_ * SOAP_FMAC4 soap_in_ns1__keywordType_(struct soap *soap, const char *tag, ns1__keywordType_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__keywordType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordType_, sizeof(ns1__keywordType_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__keywordType_)
+			return (ns1__keywordType_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__keywordType(soap, tag, &(a->ns1__keywordType_::__item), "ns1:keywordType"))
+		return NULL;
+	return a;
+}
+
+int ns1__keywordType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keywordType_);
+	if (this->soap_out(soap, tag?tag:"ns1:keywordType", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__keywordType_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__keywordType_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__keywordType_ * SOAP_FMAC4 soap_get_ns1__keywordType_(struct soap *soap, ns1__keywordType_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__keywordType_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__keywordType_ * SOAP_FMAC2 soap_instantiate_ns1__keywordType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keywordType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keywordType_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_);
+		if (size)
+			*size = sizeof(ns1__keywordType_);
+		((ns1__keywordType_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__keywordType_);
+		for (int i = 0; i < n; i++)
+			((ns1__keywordType_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__keywordType_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keywordType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keywordType_ %p -> %p\n", q, p));
+	*(ns1__keywordType_*)p = *(ns1__keywordType_*)q;
+}
+
+void ns1__parameterType_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__parameterType(soap, &this->ns1__parameterType_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterType_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__parameterType_::__item, SOAP_TYPE_ns1__parameterType);
+	/* transient soap skipped */
+}
+
+int ns1__parameterType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterType_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterType_(struct soap *soap, const char *tag, int id, const ns1__parameterType_ *a, const char *type)
+{
+	return soap_out_ns1__parameterType(soap, tag, id, &(a->ns1__parameterType_::__item), "ns1:parameterType");
+}
+
+void *ns1__parameterType_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterType_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterType_ * SOAP_FMAC4 soap_in_ns1__parameterType_(struct soap *soap, const char *tag, ns1__parameterType_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__parameterType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterType_, sizeof(ns1__parameterType_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterType_)
+			return (ns1__parameterType_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__parameterType(soap, tag, &(a->ns1__parameterType_::__item), "ns1:parameterType"))
+		return NULL;
+	return a;
+}
+
+int ns1__parameterType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterType_);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterType", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterType_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterType_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterType_ * SOAP_FMAC4 soap_get_ns1__parameterType_(struct soap *soap, ns1__parameterType_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterType_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterType_ * SOAP_FMAC2 soap_instantiate_ns1__parameterType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterType_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_);
+		if (size)
+			*size = sizeof(ns1__parameterType_);
+		((ns1__parameterType_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterType_);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterType_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterType_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterType_ %p -> %p\n", q, p));
+	*(ns1__parameterType_*)p = *(ns1__parameterType_*)q;
+}
+
+void ns1__comparisonOperator_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__comparisonOperator(soap, &this->ns1__comparisonOperator_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__comparisonOperator_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__comparisonOperator_::__item, SOAP_TYPE_ns1__comparisonOperator);
+	/* transient soap skipped */
+}
+
+int ns1__comparisonOperator_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__comparisonOperator_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__comparisonOperator_(struct soap *soap, const char *tag, int id, const ns1__comparisonOperator_ *a, const char *type)
+{
+	return soap_out_ns1__comparisonOperator(soap, tag, id, &(a->ns1__comparisonOperator_::__item), "ns1:comparisonOperator");
+}
+
+void *ns1__comparisonOperator_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__comparisonOperator_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__comparisonOperator_ * SOAP_FMAC4 soap_in_ns1__comparisonOperator_(struct soap *soap, const char *tag, ns1__comparisonOperator_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__comparisonOperator_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__comparisonOperator_, sizeof(ns1__comparisonOperator_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__comparisonOperator_)
+			return (ns1__comparisonOperator_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__comparisonOperator(soap, tag, &(a->ns1__comparisonOperator_::__item), "ns1:comparisonOperator"))
+		return NULL;
+	return a;
+}
+
+int ns1__comparisonOperator_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__comparisonOperator_);
+	if (this->soap_out(soap, tag?tag:"ns1:comparisonOperator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__comparisonOperator_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__comparisonOperator_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__comparisonOperator_ * SOAP_FMAC4 soap_get_ns1__comparisonOperator_(struct soap *soap, ns1__comparisonOperator_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__comparisonOperator_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__comparisonOperator_ * SOAP_FMAC2 soap_instantiate_ns1__comparisonOperator_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__comparisonOperator_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__comparisonOperator_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_);
+		if (size)
+			*size = sizeof(ns1__comparisonOperator_);
+		((ns1__comparisonOperator_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__comparisonOperator_);
+		for (int i = 0; i < n; i++)
+			((ns1__comparisonOperator_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__comparisonOperator_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__comparisonOperator_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__comparisonOperator_ %p -> %p\n", q, p));
+	*(ns1__comparisonOperator_*)p = *(ns1__comparisonOperator_*)q;
+}
+
+void ns1__datafileInclude_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__datafileInclude(soap, &this->ns1__datafileInclude_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datafileInclude_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__datafileInclude_::__item, SOAP_TYPE_ns1__datafileInclude);
+	/* transient soap skipped */
+}
+
+int ns1__datafileInclude_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datafileInclude_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileInclude_(struct soap *soap, const char *tag, int id, const ns1__datafileInclude_ *a, const char *type)
+{
+	return soap_out_ns1__datafileInclude(soap, tag, id, &(a->ns1__datafileInclude_::__item), "ns1:datafileInclude");
+}
+
+void *ns1__datafileInclude_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datafileInclude_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datafileInclude_ * SOAP_FMAC4 soap_in_ns1__datafileInclude_(struct soap *soap, const char *tag, ns1__datafileInclude_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__datafileInclude_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileInclude_, sizeof(ns1__datafileInclude_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datafileInclude_)
+			return (ns1__datafileInclude_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__datafileInclude(soap, tag, &(a->ns1__datafileInclude_::__item), "ns1:datafileInclude"))
+		return NULL;
+	return a;
+}
+
+int ns1__datafileInclude_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileInclude_);
+	if (this->soap_out(soap, tag?tag:"ns1:datafileInclude", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datafileInclude_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datafileInclude_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datafileInclude_ * SOAP_FMAC4 soap_get_ns1__datafileInclude_(struct soap *soap, ns1__datafileInclude_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafileInclude_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datafileInclude_ * SOAP_FMAC2 soap_instantiate_ns1__datafileInclude_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileInclude_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileInclude_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_);
+		if (size)
+			*size = sizeof(ns1__datafileInclude_);
+		((ns1__datafileInclude_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datafileInclude_);
+		for (int i = 0; i < n; i++)
+			((ns1__datafileInclude_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datafileInclude_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileInclude_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileInclude_ %p -> %p\n", q, p));
+	*(ns1__datafileInclude_*)p = *(ns1__datafileInclude_*)q;
+}
+
+void ns1__parameterValueType_::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_ns1__parameterValueType(soap, &this->ns1__parameterValueType_::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterValueType_::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->ns1__parameterValueType_::__item, SOAP_TYPE_ns1__parameterValueType);
+	/* transient soap skipped */
+}
+
+int ns1__parameterValueType_::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterValueType_(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterValueType_(struct soap *soap, const char *tag, int id, const ns1__parameterValueType_ *a, const char *type)
+{
+	return soap_out_ns1__parameterValueType(soap, tag, id, &(a->ns1__parameterValueType_::__item), "ns1:parameterValueType");
+}
+
+void *ns1__parameterValueType_::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterValueType_(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterValueType_ * SOAP_FMAC4 soap_in_ns1__parameterValueType_(struct soap *soap, const char *tag, ns1__parameterValueType_ *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__parameterValueType_ *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterValueType_, sizeof(ns1__parameterValueType_), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterValueType_)
+			return (ns1__parameterValueType_ *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_ns1__parameterValueType(soap, tag, &(a->ns1__parameterValueType_::__item), "ns1:parameterValueType"))
+		return NULL;
+	return a;
+}
+
+int ns1__parameterValueType_::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterValueType_);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterValueType", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterValueType_::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterValueType_(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterValueType_ * SOAP_FMAC4 soap_get_ns1__parameterValueType_(struct soap *soap, ns1__parameterValueType_ *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterValueType_(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterValueType_ * SOAP_FMAC2 soap_instantiate_ns1__parameterValueType_(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterValueType_(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterValueType_, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_);
+		if (size)
+			*size = sizeof(ns1__parameterValueType_);
+		((ns1__parameterValueType_*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterValueType_);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterValueType_*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterValueType_*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterValueType_(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterValueType_ %p -> %p\n", q, p));
+	*(ns1__parameterValueType_*)p = *(ns1__parameterValueType_*)q;
+}
+
+void ns1__getDatasetsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__getDatasetsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatasetsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__getDatasetsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getDatasetsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatasetsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetsResponse(struct soap *soap, const char *tag, int id, const ns1__getDatasetsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetsResponse), "ns1:getDatasetsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__getDatasetsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatasetsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatasetsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetsResponse * SOAP_FMAC4 soap_in_ns1__getDatasetsResponse(struct soap *soap, const char *tag, ns1__getDatasetsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatasetsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetsResponse, sizeof(ns1__getDatasetsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatasetsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__getDatasetsResponse::return_), "ns1:dataset"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatasetsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetsResponse, 0, sizeof(ns1__getDatasetsResponse), 0, soap_copy_ns1__getDatasetsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatasetsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatasetsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatasetsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatasetsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetsResponse * SOAP_FMAC4 soap_get_ns1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatasetsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatasetsResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatasetsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse);
+		if (size)
+			*size = sizeof(ns1__getDatasetsResponse);
+		((ns1__getDatasetsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatasetsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatasetsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatasetsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetsResponse %p -> %p\n", q, p));
+	*(ns1__getDatasetsResponse*)p = *(ns1__getDatasetsResponse*)q;
+}
+
+void ns1__getDatasets::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatasets::sessionId = NULL;
+	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatasets::datasetIds);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatasets::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatasets::sessionId);
+	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatasets::datasetIds);
+	/* transient soap skipped */
+}
+
+int ns1__getDatasets::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatasets(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasets(struct soap *soap, const char *tag, int id, const ns1__getDatasets *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasets), "ns1:getDatasets"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatasets::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfLONG64(soap, "datasetIds", -1, &(a->ns1__getDatasets::datasetIds), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatasets::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatasets(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatasets * SOAP_FMAC4 soap_in_ns1__getDatasets(struct soap *soap, const char *tag, ns1__getDatasets *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatasets *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasets, sizeof(ns1__getDatasets), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatasets)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatasets *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatasets::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfLONG64(soap, "datasetIds", &(a->ns1__getDatasets::datasetIds), "xsd:long"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatasets *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasets, 0, sizeof(ns1__getDatasets), 0, soap_copy_ns1__getDatasets);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatasets::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasets);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatasets", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatasets::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatasets(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatasets * SOAP_FMAC4 soap_get_ns1__getDatasets(struct soap *soap, ns1__getDatasets *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatasets(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatasets * SOAP_FMAC2 soap_instantiate_ns1__getDatasets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasets, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets);
+		if (size)
+			*size = sizeof(ns1__getDatasets);
+		((ns1__getDatasets*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatasets);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatasets*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatasets*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasets %p -> %p\n", q, p));
+	*(ns1__getDatasets*)p = *(ns1__getDatasets*)q;
+}
+
+void ns1__listParametersResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__parameter(soap, &this->ns1__listParametersResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listParametersResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__parameter(soap, &this->ns1__listParametersResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listParametersResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listParametersResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listParametersResponse(struct soap *soap, const char *tag, int id, const ns1__listParametersResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listParametersResponse), "ns1:listParametersResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__parameter(soap, "return", -1, &(a->ns1__listParametersResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listParametersResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listParametersResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listParametersResponse * SOAP_FMAC4 soap_in_ns1__listParametersResponse(struct soap *soap, const char *tag, ns1__listParametersResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listParametersResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listParametersResponse, sizeof(ns1__listParametersResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listParametersResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listParametersResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__parameter(soap, "return", &(a->ns1__listParametersResponse::return_), "ns1:parameter"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listParametersResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listParametersResponse, 0, sizeof(ns1__listParametersResponse), 0, soap_copy_ns1__listParametersResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listParametersResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listParametersResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listParametersResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listParametersResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listParametersResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listParametersResponse * SOAP_FMAC4 soap_get_ns1__listParametersResponse(struct soap *soap, ns1__listParametersResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listParametersResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listParametersResponse * SOAP_FMAC2 soap_instantiate_ns1__listParametersResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listParametersResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listParametersResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse);
+		if (size)
+			*size = sizeof(ns1__listParametersResponse);
+		((ns1__listParametersResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listParametersResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listParametersResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listParametersResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listParametersResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listParametersResponse %p -> %p\n", q, p));
+	*(ns1__listParametersResponse*)p = *(ns1__listParametersResponse*)q;
+}
+
+void ns1__listParameters::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listParameters::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listParameters::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listParameters::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listParameters::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listParameters(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listParameters(struct soap *soap, const char *tag, int id, const ns1__listParameters *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listParameters), "ns1:listParameters"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listParameters::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listParameters::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listParameters(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listParameters * SOAP_FMAC4 soap_in_ns1__listParameters(struct soap *soap, const char *tag, ns1__listParameters *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listParameters *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listParameters, sizeof(ns1__listParameters), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listParameters)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listParameters *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listParameters::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listParameters *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listParameters, 0, sizeof(ns1__listParameters), 0, soap_copy_ns1__listParameters);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listParameters::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listParameters);
+	if (this->soap_out(soap, tag?tag:"ns1:listParameters", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listParameters::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listParameters(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listParameters * SOAP_FMAC4 soap_get_ns1__listParameters(struct soap *soap, ns1__listParameters *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listParameters * SOAP_FMAC2 soap_instantiate_ns1__listParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listParameters, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters);
+		if (size)
+			*size = sizeof(ns1__listParameters);
+		((ns1__listParameters*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listParameters);
+		for (int i = 0; i < n; i++)
+			((ns1__listParameters*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listParameters*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listParameters %p -> %p\n", q, p));
+	*(ns1__listParameters*)p = *(ns1__listParameters*)q;
+}
+
+void ns1__modifyDataFileParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataFileParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataFileParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataFileParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataFileParameterResponse");
+}
+
+void *ns1__modifyDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataFileParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataFileParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFileParameterResponse, sizeof(ns1__modifyDataFileParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFileParameterResponse)
+			return (ns1__modifyDataFileParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFileParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFileParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataFileParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse);
+		if (size)
+			*size = sizeof(ns1__modifyDataFileParameterResponse);
+		((ns1__modifyDataFileParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataFileParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFileParameterResponse %p -> %p\n", q, p));
+	*(ns1__modifyDataFileParameterResponse*)p = *(ns1__modifyDataFileParameterResponse*)q;
+}
+
+void ns1__modifyDataFileParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyDataFileParameter::sessionId = NULL;
+	this->ns1__modifyDataFileParameter::dataFileParameter = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataFileParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataFileParameter::sessionId);
+	soap_serialize_PointerTons1__datafileParameter(soap, &this->ns1__modifyDataFileParameter::dataFileParameter);
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataFileParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__modifyDataFileParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataFileParameter), "ns1:modifyDataFileParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataFileParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileParameter(soap, "dataFileParameter", -1, &(a->ns1__modifyDataFileParameter::dataFileParameter), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataFileParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameter * SOAP_FMAC4 soap_in_ns1__modifyDataFileParameter(struct soap *soap, const char *tag, ns1__modifyDataFileParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFileParameter, sizeof(ns1__modifyDataFileParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFileParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyDataFileParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataFileParameter1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataFileParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataFileParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileParameter(soap, "dataFileParameter", &(a->ns1__modifyDataFileParameter::dataFileParameter), "ns1:datafileParameter"))
+				{	soap_flag_dataFileParameter1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataFileParameter, 0, sizeof(ns1__modifyDataFileParameter), 0, soap_copy_ns1__modifyDataFileParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFileParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFileParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataFileParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameter * SOAP_FMAC4 soap_get_ns1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter);
+		if (size)
+			*size = sizeof(ns1__modifyDataFileParameter);
+		((ns1__modifyDataFileParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataFileParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataFileParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFileParameter %p -> %p\n", q, p));
+	*(ns1__modifyDataFileParameter*)p = *(ns1__modifyDataFileParameter*)q;
+}
+
+void ns1__deleteSampleParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteSampleParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteSampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteSampleParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__deleteSampleParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteSampleParameterResponse");
+}
+
+void *ns1__deleteSampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteSampleParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_in_ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, ns1__deleteSampleParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteSampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSampleParameterResponse, sizeof(ns1__deleteSampleParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteSampleParameterResponse)
+			return (ns1__deleteSampleParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteSampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSampleParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteSampleParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteSampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteSampleParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_get_ns1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteSampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse);
+		if (size)
+			*size = sizeof(ns1__deleteSampleParameterResponse);
+		((ns1__deleteSampleParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteSampleParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteSampleParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteSampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSampleParameterResponse %p -> %p\n", q, p));
+	*(ns1__deleteSampleParameterResponse*)p = *(ns1__deleteSampleParameterResponse*)q;
+}
+
+void ns1__deleteSampleParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteSampleParameter::sessionId = NULL;
+	this->ns1__deleteSampleParameter::sampleParameterPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteSampleParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteSampleParameter::sessionId);
+	soap_serialize_PointerTons1__sampleParameterPK(soap, &this->ns1__deleteSampleParameter::sampleParameterPK);
+	/* transient soap skipped */
+}
+
+int ns1__deleteSampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteSampleParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSampleParameter(struct soap *soap, const char *tag, int id, const ns1__deleteSampleParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteSampleParameter), "ns1:deleteSampleParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteSampleParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", -1, &(a->ns1__deleteSampleParameter::sampleParameterPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteSampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteSampleParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameter * SOAP_FMAC4 soap_in_ns1__deleteSampleParameter(struct soap *soap, const char *tag, ns1__deleteSampleParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteSampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSampleParameter, sizeof(ns1__deleteSampleParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteSampleParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteSampleParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleParameterPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteSampleParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", &(a->ns1__deleteSampleParameter::sampleParameterPK), "ns1:sampleParameterPK"))
+				{	soap_flag_sampleParameterPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteSampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteSampleParameter, 0, sizeof(ns1__deleteSampleParameter), 0, soap_copy_ns1__deleteSampleParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteSampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSampleParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteSampleParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteSampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteSampleParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameter * SOAP_FMAC4 soap_get_ns1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteSampleParameter * SOAP_FMAC2 soap_instantiate_ns1__deleteSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter);
+		if (size)
+			*size = sizeof(ns1__deleteSampleParameter);
+		((ns1__deleteSampleParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteSampleParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteSampleParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteSampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSampleParameter %p -> %p\n", q, p));
+	*(ns1__deleteSampleParameter*)p = *(ns1__deleteSampleParameter*)q;
+}
+
+void ns1__addDataFileParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addDataFileParameterResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataFileParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameterResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataFileParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__addDataFileParameterResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParameterResponse), "ns1:addDataFileParameterResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__datafileParameter(soap, "return", -1, &(a->ns1__addDataFileParameterResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataFileParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__addDataFileParameterResponse(struct soap *soap, const char *tag, ns1__addDataFileParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParameterResponse, sizeof(ns1__addDataFileParameterResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParameterResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataFileParameterResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileParameter(soap, "return", &(a->ns1__addDataFileParameterResponse::return_), "ns1:datafileParameter"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataFileParameterResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParameterResponse, 0, sizeof(ns1__addDataFileParameterResponse), 0, soap_copy_ns1__addDataFileParameterResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataFileParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse);
+		if (size)
+			*size = sizeof(ns1__addDataFileParameterResponse);
+		((ns1__addDataFileParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataFileParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParameterResponse %p -> %p\n", q, p));
+	*(ns1__addDataFileParameterResponse*)p = *(ns1__addDataFileParameterResponse*)q;
+}
+
+void ns1__addDataFileParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addDataFileParameter::sessionId = NULL;
+	this->ns1__addDataFileParameter::dataFileParameter = NULL;
+	this->ns1__addDataFileParameter::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataFileParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataFileParameter::sessionId);
+	soap_serialize_PointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameter::dataFileParameter);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataFileParameter::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__addDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataFileParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__addDataFileParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParameter), "ns1:addDataFileParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataFileParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileParameter(soap, "dataFileParameter", -1, &(a->ns1__addDataFileParameter::dataFileParameter), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__addDataFileParameter::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataFileParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameter * SOAP_FMAC4 soap_in_ns1__addDataFileParameter(struct soap *soap, const char *tag, ns1__addDataFileParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParameter, sizeof(ns1__addDataFileParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataFileParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataFileParameter1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataFileParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataFileParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileParameter(soap, "dataFileParameter", &(a->ns1__addDataFileParameter::dataFileParameter), "ns1:datafileParameter"))
+				{	soap_flag_dataFileParameter1--;
+					continue;
+				}
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__addDataFileParameter::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParameter, 0, sizeof(ns1__addDataFileParameter), 0, soap_copy_ns1__addDataFileParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataFileParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameter * SOAP_FMAC4 soap_get_ns1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter);
+		if (size)
+			*size = sizeof(ns1__addDataFileParameter);
+		((ns1__addDataFileParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataFileParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataFileParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParameter %p -> %p\n", q, p));
+	*(ns1__addDataFileParameter*)p = *(ns1__addDataFileParameter*)q;
+}
+
+void ns1__searchDatasetsBySampleResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsBySampleResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatasetsBySampleResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsBySampleResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatasetsBySampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatasetsBySampleResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsBySampleResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse), "ns1:searchDatasetsBySampleResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__searchDatasetsBySampleResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatasetsBySampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatasetsBySampleResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySampleResponse * SOAP_FMAC4 soap_in_ns1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, ns1__searchDatasetsBySampleResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatasetsBySampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, sizeof(ns1__searchDatasetsBySampleResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsBySampleResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatasetsBySampleResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__searchDatasetsBySampleResponse::return_), "ns1:dataset"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatasetsBySampleResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, 0, sizeof(ns1__searchDatasetsBySampleResponse), 0, soap_copy_ns1__searchDatasetsBySampleResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatasetsBySampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsBySampleResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsBySampleResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatasetsBySampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatasetsBySampleResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySampleResponse * SOAP_FMAC4 soap_get_ns1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatasetsBySampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatasetsBySampleResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsBySampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsBySampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse);
+		if (size)
+			*size = sizeof(ns1__searchDatasetsBySampleResponse);
+		((ns1__searchDatasetsBySampleResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatasetsBySampleResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatasetsBySampleResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatasetsBySampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsBySampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsBySampleResponse %p -> %p\n", q, p));
+	*(ns1__searchDatasetsBySampleResponse*)p = *(ns1__searchDatasetsBySampleResponse*)q;
+}
+
+void ns1__searchDatasetsBySample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchDatasetsBySample::sessionId = NULL;
+	this->ns1__searchDatasetsBySample::sample = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatasetsBySample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatasetsBySample::sessionId);
+	soap_serialize_PointerTons1__sample(soap, &this->ns1__searchDatasetsBySample::sample);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatasetsBySample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatasetsBySample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsBySample(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsBySample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsBySample), "ns1:searchDatasetsBySample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatasetsBySample::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sample(soap, "sample", -1, &(a->ns1__searchDatasetsBySample::sample), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatasetsBySample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatasetsBySample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySample * SOAP_FMAC4 soap_in_ns1__searchDatasetsBySample(struct soap *soap, const char *tag, ns1__searchDatasetsBySample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatasetsBySample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsBySample, sizeof(ns1__searchDatasetsBySample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsBySample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatasetsBySample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sample1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatasetsBySample::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sample1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sample(soap, "sample", &(a->ns1__searchDatasetsBySample::sample), "ns1:sample"))
+				{	soap_flag_sample1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatasetsBySample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsBySample, 0, sizeof(ns1__searchDatasetsBySample), 0, soap_copy_ns1__searchDatasetsBySample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatasetsBySample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsBySample);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsBySample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatasetsBySample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatasetsBySample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySample * SOAP_FMAC4 soap_get_ns1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatasetsBySample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatasetsBySample * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsBySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsBySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsBySample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample);
+		if (size)
+			*size = sizeof(ns1__searchDatasetsBySample);
+		((ns1__searchDatasetsBySample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatasetsBySample);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatasetsBySample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatasetsBySample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsBySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsBySample %p -> %p\n", q, p));
+	*(ns1__searchDatasetsBySample*)p = *(ns1__searchDatasetsBySample*)q;
+}
+
+void ns1__createInvestigationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createInvestigationResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createInvestigationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__investigation(soap, &this->ns1__createInvestigationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__createInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createInvestigationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__createInvestigationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createInvestigationResponse), "ns1:createInvestigationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__investigation(soap, "return", -1, &(a->ns1__createInvestigationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createInvestigationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createInvestigationResponse * SOAP_FMAC4 soap_in_ns1__createInvestigationResponse(struct soap *soap, const char *tag, ns1__createInvestigationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createInvestigationResponse, sizeof(ns1__createInvestigationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createInvestigationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createInvestigationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigation(soap, "return", &(a->ns1__createInvestigationResponse::return_), "ns1:investigation"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createInvestigationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createInvestigationResponse, 0, sizeof(ns1__createInvestigationResponse), 0, soap_copy_ns1__createInvestigationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createInvestigationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:createInvestigationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createInvestigationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createInvestigationResponse * SOAP_FMAC4 soap_get_ns1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__createInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse);
+		if (size)
+			*size = sizeof(ns1__createInvestigationResponse);
+		((ns1__createInvestigationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createInvestigationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__createInvestigationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createInvestigationResponse %p -> %p\n", q, p));
+	*(ns1__createInvestigationResponse*)p = *(ns1__createInvestigationResponse*)q;
+}
+
+void ns1__createInvestigation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createInvestigation::sessionId = NULL;
+	this->ns1__createInvestigation::investigation = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createInvestigation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__createInvestigation::sessionId);
+	soap_serialize_PointerTons1__investigation(soap, &this->ns1__createInvestigation::investigation);
+	/* transient soap skipped */
+}
+
+int ns1__createInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createInvestigation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createInvestigation(struct soap *soap, const char *tag, int id, const ns1__createInvestigation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createInvestigation), "ns1:createInvestigation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createInvestigation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigation(soap, "investigation", -1, &(a->ns1__createInvestigation::investigation), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createInvestigation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createInvestigation * SOAP_FMAC4 soap_in_ns1__createInvestigation(struct soap *soap, const char *tag, ns1__createInvestigation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createInvestigation, sizeof(ns1__createInvestigation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createInvestigation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createInvestigation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigation1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createInvestigation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigation1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigation(soap, "investigation", &(a->ns1__createInvestigation::investigation), "ns1:investigation"))
+				{	soap_flag_investigation1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createInvestigation, 0, sizeof(ns1__createInvestigation), 0, soap_copy_ns1__createInvestigation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createInvestigation);
+	if (this->soap_out(soap, tag?tag:"ns1:createInvestigation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createInvestigation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createInvestigation * SOAP_FMAC4 soap_get_ns1__createInvestigation(struct soap *soap, ns1__createInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createInvestigation * SOAP_FMAC2 soap_instantiate_ns1__createInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation);
+		if (size)
+			*size = sizeof(ns1__createInvestigation);
+		((ns1__createInvestigation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createInvestigation);
+		for (int i = 0; i < n; i++)
+			((ns1__createInvestigation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createInvestigation %p -> %p\n", q, p));
+	*(ns1__createInvestigation*)p = *(ns1__createInvestigation*)q;
+}
+
+void ns1__addPublicationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addPublicationResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addPublicationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__publication(soap, &this->ns1__addPublicationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addPublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addPublicationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addPublicationResponse(struct soap *soap, const char *tag, int id, const ns1__addPublicationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addPublicationResponse), "ns1:addPublicationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__publication(soap, "return", -1, &(a->ns1__addPublicationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addPublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addPublicationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addPublicationResponse * SOAP_FMAC4 soap_in_ns1__addPublicationResponse(struct soap *soap, const char *tag, ns1__addPublicationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addPublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addPublicationResponse, sizeof(ns1__addPublicationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addPublicationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addPublicationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__publication(soap, "return", &(a->ns1__addPublicationResponse::return_), "ns1:publication"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addPublicationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addPublicationResponse, 0, sizeof(ns1__addPublicationResponse), 0, soap_copy_ns1__addPublicationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addPublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addPublicationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addPublicationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addPublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addPublicationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addPublicationResponse * SOAP_FMAC4 soap_get_ns1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addPublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addPublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__addPublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addPublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addPublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse);
+		if (size)
+			*size = sizeof(ns1__addPublicationResponse);
+		((ns1__addPublicationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addPublicationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addPublicationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addPublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addPublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addPublicationResponse %p -> %p\n", q, p));
+	*(ns1__addPublicationResponse*)p = *(ns1__addPublicationResponse*)q;
+}
+
+void ns1__addPublication::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addPublication::sessionId = NULL;
+	this->ns1__addPublication::publication = NULL;
+	this->ns1__addPublication::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addPublication::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addPublication::sessionId);
+	soap_serialize_PointerTons1__publication(soap, &this->ns1__addPublication::publication);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addPublication::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__addPublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addPublication(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addPublication(struct soap *soap, const char *tag, int id, const ns1__addPublication *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addPublication), "ns1:addPublication"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addPublication::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__publication(soap, "publication", -1, &(a->ns1__addPublication::publication), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addPublication::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addPublication::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addPublication(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addPublication * SOAP_FMAC4 soap_in_ns1__addPublication(struct soap *soap, const char *tag, ns1__addPublication *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addPublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addPublication, sizeof(ns1__addPublication), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addPublication)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addPublication *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_publication1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addPublication::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_publication1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__publication(soap, "publication", &(a->ns1__addPublication::publication), "ns1:publication"))
+				{	soap_flag_publication1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addPublication::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addPublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addPublication, 0, sizeof(ns1__addPublication), 0, soap_copy_ns1__addPublication);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addPublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addPublication);
+	if (this->soap_out(soap, tag?tag:"ns1:addPublication", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addPublication::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addPublication(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addPublication * SOAP_FMAC4 soap_get_ns1__addPublication(struct soap *soap, ns1__addPublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addPublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addPublication * SOAP_FMAC2 soap_instantiate_ns1__addPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addPublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication);
+		if (size)
+			*size = sizeof(ns1__addPublication);
+		((ns1__addPublication*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addPublication);
+		for (int i = 0; i < n; i++)
+			((ns1__addPublication*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addPublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addPublication %p -> %p\n", q, p));
+	*(ns1__addPublication*)p = *(ns1__addPublication*)q;
+}
+
+void ns1__deleteDataFileParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataFileParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataFileParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataFileParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataFileParameterResponse");
+}
+
+void *ns1__deleteDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataFileParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataFileParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFileParameterResponse, sizeof(ns1__deleteDataFileParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFileParameterResponse)
+			return (ns1__deleteDataFileParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFileParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFileParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataFileParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse);
+		if (size)
+			*size = sizeof(ns1__deleteDataFileParameterResponse);
+		((ns1__deleteDataFileParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataFileParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFileParameterResponse %p -> %p\n", q, p));
+	*(ns1__deleteDataFileParameterResponse*)p = *(ns1__deleteDataFileParameterResponse*)q;
+}
+
+void ns1__deleteDataFileParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteDataFileParameter::sessionId = NULL;
+	this->ns1__deleteDataFileParameter::datafileParameterPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataFileParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataFileParameter::sessionId);
+	soap_serialize_PointerTons1__datafileParameterPK(soap, &this->ns1__deleteDataFileParameter::datafileParameterPK);
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataFileParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__deleteDataFileParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataFileParameter), "ns1:deleteDataFileParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataFileParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", -1, &(a->ns1__deleteDataFileParameter::datafileParameterPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataFileParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameter * SOAP_FMAC4 soap_in_ns1__deleteDataFileParameter(struct soap *soap, const char *tag, ns1__deleteDataFileParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFileParameter, sizeof(ns1__deleteDataFileParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFileParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteDataFileParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileParameterPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataFileParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datafileParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", &(a->ns1__deleteDataFileParameter::datafileParameterPK), "ns1:datafileParameterPK"))
+				{	soap_flag_datafileParameterPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataFileParameter, 0, sizeof(ns1__deleteDataFileParameter), 0, soap_copy_ns1__deleteDataFileParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFileParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFileParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataFileParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameter * SOAP_FMAC4 soap_get_ns1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter);
+		if (size)
+			*size = sizeof(ns1__deleteDataFileParameter);
+		((ns1__deleteDataFileParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataFileParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataFileParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFileParameter %p -> %p\n", q, p));
+	*(ns1__deleteDataFileParameter*)p = *(ns1__deleteDataFileParameter*)q;
+}
+
+void ns1__getInvestigationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getInvestigationResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getInvestigationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__investigation(soap, &this->ns1__getInvestigationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getInvestigationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__getInvestigationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationResponse), "ns1:getInvestigationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__investigation(soap, "return", -1, &(a->ns1__getInvestigationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getInvestigationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationResponse * SOAP_FMAC4 soap_in_ns1__getInvestigationResponse(struct soap *soap, const char *tag, ns1__getInvestigationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationResponse, sizeof(ns1__getInvestigationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getInvestigationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigation(soap, "return", &(a->ns1__getInvestigationResponse::return_), "ns1:investigation"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getInvestigationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationResponse, 0, sizeof(ns1__getInvestigationResponse), 0, soap_copy_ns1__getInvestigationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getInvestigationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationResponse * SOAP_FMAC4 soap_get_ns1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse);
+		if (size)
+			*size = sizeof(ns1__getInvestigationResponse);
+		((ns1__getInvestigationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getInvestigationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getInvestigationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationResponse %p -> %p\n", q, p));
+	*(ns1__getInvestigationResponse*)p = *(ns1__getInvestigationResponse*)q;
+}
+
+void ns1__getInvestigation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getInvestigation::sessionId = NULL;
+	this->ns1__getInvestigation::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getInvestigation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getInvestigation::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__getInvestigation::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__getInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getInvestigation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigation(struct soap *soap, const char *tag, int id, const ns1__getInvestigation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigation), "ns1:getInvestigation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getInvestigation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__getInvestigation::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getInvestigation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigation * SOAP_FMAC4 soap_in_ns1__getInvestigation(struct soap *soap, const char *tag, ns1__getInvestigation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigation, sizeof(ns1__getInvestigation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getInvestigation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getInvestigation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__getInvestigation::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigation, 0, sizeof(ns1__getInvestigation), 0, soap_copy_ns1__getInvestigation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigation);
+	if (this->soap_out(soap, tag?tag:"ns1:getInvestigation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getInvestigation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigation * SOAP_FMAC4 soap_get_ns1__getInvestigation(struct soap *soap, ns1__getInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getInvestigation * SOAP_FMAC2 soap_instantiate_ns1__getInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation);
+		if (size)
+			*size = sizeof(ns1__getInvestigation);
+		((ns1__getInvestigation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getInvestigation);
+		for (int i = 0; i < n; i++)
+			((ns1__getInvestigation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigation %p -> %p\n", q, p));
+	*(ns1__getInvestigation*)p = *(ns1__getInvestigation*)q;
+}
+
+void ns1__getInvestigationIncludesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getInvestigationIncludesResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getInvestigationIncludesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__investigation(soap, &this->ns1__getInvestigationIncludesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getInvestigationIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getInvestigationIncludesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getInvestigationIncludesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationIncludesResponse), "ns1:getInvestigationIncludesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__investigation(soap, "return", -1, &(a->ns1__getInvestigationIncludesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getInvestigationIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getInvestigationIncludesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludesResponse * SOAP_FMAC4 soap_in_ns1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationIncludesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getInvestigationIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationIncludesResponse, sizeof(ns1__getInvestigationIncludesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationIncludesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getInvestigationIncludesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigation(soap, "return", &(a->ns1__getInvestigationIncludesResponse::return_), "ns1:investigation"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getInvestigationIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationIncludesResponse, 0, sizeof(ns1__getInvestigationIncludesResponse), 0, soap_copy_ns1__getInvestigationIncludesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getInvestigationIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationIncludesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationIncludesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getInvestigationIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getInvestigationIncludesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludesResponse * SOAP_FMAC4 soap_get_ns1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getInvestigationIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getInvestigationIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationIncludesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse);
+		if (size)
+			*size = sizeof(ns1__getInvestigationIncludesResponse);
+		((ns1__getInvestigationIncludesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getInvestigationIncludesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getInvestigationIncludesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getInvestigationIncludesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationIncludesResponse %p -> %p\n", q, p));
+	*(ns1__getInvestigationIncludesResponse*)p = *(ns1__getInvestigationIncludesResponse*)q;
+}
+
+void ns1__getInvestigationIncludes::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getInvestigationIncludes::sessionId = NULL;
+	this->ns1__getInvestigationIncludes::investigationId = NULL;
+	this->ns1__getInvestigationIncludes::investigationInclude = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getInvestigationIncludes::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getInvestigationIncludes::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__getInvestigationIncludes::investigationId);
+	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getInvestigationIncludes::investigationInclude);
+	/* transient soap skipped */
+}
+
+int ns1__getInvestigationIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getInvestigationIncludes(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationIncludes(struct soap *soap, const char *tag, int id, const ns1__getInvestigationIncludes *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationIncludes), "ns1:getInvestigationIncludes"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getInvestigationIncludes::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__getInvestigationIncludes::investigationId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getInvestigationIncludes::investigationInclude), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getInvestigationIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getInvestigationIncludes(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludes * SOAP_FMAC4 soap_in_ns1__getInvestigationIncludes(struct soap *soap, const char *tag, ns1__getInvestigationIncludes *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getInvestigationIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationIncludes, sizeof(ns1__getInvestigationIncludes), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationIncludes)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getInvestigationIncludes *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	size_t soap_flag_investigationInclude1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getInvestigationIncludes::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__getInvestigationIncludes::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getInvestigationIncludes::investigationInclude), "ns1:investigationInclude"))
+				{	soap_flag_investigationInclude1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getInvestigationIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationIncludes, 0, sizeof(ns1__getInvestigationIncludes), 0, soap_copy_ns1__getInvestigationIncludes);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getInvestigationIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationIncludes);
+	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationIncludes", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getInvestigationIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getInvestigationIncludes(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludes * SOAP_FMAC4 soap_get_ns1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getInvestigationIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getInvestigationIncludes * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes);
+		if (size)
+			*size = sizeof(ns1__getInvestigationIncludes);
+		((ns1__getInvestigationIncludes*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getInvestigationIncludes);
+		for (int i = 0; i < n; i++)
+			((ns1__getInvestigationIncludes*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getInvestigationIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationIncludes %p -> %p\n", q, p));
+	*(ns1__getInvestigationIncludes*)p = *(ns1__getInvestigationIncludes*)q;
+}
+
+void ns1__modifyDataFileResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataFileResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataFileResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataFileResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataFileResponse");
+}
+
+void *ns1__modifyDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataFileResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileResponse * SOAP_FMAC4 soap_in_ns1__modifyDataFileResponse(struct soap *soap, const char *tag, ns1__modifyDataFileResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFileResponse, sizeof(ns1__modifyDataFileResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFileResponse)
+			return (ns1__modifyDataFileResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFileResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFileResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataFileResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileResponse * SOAP_FMAC4 soap_get_ns1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse);
+		if (size)
+			*size = sizeof(ns1__modifyDataFileResponse);
+		((ns1__modifyDataFileResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataFileResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataFileResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFileResponse %p -> %p\n", q, p));
+	*(ns1__modifyDataFileResponse*)p = *(ns1__modifyDataFileResponse*)q;
+}
+
+void ns1__modifyDataFile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyDataFile::sessionId = NULL;
+	this->ns1__modifyDataFile::dataFile = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataFile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataFile::sessionId);
+	soap_serialize_PointerTons1__datafile(soap, &this->ns1__modifyDataFile::dataFile);
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataFile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataFile(struct soap *soap, const char *tag, int id, const ns1__modifyDataFile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataFile), "ns1:modifyDataFile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataFile::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafile(soap, "dataFile", -1, &(a->ns1__modifyDataFile::dataFile), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataFile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFile * SOAP_FMAC4 soap_in_ns1__modifyDataFile(struct soap *soap, const char *tag, ns1__modifyDataFile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataFile, sizeof(ns1__modifyDataFile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataFile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyDataFile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataFile1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataFile::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataFile1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafile(soap, "dataFile", &(a->ns1__modifyDataFile::dataFile), "ns1:datafile"))
+				{	soap_flag_dataFile1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataFile, 0, sizeof(ns1__modifyDataFile), 0, soap_copy_ns1__modifyDataFile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataFile);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataFile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataFile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFile * SOAP_FMAC4 soap_get_ns1__modifyDataFile(struct soap *soap, ns1__modifyDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataFile * SOAP_FMAC2 soap_instantiate_ns1__modifyDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile);
+		if (size)
+			*size = sizeof(ns1__modifyDataFile);
+		((ns1__modifyDataFile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataFile);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataFile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataFile %p -> %p\n", q, p));
+	*(ns1__modifyDataFile*)p = *(ns1__modifyDataFile*)q;
+}
+
+void ns1__getDatafileResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatafileResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatafileResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datafile(soap, &this->ns1__getDatafileResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getDatafileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatafileResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafileResponse(struct soap *soap, const char *tag, int id, const ns1__getDatafileResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafileResponse), "ns1:getDatafileResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__datafile(soap, "return", -1, &(a->ns1__getDatafileResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatafileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatafileResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatafileResponse * SOAP_FMAC4 soap_in_ns1__getDatafileResponse(struct soap *soap, const char *tag, ns1__getDatafileResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatafileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafileResponse, sizeof(ns1__getDatafileResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatafileResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatafileResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafile(soap, "return", &(a->ns1__getDatafileResponse::return_), "ns1:datafile"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatafileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafileResponse, 0, sizeof(ns1__getDatafileResponse), 0, soap_copy_ns1__getDatafileResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatafileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafileResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatafileResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatafileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatafileResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatafileResponse * SOAP_FMAC4 soap_get_ns1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatafileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatafileResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatafileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse);
+		if (size)
+			*size = sizeof(ns1__getDatafileResponse);
+		((ns1__getDatafileResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatafileResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatafileResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatafileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafileResponse %p -> %p\n", q, p));
+	*(ns1__getDatafileResponse*)p = *(ns1__getDatafileResponse*)q;
+}
+
+void ns1__getDatafile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatafile::sessionId = NULL;
+	this->ns1__getDatafile::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatafile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatafile::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__getDatafile::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__getDatafile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatafile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafile(struct soap *soap, const char *tag, int id, const ns1__getDatafile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafile), "ns1:getDatafile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatafile::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__getDatafile::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatafile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatafile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatafile * SOAP_FMAC4 soap_in_ns1__getDatafile(struct soap *soap, const char *tag, ns1__getDatafile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatafile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafile, sizeof(ns1__getDatafile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatafile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatafile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatafile::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__getDatafile::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatafile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafile, 0, sizeof(ns1__getDatafile), 0, soap_copy_ns1__getDatafile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatafile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafile);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatafile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatafile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatafile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatafile * SOAP_FMAC4 soap_get_ns1__getDatafile(struct soap *soap, ns1__getDatafile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatafile * SOAP_FMAC2 soap_instantiate_ns1__getDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile);
+		if (size)
+			*size = sizeof(ns1__getDatafile);
+		((ns1__getDatafile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatafile);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatafile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatafile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafile %p -> %p\n", q, p));
+	*(ns1__getDatafile*)p = *(ns1__getDatafile*)q;
+}
+
+void ns1__ICATAPIException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__ICATAPIException::message = NULL;
+	this->ns1__ICATAPIException::stackTraceAsString = NULL;
+	this->ns1__ICATAPIException::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__ICATAPIException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ICATAPIException::message);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ICATAPIException::stackTraceAsString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ICATAPIException::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__ICATAPIException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__ICATAPIException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ICATAPIException(struct soap *soap, const char *tag, int id, const ns1__ICATAPIException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ICATAPIException), "ns1:ICATAPIException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__ICATAPIException::message), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__ICATAPIException::stackTraceAsString), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__ICATAPIException::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__ICATAPIException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__ICATAPIException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__ICATAPIException * SOAP_FMAC4 soap_in_ns1__ICATAPIException(struct soap *soap, const char *tag, ns1__ICATAPIException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__ICATAPIException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ICATAPIException, sizeof(ns1__ICATAPIException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__ICATAPIException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__ICATAPIException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	size_t soap_flag_stackTraceAsString1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__ICATAPIException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__ICATAPIException::stackTraceAsString), "xsd:string"))
+				{	soap_flag_stackTraceAsString1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__ICATAPIException::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__ICATAPIException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ICATAPIException, 0, sizeof(ns1__ICATAPIException), 0, soap_copy_ns1__ICATAPIException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__ICATAPIException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ICATAPIException);
+	if (this->soap_out(soap, tag?tag:"ns1:ICATAPIException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__ICATAPIException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__ICATAPIException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__ICATAPIException * SOAP_FMAC4 soap_get_ns1__ICATAPIException(struct soap *soap, ns1__ICATAPIException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__ICATAPIException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__ICATAPIException * SOAP_FMAC2 soap_instantiate_ns1__ICATAPIException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ICATAPIException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ICATAPIException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException);
+		if (size)
+			*size = sizeof(ns1__ICATAPIException);
+		((ns1__ICATAPIException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__ICATAPIException);
+		for (int i = 0; i < n; i++)
+			((ns1__ICATAPIException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__ICATAPIException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ICATAPIException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ICATAPIException %p -> %p\n", q, p));
+	*(ns1__ICATAPIException*)p = *(ns1__ICATAPIException*)q;
+}
+
+void ns1__ingestMetadataResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__ingestMetadataResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__ingestMetadataResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__ingestMetadataResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__ingestMetadataResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__ingestMetadataResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ingestMetadataResponse(struct soap *soap, const char *tag, int id, const ns1__ingestMetadataResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ingestMetadataResponse), "ns1:ingestMetadataResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfLONG64(soap, "return", -1, &(a->ns1__ingestMetadataResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__ingestMetadataResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__ingestMetadataResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__ingestMetadataResponse * SOAP_FMAC4 soap_in_ns1__ingestMetadataResponse(struct soap *soap, const char *tag, ns1__ingestMetadataResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__ingestMetadataResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ingestMetadataResponse, sizeof(ns1__ingestMetadataResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__ingestMetadataResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__ingestMetadataResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfLONG64(soap, "return", &(a->ns1__ingestMetadataResponse::return_), "xsd:long"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__ingestMetadataResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ingestMetadataResponse, 0, sizeof(ns1__ingestMetadataResponse), 0, soap_copy_ns1__ingestMetadataResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__ingestMetadataResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ingestMetadataResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:ingestMetadataResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__ingestMetadataResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__ingestMetadataResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__ingestMetadataResponse * SOAP_FMAC4 soap_get_ns1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__ingestMetadataResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__ingestMetadataResponse * SOAP_FMAC2 soap_instantiate_ns1__ingestMetadataResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ingestMetadataResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ingestMetadataResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse);
+		if (size)
+			*size = sizeof(ns1__ingestMetadataResponse);
+		((ns1__ingestMetadataResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__ingestMetadataResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__ingestMetadataResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__ingestMetadataResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ingestMetadataResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ingestMetadataResponse %p -> %p\n", q, p));
+	*(ns1__ingestMetadataResponse*)p = *(ns1__ingestMetadataResponse*)q;
+}
+
+void ns1__ingestMetadata::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__ingestMetadata::sessionId = NULL;
+	this->ns1__ingestMetadata::xml = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__ingestMetadata::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ingestMetadata::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ingestMetadata::xml);
+	/* transient soap skipped */
+}
+
+int ns1__ingestMetadata::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__ingestMetadata(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ingestMetadata(struct soap *soap, const char *tag, int id, const ns1__ingestMetadata *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ingestMetadata), "ns1:ingestMetadata"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__ingestMetadata::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "xml", -1, &(a->ns1__ingestMetadata::xml), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__ingestMetadata::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__ingestMetadata(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__ingestMetadata * SOAP_FMAC4 soap_in_ns1__ingestMetadata(struct soap *soap, const char *tag, ns1__ingestMetadata *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__ingestMetadata *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ingestMetadata, sizeof(ns1__ingestMetadata), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__ingestMetadata)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__ingestMetadata *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_xml1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__ingestMetadata::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_xml1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "xml", &(a->ns1__ingestMetadata::xml), "xsd:string"))
+				{	soap_flag_xml1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__ingestMetadata *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ingestMetadata, 0, sizeof(ns1__ingestMetadata), 0, soap_copy_ns1__ingestMetadata);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__ingestMetadata::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ingestMetadata);
+	if (this->soap_out(soap, tag?tag:"ns1:ingestMetadata", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__ingestMetadata::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__ingestMetadata(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__ingestMetadata * SOAP_FMAC4 soap_get_ns1__ingestMetadata(struct soap *soap, ns1__ingestMetadata *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__ingestMetadata(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__ingestMetadata * SOAP_FMAC2 soap_instantiate_ns1__ingestMetadata(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ingestMetadata(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ingestMetadata, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata);
+		if (size)
+			*size = sizeof(ns1__ingestMetadata);
+		((ns1__ingestMetadata*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__ingestMetadata);
+		for (int i = 0; i < n; i++)
+			((ns1__ingestMetadata*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__ingestMetadata*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ingestMetadata(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ingestMetadata %p -> %p\n", q, p));
+	*(ns1__ingestMetadata*)p = *(ns1__ingestMetadata*)q;
+}
+
+void ns1__listRolesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__icatRole(soap, &this->ns1__listRolesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listRolesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__icatRole(soap, &this->ns1__listRolesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listRolesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listRolesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listRolesResponse(struct soap *soap, const char *tag, int id, const ns1__listRolesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listRolesResponse), "ns1:listRolesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__icatRole(soap, "return", -1, &(a->ns1__listRolesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listRolesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listRolesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listRolesResponse * SOAP_FMAC4 soap_in_ns1__listRolesResponse(struct soap *soap, const char *tag, ns1__listRolesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listRolesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listRolesResponse, sizeof(ns1__listRolesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listRolesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listRolesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__icatRole(soap, "return", &(a->ns1__listRolesResponse::return_), "ns1:icatRole"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listRolesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listRolesResponse, 0, sizeof(ns1__listRolesResponse), 0, soap_copy_ns1__listRolesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listRolesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listRolesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listRolesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listRolesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listRolesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listRolesResponse * SOAP_FMAC4 soap_get_ns1__listRolesResponse(struct soap *soap, ns1__listRolesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listRolesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listRolesResponse * SOAP_FMAC2 soap_instantiate_ns1__listRolesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listRolesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listRolesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse);
+		if (size)
+			*size = sizeof(ns1__listRolesResponse);
+		((ns1__listRolesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listRolesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listRolesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listRolesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listRolesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listRolesResponse %p -> %p\n", q, p));
+	*(ns1__listRolesResponse*)p = *(ns1__listRolesResponse*)q;
+}
+
+void ns1__listRoles::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listRoles::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listRoles::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listRoles::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listRoles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listRoles(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listRoles(struct soap *soap, const char *tag, int id, const ns1__listRoles *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listRoles), "ns1:listRoles"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listRoles::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listRoles::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listRoles(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listRoles * SOAP_FMAC4 soap_in_ns1__listRoles(struct soap *soap, const char *tag, ns1__listRoles *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listRoles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listRoles, sizeof(ns1__listRoles), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listRoles)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listRoles *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listRoles::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listRoles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listRoles, 0, sizeof(ns1__listRoles), 0, soap_copy_ns1__listRoles);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listRoles::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listRoles);
+	if (this->soap_out(soap, tag?tag:"ns1:listRoles", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listRoles::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listRoles(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listRoles * SOAP_FMAC4 soap_get_ns1__listRoles(struct soap *soap, ns1__listRoles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listRoles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listRoles * SOAP_FMAC2 soap_instantiate_ns1__listRoles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listRoles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listRoles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles);
+		if (size)
+			*size = sizeof(ns1__listRoles);
+		((ns1__listRoles*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listRoles);
+		for (int i = 0; i < n; i++)
+			((ns1__listRoles*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listRoles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listRoles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listRoles %p -> %p\n", q, p));
+	*(ns1__listRoles*)p = *(ns1__listRoles*)q;
+}
+
+void ns1__getDatasetResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatasetResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatasetResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__dataset(soap, &this->ns1__getDatasetResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getDatasetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatasetResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetResponse(struct soap *soap, const char *tag, int id, const ns1__getDatasetResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetResponse), "ns1:getDatasetResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__dataset(soap, "return", -1, &(a->ns1__getDatasetResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatasetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatasetResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetResponse * SOAP_FMAC4 soap_in_ns1__getDatasetResponse(struct soap *soap, const char *tag, ns1__getDatasetResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatasetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetResponse, sizeof(ns1__getDatasetResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatasetResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__dataset(soap, "return", &(a->ns1__getDatasetResponse::return_), "ns1:dataset"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatasetResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetResponse, 0, sizeof(ns1__getDatasetResponse), 0, soap_copy_ns1__getDatasetResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatasetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatasetResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatasetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatasetResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetResponse * SOAP_FMAC4 soap_get_ns1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatasetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatasetResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatasetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse);
+		if (size)
+			*size = sizeof(ns1__getDatasetResponse);
+		((ns1__getDatasetResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatasetResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatasetResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatasetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetResponse %p -> %p\n", q, p));
+	*(ns1__getDatasetResponse*)p = *(ns1__getDatasetResponse*)q;
+}
+
+void ns1__getDataset::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDataset::sessionId = NULL;
+	this->ns1__getDataset::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDataset::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getDataset::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__getDataset::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__getDataset::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDataset(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDataset(struct soap *soap, const char *tag, int id, const ns1__getDataset *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDataset), "ns1:getDataset"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDataset::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__getDataset::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDataset::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDataset(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDataset * SOAP_FMAC4 soap_in_ns1__getDataset(struct soap *soap, const char *tag, ns1__getDataset *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDataset *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDataset, sizeof(ns1__getDataset), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDataset)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDataset *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDataset::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__getDataset::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDataset *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDataset, 0, sizeof(ns1__getDataset), 0, soap_copy_ns1__getDataset);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDataset::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDataset);
+	if (this->soap_out(soap, tag?tag:"ns1:getDataset", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDataset::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDataset(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDataset * SOAP_FMAC4 soap_get_ns1__getDataset(struct soap *soap, ns1__getDataset *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDataset * SOAP_FMAC2 soap_instantiate_ns1__getDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDataset, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset);
+		if (size)
+			*size = sizeof(ns1__getDataset);
+		((ns1__getDataset*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDataset);
+		for (int i = 0; i < n; i++)
+			((ns1__getDataset*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDataset*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDataset %p -> %p\n", q, p));
+	*(ns1__getDataset*)p = *(ns1__getDataset*)q;
+}
+
+void ns1__getDatasetIncludesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatasetIncludesResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatasetIncludesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__dataset(soap, &this->ns1__getDatasetIncludesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getDatasetIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatasetIncludesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getDatasetIncludesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetIncludesResponse), "ns1:getDatasetIncludesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__dataset(soap, "return", -1, &(a->ns1__getDatasetIncludesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatasetIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatasetIncludesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludesResponse * SOAP_FMAC4 soap_in_ns1__getDatasetIncludesResponse(struct soap *soap, const char *tag, ns1__getDatasetIncludesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatasetIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetIncludesResponse, sizeof(ns1__getDatasetIncludesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetIncludesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatasetIncludesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__dataset(soap, "return", &(a->ns1__getDatasetIncludesResponse::return_), "ns1:dataset"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatasetIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetIncludesResponse, 0, sizeof(ns1__getDatasetIncludesResponse), 0, soap_copy_ns1__getDatasetIncludesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatasetIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetIncludesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatasetIncludesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatasetIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatasetIncludesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludesResponse * SOAP_FMAC4 soap_get_ns1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatasetIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatasetIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatasetIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetIncludesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse);
+		if (size)
+			*size = sizeof(ns1__getDatasetIncludesResponse);
+		((ns1__getDatasetIncludesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatasetIncludesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatasetIncludesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatasetIncludesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetIncludesResponse %p -> %p\n", q, p));
+	*(ns1__getDatasetIncludesResponse*)p = *(ns1__getDatasetIncludesResponse*)q;
+}
+
+void ns1__getDatasetIncludes::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatasetIncludes::sessionId = NULL;
+	this->ns1__getDatasetIncludes::datasetId = NULL;
+	this->ns1__getDatasetIncludes::datasetInclude = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatasetIncludes::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatasetIncludes::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__getDatasetIncludes::datasetId);
+	soap_serialize_PointerTons1__datasetInclude(soap, &this->ns1__getDatasetIncludes::datasetInclude);
+	/* transient soap skipped */
+}
+
+int ns1__getDatasetIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatasetIncludes(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatasetIncludes(struct soap *soap, const char *tag, int id, const ns1__getDatasetIncludes *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatasetIncludes), "ns1:getDatasetIncludes"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatasetIncludes::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__getDatasetIncludes::datasetId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datasetInclude(soap, "datasetInclude", -1, &(a->ns1__getDatasetIncludes::datasetInclude), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatasetIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatasetIncludes(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludes * SOAP_FMAC4 soap_in_ns1__getDatasetIncludes(struct soap *soap, const char *tag, ns1__getDatasetIncludes *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatasetIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatasetIncludes, sizeof(ns1__getDatasetIncludes), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatasetIncludes)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatasetIncludes *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	size_t soap_flag_datasetInclude1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatasetIncludes::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__getDatasetIncludes::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag_datasetInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetInclude(soap, "datasetInclude", &(a->ns1__getDatasetIncludes::datasetInclude), "ns1:datasetInclude"))
+				{	soap_flag_datasetInclude1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatasetIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatasetIncludes, 0, sizeof(ns1__getDatasetIncludes), 0, soap_copy_ns1__getDatasetIncludes);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatasetIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatasetIncludes);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatasetIncludes", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatasetIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatasetIncludes(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludes * SOAP_FMAC4 soap_get_ns1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatasetIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatasetIncludes * SOAP_FMAC2 soap_instantiate_ns1__getDatasetIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatasetIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatasetIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes);
+		if (size)
+			*size = sizeof(ns1__getDatasetIncludes);
+		((ns1__getDatasetIncludes*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatasetIncludes);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatasetIncludes*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatasetIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatasetIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatasetIncludes %p -> %p\n", q, p));
+	*(ns1__getDatasetIncludes*)p = *(ns1__getDatasetIncludes*)q;
+}
+
+void ns1__updateAuthorisationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__updateAuthorisationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__updateAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__updateAuthorisationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__updateAuthorisationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:updateAuthorisationResponse");
+}
+
+void *ns1__updateAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__updateAuthorisationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, ns1__updateAuthorisationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__updateAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__updateAuthorisationResponse, sizeof(ns1__updateAuthorisationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__updateAuthorisationResponse)
+			return (ns1__updateAuthorisationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__updateAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__updateAuthorisationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:updateAuthorisationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__updateAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__updateAuthorisationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__updateAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__updateAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__updateAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__updateAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__updateAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse);
+		if (size)
+			*size = sizeof(ns1__updateAuthorisationResponse);
+		((ns1__updateAuthorisationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__updateAuthorisationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__updateAuthorisationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__updateAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__updateAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__updateAuthorisationResponse %p -> %p\n", q, p));
+	*(ns1__updateAuthorisationResponse*)p = *(ns1__updateAuthorisationResponse*)q;
+}
+
+void ns1__updateAuthorisation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__updateAuthorisation::sessionId = NULL;
+	this->ns1__updateAuthorisation::toChangetoRole = NULL;
+	this->ns1__updateAuthorisation::authorisationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__updateAuthorisation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__updateAuthorisation::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__updateAuthorisation::toChangetoRole);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__updateAuthorisation::authorisationId);
+	/* transient soap skipped */
+}
+
+int ns1__updateAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__updateAuthorisation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__updateAuthorisation(struct soap *soap, const char *tag, int id, const ns1__updateAuthorisation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__updateAuthorisation), "ns1:updateAuthorisation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__updateAuthorisation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "toChangetoRole", -1, &(a->ns1__updateAuthorisation::toChangetoRole), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "authorisationId", -1, &(a->ns1__updateAuthorisation::authorisationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__updateAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__updateAuthorisation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisation * SOAP_FMAC4 soap_in_ns1__updateAuthorisation(struct soap *soap, const char *tag, ns1__updateAuthorisation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__updateAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__updateAuthorisation, sizeof(ns1__updateAuthorisation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__updateAuthorisation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__updateAuthorisation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_toChangetoRole1 = 1;
+	size_t soap_flag_authorisationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__updateAuthorisation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_toChangetoRole1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "toChangetoRole", &(a->ns1__updateAuthorisation::toChangetoRole), "xsd:string"))
+				{	soap_flag_toChangetoRole1--;
+					continue;
+				}
+			if (soap_flag_authorisationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "authorisationId", &(a->ns1__updateAuthorisation::authorisationId), "xsd:long"))
+				{	soap_flag_authorisationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__updateAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__updateAuthorisation, 0, sizeof(ns1__updateAuthorisation), 0, soap_copy_ns1__updateAuthorisation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__updateAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__updateAuthorisation);
+	if (this->soap_out(soap, tag?tag:"ns1:updateAuthorisation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__updateAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__updateAuthorisation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisation * SOAP_FMAC4 soap_get_ns1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__updateAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__updateAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__updateAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__updateAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__updateAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation);
+		if (size)
+			*size = sizeof(ns1__updateAuthorisation);
+		((ns1__updateAuthorisation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__updateAuthorisation);
+		for (int i = 0; i < n; i++)
+			((ns1__updateAuthorisation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__updateAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__updateAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__updateAuthorisation %p -> %p\n", q, p));
+	*(ns1__updateAuthorisation*)p = *(ns1__updateAuthorisation*)q;
+}
+
+void ns1__deleteAuthorisationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteAuthorisationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteAuthorisationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__deleteAuthorisationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteAuthorisationResponse");
+}
+
+void *ns1__deleteAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteAuthorisationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, ns1__deleteAuthorisationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteAuthorisationResponse, sizeof(ns1__deleteAuthorisationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteAuthorisationResponse)
+			return (ns1__deleteAuthorisationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteAuthorisationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteAuthorisationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteAuthorisationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse);
+		if (size)
+			*size = sizeof(ns1__deleteAuthorisationResponse);
+		((ns1__deleteAuthorisationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteAuthorisationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteAuthorisationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteAuthorisationResponse %p -> %p\n", q, p));
+	*(ns1__deleteAuthorisationResponse*)p = *(ns1__deleteAuthorisationResponse*)q;
+}
+
+void ns1__deleteAuthorisation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteAuthorisation::sessionId = NULL;
+	this->ns1__deleteAuthorisation::authorisationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteAuthorisation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteAuthorisation::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteAuthorisation::authorisationId);
+	/* transient soap skipped */
+}
+
+int ns1__deleteAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteAuthorisation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteAuthorisation(struct soap *soap, const char *tag, int id, const ns1__deleteAuthorisation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteAuthorisation), "ns1:deleteAuthorisation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteAuthorisation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "authorisationId", -1, &(a->ns1__deleteAuthorisation::authorisationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteAuthorisation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisation * SOAP_FMAC4 soap_in_ns1__deleteAuthorisation(struct soap *soap, const char *tag, ns1__deleteAuthorisation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteAuthorisation, sizeof(ns1__deleteAuthorisation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteAuthorisation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteAuthorisation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_authorisationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteAuthorisation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_authorisationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "authorisationId", &(a->ns1__deleteAuthorisation::authorisationId), "xsd:long"))
+				{	soap_flag_authorisationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteAuthorisation, 0, sizeof(ns1__deleteAuthorisation), 0, soap_copy_ns1__deleteAuthorisation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteAuthorisation);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteAuthorisation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteAuthorisation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisation * SOAP_FMAC4 soap_get_ns1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__deleteAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation);
+		if (size)
+			*size = sizeof(ns1__deleteAuthorisation);
+		((ns1__deleteAuthorisation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteAuthorisation);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteAuthorisation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteAuthorisation %p -> %p\n", q, p));
+	*(ns1__deleteAuthorisation*)p = *(ns1__deleteAuthorisation*)q;
+}
+
+void ns1__deletePublicationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deletePublicationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deletePublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deletePublicationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deletePublicationResponse(struct soap *soap, const char *tag, int id, const ns1__deletePublicationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deletePublicationResponse");
+}
+
+void *ns1__deletePublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deletePublicationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deletePublicationResponse * SOAP_FMAC4 soap_in_ns1__deletePublicationResponse(struct soap *soap, const char *tag, ns1__deletePublicationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deletePublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deletePublicationResponse, sizeof(ns1__deletePublicationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deletePublicationResponse)
+			return (ns1__deletePublicationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deletePublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deletePublicationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deletePublicationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deletePublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deletePublicationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deletePublicationResponse * SOAP_FMAC4 soap_get_ns1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deletePublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deletePublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__deletePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deletePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deletePublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse);
+		if (size)
+			*size = sizeof(ns1__deletePublicationResponse);
+		((ns1__deletePublicationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deletePublicationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deletePublicationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deletePublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deletePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deletePublicationResponse %p -> %p\n", q, p));
+	*(ns1__deletePublicationResponse*)p = *(ns1__deletePublicationResponse*)q;
+}
+
+void ns1__deletePublication::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deletePublication::sessionId = NULL;
+	this->ns1__deletePublication::publicationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deletePublication::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deletePublication::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__deletePublication::publicationId);
+	/* transient soap skipped */
+}
+
+int ns1__deletePublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deletePublication(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deletePublication(struct soap *soap, const char *tag, int id, const ns1__deletePublication *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deletePublication), "ns1:deletePublication"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deletePublication::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "publicationId", -1, &(a->ns1__deletePublication::publicationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deletePublication::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deletePublication(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deletePublication * SOAP_FMAC4 soap_in_ns1__deletePublication(struct soap *soap, const char *tag, ns1__deletePublication *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deletePublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deletePublication, sizeof(ns1__deletePublication), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deletePublication)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deletePublication *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_publicationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deletePublication::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_publicationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "publicationId", &(a->ns1__deletePublication::publicationId), "xsd:long"))
+				{	soap_flag_publicationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deletePublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deletePublication, 0, sizeof(ns1__deletePublication), 0, soap_copy_ns1__deletePublication);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deletePublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deletePublication);
+	if (this->soap_out(soap, tag?tag:"ns1:deletePublication", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deletePublication::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deletePublication(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deletePublication * SOAP_FMAC4 soap_get_ns1__deletePublication(struct soap *soap, ns1__deletePublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deletePublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deletePublication * SOAP_FMAC2 soap_instantiate_ns1__deletePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deletePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deletePublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication);
+		if (size)
+			*size = sizeof(ns1__deletePublication);
+		((ns1__deletePublication*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deletePublication);
+		for (int i = 0; i < n; i++)
+			((ns1__deletePublication*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deletePublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deletePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deletePublication %p -> %p\n", q, p));
+	*(ns1__deletePublication*)p = *(ns1__deletePublication*)q;
+}
+
+void ns1__loginResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__loginResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__loginResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__loginResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__loginResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__loginResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__loginResponse(struct soap *soap, const char *tag, int id, const ns1__loginResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__loginResponse), "ns1:loginResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "return", -1, &(a->ns1__loginResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__loginResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__loginResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__loginResponse * SOAP_FMAC4 soap_in_ns1__loginResponse(struct soap *soap, const char *tag, ns1__loginResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__loginResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__loginResponse, sizeof(ns1__loginResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__loginResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__loginResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "return", &(a->ns1__loginResponse::return_), "xsd:string"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__loginResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__loginResponse, 0, sizeof(ns1__loginResponse), 0, soap_copy_ns1__loginResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__loginResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__loginResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:loginResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__loginResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__loginResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__loginResponse * SOAP_FMAC4 soap_get_ns1__loginResponse(struct soap *soap, ns1__loginResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__loginResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__loginResponse * SOAP_FMAC2 soap_instantiate_ns1__loginResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__loginResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__loginResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse);
+		if (size)
+			*size = sizeof(ns1__loginResponse);
+		((ns1__loginResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__loginResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__loginResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__loginResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__loginResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__loginResponse %p -> %p\n", q, p));
+	*(ns1__loginResponse*)p = *(ns1__loginResponse*)q;
+}
+
+void ns1__login::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__login::username = NULL;
+	this->ns1__login::password = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__login::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__login::username);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__login::password);
+	/* transient soap skipped */
+}
+
+int ns1__login::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__login(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__login(struct soap *soap, const char *tag, int id, const ns1__login *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__login), "ns1:login"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "username", -1, &(a->ns1__login::username), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "password", -1, &(a->ns1__login::password), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__login::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__login(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__login * SOAP_FMAC4 soap_in_ns1__login(struct soap *soap, const char *tag, ns1__login *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__login *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__login, sizeof(ns1__login), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__login)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__login *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_username1 = 1;
+	size_t soap_flag_password1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_username1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "username", &(a->ns1__login::username), "xsd:string"))
+				{	soap_flag_username1--;
+					continue;
+				}
+			if (soap_flag_password1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "password", &(a->ns1__login::password), "xsd:string"))
+				{	soap_flag_password1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__login *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__login, 0, sizeof(ns1__login), 0, soap_copy_ns1__login);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__login::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__login);
+	if (this->soap_out(soap, tag?tag:"ns1:login", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__login::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__login(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__login * SOAP_FMAC4 soap_get_ns1__login(struct soap *soap, ns1__login *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__login(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__login * SOAP_FMAC2 soap_instantiate_ns1__login(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__login(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__login, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__login);
+		if (size)
+			*size = sizeof(ns1__login);
+		((ns1__login*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__login[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__login);
+		for (int i = 0; i < n; i++)
+			((ns1__login*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__login*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__login(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__login %p -> %p\n", q, p));
+	*(ns1__login*)p = *(ns1__login*)q;
+}
+
+void ns1__loginLifetimeResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__loginLifetimeResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__loginLifetimeResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__loginLifetimeResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__loginLifetimeResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__loginLifetimeResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__loginLifetimeResponse(struct soap *soap, const char *tag, int id, const ns1__loginLifetimeResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__loginLifetimeResponse), "ns1:loginLifetimeResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "return", -1, &(a->ns1__loginLifetimeResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__loginLifetimeResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__loginLifetimeResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__loginLifetimeResponse * SOAP_FMAC4 soap_in_ns1__loginLifetimeResponse(struct soap *soap, const char *tag, ns1__loginLifetimeResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__loginLifetimeResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__loginLifetimeResponse, sizeof(ns1__loginLifetimeResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__loginLifetimeResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__loginLifetimeResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "return", &(a->ns1__loginLifetimeResponse::return_), "xsd:string"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__loginLifetimeResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__loginLifetimeResponse, 0, sizeof(ns1__loginLifetimeResponse), 0, soap_copy_ns1__loginLifetimeResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__loginLifetimeResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__loginLifetimeResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:loginLifetimeResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__loginLifetimeResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__loginLifetimeResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__loginLifetimeResponse * SOAP_FMAC4 soap_get_ns1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__loginLifetimeResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__loginLifetimeResponse * SOAP_FMAC2 soap_instantiate_ns1__loginLifetimeResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__loginLifetimeResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__loginLifetimeResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse);
+		if (size)
+			*size = sizeof(ns1__loginLifetimeResponse);
+		((ns1__loginLifetimeResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__loginLifetimeResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__loginLifetimeResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__loginLifetimeResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__loginLifetimeResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__loginLifetimeResponse %p -> %p\n", q, p));
+	*(ns1__loginLifetimeResponse*)p = *(ns1__loginLifetimeResponse*)q;
+}
+
+void ns1__loginLifetime::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__loginLifetime::username = NULL;
+	this->ns1__loginLifetime::password = NULL;
+	soap_default_int(soap, &this->ns1__loginLifetime::lifetime);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__loginLifetime::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__loginLifetime::username);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__loginLifetime::password);
+	soap_embedded(soap, &this->ns1__loginLifetime::lifetime, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__loginLifetime::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__loginLifetime(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__loginLifetime(struct soap *soap, const char *tag, int id, const ns1__loginLifetime *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__loginLifetime), "ns1:loginLifetime"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "username", -1, &(a->ns1__loginLifetime::username), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "password", -1, &(a->ns1__loginLifetime::password), ""))
+		return soap->error;
+	if (soap_out_int(soap, "lifetime", -1, &(a->ns1__loginLifetime::lifetime), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__loginLifetime::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__loginLifetime(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__loginLifetime * SOAP_FMAC4 soap_in_ns1__loginLifetime(struct soap *soap, const char *tag, ns1__loginLifetime *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__loginLifetime *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__loginLifetime, sizeof(ns1__loginLifetime), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__loginLifetime)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__loginLifetime *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_username1 = 1;
+	size_t soap_flag_password1 = 1;
+	size_t soap_flag_lifetime1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_username1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "username", &(a->ns1__loginLifetime::username), "xsd:string"))
+				{	soap_flag_username1--;
+					continue;
+				}
+			if (soap_flag_password1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "password", &(a->ns1__loginLifetime::password), "xsd:string"))
+				{	soap_flag_password1--;
+					continue;
+				}
+			if (soap_flag_lifetime1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "lifetime", &(a->ns1__loginLifetime::lifetime), "xsd:int"))
+				{	soap_flag_lifetime1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__loginLifetime *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__loginLifetime, 0, sizeof(ns1__loginLifetime), 0, soap_copy_ns1__loginLifetime);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_lifetime1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__loginLifetime::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__loginLifetime);
+	if (this->soap_out(soap, tag?tag:"ns1:loginLifetime", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__loginLifetime::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__loginLifetime(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__loginLifetime * SOAP_FMAC4 soap_get_ns1__loginLifetime(struct soap *soap, ns1__loginLifetime *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__loginLifetime(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__loginLifetime * SOAP_FMAC2 soap_instantiate_ns1__loginLifetime(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__loginLifetime(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__loginLifetime, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime);
+		if (size)
+			*size = sizeof(ns1__loginLifetime);
+		((ns1__loginLifetime*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__loginLifetime);
+		for (int i = 0; i < n; i++)
+			((ns1__loginLifetime*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__loginLifetime*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__loginLifetime(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__loginLifetime %p -> %p\n", q, p));
+	*(ns1__loginLifetime*)p = *(ns1__loginLifetime*)q;
+}
+
+void ns1__addSampleResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addSampleResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addSampleResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__sample(soap, &this->ns1__addSampleResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addSampleResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSampleResponse(struct soap *soap, const char *tag, int id, const ns1__addSampleResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSampleResponse), "ns1:addSampleResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__sample(soap, "return", -1, &(a->ns1__addSampleResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addSampleResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addSampleResponse * SOAP_FMAC4 soap_in_ns1__addSampleResponse(struct soap *soap, const char *tag, ns1__addSampleResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSampleResponse, sizeof(ns1__addSampleResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addSampleResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addSampleResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sample(soap, "return", &(a->ns1__addSampleResponse::return_), "ns1:sample"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addSampleResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSampleResponse, 0, sizeof(ns1__addSampleResponse), 0, soap_copy_ns1__addSampleResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSampleResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addSampleResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addSampleResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addSampleResponse * SOAP_FMAC4 soap_get_ns1__addSampleResponse(struct soap *soap, ns1__addSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__addSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse);
+		if (size)
+			*size = sizeof(ns1__addSampleResponse);
+		((ns1__addSampleResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addSampleResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addSampleResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSampleResponse %p -> %p\n", q, p));
+	*(ns1__addSampleResponse*)p = *(ns1__addSampleResponse*)q;
+}
+
+void ns1__addSample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addSample::sessionId = NULL;
+	this->ns1__addSample::sample = NULL;
+	this->ns1__addSample::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addSample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addSample::sessionId);
+	soap_serialize_PointerTons1__sample(soap, &this->ns1__addSample::sample);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addSample::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__addSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addSample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSample(struct soap *soap, const char *tag, int id, const ns1__addSample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSample), "ns1:addSample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addSample::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sample(soap, "sample", -1, &(a->ns1__addSample::sample), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addSample::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addSample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addSample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addSample * SOAP_FMAC4 soap_in_ns1__addSample(struct soap *soap, const char *tag, ns1__addSample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSample, sizeof(ns1__addSample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addSample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addSample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sample1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addSample::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sample1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sample(soap, "sample", &(a->ns1__addSample::sample), "ns1:sample"))
+				{	soap_flag_sample1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addSample::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSample, 0, sizeof(ns1__addSample), 0, soap_copy_ns1__addSample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSample);
+	if (this->soap_out(soap, tag?tag:"ns1:addSample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addSample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addSample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addSample * SOAP_FMAC4 soap_get_ns1__addSample(struct soap *soap, ns1__addSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addSample * SOAP_FMAC2 soap_instantiate_ns1__addSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSample);
+		if (size)
+			*size = sizeof(ns1__addSample);
+		((ns1__addSample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addSample);
+		for (int i = 0; i < n; i++)
+			((ns1__addSample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSample %p -> %p\n", q, p));
+	*(ns1__addSample*)p = *(ns1__addSample*)q;
+}
+
+void ns1__addAuthorisationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addAuthorisationResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addAuthorisationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__icatAuthorisation(soap, &this->ns1__addAuthorisationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addAuthorisationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__addAuthorisationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addAuthorisationResponse), "ns1:addAuthorisationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__icatAuthorisation(soap, "return", -1, &(a->ns1__addAuthorisationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addAuthorisationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__addAuthorisationResponse(struct soap *soap, const char *tag, ns1__addAuthorisationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addAuthorisationResponse, sizeof(ns1__addAuthorisationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addAuthorisationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addAuthorisationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatAuthorisation(soap, "return", &(a->ns1__addAuthorisationResponse::return_), "ns1:icatAuthorisation"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addAuthorisationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addAuthorisationResponse, 0, sizeof(ns1__addAuthorisationResponse), 0, soap_copy_ns1__addAuthorisationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addAuthorisationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addAuthorisationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addAuthorisationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__addAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse);
+		if (size)
+			*size = sizeof(ns1__addAuthorisationResponse);
+		((ns1__addAuthorisationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addAuthorisationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addAuthorisationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addAuthorisationResponse %p -> %p\n", q, p));
+	*(ns1__addAuthorisationResponse*)p = *(ns1__addAuthorisationResponse*)q;
+}
+
+void ns1__addAuthorisation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addAuthorisation::sessionId = NULL;
+	this->ns1__addAuthorisation::toAddFedId = NULL;
+	this->ns1__addAuthorisation::toAddRole = NULL;
+	this->ns1__addAuthorisation::elementId = NULL;
+	this->ns1__addAuthorisation::elementType = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addAuthorisation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addAuthorisation::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addAuthorisation::toAddFedId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addAuthorisation::toAddRole);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addAuthorisation::elementId);
+	soap_serialize_PointerTons1__elementType(soap, &this->ns1__addAuthorisation::elementType);
+	/* transient soap skipped */
+}
+
+int ns1__addAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addAuthorisation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addAuthorisation(struct soap *soap, const char *tag, int id, const ns1__addAuthorisation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addAuthorisation), "ns1:addAuthorisation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addAuthorisation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "toAddFedId", -1, &(a->ns1__addAuthorisation::toAddFedId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "toAddRole", -1, &(a->ns1__addAuthorisation::toAddRole), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "elementId", -1, &(a->ns1__addAuthorisation::elementId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__elementType(soap, "elementType", -1, &(a->ns1__addAuthorisation::elementType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addAuthorisation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addAuthorisation * SOAP_FMAC4 soap_in_ns1__addAuthorisation(struct soap *soap, const char *tag, ns1__addAuthorisation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addAuthorisation, sizeof(ns1__addAuthorisation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addAuthorisation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addAuthorisation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_toAddFedId1 = 1;
+	size_t soap_flag_toAddRole1 = 1;
+	size_t soap_flag_elementId1 = 1;
+	size_t soap_flag_elementType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addAuthorisation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_toAddFedId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "toAddFedId", &(a->ns1__addAuthorisation::toAddFedId), "xsd:string"))
+				{	soap_flag_toAddFedId1--;
+					continue;
+				}
+			if (soap_flag_toAddRole1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "toAddRole", &(a->ns1__addAuthorisation::toAddRole), "xsd:string"))
+				{	soap_flag_toAddRole1--;
+					continue;
+				}
+			if (soap_flag_elementId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "elementId", &(a->ns1__addAuthorisation::elementId), "xsd:long"))
+				{	soap_flag_elementId1--;
+					continue;
+				}
+			if (soap_flag_elementType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__elementType(soap, "elementType", &(a->ns1__addAuthorisation::elementType), "ns1:elementType"))
+				{	soap_flag_elementType1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addAuthorisation, 0, sizeof(ns1__addAuthorisation), 0, soap_copy_ns1__addAuthorisation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addAuthorisation);
+	if (this->soap_out(soap, tag?tag:"ns1:addAuthorisation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addAuthorisation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addAuthorisation * SOAP_FMAC4 soap_get_ns1__addAuthorisation(struct soap *soap, ns1__addAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__addAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation);
+		if (size)
+			*size = sizeof(ns1__addAuthorisation);
+		((ns1__addAuthorisation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addAuthorisation);
+		for (int i = 0; i < n; i++)
+			((ns1__addAuthorisation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addAuthorisation %p -> %p\n", q, p));
+	*(ns1__addAuthorisation*)p = *(ns1__addAuthorisation*)q;
+}
+
+void ns1__addDataSetParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addDataSetParameterResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataSetParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameterResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataSetParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__addDataSetParameterResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParameterResponse), "ns1:addDataSetParameterResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__datasetParameter(soap, "return", -1, &(a->ns1__addDataSetParameterResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataSetParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__addDataSetParameterResponse(struct soap *soap, const char *tag, ns1__addDataSetParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParameterResponse, sizeof(ns1__addDataSetParameterResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParameterResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataSetParameterResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetParameter(soap, "return", &(a->ns1__addDataSetParameterResponse::return_), "ns1:datasetParameter"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataSetParameterResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParameterResponse, 0, sizeof(ns1__addDataSetParameterResponse), 0, soap_copy_ns1__addDataSetParameterResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataSetParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse);
+		if (size)
+			*size = sizeof(ns1__addDataSetParameterResponse);
+		((ns1__addDataSetParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataSetParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParameterResponse %p -> %p\n", q, p));
+	*(ns1__addDataSetParameterResponse*)p = *(ns1__addDataSetParameterResponse*)q;
+}
+
+void ns1__addDataSetParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addDataSetParameter::sessionId = NULL;
+	this->ns1__addDataSetParameter::dataSetParameter = NULL;
+	this->ns1__addDataSetParameter::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataSetParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataSetParameter::sessionId);
+	soap_serialize_PointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameter::dataSetParameter);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataSetParameter::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__addDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataSetParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__addDataSetParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParameter), "ns1:addDataSetParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataSetParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datasetParameter(soap, "dataSetParameter", -1, &(a->ns1__addDataSetParameter::dataSetParameter), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__addDataSetParameter::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataSetParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameter * SOAP_FMAC4 soap_in_ns1__addDataSetParameter(struct soap *soap, const char *tag, ns1__addDataSetParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParameter, sizeof(ns1__addDataSetParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataSetParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataSetParameter1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataSetParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataSetParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetParameter(soap, "dataSetParameter", &(a->ns1__addDataSetParameter::dataSetParameter), "ns1:datasetParameter"))
+				{	soap_flag_dataSetParameter1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__addDataSetParameter::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParameter, 0, sizeof(ns1__addDataSetParameter), 0, soap_copy_ns1__addDataSetParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataSetParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameter * SOAP_FMAC4 soap_get_ns1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter);
+		if (size)
+			*size = sizeof(ns1__addDataSetParameter);
+		((ns1__addDataSetParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataSetParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataSetParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParameter %p -> %p\n", q, p));
+	*(ns1__addDataSetParameter*)p = *(ns1__addDataSetParameter*)q;
+}
+
+void ns1__createDataFilesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFilesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataFilesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFilesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__createDataFilesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataFilesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFilesResponse(struct soap *soap, const char *tag, int id, const ns1__createDataFilesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFilesResponse), "ns1:createDataFilesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__createDataFilesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataFilesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataFilesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataFilesResponse * SOAP_FMAC4 soap_in_ns1__createDataFilesResponse(struct soap *soap, const char *tag, ns1__createDataFilesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataFilesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFilesResponse, sizeof(ns1__createDataFilesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataFilesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataFilesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__createDataFilesResponse::return_), "ns1:datafile"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataFilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFilesResponse, 0, sizeof(ns1__createDataFilesResponse), 0, soap_copy_ns1__createDataFilesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataFilesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFilesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataFilesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataFilesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataFilesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataFilesResponse * SOAP_FMAC4 soap_get_ns1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataFilesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataFilesResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataFilesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFilesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFilesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse);
+		if (size)
+			*size = sizeof(ns1__createDataFilesResponse);
+		((ns1__createDataFilesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataFilesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataFilesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataFilesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFilesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFilesResponse %p -> %p\n", q, p));
+	*(ns1__createDataFilesResponse*)p = *(ns1__createDataFilesResponse*)q;
+}
+
+void ns1__createDataFiles::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createDataFiles::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFiles::dataFiles);
+	this->ns1__createDataFiles::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataFiles::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataFiles::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__createDataFiles::dataFiles);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataFiles::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__createDataFiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataFiles(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFiles(struct soap *soap, const char *tag, int id, const ns1__createDataFiles *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFiles), "ns1:createDataFiles"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataFiles::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "dataFiles", -1, &(a->ns1__createDataFiles::dataFiles), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__createDataFiles::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataFiles::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataFiles(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataFiles * SOAP_FMAC4 soap_in_ns1__createDataFiles(struct soap *soap, const char *tag, ns1__createDataFiles *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataFiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFiles, sizeof(ns1__createDataFiles), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataFiles)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataFiles *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataFiles::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "dataFiles", &(a->ns1__createDataFiles::dataFiles), "ns1:datafile"))
+					continue;
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__createDataFiles::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataFiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFiles, 0, sizeof(ns1__createDataFiles), 0, soap_copy_ns1__createDataFiles);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataFiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFiles);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataFiles", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataFiles::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataFiles(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataFiles * SOAP_FMAC4 soap_get_ns1__createDataFiles(struct soap *soap, ns1__createDataFiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataFiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataFiles * SOAP_FMAC2 soap_instantiate_ns1__createDataFiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles);
+		if (size)
+			*size = sizeof(ns1__createDataFiles);
+		((ns1__createDataFiles*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataFiles);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataFiles*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataFiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFiles %p -> %p\n", q, p));
+	*(ns1__createDataFiles*)p = *(ns1__createDataFiles*)q;
+}
+
+void ns1__modifyInvestigatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyInvestigatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyInvestigatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigatorResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyInvestigatorResponse");
+}
+
+void *ns1__modifyInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyInvestigatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, ns1__modifyInvestigatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigatorResponse, sizeof(ns1__modifyInvestigatorResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigatorResponse)
+			return (ns1__modifyInvestigatorResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyInvestigatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse);
+		if (size)
+			*size = sizeof(ns1__modifyInvestigatorResponse);
+		((ns1__modifyInvestigatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyInvestigatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyInvestigatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigatorResponse %p -> %p\n", q, p));
+	*(ns1__modifyInvestigatorResponse*)p = *(ns1__modifyInvestigatorResponse*)q;
+}
+
+void ns1__modifyInvestigator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyInvestigator::sessionId = NULL;
+	this->ns1__modifyInvestigator::investigator = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyInvestigator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyInvestigator::sessionId);
+	soap_serialize_PointerTons1__investigator(soap, &this->ns1__modifyInvestigator::investigator);
+	/* transient soap skipped */
+}
+
+int ns1__modifyInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyInvestigator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigator(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyInvestigator), "ns1:modifyInvestigator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyInvestigator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigator(soap, "investigator", -1, &(a->ns1__modifyInvestigator::investigator), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyInvestigator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigator * SOAP_FMAC4 soap_in_ns1__modifyInvestigator(struct soap *soap, const char *tag, ns1__modifyInvestigator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigator, sizeof(ns1__modifyInvestigator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyInvestigator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigator1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyInvestigator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigator1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigator(soap, "investigator", &(a->ns1__modifyInvestigator::investigator), "ns1:investigator"))
+				{	soap_flag_investigator1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyInvestigator, 0, sizeof(ns1__modifyInvestigator), 0, soap_copy_ns1__modifyInvestigator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigator);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyInvestigator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigator * SOAP_FMAC4 soap_get_ns1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyInvestigator * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator);
+		if (size)
+			*size = sizeof(ns1__modifyInvestigator);
+		((ns1__modifyInvestigator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyInvestigator);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyInvestigator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigator %p -> %p\n", q, p));
+	*(ns1__modifyInvestigator*)p = *(ns1__modifyInvestigator*)q;
+}
+
+void ns1__searchByParameterComparatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByParameterComparatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByParameterComparatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByParameterComparatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparatorResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparatorResponse), "ns1:searchByParameterComparatorResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByParameterComparatorResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByParameterComparatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByParameterComparatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorResponse * SOAP_FMAC4 soap_in_ns1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByParameterComparatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparatorResponse, sizeof(ns1__searchByParameterComparatorResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparatorResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByParameterComparatorResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByParameterComparatorResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByParameterComparatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparatorResponse, 0, sizeof(ns1__searchByParameterComparatorResponse), 0, soap_copy_ns1__searchByParameterComparatorResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByParameterComparatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByParameterComparatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByParameterComparatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorResponse * SOAP_FMAC4 soap_get_ns1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByParameterComparatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByParameterComparatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse);
+		if (size)
+			*size = sizeof(ns1__searchByParameterComparatorResponse);
+		((ns1__searchByParameterComparatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByParameterComparatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByParameterComparatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparatorResponse %p -> %p\n", q, p));
+	*(ns1__searchByParameterComparatorResponse*)p = *(ns1__searchByParameterComparatorResponse*)q;
+}
+
+void ns1__searchByParameterComparator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByParameterComparator::sessionId = NULL;
+	this->ns1__searchByParameterComparator::comparator = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByParameterComparator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByParameterComparator::sessionId);
+	soap_serialize_PointerTons1__parameterComparisonCondition(soap, &this->ns1__searchByParameterComparator::comparator);
+	/* transient soap skipped */
+}
+
+int ns1__searchByParameterComparator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByParameterComparator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparator(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparator), "ns1:searchByParameterComparator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByParameterComparator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterComparisonCondition(soap, "comparator", -1, &(a->ns1__searchByParameterComparator::comparator), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByParameterComparator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByParameterComparator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparator * SOAP_FMAC4 soap_in_ns1__searchByParameterComparator(struct soap *soap, const char *tag, ns1__searchByParameterComparator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByParameterComparator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparator, sizeof(ns1__searchByParameterComparator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByParameterComparator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_comparator1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByParameterComparator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterComparisonCondition(soap, "comparator", &(a->ns1__searchByParameterComparator::comparator), "ns1:parameterComparisonCondition"))
+				{	soap_flag_comparator1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByParameterComparator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparator, 0, sizeof(ns1__searchByParameterComparator), 0, soap_copy_ns1__searchByParameterComparator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByParameterComparator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparator);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByParameterComparator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByParameterComparator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparator * SOAP_FMAC4 soap_get_ns1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByParameterComparator * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator);
+		if (size)
+			*size = sizeof(ns1__searchByParameterComparator);
+		((ns1__searchByParameterComparator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByParameterComparator);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByParameterComparator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByParameterComparator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparator %p -> %p\n", q, p));
+	*(ns1__searchByParameterComparator*)p = *(ns1__searchByParameterComparator*)q;
+}
+
+void ns1__modifySampleParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifySampleParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifySampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifySampleParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__modifySampleParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifySampleParameterResponse");
+}
+
+void *ns1__modifySampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifySampleParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_in_ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, ns1__modifySampleParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifySampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySampleParameterResponse, sizeof(ns1__modifySampleParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifySampleParameterResponse)
+			return (ns1__modifySampleParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifySampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySampleParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifySampleParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifySampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifySampleParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_get_ns1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifySampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifySampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__modifySampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse);
+		if (size)
+			*size = sizeof(ns1__modifySampleParameterResponse);
+		((ns1__modifySampleParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifySampleParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifySampleParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifySampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySampleParameterResponse %p -> %p\n", q, p));
+	*(ns1__modifySampleParameterResponse*)p = *(ns1__modifySampleParameterResponse*)q;
+}
+
+void ns1__modifySampleParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifySampleParameter::sessionId = NULL;
+	this->ns1__modifySampleParameter::sampleParameter = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifySampleParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifySampleParameter::sessionId);
+	soap_serialize_PointerTons1__sampleParameter(soap, &this->ns1__modifySampleParameter::sampleParameter);
+	/* transient soap skipped */
+}
+
+int ns1__modifySampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifySampleParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySampleParameter(struct soap *soap, const char *tag, int id, const ns1__modifySampleParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifySampleParameter), "ns1:modifySampleParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifySampleParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sampleParameter(soap, "sampleParameter", -1, &(a->ns1__modifySampleParameter::sampleParameter), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifySampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifySampleParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameter * SOAP_FMAC4 soap_in_ns1__modifySampleParameter(struct soap *soap, const char *tag, ns1__modifySampleParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifySampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySampleParameter, sizeof(ns1__modifySampleParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifySampleParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifySampleParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleParameter1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifySampleParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sampleParameter(soap, "sampleParameter", &(a->ns1__modifySampleParameter::sampleParameter), "ns1:sampleParameter"))
+				{	soap_flag_sampleParameter1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifySampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifySampleParameter, 0, sizeof(ns1__modifySampleParameter), 0, soap_copy_ns1__modifySampleParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifySampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySampleParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:modifySampleParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifySampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifySampleParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameter * SOAP_FMAC4 soap_get_ns1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifySampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifySampleParameter * SOAP_FMAC2 soap_instantiate_ns1__modifySampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter);
+		if (size)
+			*size = sizeof(ns1__modifySampleParameter);
+		((ns1__modifySampleParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifySampleParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__modifySampleParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifySampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySampleParameter %p -> %p\n", q, p));
+	*(ns1__modifySampleParameter*)p = *(ns1__modifySampleParameter*)q;
+}
+
+void ns1__listDatafileFormatsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafileFormat(soap, &this->ns1__listDatafileFormatsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listDatafileFormatsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafileFormat(soap, &this->ns1__listDatafileFormatsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listDatafileFormatsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listDatafileFormatsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatafileFormatsResponse(struct soap *soap, const char *tag, int id, const ns1__listDatafileFormatsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatafileFormatsResponse), "ns1:listDatafileFormatsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafileFormat(soap, "return", -1, &(a->ns1__listDatafileFormatsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listDatafileFormatsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listDatafileFormatsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormatsResponse * SOAP_FMAC4 soap_in_ns1__listDatafileFormatsResponse(struct soap *soap, const char *tag, ns1__listDatafileFormatsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listDatafileFormatsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatafileFormatsResponse, sizeof(ns1__listDatafileFormatsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listDatafileFormatsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listDatafileFormatsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafileFormat(soap, "return", &(a->ns1__listDatafileFormatsResponse::return_), "ns1:datafileFormat"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listDatafileFormatsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatafileFormatsResponse, 0, sizeof(ns1__listDatafileFormatsResponse), 0, soap_copy_ns1__listDatafileFormatsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listDatafileFormatsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatafileFormatsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listDatafileFormatsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listDatafileFormatsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listDatafileFormatsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormatsResponse * SOAP_FMAC4 soap_get_ns1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listDatafileFormatsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listDatafileFormatsResponse * SOAP_FMAC2 soap_instantiate_ns1__listDatafileFormatsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatafileFormatsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatafileFormatsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse);
+		if (size)
+			*size = sizeof(ns1__listDatafileFormatsResponse);
+		((ns1__listDatafileFormatsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listDatafileFormatsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listDatafileFormatsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listDatafileFormatsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatafileFormatsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatafileFormatsResponse %p -> %p\n", q, p));
+	*(ns1__listDatafileFormatsResponse*)p = *(ns1__listDatafileFormatsResponse*)q;
+}
+
+void ns1__listDatafileFormats::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listDatafileFormats::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listDatafileFormats::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listDatafileFormats::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listDatafileFormats::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listDatafileFormats(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatafileFormats(struct soap *soap, const char *tag, int id, const ns1__listDatafileFormats *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatafileFormats), "ns1:listDatafileFormats"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listDatafileFormats::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listDatafileFormats::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listDatafileFormats(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormats * SOAP_FMAC4 soap_in_ns1__listDatafileFormats(struct soap *soap, const char *tag, ns1__listDatafileFormats *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listDatafileFormats *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatafileFormats, sizeof(ns1__listDatafileFormats), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listDatafileFormats)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listDatafileFormats *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listDatafileFormats::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listDatafileFormats *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatafileFormats, 0, sizeof(ns1__listDatafileFormats), 0, soap_copy_ns1__listDatafileFormats);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listDatafileFormats::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatafileFormats);
+	if (this->soap_out(soap, tag?tag:"ns1:listDatafileFormats", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listDatafileFormats::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listDatafileFormats(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormats * SOAP_FMAC4 soap_get_ns1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listDatafileFormats(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listDatafileFormats * SOAP_FMAC2 soap_instantiate_ns1__listDatafileFormats(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatafileFormats(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatafileFormats, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats);
+		if (size)
+			*size = sizeof(ns1__listDatafileFormats);
+		((ns1__listDatafileFormats*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listDatafileFormats);
+		for (int i = 0; i < n; i++)
+			((ns1__listDatafileFormats*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listDatafileFormats*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatafileFormats(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatafileFormats %p -> %p\n", q, p));
+	*(ns1__listDatafileFormats*)p = *(ns1__listDatafileFormats*)q;
+}
+
+void ns1__searchByAdvancedPaginationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedPaginationResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByAdvancedPaginationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedPaginationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByAdvancedPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByAdvancedPaginationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByAdvancedPaginationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse), "ns1:searchByAdvancedPaginationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByAdvancedPaginationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByAdvancedPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByAdvancedPaginationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedPaginationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByAdvancedPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, sizeof(ns1__searchByAdvancedPaginationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvancedPaginationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByAdvancedPaginationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByAdvancedPaginationResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByAdvancedPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, 0, sizeof(ns1__searchByAdvancedPaginationResponse), 0, soap_copy_ns1__searchByAdvancedPaginationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByAdvancedPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvancedPaginationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByAdvancedPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByAdvancedPaginationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByAdvancedPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByAdvancedPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvancedPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvancedPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse);
+		if (size)
+			*size = sizeof(ns1__searchByAdvancedPaginationResponse);
+		((ns1__searchByAdvancedPaginationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByAdvancedPaginationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByAdvancedPaginationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByAdvancedPaginationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvancedPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvancedPaginationResponse %p -> %p\n", q, p));
+	*(ns1__searchByAdvancedPaginationResponse*)p = *(ns1__searchByAdvancedPaginationResponse*)q;
+}
+
+void ns1__searchByAdvancedPagination::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByAdvancedPagination::sessionId = NULL;
+	this->ns1__searchByAdvancedPagination::advancedSearchDetails = NULL;
+	soap_default_int(soap, &this->ns1__searchByAdvancedPagination::startIndex);
+	soap_default_int(soap, &this->ns1__searchByAdvancedPagination::numberOfResults);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByAdvancedPagination::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByAdvancedPagination::sessionId);
+	soap_serialize_PointerTons1__advancedSearchDetails(soap, &this->ns1__searchByAdvancedPagination::advancedSearchDetails);
+	soap_embedded(soap, &this->ns1__searchByAdvancedPagination::startIndex, SOAP_TYPE_int);
+	soap_embedded(soap, &this->ns1__searchByAdvancedPagination::numberOfResults, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__searchByAdvancedPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByAdvancedPagination(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, int id, const ns1__searchByAdvancedPagination *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvancedPagination), "ns1:searchByAdvancedPagination"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByAdvancedPagination::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", -1, &(a->ns1__searchByAdvancedPagination::advancedSearchDetails), ""))
+		return soap->error;
+	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByAdvancedPagination::startIndex), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByAdvancedPagination::numberOfResults), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByAdvancedPagination::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByAdvancedPagination(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_in_ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, ns1__searchByAdvancedPagination *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByAdvancedPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvancedPagination, sizeof(ns1__searchByAdvancedPagination), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvancedPagination)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByAdvancedPagination *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_advancedSearchDetails1 = 1;
+	size_t soap_flag_startIndex1 = 1;
+	size_t soap_flag_numberOfResults1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByAdvancedPagination::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_advancedSearchDetails1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", &(a->ns1__searchByAdvancedPagination::advancedSearchDetails), "ns1:advancedSearchDetails"))
+				{	soap_flag_advancedSearchDetails1--;
+					continue;
+				}
+			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByAdvancedPagination::startIndex), "xsd:int"))
+				{	soap_flag_startIndex1--;
+					continue;
+				}
+			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByAdvancedPagination::numberOfResults), "xsd:int"))
+				{	soap_flag_numberOfResults1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByAdvancedPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvancedPagination, 0, sizeof(ns1__searchByAdvancedPagination), 0, soap_copy_ns1__searchByAdvancedPagination);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByAdvancedPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvancedPagination);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvancedPagination", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByAdvancedPagination::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByAdvancedPagination(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_get_ns1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByAdvancedPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByAdvancedPagination * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvancedPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvancedPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvancedPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination);
+		if (size)
+			*size = sizeof(ns1__searchByAdvancedPagination);
+		((ns1__searchByAdvancedPagination*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByAdvancedPagination);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByAdvancedPagination*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByAdvancedPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvancedPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvancedPagination %p -> %p\n", q, p));
+	*(ns1__searchByAdvancedPagination*)p = *(ns1__searchByAdvancedPagination*)q;
+}
+
+void ns1__searchByAdvancedResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByAdvancedResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByAdvancedResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByAdvancedResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByAdvancedResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvancedResponse(struct soap *soap, const char *tag, int id, const ns1__searchByAdvancedResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvancedResponse), "ns1:searchByAdvancedResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByAdvancedResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByAdvancedResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByAdvancedResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedResponse * SOAP_FMAC4 soap_in_ns1__searchByAdvancedResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByAdvancedResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvancedResponse, sizeof(ns1__searchByAdvancedResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvancedResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByAdvancedResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByAdvancedResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByAdvancedResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvancedResponse, 0, sizeof(ns1__searchByAdvancedResponse), 0, soap_copy_ns1__searchByAdvancedResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByAdvancedResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvancedResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvancedResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByAdvancedResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByAdvancedResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedResponse * SOAP_FMAC4 soap_get_ns1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByAdvancedResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByAdvancedResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvancedResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvancedResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvancedResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse);
+		if (size)
+			*size = sizeof(ns1__searchByAdvancedResponse);
+		((ns1__searchByAdvancedResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByAdvancedResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByAdvancedResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByAdvancedResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvancedResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvancedResponse %p -> %p\n", q, p));
+	*(ns1__searchByAdvancedResponse*)p = *(ns1__searchByAdvancedResponse*)q;
+}
+
+void ns1__advancedSearchDetails::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__advancedSearchDetails::backCatalogueInvestigatorString = NULL;
+	soap_default_bool(soap, &this->ns1__advancedSearchDetails::caseSensitive);
+	this->ns1__advancedSearchDetails::datafileName = NULL;
+	this->ns1__advancedSearchDetails::dateRangeEnd = NULL;
+	this->ns1__advancedSearchDetails::dateRangeStart = NULL;
+	this->ns1__advancedSearchDetails::experimentNumber = NULL;
+	this->ns1__advancedSearchDetails::grantId = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::instruments);
+	this->ns1__advancedSearchDetails::investigationAbstract = NULL;
+	this->ns1__advancedSearchDetails::investigationInclude = NULL;
+	this->ns1__advancedSearchDetails::investigationName = NULL;
+	this->ns1__advancedSearchDetails::investigationType = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::investigators);
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::keywords);
+	this->ns1__advancedSearchDetails::runEnd = NULL;
+	this->ns1__advancedSearchDetails::runStart = NULL;
+	this->ns1__advancedSearchDetails::sampleName = NULL;
+	this->ns1__advancedSearchDetails::visitId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__advancedSearchDetails::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::backCatalogueInvestigatorString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::datafileName);
+	soap_serialize_PointerTotime(soap, &this->ns1__advancedSearchDetails::dateRangeEnd);
+	soap_serialize_PointerTotime(soap, &this->ns1__advancedSearchDetails::dateRangeStart);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::experimentNumber);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__advancedSearchDetails::grantId);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::instruments);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::investigationAbstract);
+	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__advancedSearchDetails::investigationInclude);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::investigationName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::investigationType);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::investigators);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__advancedSearchDetails::keywords);
+	soap_serialize_PointerTodouble(soap, &this->ns1__advancedSearchDetails::runEnd);
+	soap_serialize_PointerTodouble(soap, &this->ns1__advancedSearchDetails::runStart);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::sampleName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__advancedSearchDetails::visitId);
+	/* transient soap skipped */
+}
+
+int ns1__advancedSearchDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__advancedSearchDetails(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__advancedSearchDetails(struct soap *soap, const char *tag, int id, const ns1__advancedSearchDetails *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__advancedSearchDetails), "ns1:advancedSearchDetails"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "backCatalogueInvestigatorString", -1, &(a->ns1__advancedSearchDetails::backCatalogueInvestigatorString), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "caseSensitive", -1, &(a->ns1__advancedSearchDetails::caseSensitive), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "datafileName", -1, &(a->ns1__advancedSearchDetails::datafileName), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "dateRangeEnd", -1, &(a->ns1__advancedSearchDetails::dateRangeEnd), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "dateRangeStart", -1, &(a->ns1__advancedSearchDetails::dateRangeStart), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "experimentNumber", -1, &(a->ns1__advancedSearchDetails::experimentNumber), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "grantId", -1, &(a->ns1__advancedSearchDetails::grantId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "instruments", -1, &(a->ns1__advancedSearchDetails::instruments), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "investigationAbstract", -1, &(a->ns1__advancedSearchDetails::investigationAbstract), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__advancedSearchDetails::investigationInclude), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "investigationName", -1, &(a->ns1__advancedSearchDetails::investigationName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "investigationType", -1, &(a->ns1__advancedSearchDetails::investigationType), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "investigators", -1, &(a->ns1__advancedSearchDetails::investigators), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "keywords", -1, &(a->ns1__advancedSearchDetails::keywords), ""))
+		return soap->error;
+	if (soap_out_PointerTodouble(soap, "runEnd", -1, &(a->ns1__advancedSearchDetails::runEnd), ""))
+		return soap->error;
+	if (soap_out_PointerTodouble(soap, "runStart", -1, &(a->ns1__advancedSearchDetails::runStart), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "sampleName", -1, &(a->ns1__advancedSearchDetails::sampleName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "visitId", -1, &(a->ns1__advancedSearchDetails::visitId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__advancedSearchDetails::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__advancedSearchDetails(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__advancedSearchDetails * SOAP_FMAC4 soap_in_ns1__advancedSearchDetails(struct soap *soap, const char *tag, ns1__advancedSearchDetails *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__advancedSearchDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__advancedSearchDetails, sizeof(ns1__advancedSearchDetails), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__advancedSearchDetails)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__advancedSearchDetails *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_backCatalogueInvestigatorString1 = 1;
+	size_t soap_flag_caseSensitive1 = 1;
+	size_t soap_flag_datafileName1 = 1;
+	size_t soap_flag_dateRangeEnd1 = 1;
+	size_t soap_flag_dateRangeStart1 = 1;
+	size_t soap_flag_experimentNumber1 = 1;
+	size_t soap_flag_grantId1 = 1;
+	size_t soap_flag_investigationAbstract1 = 1;
+	size_t soap_flag_investigationInclude1 = 1;
+	size_t soap_flag_investigationName1 = 1;
+	size_t soap_flag_investigationType1 = 1;
+	size_t soap_flag_runEnd1 = 1;
+	size_t soap_flag_runStart1 = 1;
+	size_t soap_flag_sampleName1 = 1;
+	size_t soap_flag_visitId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_backCatalogueInvestigatorString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "backCatalogueInvestigatorString", &(a->ns1__advancedSearchDetails::backCatalogueInvestigatorString), "xsd:string"))
+				{	soap_flag_backCatalogueInvestigatorString1--;
+					continue;
+				}
+			if (soap_flag_caseSensitive1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "caseSensitive", &(a->ns1__advancedSearchDetails::caseSensitive), "xsd:boolean"))
+				{	soap_flag_caseSensitive1--;
+					continue;
+				}
+			if (soap_flag_datafileName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "datafileName", &(a->ns1__advancedSearchDetails::datafileName), "xsd:string"))
+				{	soap_flag_datafileName1--;
+					continue;
+				}
+			if (soap_flag_dateRangeEnd1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "dateRangeEnd", &(a->ns1__advancedSearchDetails::dateRangeEnd), "xsd:dateTime"))
+				{	soap_flag_dateRangeEnd1--;
+					continue;
+				}
+			if (soap_flag_dateRangeStart1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "dateRangeStart", &(a->ns1__advancedSearchDetails::dateRangeStart), "xsd:dateTime"))
+				{	soap_flag_dateRangeStart1--;
+					continue;
+				}
+			if (soap_flag_experimentNumber1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "experimentNumber", &(a->ns1__advancedSearchDetails::experimentNumber), "xsd:string"))
+				{	soap_flag_experimentNumber1--;
+					continue;
+				}
+			if (soap_flag_grantId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "grantId", &(a->ns1__advancedSearchDetails::grantId), "xsd:long"))
+				{	soap_flag_grantId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "instruments", &(a->ns1__advancedSearchDetails::instruments), "xsd:string"))
+					continue;
+			if (soap_flag_investigationAbstract1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "investigationAbstract", &(a->ns1__advancedSearchDetails::investigationAbstract), "xsd:string"))
+				{	soap_flag_investigationAbstract1--;
+					continue;
+				}
+			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__advancedSearchDetails::investigationInclude), "ns1:investigationInclude"))
+				{	soap_flag_investigationInclude1--;
+					continue;
+				}
+			if (soap_flag_investigationName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "investigationName", &(a->ns1__advancedSearchDetails::investigationName), "xsd:string"))
+				{	soap_flag_investigationName1--;
+					continue;
+				}
+			if (soap_flag_investigationType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "investigationType", &(a->ns1__advancedSearchDetails::investigationType), "xsd:string"))
+				{	soap_flag_investigationType1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "investigators", &(a->ns1__advancedSearchDetails::investigators), "xsd:string"))
+					continue;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "keywords", &(a->ns1__advancedSearchDetails::keywords), "xsd:string"))
+					continue;
+			if (soap_flag_runEnd1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTodouble(soap, "runEnd", &(a->ns1__advancedSearchDetails::runEnd), "xsd:double"))
+				{	soap_flag_runEnd1--;
+					continue;
+				}
+			if (soap_flag_runStart1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTodouble(soap, "runStart", &(a->ns1__advancedSearchDetails::runStart), "xsd:double"))
+				{	soap_flag_runStart1--;
+					continue;
+				}
+			if (soap_flag_sampleName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sampleName", &(a->ns1__advancedSearchDetails::sampleName), "xsd:string"))
+				{	soap_flag_sampleName1--;
+					continue;
+				}
+			if (soap_flag_visitId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "visitId", &(a->ns1__advancedSearchDetails::visitId), "xsd:string"))
+				{	soap_flag_visitId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__advancedSearchDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__advancedSearchDetails, 0, sizeof(ns1__advancedSearchDetails), 0, soap_copy_ns1__advancedSearchDetails);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_caseSensitive1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__advancedSearchDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__advancedSearchDetails);
+	if (this->soap_out(soap, tag?tag:"ns1:advancedSearchDetails", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__advancedSearchDetails::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__advancedSearchDetails(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__advancedSearchDetails * SOAP_FMAC4 soap_get_ns1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__advancedSearchDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__advancedSearchDetails * SOAP_FMAC2 soap_instantiate_ns1__advancedSearchDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__advancedSearchDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__advancedSearchDetails, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails);
+		if (size)
+			*size = sizeof(ns1__advancedSearchDetails);
+		((ns1__advancedSearchDetails*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__advancedSearchDetails);
+		for (int i = 0; i < n; i++)
+			((ns1__advancedSearchDetails*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__advancedSearchDetails*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__advancedSearchDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__advancedSearchDetails %p -> %p\n", q, p));
+	*(ns1__advancedSearchDetails*)p = *(ns1__advancedSearchDetails*)q;
+}
+
+void ns1__searchByAdvanced::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByAdvanced::sessionId = NULL;
+	this->ns1__searchByAdvanced::advancedSearchDetails = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByAdvanced::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByAdvanced::sessionId);
+	soap_serialize_PointerTons1__advancedSearchDetails(soap, &this->ns1__searchByAdvanced::advancedSearchDetails);
+	/* transient soap skipped */
+}
+
+int ns1__searchByAdvanced::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByAdvanced(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByAdvanced(struct soap *soap, const char *tag, int id, const ns1__searchByAdvanced *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByAdvanced), "ns1:searchByAdvanced"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByAdvanced::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", -1, &(a->ns1__searchByAdvanced::advancedSearchDetails), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByAdvanced::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByAdvanced(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvanced * SOAP_FMAC4 soap_in_ns1__searchByAdvanced(struct soap *soap, const char *tag, ns1__searchByAdvanced *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByAdvanced *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByAdvanced, sizeof(ns1__searchByAdvanced), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByAdvanced)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByAdvanced *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_advancedSearchDetails1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByAdvanced::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_advancedSearchDetails1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__advancedSearchDetails(soap, "advancedSearchDetails", &(a->ns1__searchByAdvanced::advancedSearchDetails), "ns1:advancedSearchDetails"))
+				{	soap_flag_advancedSearchDetails1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByAdvanced *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByAdvanced, 0, sizeof(ns1__searchByAdvanced), 0, soap_copy_ns1__searchByAdvanced);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByAdvanced::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByAdvanced);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByAdvanced", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByAdvanced::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByAdvanced(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvanced * SOAP_FMAC4 soap_get_ns1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByAdvanced(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByAdvanced * SOAP_FMAC2 soap_instantiate_ns1__searchByAdvanced(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByAdvanced(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByAdvanced, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced);
+		if (size)
+			*size = sizeof(ns1__searchByAdvanced);
+		((ns1__searchByAdvanced*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByAdvanced);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByAdvanced*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByAdvanced*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByAdvanced(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByAdvanced %p -> %p\n", q, p));
+	*(ns1__searchByAdvanced*)p = *(ns1__searchByAdvanced*)q;
+}
+
+void ns1__searchByRunNumberPaginationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberPaginationResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByRunNumberPaginationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberPaginationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByRunNumberPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByRunNumberPaginationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumberPaginationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse), "ns1:searchByRunNumberPaginationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchByRunNumberPaginationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByRunNumberPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByRunNumberPaginationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberPaginationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByRunNumberPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, sizeof(ns1__searchByRunNumberPaginationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumberPaginationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByRunNumberPaginationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchByRunNumberPaginationResponse::return_), "ns1:datafile"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByRunNumberPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, 0, sizeof(ns1__searchByRunNumberPaginationResponse), 0, soap_copy_ns1__searchByRunNumberPaginationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByRunNumberPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumberPaginationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByRunNumberPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByRunNumberPaginationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByRunNumberPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByRunNumberPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumberPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumberPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse);
+		if (size)
+			*size = sizeof(ns1__searchByRunNumberPaginationResponse);
+		((ns1__searchByRunNumberPaginationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByRunNumberPaginationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByRunNumberPaginationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByRunNumberPaginationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumberPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumberPaginationResponse %p -> %p\n", q, p));
+	*(ns1__searchByRunNumberPaginationResponse*)p = *(ns1__searchByRunNumberPaginationResponse*)q;
+}
+
+void ns1__searchByRunNumberPagination::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByRunNumberPagination::sessionId = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumberPagination::instruments);
+	soap_default_float(soap, &this->ns1__searchByRunNumberPagination::startRun);
+	soap_default_float(soap, &this->ns1__searchByRunNumberPagination::endRun);
+	soap_default_int(soap, &this->ns1__searchByRunNumberPagination::startIndex);
+	soap_default_int(soap, &this->ns1__searchByRunNumberPagination::numberOfResults);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByRunNumberPagination::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByRunNumberPagination::sessionId);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumberPagination::instruments);
+	soap_embedded(soap, &this->ns1__searchByRunNumberPagination::startIndex, SOAP_TYPE_int);
+	soap_embedded(soap, &this->ns1__searchByRunNumberPagination::numberOfResults, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__searchByRunNumberPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByRunNumberPagination(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumberPagination *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumberPagination), "ns1:searchByRunNumberPagination"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByRunNumberPagination::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "instruments", -1, &(a->ns1__searchByRunNumberPagination::instruments), ""))
+		return soap->error;
+	if (soap_out_float(soap, "startRun", -1, &(a->ns1__searchByRunNumberPagination::startRun), ""))
+		return soap->error;
+	if (soap_out_float(soap, "endRun", -1, &(a->ns1__searchByRunNumberPagination::endRun), ""))
+		return soap->error;
+	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByRunNumberPagination::startIndex), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByRunNumberPagination::numberOfResults), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByRunNumberPagination::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByRunNumberPagination(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_in_ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, ns1__searchByRunNumberPagination *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByRunNumberPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumberPagination, sizeof(ns1__searchByRunNumberPagination), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumberPagination)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByRunNumberPagination *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_startRun1 = 1;
+	size_t soap_flag_endRun1 = 1;
+	size_t soap_flag_startIndex1 = 1;
+	size_t soap_flag_numberOfResults1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByRunNumberPagination::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "instruments", &(a->ns1__searchByRunNumberPagination::instruments), "xsd:string"))
+					continue;
+			if (soap_flag_startRun1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_float(soap, "startRun", &(a->ns1__searchByRunNumberPagination::startRun), "xsd:float"))
+				{	soap_flag_startRun1--;
+					continue;
+				}
+			if (soap_flag_endRun1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_float(soap, "endRun", &(a->ns1__searchByRunNumberPagination::endRun), "xsd:float"))
+				{	soap_flag_endRun1--;
+					continue;
+				}
+			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByRunNumberPagination::startIndex), "xsd:int"))
+				{	soap_flag_startIndex1--;
+					continue;
+				}
+			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByRunNumberPagination::numberOfResults), "xsd:int"))
+				{	soap_flag_numberOfResults1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByRunNumberPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumberPagination, 0, sizeof(ns1__searchByRunNumberPagination), 0, soap_copy_ns1__searchByRunNumberPagination);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startRun1 > 0 || soap_flag_endRun1 > 0 || soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByRunNumberPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumberPagination);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumberPagination", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByRunNumberPagination::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByRunNumberPagination(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_get_ns1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByRunNumberPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByRunNumberPagination * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumberPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumberPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumberPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination);
+		if (size)
+			*size = sizeof(ns1__searchByRunNumberPagination);
+		((ns1__searchByRunNumberPagination*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByRunNumberPagination);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByRunNumberPagination*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByRunNumberPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumberPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumberPagination %p -> %p\n", q, p));
+	*(ns1__searchByRunNumberPagination*)p = *(ns1__searchByRunNumberPagination*)q;
+}
+
+void ns1__searchByRunNumberResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByRunNumberResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchByRunNumberResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByRunNumberResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByRunNumberResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumberResponse(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumberResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumberResponse), "ns1:searchByRunNumberResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchByRunNumberResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByRunNumberResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByRunNumberResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberResponse * SOAP_FMAC4 soap_in_ns1__searchByRunNumberResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByRunNumberResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumberResponse, sizeof(ns1__searchByRunNumberResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumberResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByRunNumberResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchByRunNumberResponse::return_), "ns1:datafile"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByRunNumberResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumberResponse, 0, sizeof(ns1__searchByRunNumberResponse), 0, soap_copy_ns1__searchByRunNumberResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByRunNumberResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumberResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumberResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByRunNumberResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByRunNumberResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberResponse * SOAP_FMAC4 soap_get_ns1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByRunNumberResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByRunNumberResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumberResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumberResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumberResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse);
+		if (size)
+			*size = sizeof(ns1__searchByRunNumberResponse);
+		((ns1__searchByRunNumberResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByRunNumberResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByRunNumberResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByRunNumberResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumberResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumberResponse %p -> %p\n", q, p));
+	*(ns1__searchByRunNumberResponse*)p = *(ns1__searchByRunNumberResponse*)q;
+}
+
+void ns1__searchByRunNumber::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByRunNumber::sessionId = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumber::instruments);
+	soap_default_float(soap, &this->ns1__searchByRunNumber::startRun);
+	soap_default_float(soap, &this->ns1__searchByRunNumber::endRun);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByRunNumber::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByRunNumber::sessionId);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByRunNumber::instruments);
+	/* transient soap skipped */
+}
+
+int ns1__searchByRunNumber::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByRunNumber(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByRunNumber(struct soap *soap, const char *tag, int id, const ns1__searchByRunNumber *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByRunNumber), "ns1:searchByRunNumber"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByRunNumber::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "instruments", -1, &(a->ns1__searchByRunNumber::instruments), ""))
+		return soap->error;
+	if (soap_out_float(soap, "startRun", -1, &(a->ns1__searchByRunNumber::startRun), ""))
+		return soap->error;
+	if (soap_out_float(soap, "endRun", -1, &(a->ns1__searchByRunNumber::endRun), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByRunNumber::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByRunNumber(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumber * SOAP_FMAC4 soap_in_ns1__searchByRunNumber(struct soap *soap, const char *tag, ns1__searchByRunNumber *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByRunNumber *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByRunNumber, sizeof(ns1__searchByRunNumber), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByRunNumber)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByRunNumber *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_startRun1 = 1;
+	size_t soap_flag_endRun1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByRunNumber::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "instruments", &(a->ns1__searchByRunNumber::instruments), "xsd:string"))
+					continue;
+			if (soap_flag_startRun1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_float(soap, "startRun", &(a->ns1__searchByRunNumber::startRun), "xsd:float"))
+				{	soap_flag_startRun1--;
+					continue;
+				}
+			if (soap_flag_endRun1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_float(soap, "endRun", &(a->ns1__searchByRunNumber::endRun), "xsd:float"))
+				{	soap_flag_endRun1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByRunNumber *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByRunNumber, 0, sizeof(ns1__searchByRunNumber), 0, soap_copy_ns1__searchByRunNumber);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startRun1 > 0 || soap_flag_endRun1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByRunNumber::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByRunNumber);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByRunNumber", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByRunNumber::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByRunNumber(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumber * SOAP_FMAC4 soap_get_ns1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByRunNumber(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByRunNumber * SOAP_FMAC2 soap_instantiate_ns1__searchByRunNumber(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByRunNumber(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByRunNumber, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber);
+		if (size)
+			*size = sizeof(ns1__searchByRunNumber);
+		((ns1__searchByRunNumber*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByRunNumber);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByRunNumber*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByRunNumber*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByRunNumber(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByRunNumber %p -> %p\n", q, p));
+	*(ns1__searchByRunNumber*)p = *(ns1__searchByRunNumber*)q;
+}
+
+void ns1__addDataSetParametersResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParametersResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataSetParametersResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParametersResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addDataSetParametersResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataSetParametersResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParametersResponse(struct soap *soap, const char *tag, int id, const ns1__addDataSetParametersResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParametersResponse), "ns1:addDataSetParametersResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "return", -1, &(a->ns1__addDataSetParametersResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataSetParametersResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataSetParametersResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParametersResponse * SOAP_FMAC4 soap_in_ns1__addDataSetParametersResponse(struct soap *soap, const char *tag, ns1__addDataSetParametersResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataSetParametersResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParametersResponse, sizeof(ns1__addDataSetParametersResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParametersResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataSetParametersResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "return", &(a->ns1__addDataSetParametersResponse::return_), "ns1:datasetParameter"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataSetParametersResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParametersResponse, 0, sizeof(ns1__addDataSetParametersResponse), 0, soap_copy_ns1__addDataSetParametersResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataSetParametersResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParametersResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParametersResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataSetParametersResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataSetParametersResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParametersResponse * SOAP_FMAC4 soap_get_ns1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataSetParametersResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataSetParametersResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParametersResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParametersResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParametersResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse);
+		if (size)
+			*size = sizeof(ns1__addDataSetParametersResponse);
+		((ns1__addDataSetParametersResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataSetParametersResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataSetParametersResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataSetParametersResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParametersResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParametersResponse %p -> %p\n", q, p));
+	*(ns1__addDataSetParametersResponse*)p = *(ns1__addDataSetParametersResponse*)q;
+}
+
+void ns1__addDataSetParameters::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addDataSetParameters::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameters::dataSetParameters);
+	this->ns1__addDataSetParameters::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataSetParameters::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataSetParameters::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__addDataSetParameters::dataSetParameters);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataSetParameters::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__addDataSetParameters::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataSetParameters(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataSetParameters(struct soap *soap, const char *tag, int id, const ns1__addDataSetParameters *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataSetParameters), "ns1:addDataSetParameters"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataSetParameters::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "dataSetParameters", -1, &(a->ns1__addDataSetParameters::dataSetParameters), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__addDataSetParameters::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataSetParameters::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataSetParameters(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameters * SOAP_FMAC4 soap_in_ns1__addDataSetParameters(struct soap *soap, const char *tag, ns1__addDataSetParameters *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataSetParameters *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataSetParameters, sizeof(ns1__addDataSetParameters), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataSetParameters)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataSetParameters *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataSetParameters::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "dataSetParameters", &(a->ns1__addDataSetParameters::dataSetParameters), "ns1:datasetParameter"))
+					continue;
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__addDataSetParameters::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataSetParameters *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataSetParameters, 0, sizeof(ns1__addDataSetParameters), 0, soap_copy_ns1__addDataSetParameters);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataSetParameters::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataSetParameters);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataSetParameters", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataSetParameters::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataSetParameters(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameters * SOAP_FMAC4 soap_get_ns1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataSetParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataSetParameters * SOAP_FMAC2 soap_instantiate_ns1__addDataSetParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataSetParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataSetParameters, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters);
+		if (size)
+			*size = sizeof(ns1__addDataSetParameters);
+		((ns1__addDataSetParameters*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataSetParameters);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataSetParameters*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataSetParameters*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataSetParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataSetParameters %p -> %p\n", q, p));
+	*(ns1__addDataSetParameters*)p = *(ns1__addDataSetParameters*)q;
+}
+
+void ns1__deleteKeywordResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteKeywordResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteKeywordResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteKeywordResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteKeywordResponse(struct soap *soap, const char *tag, int id, const ns1__deleteKeywordResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteKeywordResponse");
+}
+
+void *ns1__deleteKeywordResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteKeywordResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteKeywordResponse * SOAP_FMAC4 soap_in_ns1__deleteKeywordResponse(struct soap *soap, const char *tag, ns1__deleteKeywordResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteKeywordResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteKeywordResponse, sizeof(ns1__deleteKeywordResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteKeywordResponse)
+			return (ns1__deleteKeywordResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteKeywordResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteKeywordResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteKeywordResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteKeywordResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteKeywordResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteKeywordResponse * SOAP_FMAC4 soap_get_ns1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteKeywordResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteKeywordResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse);
+		if (size)
+			*size = sizeof(ns1__deleteKeywordResponse);
+		((ns1__deleteKeywordResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteKeywordResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteKeywordResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteKeywordResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteKeywordResponse %p -> %p\n", q, p));
+	*(ns1__deleteKeywordResponse*)p = *(ns1__deleteKeywordResponse*)q;
+}
+
+void ns1__deleteKeyword::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteKeyword::sessionId = NULL;
+	this->ns1__deleteKeyword::keywordPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteKeyword::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteKeyword::sessionId);
+	soap_serialize_PointerTons1__keywordPK(soap, &this->ns1__deleteKeyword::keywordPK);
+	/* transient soap skipped */
+}
+
+int ns1__deleteKeyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteKeyword(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteKeyword(struct soap *soap, const char *tag, int id, const ns1__deleteKeyword *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteKeyword), "ns1:deleteKeyword"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteKeyword::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keywordPK(soap, "keywordPK", -1, &(a->ns1__deleteKeyword::keywordPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteKeyword::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteKeyword(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteKeyword * SOAP_FMAC4 soap_in_ns1__deleteKeyword(struct soap *soap, const char *tag, ns1__deleteKeyword *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteKeyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteKeyword, sizeof(ns1__deleteKeyword), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteKeyword)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteKeyword *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_keywordPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteKeyword::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_keywordPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keywordPK(soap, "keywordPK", &(a->ns1__deleteKeyword::keywordPK), "ns1:keywordPK"))
+				{	soap_flag_keywordPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteKeyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteKeyword, 0, sizeof(ns1__deleteKeyword), 0, soap_copy_ns1__deleteKeyword);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteKeyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteKeyword);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteKeyword", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteKeyword::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteKeyword(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteKeyword * SOAP_FMAC4 soap_get_ns1__deleteKeyword(struct soap *soap, ns1__deleteKeyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteKeyword * SOAP_FMAC2 soap_instantiate_ns1__deleteKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteKeyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword);
+		if (size)
+			*size = sizeof(ns1__deleteKeyword);
+		((ns1__deleteKeyword*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteKeyword);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteKeyword*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteKeyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteKeyword %p -> %p\n", q, p));
+	*(ns1__deleteKeyword*)p = *(ns1__deleteKeyword*)q;
+}
+
+void ns1__deleteSampleResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteSampleResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteSampleResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSampleResponse(struct soap *soap, const char *tag, int id, const ns1__deleteSampleResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteSampleResponse");
+}
+
+void *ns1__deleteSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteSampleResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleResponse * SOAP_FMAC4 soap_in_ns1__deleteSampleResponse(struct soap *soap, const char *tag, ns1__deleteSampleResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSampleResponse, sizeof(ns1__deleteSampleResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteSampleResponse)
+			return (ns1__deleteSampleResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSampleResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteSampleResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteSampleResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleResponse * SOAP_FMAC4 soap_get_ns1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse);
+		if (size)
+			*size = sizeof(ns1__deleteSampleResponse);
+		((ns1__deleteSampleResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteSampleResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteSampleResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSampleResponse %p -> %p\n", q, p));
+	*(ns1__deleteSampleResponse*)p = *(ns1__deleteSampleResponse*)q;
+}
+
+void ns1__deleteSample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteSample::sessionId = NULL;
+	this->ns1__deleteSample::sampleId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteSample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteSample::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteSample::sampleId);
+	/* transient soap skipped */
+}
+
+int ns1__deleteSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteSample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteSample(struct soap *soap, const char *tag, int id, const ns1__deleteSample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteSample), "ns1:deleteSample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteSample::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__deleteSample::sampleId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteSample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteSample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteSample * SOAP_FMAC4 soap_in_ns1__deleteSample(struct soap *soap, const char *tag, ns1__deleteSample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteSample, sizeof(ns1__deleteSample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteSample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteSample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteSample::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__deleteSample::sampleId), "xsd:long"))
+				{	soap_flag_sampleId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteSample, 0, sizeof(ns1__deleteSample), 0, soap_copy_ns1__deleteSample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteSample);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteSample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteSample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteSample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteSample * SOAP_FMAC4 soap_get_ns1__deleteSample(struct soap *soap, ns1__deleteSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteSample * SOAP_FMAC2 soap_instantiate_ns1__deleteSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample);
+		if (size)
+			*size = sizeof(ns1__deleteSample);
+		((ns1__deleteSample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteSample);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteSample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteSample %p -> %p\n", q, p));
+	*(ns1__deleteSample*)p = *(ns1__deleteSample*)q;
+}
+
+void ns1__listDatasetStatusResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetStatusResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listDatasetStatusResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetStatusResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listDatasetStatusResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listDatasetStatusResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetStatusResponse(struct soap *soap, const char *tag, int id, const ns1__listDatasetStatusResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetStatusResponse), "ns1:listDatasetStatusResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listDatasetStatusResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listDatasetStatusResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listDatasetStatusResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatusResponse * SOAP_FMAC4 soap_in_ns1__listDatasetStatusResponse(struct soap *soap, const char *tag, ns1__listDatasetStatusResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listDatasetStatusResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetStatusResponse, sizeof(ns1__listDatasetStatusResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetStatusResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listDatasetStatusResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listDatasetStatusResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listDatasetStatusResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetStatusResponse, 0, sizeof(ns1__listDatasetStatusResponse), 0, soap_copy_ns1__listDatasetStatusResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listDatasetStatusResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetStatusResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listDatasetStatusResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listDatasetStatusResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listDatasetStatusResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatusResponse * SOAP_FMAC4 soap_get_ns1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listDatasetStatusResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listDatasetStatusResponse * SOAP_FMAC2 soap_instantiate_ns1__listDatasetStatusResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetStatusResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetStatusResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse);
+		if (size)
+			*size = sizeof(ns1__listDatasetStatusResponse);
+		((ns1__listDatasetStatusResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listDatasetStatusResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listDatasetStatusResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listDatasetStatusResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetStatusResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetStatusResponse %p -> %p\n", q, p));
+	*(ns1__listDatasetStatusResponse*)p = *(ns1__listDatasetStatusResponse*)q;
+}
+
+void ns1__listDatasetStatus::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listDatasetStatus::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listDatasetStatus::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listDatasetStatus::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listDatasetStatus::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listDatasetStatus(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetStatus(struct soap *soap, const char *tag, int id, const ns1__listDatasetStatus *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetStatus), "ns1:listDatasetStatus"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listDatasetStatus::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listDatasetStatus::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listDatasetStatus(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatus * SOAP_FMAC4 soap_in_ns1__listDatasetStatus(struct soap *soap, const char *tag, ns1__listDatasetStatus *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listDatasetStatus *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetStatus, sizeof(ns1__listDatasetStatus), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetStatus)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listDatasetStatus *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listDatasetStatus::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listDatasetStatus *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetStatus, 0, sizeof(ns1__listDatasetStatus), 0, soap_copy_ns1__listDatasetStatus);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listDatasetStatus::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetStatus);
+	if (this->soap_out(soap, tag?tag:"ns1:listDatasetStatus", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listDatasetStatus::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listDatasetStatus(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatus * SOAP_FMAC4 soap_get_ns1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listDatasetStatus(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listDatasetStatus * SOAP_FMAC2 soap_instantiate_ns1__listDatasetStatus(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetStatus(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetStatus, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus);
+		if (size)
+			*size = sizeof(ns1__listDatasetStatus);
+		((ns1__listDatasetStatus*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listDatasetStatus);
+		for (int i = 0; i < n; i++)
+			((ns1__listDatasetStatus*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listDatasetStatus*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetStatus(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetStatus %p -> %p\n", q, p));
+	*(ns1__listDatasetStatus*)p = *(ns1__listDatasetStatus*)q;
+}
+
+void ns1__modifyInvestigationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyInvestigationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyInvestigationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyInvestigationResponse");
+}
+
+void *ns1__modifyInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyInvestigationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_in_ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, ns1__modifyInvestigationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigationResponse, sizeof(ns1__modifyInvestigationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigationResponse)
+			return (ns1__modifyInvestigationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyInvestigationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_get_ns1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse);
+		if (size)
+			*size = sizeof(ns1__modifyInvestigationResponse);
+		((ns1__modifyInvestigationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyInvestigationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyInvestigationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigationResponse %p -> %p\n", q, p));
+	*(ns1__modifyInvestigationResponse*)p = *(ns1__modifyInvestigationResponse*)q;
+}
+
+void ns1__modifyInvestigation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyInvestigation::sessionId = NULL;
+	this->ns1__modifyInvestigation::investigaion = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyInvestigation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyInvestigation::sessionId);
+	soap_serialize_PointerTons1__investigation(soap, &this->ns1__modifyInvestigation::investigaion);
+	/* transient soap skipped */
+}
+
+int ns1__modifyInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyInvestigation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyInvestigation(struct soap *soap, const char *tag, int id, const ns1__modifyInvestigation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyInvestigation), "ns1:modifyInvestigation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyInvestigation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigation(soap, "investigaion", -1, &(a->ns1__modifyInvestigation::investigaion), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyInvestigation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigation * SOAP_FMAC4 soap_in_ns1__modifyInvestigation(struct soap *soap, const char *tag, ns1__modifyInvestigation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyInvestigation, sizeof(ns1__modifyInvestigation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyInvestigation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyInvestigation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigaion1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyInvestigation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigaion1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigation(soap, "investigaion", &(a->ns1__modifyInvestigation::investigaion), "ns1:investigation"))
+				{	soap_flag_investigaion1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyInvestigation, 0, sizeof(ns1__modifyInvestigation), 0, soap_copy_ns1__modifyInvestigation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyInvestigation);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyInvestigation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyInvestigation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigation * SOAP_FMAC4 soap_get_ns1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyInvestigation * SOAP_FMAC2 soap_instantiate_ns1__modifyInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation);
+		if (size)
+			*size = sizeof(ns1__modifyInvestigation);
+		((ns1__modifyInvestigation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyInvestigation);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyInvestigation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyInvestigation %p -> %p\n", q, p));
+	*(ns1__modifyInvestigation*)p = *(ns1__modifyInvestigation*)q;
+}
+
+void ns1__addKeywordResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addKeywordResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addKeywordResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__keyword(soap, &this->ns1__addKeywordResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addKeywordResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addKeywordResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addKeywordResponse(struct soap *soap, const char *tag, int id, const ns1__addKeywordResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addKeywordResponse), "ns1:addKeywordResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__keyword(soap, "return", -1, &(a->ns1__addKeywordResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addKeywordResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addKeywordResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addKeywordResponse * SOAP_FMAC4 soap_in_ns1__addKeywordResponse(struct soap *soap, const char *tag, ns1__addKeywordResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addKeywordResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addKeywordResponse, sizeof(ns1__addKeywordResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addKeywordResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addKeywordResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keyword(soap, "return", &(a->ns1__addKeywordResponse::return_), "ns1:keyword"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addKeywordResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addKeywordResponse, 0, sizeof(ns1__addKeywordResponse), 0, soap_copy_ns1__addKeywordResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addKeywordResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addKeywordResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addKeywordResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addKeywordResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addKeywordResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addKeywordResponse * SOAP_FMAC4 soap_get_ns1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addKeywordResponse * SOAP_FMAC2 soap_instantiate_ns1__addKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addKeywordResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse);
+		if (size)
+			*size = sizeof(ns1__addKeywordResponse);
+		((ns1__addKeywordResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addKeywordResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addKeywordResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addKeywordResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addKeywordResponse %p -> %p\n", q, p));
+	*(ns1__addKeywordResponse*)p = *(ns1__addKeywordResponse*)q;
+}
+
+void ns1__addKeyword::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addKeyword::sessionId = NULL;
+	this->ns1__addKeyword::keyword = NULL;
+	this->ns1__addKeyword::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addKeyword::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addKeyword::sessionId);
+	soap_serialize_PointerTons1__keyword(soap, &this->ns1__addKeyword::keyword);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addKeyword::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__addKeyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addKeyword(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addKeyword(struct soap *soap, const char *tag, int id, const ns1__addKeyword *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addKeyword), "ns1:addKeyword"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addKeyword::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keyword(soap, "keyword", -1, &(a->ns1__addKeyword::keyword), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addKeyword::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addKeyword::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addKeyword(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addKeyword * SOAP_FMAC4 soap_in_ns1__addKeyword(struct soap *soap, const char *tag, ns1__addKeyword *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addKeyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addKeyword, sizeof(ns1__addKeyword), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addKeyword)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addKeyword *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_keyword1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addKeyword::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_keyword1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keyword(soap, "keyword", &(a->ns1__addKeyword::keyword), "ns1:keyword"))
+				{	soap_flag_keyword1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addKeyword::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addKeyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addKeyword, 0, sizeof(ns1__addKeyword), 0, soap_copy_ns1__addKeyword);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addKeyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addKeyword);
+	if (this->soap_out(soap, tag?tag:"ns1:addKeyword", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addKeyword::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addKeyword(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addKeyword * SOAP_FMAC4 soap_get_ns1__addKeyword(struct soap *soap, ns1__addKeyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addKeyword * SOAP_FMAC2 soap_instantiate_ns1__addKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addKeyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword);
+		if (size)
+			*size = sizeof(ns1__addKeyword);
+		((ns1__addKeyword*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addKeyword);
+		for (int i = 0; i < n; i++)
+			((ns1__addKeyword*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addKeyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addKeyword %p -> %p\n", q, p));
+	*(ns1__addKeyword*)p = *(ns1__addKeyword*)q;
+}
+
+void ns1__icatAuthorisation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__icatAuthorisation::elementId = NULL;
+	this->ns1__icatAuthorisation::elementType = NULL;
+	this->ns1__icatAuthorisation::id = NULL;
+	this->ns1__icatAuthorisation::role = NULL;
+	this->ns1__icatAuthorisation::userChildRecord = NULL;
+	this->ns1__icatAuthorisation::userId = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__icatAuthorisation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerToLONG64(soap, &this->ns1__icatAuthorisation::elementId);
+	soap_serialize_PointerTons1__elementType(soap, &this->ns1__icatAuthorisation::elementType);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__icatAuthorisation::id);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__icatAuthorisation::role);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__icatAuthorisation::userChildRecord);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__icatAuthorisation::userId);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__icatAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__icatAuthorisation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__icatAuthorisation(struct soap *soap, const char *tag, int id, const ns1__icatAuthorisation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__icatAuthorisation), "ns1:icatAuthorisation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "elementId", -1, &(a->ns1__icatAuthorisation::elementId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__elementType(soap, "elementType", -1, &(a->ns1__icatAuthorisation::elementType), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__icatAuthorisation::id), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "role", -1, &(a->ns1__icatAuthorisation::role), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "userChildRecord", -1, &(a->ns1__icatAuthorisation::userChildRecord), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "userId", -1, &(a->ns1__icatAuthorisation::userId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__icatAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__icatAuthorisation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__icatAuthorisation * SOAP_FMAC4 soap_in_ns1__icatAuthorisation(struct soap *soap, const char *tag, ns1__icatAuthorisation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__icatAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__icatAuthorisation, sizeof(ns1__icatAuthorisation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__icatAuthorisation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__icatAuthorisation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_elementId1 = 1;
+	size_t soap_flag_elementType1 = 1;
+	size_t soap_flag_id1 = 1;
+	size_t soap_flag_role1 = 1;
+	size_t soap_flag_userChildRecord1 = 1;
+	size_t soap_flag_userId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_elementId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "elementId", &(a->ns1__icatAuthorisation::elementId), "xsd:long"))
+				{	soap_flag_elementId1--;
+					continue;
+				}
+			if (soap_flag_elementType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__elementType(soap, "elementType", &(a->ns1__icatAuthorisation::elementType), "ns1:elementType"))
+				{	soap_flag_elementType1--;
+					continue;
+				}
+			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__icatAuthorisation::id), "xsd:long"))
+				{	soap_flag_id1--;
+					continue;
+				}
+			if (soap_flag_role1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "role", &(a->ns1__icatAuthorisation::role), "ns1:icatRole"))
+				{	soap_flag_role1--;
+					continue;
+				}
+			if (soap_flag_userChildRecord1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "userChildRecord", &(a->ns1__icatAuthorisation::userChildRecord), "xsd:long"))
+				{	soap_flag_userChildRecord1--;
+					continue;
+				}
+			if (soap_flag_userId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "userId", &(a->ns1__icatAuthorisation::userId), "xsd:string"))
+				{	soap_flag_userId1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__icatAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__icatAuthorisation, 0, sizeof(ns1__icatAuthorisation), 0, soap_copy_ns1__icatAuthorisation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__icatAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__icatAuthorisation);
+	if (this->soap_out(soap, tag?tag:"ns1:icatAuthorisation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__icatAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__icatAuthorisation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__icatAuthorisation * SOAP_FMAC4 soap_get_ns1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__icatAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__icatAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__icatAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__icatAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__icatAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation);
+		if (size)
+			*size = sizeof(ns1__icatAuthorisation);
+		((ns1__icatAuthorisation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__icatAuthorisation);
+		for (int i = 0; i < n; i++)
+			((ns1__icatAuthorisation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__icatAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__icatAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__icatAuthorisation %p -> %p\n", q, p));
+	*(ns1__icatAuthorisation*)p = *(ns1__icatAuthorisation*)q;
+}
+
+void ns1__getAuthorisationsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, &this->ns1__getAuthorisationsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getAuthorisationsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, &this->ns1__getAuthorisationsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getAuthorisationsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getAuthorisationsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAuthorisationsResponse(struct soap *soap, const char *tag, int id, const ns1__getAuthorisationsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAuthorisationsResponse), "ns1:getAuthorisationsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, "return", -1, &(a->ns1__getAuthorisationsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getAuthorisationsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getAuthorisationsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getAuthorisationsResponse * SOAP_FMAC4 soap_in_ns1__getAuthorisationsResponse(struct soap *soap, const char *tag, ns1__getAuthorisationsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getAuthorisationsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAuthorisationsResponse, sizeof(ns1__getAuthorisationsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getAuthorisationsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getAuthorisationsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, "return", &(a->ns1__getAuthorisationsResponse::return_), "ns1:icatAuthorisation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getAuthorisationsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAuthorisationsResponse, 0, sizeof(ns1__getAuthorisationsResponse), 0, soap_copy_ns1__getAuthorisationsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getAuthorisationsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAuthorisationsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getAuthorisationsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getAuthorisationsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getAuthorisationsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getAuthorisationsResponse * SOAP_FMAC4 soap_get_ns1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getAuthorisationsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getAuthorisationsResponse * SOAP_FMAC2 soap_instantiate_ns1__getAuthorisationsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAuthorisationsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAuthorisationsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse);
+		if (size)
+			*size = sizeof(ns1__getAuthorisationsResponse);
+		((ns1__getAuthorisationsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getAuthorisationsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getAuthorisationsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getAuthorisationsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAuthorisationsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAuthorisationsResponse %p -> %p\n", q, p));
+	*(ns1__getAuthorisationsResponse*)p = *(ns1__getAuthorisationsResponse*)q;
+}
+
+void ns1__getAuthorisations::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getAuthorisations::sessionId = NULL;
+	this->ns1__getAuthorisations::elementId = NULL;
+	this->ns1__getAuthorisations::elementType = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getAuthorisations::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getAuthorisations::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__getAuthorisations::elementId);
+	soap_serialize_PointerTons1__elementType(soap, &this->ns1__getAuthorisations::elementType);
+	/* transient soap skipped */
+}
+
+int ns1__getAuthorisations::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getAuthorisations(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAuthorisations(struct soap *soap, const char *tag, int id, const ns1__getAuthorisations *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAuthorisations), "ns1:getAuthorisations"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getAuthorisations::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "elementId", -1, &(a->ns1__getAuthorisations::elementId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__elementType(soap, "elementType", -1, &(a->ns1__getAuthorisations::elementType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getAuthorisations::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getAuthorisations(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getAuthorisations * SOAP_FMAC4 soap_in_ns1__getAuthorisations(struct soap *soap, const char *tag, ns1__getAuthorisations *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getAuthorisations *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAuthorisations, sizeof(ns1__getAuthorisations), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getAuthorisations)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getAuthorisations *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_elementId1 = 1;
+	size_t soap_flag_elementType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getAuthorisations::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_elementId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "elementId", &(a->ns1__getAuthorisations::elementId), "xsd:long"))
+				{	soap_flag_elementId1--;
+					continue;
+				}
+			if (soap_flag_elementType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__elementType(soap, "elementType", &(a->ns1__getAuthorisations::elementType), "ns1:elementType"))
+				{	soap_flag_elementType1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getAuthorisations *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAuthorisations, 0, sizeof(ns1__getAuthorisations), 0, soap_copy_ns1__getAuthorisations);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getAuthorisations::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAuthorisations);
+	if (this->soap_out(soap, tag?tag:"ns1:getAuthorisations", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getAuthorisations::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getAuthorisations(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getAuthorisations * SOAP_FMAC4 soap_get_ns1__getAuthorisations(struct soap *soap, ns1__getAuthorisations *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getAuthorisations(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getAuthorisations * SOAP_FMAC2 soap_instantiate_ns1__getAuthorisations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAuthorisations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAuthorisations, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations);
+		if (size)
+			*size = sizeof(ns1__getAuthorisations);
+		((ns1__getAuthorisations*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getAuthorisations);
+		for (int i = 0; i < n; i++)
+			((ns1__getAuthorisations*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getAuthorisations*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAuthorisations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAuthorisations %p -> %p\n", q, p));
+	*(ns1__getAuthorisations*)p = *(ns1__getAuthorisations*)q;
+}
+
+void ns1__removeDataSetResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataSetResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataSetResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataSetResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataSetResponse");
+}
+
+void *ns1__removeDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataSetResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetResponse * SOAP_FMAC4 soap_in_ns1__removeDataSetResponse(struct soap *soap, const char *tag, ns1__removeDataSetResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSetResponse, sizeof(ns1__removeDataSetResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSetResponse)
+			return (ns1__removeDataSetResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSetResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataSetResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataSetResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetResponse * SOAP_FMAC4 soap_get_ns1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse);
+		if (size)
+			*size = sizeof(ns1__removeDataSetResponse);
+		((ns1__removeDataSetResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataSetResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataSetResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSetResponse %p -> %p\n", q, p));
+	*(ns1__removeDataSetResponse*)p = *(ns1__removeDataSetResponse*)q;
+}
+
+void ns1__removeDataSet::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeDataSet::sessionId = NULL;
+	this->ns1__removeDataSet::dataSetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataSet::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataSet::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__removeDataSet::dataSetId);
+	/* transient soap skipped */
+}
+
+int ns1__removeDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataSet(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSet(struct soap *soap, const char *tag, int id, const ns1__removeDataSet *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataSet), "ns1:removeDataSet"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataSet::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "dataSetId", -1, &(a->ns1__removeDataSet::dataSetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataSet(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSet * SOAP_FMAC4 soap_in_ns1__removeDataSet(struct soap *soap, const char *tag, ns1__removeDataSet *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSet, sizeof(ns1__removeDataSet), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSet)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeDataSet *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataSetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataSet::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataSetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "dataSetId", &(a->ns1__removeDataSet::dataSetId), "xsd:long"))
+				{	soap_flag_dataSetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataSet, 0, sizeof(ns1__removeDataSet), 0, soap_copy_ns1__removeDataSet);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSet);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataSet", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataSet(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSet * SOAP_FMAC4 soap_get_ns1__removeDataSet(struct soap *soap, ns1__removeDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataSet * SOAP_FMAC2 soap_instantiate_ns1__removeDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet);
+		if (size)
+			*size = sizeof(ns1__removeDataSet);
+		((ns1__removeDataSet*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataSet);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataSet*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSet %p -> %p\n", q, p));
+	*(ns1__removeDataSet*)p = *(ns1__removeDataSet*)q;
+}
+
+void ns1__modifyDataSetParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataSetParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataSetParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataSetParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataSetParameterResponse");
+}
+
+void *ns1__modifyDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataSetParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataSetParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSetParameterResponse, sizeof(ns1__modifyDataSetParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSetParameterResponse)
+			return (ns1__modifyDataSetParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSetParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSetParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataSetParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse);
+		if (size)
+			*size = sizeof(ns1__modifyDataSetParameterResponse);
+		((ns1__modifyDataSetParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataSetParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSetParameterResponse %p -> %p\n", q, p));
+	*(ns1__modifyDataSetParameterResponse*)p = *(ns1__modifyDataSetParameterResponse*)q;
+}
+
+void ns1__modifyDataSetParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyDataSetParameter::sessionId = NULL;
+	this->ns1__modifyDataSetParameter::dataSetParameter = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataSetParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataSetParameter::sessionId);
+	soap_serialize_PointerTons1__datasetParameter(soap, &this->ns1__modifyDataSetParameter::dataSetParameter);
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataSetParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__modifyDataSetParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataSetParameter), "ns1:modifyDataSetParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataSetParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datasetParameter(soap, "dataSetParameter", -1, &(a->ns1__modifyDataSetParameter::dataSetParameter), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataSetParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameter * SOAP_FMAC4 soap_in_ns1__modifyDataSetParameter(struct soap *soap, const char *tag, ns1__modifyDataSetParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSetParameter, sizeof(ns1__modifyDataSetParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSetParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyDataSetParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataSetParameter1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataSetParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataSetParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetParameter(soap, "dataSetParameter", &(a->ns1__modifyDataSetParameter::dataSetParameter), "ns1:datasetParameter"))
+				{	soap_flag_dataSetParameter1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataSetParameter, 0, sizeof(ns1__modifyDataSetParameter), 0, soap_copy_ns1__modifyDataSetParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSetParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSetParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataSetParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameter * SOAP_FMAC4 soap_get_ns1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter);
+		if (size)
+			*size = sizeof(ns1__modifyDataSetParameter);
+		((ns1__modifyDataSetParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataSetParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataSetParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSetParameter %p -> %p\n", q, p));
+	*(ns1__modifyDataSetParameter*)p = *(ns1__modifyDataSetParameter*)q;
+}
+
+void ns1__listInvestigationTypesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listInvestigationTypesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listInvestigationTypesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listInvestigationTypesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listInvestigationTypesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listInvestigationTypesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInvestigationTypesResponse(struct soap *soap, const char *tag, int id, const ns1__listInvestigationTypesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInvestigationTypesResponse), "ns1:listInvestigationTypesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listInvestigationTypesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listInvestigationTypesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listInvestigationTypesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypesResponse * SOAP_FMAC4 soap_in_ns1__listInvestigationTypesResponse(struct soap *soap, const char *tag, ns1__listInvestigationTypesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listInvestigationTypesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInvestigationTypesResponse, sizeof(ns1__listInvestigationTypesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listInvestigationTypesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listInvestigationTypesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listInvestigationTypesResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listInvestigationTypesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInvestigationTypesResponse, 0, sizeof(ns1__listInvestigationTypesResponse), 0, soap_copy_ns1__listInvestigationTypesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listInvestigationTypesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInvestigationTypesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listInvestigationTypesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listInvestigationTypesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listInvestigationTypesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypesResponse * SOAP_FMAC4 soap_get_ns1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listInvestigationTypesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listInvestigationTypesResponse * SOAP_FMAC2 soap_instantiate_ns1__listInvestigationTypesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInvestigationTypesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInvestigationTypesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse);
+		if (size)
+			*size = sizeof(ns1__listInvestigationTypesResponse);
+		((ns1__listInvestigationTypesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listInvestigationTypesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listInvestigationTypesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listInvestigationTypesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInvestigationTypesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInvestigationTypesResponse %p -> %p\n", q, p));
+	*(ns1__listInvestigationTypesResponse*)p = *(ns1__listInvestigationTypesResponse*)q;
+}
+
+void ns1__listInvestigationTypes::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listInvestigationTypes::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listInvestigationTypes::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listInvestigationTypes::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listInvestigationTypes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listInvestigationTypes(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInvestigationTypes(struct soap *soap, const char *tag, int id, const ns1__listInvestigationTypes *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInvestigationTypes), "ns1:listInvestigationTypes"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listInvestigationTypes::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listInvestigationTypes::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listInvestigationTypes(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypes * SOAP_FMAC4 soap_in_ns1__listInvestigationTypes(struct soap *soap, const char *tag, ns1__listInvestigationTypes *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listInvestigationTypes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInvestigationTypes, sizeof(ns1__listInvestigationTypes), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listInvestigationTypes)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listInvestigationTypes *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listInvestigationTypes::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listInvestigationTypes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInvestigationTypes, 0, sizeof(ns1__listInvestigationTypes), 0, soap_copy_ns1__listInvestigationTypes);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listInvestigationTypes::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInvestigationTypes);
+	if (this->soap_out(soap, tag?tag:"ns1:listInvestigationTypes", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listInvestigationTypes::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listInvestigationTypes(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypes * SOAP_FMAC4 soap_get_ns1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listInvestigationTypes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listInvestigationTypes * SOAP_FMAC2 soap_instantiate_ns1__listInvestigationTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInvestigationTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInvestigationTypes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes);
+		if (size)
+			*size = sizeof(ns1__listInvestigationTypes);
+		((ns1__listInvestigationTypes*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listInvestigationTypes);
+		for (int i = 0; i < n; i++)
+			((ns1__listInvestigationTypes*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listInvestigationTypes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInvestigationTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInvestigationTypes %p -> %p\n", q, p));
+	*(ns1__listInvestigationTypes*)p = *(ns1__listInvestigationTypes*)q;
+}
+
+void ns1__getKeywordsForUserTypeResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserTypeResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserTypeResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserTypeResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserTypeResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserTypeResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserTypeResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse), "ns1:getKeywordsForUserTypeResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserTypeResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserTypeResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserTypeResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserTypeResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserTypeResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, sizeof(ns1__getKeywordsForUserTypeResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserTypeResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserTypeResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserTypeResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserTypeResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, 0, sizeof(ns1__getKeywordsForUserTypeResponse), 0, soap_copy_ns1__getKeywordsForUserTypeResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserTypeResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserTypeResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserTypeResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserTypeResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserTypeResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserTypeResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserTypeResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserTypeResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserTypeResponse);
+		((ns1__getKeywordsForUserTypeResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserTypeResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserTypeResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserTypeResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserTypeResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserTypeResponse %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserTypeResponse*)p = *(ns1__getKeywordsForUserTypeResponse*)q;
+}
+
+void ns1__getKeywordsForUserType::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getKeywordsForUserType::sessionId = NULL;
+	this->ns1__getKeywordsForUserType::keywordType = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserType::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserType::sessionId);
+	soap_serialize_PointerTons1__keywordType(soap, &this->ns1__getKeywordsForUserType::keywordType);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserType::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserType(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserType(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserType *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserType), "ns1:getKeywordsForUserType"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUserType::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keywordType(soap, "keywordType", -1, &(a->ns1__getKeywordsForUserType::keywordType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserType::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserType(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserType * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserType(struct soap *soap, const char *tag, ns1__getKeywordsForUserType *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserType *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserType, sizeof(ns1__getKeywordsForUserType), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserType)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserType *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_keywordType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUserType::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_keywordType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keywordType(soap, "keywordType", &(a->ns1__getKeywordsForUserType::keywordType), "ns1:keywordType"))
+				{	soap_flag_keywordType1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserType *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserType, 0, sizeof(ns1__getKeywordsForUserType), 0, soap_copy_ns1__getKeywordsForUserType);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserType::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserType);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserType", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserType::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserType(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserType * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserType * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserType, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserType);
+		((ns1__getKeywordsForUserType*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserType);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserType*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserType*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserType %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserType*)p = *(ns1__getKeywordsForUserType*)q;
+}
+
+void ns1__getKeywordsForUserMaxResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserMaxResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserMaxResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserMaxResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserMaxResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserMaxResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserMaxResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse), "ns1:getKeywordsForUserMaxResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserMaxResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserMaxResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserMaxResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserMaxResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserMaxResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, sizeof(ns1__getKeywordsForUserMaxResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserMaxResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserMaxResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserMaxResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserMaxResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, 0, sizeof(ns1__getKeywordsForUserMaxResponse), 0, soap_copy_ns1__getKeywordsForUserMaxResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserMaxResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserMaxResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserMaxResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserMaxResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserMaxResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserMaxResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserMaxResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserMaxResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserMaxResponse);
+		((ns1__getKeywordsForUserMaxResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserMaxResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserMaxResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserMaxResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserMaxResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserMaxResponse %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserMaxResponse*)p = *(ns1__getKeywordsForUserMaxResponse*)q;
+}
+
+void ns1__getKeywordsForUserMax::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getKeywordsForUserMax::sessionId = NULL;
+	soap_default_int(soap, &this->ns1__getKeywordsForUserMax::numberReturned);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserMax::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserMax::sessionId);
+	soap_embedded(soap, &this->ns1__getKeywordsForUserMax::numberReturned, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserMax::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserMax(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserMax *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserMax), "ns1:getKeywordsForUserMax"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUserMax::sessionId), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberReturned", -1, &(a->ns1__getKeywordsForUserMax::numberReturned), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserMax::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserMax(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserMax *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserMax *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserMax, sizeof(ns1__getKeywordsForUserMax), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserMax)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserMax *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_numberReturned1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUserMax::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_numberReturned1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberReturned", &(a->ns1__getKeywordsForUserMax::numberReturned), "xsd:int"))
+				{	soap_flag_numberReturned1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserMax *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserMax, 0, sizeof(ns1__getKeywordsForUserMax), 0, soap_copy_ns1__getKeywordsForUserMax);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numberReturned1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserMax::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserMax);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserMax", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserMax::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserMax(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserMax(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserMax * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserMax, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserMax);
+		((ns1__getKeywordsForUserMax*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserMax);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserMax*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserMax*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserMax %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserMax*)p = *(ns1__getKeywordsForUserMax*)q;
+}
+
+void ns1__getKeywordsForUserStartWithMaxResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserStartWithMaxResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserStartWithMaxResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserStartWithMaxResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserStartWithMaxResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserStartWithMaxResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserStartWithMaxResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse), "ns1:getKeywordsForUserStartWithMaxResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserStartWithMaxResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserStartWithMaxResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMaxResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserStartWithMaxResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserStartWithMaxResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserStartWithMaxResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserStartWithMaxResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, 0, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), 0, soap_copy_ns1__getKeywordsForUserStartWithMaxResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserStartWithMaxResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserStartWithMaxResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserStartWithMaxResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserStartWithMaxResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserStartWithMaxResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserStartWithMaxResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
+		((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserStartWithMaxResponse %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserStartWithMaxResponse*)p = *(ns1__getKeywordsForUserStartWithMaxResponse*)q;
+}
+
+void ns1__getKeywordsForUserStartWithMax::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getKeywordsForUserStartWithMax::sessionId = NULL;
+	this->ns1__getKeywordsForUserStartWithMax::startKeyword = NULL;
+	soap_default_int(soap, &this->ns1__getKeywordsForUserStartWithMax::numberReturned);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserStartWithMax::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserStartWithMax::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUserStartWithMax::startKeyword);
+	soap_embedded(soap, &this->ns1__getKeywordsForUserStartWithMax::numberReturned, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserStartWithMax::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserStartWithMax(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserStartWithMax *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax), "ns1:getKeywordsForUserStartWithMax"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUserStartWithMax::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "startKeyword", -1, &(a->ns1__getKeywordsForUserStartWithMax::startKeyword), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberReturned", -1, &(a->ns1__getKeywordsForUserStartWithMax::numberReturned), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserStartWithMax::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserStartWithMax(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMax *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserStartWithMax *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, sizeof(ns1__getKeywordsForUserStartWithMax), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserStartWithMax)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserStartWithMax *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_startKeyword1 = 1;
+	size_t soap_flag_numberReturned1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUserStartWithMax::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_startKeyword1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "startKeyword", &(a->ns1__getKeywordsForUserStartWithMax::startKeyword), "xsd:string"))
+				{	soap_flag_startKeyword1--;
+					continue;
+				}
+			if (soap_flag_numberReturned1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberReturned", &(a->ns1__getKeywordsForUserStartWithMax::numberReturned), "xsd:int"))
+				{	soap_flag_numberReturned1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserStartWithMax *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, 0, sizeof(ns1__getKeywordsForUserStartWithMax), 0, soap_copy_ns1__getKeywordsForUserStartWithMax);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_numberReturned1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserStartWithMax::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserStartWithMax", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserStartWithMax::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserStartWithMax(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserStartWithMax(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserStartWithMax * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserStartWithMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserStartWithMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserStartWithMax);
+		((ns1__getKeywordsForUserStartWithMax*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserStartWithMax);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserStartWithMax*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserStartWithMax*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserStartWithMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserStartWithMax %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserStartWithMax*)p = *(ns1__getKeywordsForUserStartWithMax*)q;
+}
+
+void ns1__getKeywordsForUserResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUserResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getKeywordsForUserResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUserResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUserResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUserResponse(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUserResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUserResponse), "ns1:getKeywordsForUserResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getKeywordsForUserResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUserResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUserResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserResponse * SOAP_FMAC4 soap_in_ns1__getKeywordsForUserResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUserResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUserResponse, sizeof(ns1__getKeywordsForUserResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUserResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUserResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getKeywordsForUserResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUserResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUserResponse, 0, sizeof(ns1__getKeywordsForUserResponse), 0, soap_copy_ns1__getKeywordsForUserResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUserResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUserResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUserResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUserResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUserResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserResponse * SOAP_FMAC4 soap_get_ns1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUserResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUserResponse * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUserResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUserResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUserResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUserResponse);
+		((ns1__getKeywordsForUserResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUserResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUserResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUserResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUserResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUserResponse %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUserResponse*)p = *(ns1__getKeywordsForUserResponse*)q;
+}
+
+void ns1__getKeywordsForUser::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getKeywordsForUser::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getKeywordsForUser::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getKeywordsForUser::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__getKeywordsForUser::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getKeywordsForUser(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getKeywordsForUser(struct soap *soap, const char *tag, int id, const ns1__getKeywordsForUser *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getKeywordsForUser), "ns1:getKeywordsForUser"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getKeywordsForUser::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getKeywordsForUser::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getKeywordsForUser(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUser * SOAP_FMAC4 soap_in_ns1__getKeywordsForUser(struct soap *soap, const char *tag, ns1__getKeywordsForUser *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getKeywordsForUser *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getKeywordsForUser, sizeof(ns1__getKeywordsForUser), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getKeywordsForUser)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getKeywordsForUser *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getKeywordsForUser::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getKeywordsForUser *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getKeywordsForUser, 0, sizeof(ns1__getKeywordsForUser), 0, soap_copy_ns1__getKeywordsForUser);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getKeywordsForUser::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getKeywordsForUser);
+	if (this->soap_out(soap, tag?tag:"ns1:getKeywordsForUser", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getKeywordsForUser::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getKeywordsForUser(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUser * SOAP_FMAC4 soap_get_ns1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getKeywordsForUser(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getKeywordsForUser * SOAP_FMAC2 soap_instantiate_ns1__getKeywordsForUser(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getKeywordsForUser(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getKeywordsForUser, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser);
+		if (size)
+			*size = sizeof(ns1__getKeywordsForUser);
+		((ns1__getKeywordsForUser*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getKeywordsForUser);
+		for (int i = 0; i < n; i++)
+			((ns1__getKeywordsForUser*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getKeywordsForUser*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getKeywordsForUser(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getKeywordsForUser %p -> %p\n", q, p));
+	*(ns1__getKeywordsForUser*)p = *(ns1__getKeywordsForUser*)q;
+}
+
+void ns1__downloadDatafileResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadDatafileResponse::URL = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadDatafileResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafileResponse::URL);
+	/* transient soap skipped */
+}
+
+int ns1__downloadDatafileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadDatafileResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafileResponse(struct soap *soap, const char *tag, int id, const ns1__downloadDatafileResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafileResponse), "ns1:downloadDatafileResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "URL", -1, &(a->ns1__downloadDatafileResponse::URL), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadDatafileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadDatafileResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafileResponse * SOAP_FMAC4 soap_in_ns1__downloadDatafileResponse(struct soap *soap, const char *tag, ns1__downloadDatafileResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadDatafileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafileResponse, sizeof(ns1__downloadDatafileResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafileResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadDatafileResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_URL1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "URL", &(a->ns1__downloadDatafileResponse::URL), "xsd:string"))
+				{	soap_flag_URL1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadDatafileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafileResponse, 0, sizeof(ns1__downloadDatafileResponse), 0, soap_copy_ns1__downloadDatafileResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadDatafileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafileResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafileResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadDatafileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadDatafileResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafileResponse * SOAP_FMAC4 soap_get_ns1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadDatafileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadDatafileResponse * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse);
+		if (size)
+			*size = sizeof(ns1__downloadDatafileResponse);
+		((ns1__downloadDatafileResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadDatafileResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadDatafileResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadDatafileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafileResponse %p -> %p\n", q, p));
+	*(ns1__downloadDatafileResponse*)p = *(ns1__downloadDatafileResponse*)q;
+}
+
+void ns1__downloadDatafile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadDatafile::sessionId = NULL;
+	this->ns1__downloadDatafile::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadDatafile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafile::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__downloadDatafile::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__downloadDatafile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadDatafile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafile(struct soap *soap, const char *tag, int id, const ns1__downloadDatafile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafile), "ns1:downloadDatafile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__downloadDatafile::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__downloadDatafile::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadDatafile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadDatafile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafile * SOAP_FMAC4 soap_in_ns1__downloadDatafile(struct soap *soap, const char *tag, ns1__downloadDatafile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadDatafile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafile, sizeof(ns1__downloadDatafile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadDatafile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__downloadDatafile::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__downloadDatafile::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadDatafile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafile, 0, sizeof(ns1__downloadDatafile), 0, soap_copy_ns1__downloadDatafile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadDatafile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafile);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadDatafile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadDatafile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafile * SOAP_FMAC4 soap_get_ns1__downloadDatafile(struct soap *soap, ns1__downloadDatafile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadDatafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadDatafile * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile);
+		if (size)
+			*size = sizeof(ns1__downloadDatafile);
+		((ns1__downloadDatafile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadDatafile);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadDatafile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadDatafile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafile %p -> %p\n", q, p));
+	*(ns1__downloadDatafile*)p = *(ns1__downloadDatafile*)q;
+}
+
+void ns1__searchDatasetsByParameterComparatorsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatasetsByParameterComparatorsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatasetsByParameterComparatorsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatasetsByParameterComparatorsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparatorsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse), "ns1:searchDatasetsByParameterComparatorsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__searchDatasetsByParameterComparatorsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatasetsByParameterComparatorsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatasetsByParameterComparatorsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatasetsByParameterComparatorsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__searchDatasetsByParameterComparatorsResponse::return_), "ns1:dataset"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatasetsByParameterComparatorsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, 0, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), 0, soap_copy_ns1__searchDatasetsByParameterComparatorsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatasetsByParameterComparatorsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatasetsByParameterComparatorsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatasetsByParameterComparatorsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatasetsByParameterComparatorsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatasetsByParameterComparatorsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse);
+		if (size)
+			*size = sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
+		((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparatorsResponse %p -> %p\n", q, p));
+	*(ns1__searchDatasetsByParameterComparatorsResponse*)p = *(ns1__searchDatasetsByParameterComparatorsResponse*)q;
+}
+
+void ns1__searchDatasetsByParameterComparators::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchDatasetsByParameterComparators::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatasetsByParameterComparators::comparators);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatasetsByParameterComparators::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatasetsByParameterComparators::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatasetsByParameterComparators::comparators);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatasetsByParameterComparators::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatasetsByParameterComparators(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparators *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators), "ns1:searchDatasetsByParameterComparators"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatasetsByParameterComparators::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", -1, &(a->ns1__searchDatasetsByParameterComparators::comparators), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatasetsByParameterComparators::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatasetsByParameterComparators(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparators *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatasetsByParameterComparators *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, sizeof(ns1__searchDatasetsByParameterComparators), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparators)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatasetsByParameterComparators *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatasetsByParameterComparators::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", &(a->ns1__searchDatasetsByParameterComparators::comparators), "ns1:parameterComparisonCondition"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatasetsByParameterComparators *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, 0, sizeof(ns1__searchDatasetsByParameterComparators), 0, soap_copy_ns1__searchDatasetsByParameterComparators);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatasetsByParameterComparators::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparators);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparators", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatasetsByParameterComparators::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatasetsByParameterComparators(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatasetsByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatasetsByParameterComparators * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators);
+		if (size)
+			*size = sizeof(ns1__searchDatasetsByParameterComparators);
+		((ns1__searchDatasetsByParameterComparators*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatasetsByParameterComparators);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatasetsByParameterComparators*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatasetsByParameterComparators*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparators %p -> %p\n", q, p));
+	*(ns1__searchDatasetsByParameterComparators*)p = *(ns1__searchDatasetsByParameterComparators*)q;
+}
+
+void ns1__setDataSetSampleResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__setDataSetSampleResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__setDataSetSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__setDataSetSampleResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, int id, const ns1__setDataSetSampleResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:setDataSetSampleResponse");
+}
+
+void *ns1__setDataSetSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__setDataSetSampleResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_in_ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, ns1__setDataSetSampleResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__setDataSetSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__setDataSetSampleResponse, sizeof(ns1__setDataSetSampleResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__setDataSetSampleResponse)
+			return (ns1__setDataSetSampleResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__setDataSetSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__setDataSetSampleResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:setDataSetSampleResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__setDataSetSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__setDataSetSampleResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_get_ns1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__setDataSetSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__setDataSetSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__setDataSetSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__setDataSetSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__setDataSetSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse);
+		if (size)
+			*size = sizeof(ns1__setDataSetSampleResponse);
+		((ns1__setDataSetSampleResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__setDataSetSampleResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__setDataSetSampleResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__setDataSetSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__setDataSetSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__setDataSetSampleResponse %p -> %p\n", q, p));
+	*(ns1__setDataSetSampleResponse*)p = *(ns1__setDataSetSampleResponse*)q;
+}
+
+void ns1__setDataSetSample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__setDataSetSample::sessionId = NULL;
+	this->ns1__setDataSetSample::sampleId = NULL;
+	this->ns1__setDataSetSample::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__setDataSetSample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__setDataSetSample::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__setDataSetSample::sampleId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__setDataSetSample::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__setDataSetSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__setDataSetSample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__setDataSetSample(struct soap *soap, const char *tag, int id, const ns1__setDataSetSample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__setDataSetSample), "ns1:setDataSetSample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__setDataSetSample::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__setDataSetSample::sampleId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__setDataSetSample::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__setDataSetSample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__setDataSetSample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__setDataSetSample * SOAP_FMAC4 soap_in_ns1__setDataSetSample(struct soap *soap, const char *tag, ns1__setDataSetSample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__setDataSetSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__setDataSetSample, sizeof(ns1__setDataSetSample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__setDataSetSample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__setDataSetSample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleId1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__setDataSetSample::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__setDataSetSample::sampleId), "xsd:long"))
+				{	soap_flag_sampleId1--;
+					continue;
+				}
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__setDataSetSample::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__setDataSetSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__setDataSetSample, 0, sizeof(ns1__setDataSetSample), 0, soap_copy_ns1__setDataSetSample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__setDataSetSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__setDataSetSample);
+	if (this->soap_out(soap, tag?tag:"ns1:setDataSetSample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__setDataSetSample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__setDataSetSample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__setDataSetSample * SOAP_FMAC4 soap_get_ns1__setDataSetSample(struct soap *soap, ns1__setDataSetSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__setDataSetSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__setDataSetSample * SOAP_FMAC2 soap_instantiate_ns1__setDataSetSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__setDataSetSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__setDataSetSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample);
+		if (size)
+			*size = sizeof(ns1__setDataSetSample);
+		((ns1__setDataSetSample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__setDataSetSample);
+		for (int i = 0; i < n; i++)
+			((ns1__setDataSetSample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__setDataSetSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__setDataSetSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__setDataSetSample %p -> %p\n", q, p));
+	*(ns1__setDataSetSample*)p = *(ns1__setDataSetSample*)q;
+}
+
+void ns1__deleteDataSetParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataSetParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataSetParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataSetParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataSetParameterResponse");
+}
+
+void *ns1__deleteDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataSetParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataSetParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSetParameterResponse, sizeof(ns1__deleteDataSetParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSetParameterResponse)
+			return (ns1__deleteDataSetParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSetParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSetParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataSetParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse);
+		if (size)
+			*size = sizeof(ns1__deleteDataSetParameterResponse);
+		((ns1__deleteDataSetParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataSetParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSetParameterResponse %p -> %p\n", q, p));
+	*(ns1__deleteDataSetParameterResponse*)p = *(ns1__deleteDataSetParameterResponse*)q;
+}
+
+void ns1__deleteDataSetParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteDataSetParameter::sessionId = NULL;
+	this->ns1__deleteDataSetParameter::datasetParameterPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataSetParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataSetParameter::sessionId);
+	soap_serialize_PointerTons1__datasetParameterPK(soap, &this->ns1__deleteDataSetParameter::datasetParameterPK);
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataSetParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__deleteDataSetParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataSetParameter), "ns1:deleteDataSetParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataSetParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", -1, &(a->ns1__deleteDataSetParameter::datasetParameterPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataSetParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameter * SOAP_FMAC4 soap_in_ns1__deleteDataSetParameter(struct soap *soap, const char *tag, ns1__deleteDataSetParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSetParameter, sizeof(ns1__deleteDataSetParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSetParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteDataSetParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetParameterPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataSetParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datasetParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", &(a->ns1__deleteDataSetParameter::datasetParameterPK), "ns1:datasetParameterPK"))
+				{	soap_flag_datasetParameterPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataSetParameter, 0, sizeof(ns1__deleteDataSetParameter), 0, soap_copy_ns1__deleteDataSetParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSetParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSetParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataSetParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameter * SOAP_FMAC4 soap_get_ns1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter);
+		if (size)
+			*size = sizeof(ns1__deleteDataSetParameter);
+		((ns1__deleteDataSetParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataSetParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataSetParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSetParameter %p -> %p\n", q, p));
+	*(ns1__deleteDataSetParameter*)p = *(ns1__deleteDataSetParameter*)q;
+}
+
+void ns1__removeSampleParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeSampleParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeSampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeSampleParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__removeSampleParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeSampleParameterResponse");
+}
+
+void *ns1__removeSampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeSampleParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_in_ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, ns1__removeSampleParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeSampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSampleParameterResponse, sizeof(ns1__removeSampleParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeSampleParameterResponse)
+			return (ns1__removeSampleParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeSampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSampleParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeSampleParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeSampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeSampleParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_get_ns1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeSampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__removeSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse);
+		if (size)
+			*size = sizeof(ns1__removeSampleParameterResponse);
+		((ns1__removeSampleParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeSampleParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeSampleParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeSampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSampleParameterResponse %p -> %p\n", q, p));
+	*(ns1__removeSampleParameterResponse*)p = *(ns1__removeSampleParameterResponse*)q;
+}
+
+void ns1__removeSampleParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeSampleParameter::sessionId = NULL;
+	this->ns1__removeSampleParameter::sampleParameterPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeSampleParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeSampleParameter::sessionId);
+	soap_serialize_PointerTons1__sampleParameterPK(soap, &this->ns1__removeSampleParameter::sampleParameterPK);
+	/* transient soap skipped */
+}
+
+int ns1__removeSampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeSampleParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSampleParameter(struct soap *soap, const char *tag, int id, const ns1__removeSampleParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeSampleParameter), "ns1:removeSampleParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeSampleParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", -1, &(a->ns1__removeSampleParameter::sampleParameterPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeSampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeSampleParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameter * SOAP_FMAC4 soap_in_ns1__removeSampleParameter(struct soap *soap, const char *tag, ns1__removeSampleParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeSampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSampleParameter, sizeof(ns1__removeSampleParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeSampleParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeSampleParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleParameterPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeSampleParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", &(a->ns1__removeSampleParameter::sampleParameterPK), "ns1:sampleParameterPK"))
+				{	soap_flag_sampleParameterPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeSampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeSampleParameter, 0, sizeof(ns1__removeSampleParameter), 0, soap_copy_ns1__removeSampleParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeSampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSampleParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:removeSampleParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeSampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeSampleParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameter * SOAP_FMAC4 soap_get_ns1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeSampleParameter * SOAP_FMAC2 soap_instantiate_ns1__removeSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter);
+		if (size)
+			*size = sizeof(ns1__removeSampleParameter);
+		((ns1__removeSampleParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeSampleParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__removeSampleParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeSampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSampleParameter %p -> %p\n", q, p));
+	*(ns1__removeSampleParameter*)p = *(ns1__removeSampleParameter*)q;
+}
+
+void ns1__searchDatasetsByParameterComparatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatasetsByParameterComparatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__searchDatasetsByParameterComparatorResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatasetsByParameterComparatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatasetsByParameterComparatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparatorResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse), "ns1:searchDatasetsByParameterComparatorResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__searchDatasetsByParameterComparatorResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatasetsByParameterComparatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatasetsByParameterComparatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, sizeof(ns1__searchDatasetsByParameterComparatorResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatasetsByParameterComparatorResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__searchDatasetsByParameterComparatorResponse::return_), "ns1:dataset"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatasetsByParameterComparatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, 0, sizeof(ns1__searchDatasetsByParameterComparatorResponse), 0, soap_copy_ns1__searchDatasetsByParameterComparatorResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatasetsByParameterComparatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatasetsByParameterComparatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatasetsByParameterComparatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatasetsByParameterComparatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatasetsByParameterComparatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse);
+		if (size)
+			*size = sizeof(ns1__searchDatasetsByParameterComparatorResponse);
+		((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatasetsByParameterComparatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparatorResponse %p -> %p\n", q, p));
+	*(ns1__searchDatasetsByParameterComparatorResponse*)p = *(ns1__searchDatasetsByParameterComparatorResponse*)q;
+}
+
+void ns1__searchDatasetsByParameterComparator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchDatasetsByParameterComparator::sessionId = NULL;
+	this->ns1__searchDatasetsByParameterComparator::comparator = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatasetsByParameterComparator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatasetsByParameterComparator::sessionId);
+	soap_serialize_PointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatasetsByParameterComparator::comparator);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatasetsByParameterComparator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatasetsByParameterComparator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, int id, const ns1__searchDatasetsByParameterComparator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator), "ns1:searchDatasetsByParameterComparator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatasetsByParameterComparator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterComparisonCondition(soap, "comparator", -1, &(a->ns1__searchDatasetsByParameterComparator::comparator), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatasetsByParameterComparator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatasetsByParameterComparator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_in_ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatasetsByParameterComparator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, sizeof(ns1__searchDatasetsByParameterComparator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatasetsByParameterComparator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatasetsByParameterComparator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_comparator1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatasetsByParameterComparator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterComparisonCondition(soap, "comparator", &(a->ns1__searchDatasetsByParameterComparator::comparator), "ns1:parameterComparisonCondition"))
+				{	soap_flag_comparator1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatasetsByParameterComparator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, 0, sizeof(ns1__searchDatasetsByParameterComparator), 0, soap_copy_ns1__searchDatasetsByParameterComparator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatasetsByParameterComparator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatasetsByParameterComparator);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatasetsByParameterComparator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatasetsByParameterComparator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatasetsByParameterComparator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_get_ns1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatasetsByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatasetsByParameterComparator * SOAP_FMAC2 soap_instantiate_ns1__searchDatasetsByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatasetsByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator);
+		if (size)
+			*size = sizeof(ns1__searchDatasetsByParameterComparator);
+		((ns1__searchDatasetsByParameterComparator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatasetsByParameterComparator);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatasetsByParameterComparator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatasetsByParameterComparator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatasetsByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatasetsByParameterComparator %p -> %p\n", q, p));
+	*(ns1__searchDatasetsByParameterComparator*)p = *(ns1__searchDatasetsByParameterComparator*)q;
+}
+
+void ns1__createDataSetResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createDataSetResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataSetResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__dataset(soap, &this->ns1__createDataSetResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__createDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataSetResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__createDataSetResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSetResponse), "ns1:createDataSetResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__dataset(soap, "return", -1, &(a->ns1__createDataSetResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataSetResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataSetResponse * SOAP_FMAC4 soap_in_ns1__createDataSetResponse(struct soap *soap, const char *tag, ns1__createDataSetResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSetResponse, sizeof(ns1__createDataSetResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataSetResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataSetResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__dataset(soap, "return", &(a->ns1__createDataSetResponse::return_), "ns1:dataset"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataSetResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSetResponse, 0, sizeof(ns1__createDataSetResponse), 0, soap_copy_ns1__createDataSetResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSetResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataSetResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataSetResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataSetResponse * SOAP_FMAC4 soap_get_ns1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse);
+		if (size)
+			*size = sizeof(ns1__createDataSetResponse);
+		((ns1__createDataSetResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataSetResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataSetResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSetResponse %p -> %p\n", q, p));
+	*(ns1__createDataSetResponse*)p = *(ns1__createDataSetResponse*)q;
+}
+
+void ns1__createDataSet::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createDataSet::sessionId = NULL;
+	this->ns1__createDataSet::dataSet = NULL;
+	this->ns1__createDataSet::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataSet::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataSet::sessionId);
+	soap_serialize_PointerTons1__dataset(soap, &this->ns1__createDataSet::dataSet);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataSet::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__createDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataSet(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSet(struct soap *soap, const char *tag, int id, const ns1__createDataSet *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSet), "ns1:createDataSet"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataSet::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__dataset(soap, "dataSet", -1, &(a->ns1__createDataSet::dataSet), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__createDataSet::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataSet(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataSet * SOAP_FMAC4 soap_in_ns1__createDataSet(struct soap *soap, const char *tag, ns1__createDataSet *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSet, sizeof(ns1__createDataSet), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataSet)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataSet *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataSet1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataSet::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataSet1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__dataset(soap, "dataSet", &(a->ns1__createDataSet::dataSet), "ns1:dataset"))
+				{	soap_flag_dataSet1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__createDataSet::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSet, 0, sizeof(ns1__createDataSet), 0, soap_copy_ns1__createDataSet);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSet);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataSet", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataSet(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataSet * SOAP_FMAC4 soap_get_ns1__createDataSet(struct soap *soap, ns1__createDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataSet * SOAP_FMAC2 soap_instantiate_ns1__createDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet);
+		if (size)
+			*size = sizeof(ns1__createDataSet);
+		((ns1__createDataSet*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataSet);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataSet*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSet %p -> %p\n", q, p));
+	*(ns1__createDataSet*)p = *(ns1__createDataSet*)q;
+}
+
+void ns1__addInvestigatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addInvestigatorResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addInvestigatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__investigator(soap, &this->ns1__addInvestigatorResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addInvestigatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__addInvestigatorResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addInvestigatorResponse), "ns1:addInvestigatorResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__investigator(soap, "return", -1, &(a->ns1__addInvestigatorResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addInvestigatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__addInvestigatorResponse(struct soap *soap, const char *tag, ns1__addInvestigatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addInvestigatorResponse, sizeof(ns1__addInvestigatorResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addInvestigatorResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addInvestigatorResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigator(soap, "return", &(a->ns1__addInvestigatorResponse::return_), "ns1:investigator"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addInvestigatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addInvestigatorResponse, 0, sizeof(ns1__addInvestigatorResponse), 0, soap_copy_ns1__addInvestigatorResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addInvestigatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addInvestigatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addInvestigatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__addInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse);
+		if (size)
+			*size = sizeof(ns1__addInvestigatorResponse);
+		((ns1__addInvestigatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addInvestigatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addInvestigatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addInvestigatorResponse %p -> %p\n", q, p));
+	*(ns1__addInvestigatorResponse*)p = *(ns1__addInvestigatorResponse*)q;
+}
+
+void ns1__addInvestigator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addInvestigator::sessionId = NULL;
+	this->ns1__addInvestigator::investigator = NULL;
+	this->ns1__addInvestigator::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addInvestigator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addInvestigator::sessionId);
+	soap_serialize_PointerTons1__investigator(soap, &this->ns1__addInvestigator::investigator);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addInvestigator::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__addInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addInvestigator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addInvestigator(struct soap *soap, const char *tag, int id, const ns1__addInvestigator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addInvestigator), "ns1:addInvestigator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addInvestigator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigator(soap, "investigator", -1, &(a->ns1__addInvestigator::investigator), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addInvestigator::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addInvestigator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addInvestigator * SOAP_FMAC4 soap_in_ns1__addInvestigator(struct soap *soap, const char *tag, ns1__addInvestigator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addInvestigator, sizeof(ns1__addInvestigator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addInvestigator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addInvestigator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigator1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addInvestigator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigator1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigator(soap, "investigator", &(a->ns1__addInvestigator::investigator), "ns1:investigator"))
+				{	soap_flag_investigator1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addInvestigator::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addInvestigator, 0, sizeof(ns1__addInvestigator), 0, soap_copy_ns1__addInvestigator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addInvestigator);
+	if (this->soap_out(soap, tag?tag:"ns1:addInvestigator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addInvestigator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addInvestigator * SOAP_FMAC4 soap_get_ns1__addInvestigator(struct soap *soap, ns1__addInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addInvestigator * SOAP_FMAC2 soap_instantiate_ns1__addInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator);
+		if (size)
+			*size = sizeof(ns1__addInvestigator);
+		((ns1__addInvestigator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addInvestigator);
+		for (int i = 0; i < n; i++)
+			((ns1__addInvestigator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addInvestigator %p -> %p\n", q, p));
+	*(ns1__addInvestigator*)p = *(ns1__addInvestigator*)q;
+}
+
+void ns1__deleteInvestigatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteInvestigatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteInvestigatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigatorResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteInvestigatorResponse");
+}
+
+void *ns1__deleteInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteInvestigatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, ns1__deleteInvestigatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigatorResponse, sizeof(ns1__deleteInvestigatorResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigatorResponse)
+			return (ns1__deleteInvestigatorResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteInvestigatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse);
+		if (size)
+			*size = sizeof(ns1__deleteInvestigatorResponse);
+		((ns1__deleteInvestigatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteInvestigatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteInvestigatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigatorResponse %p -> %p\n", q, p));
+	*(ns1__deleteInvestigatorResponse*)p = *(ns1__deleteInvestigatorResponse*)q;
+}
+
+void ns1__deleteInvestigator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteInvestigator::sessionId = NULL;
+	this->ns1__deleteInvestigator::investigatorPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteInvestigator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteInvestigator::sessionId);
+	soap_serialize_PointerTons1__investigatorPK(soap, &this->ns1__deleteInvestigator::investigatorPK);
+	/* transient soap skipped */
+}
+
+int ns1__deleteInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteInvestigator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigator(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteInvestigator), "ns1:deleteInvestigator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteInvestigator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigatorPK(soap, "investigatorPK", -1, &(a->ns1__deleteInvestigator::investigatorPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteInvestigator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigator * SOAP_FMAC4 soap_in_ns1__deleteInvestigator(struct soap *soap, const char *tag, ns1__deleteInvestigator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigator, sizeof(ns1__deleteInvestigator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteInvestigator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigatorPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteInvestigator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigatorPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigatorPK(soap, "investigatorPK", &(a->ns1__deleteInvestigator::investigatorPK), "ns1:investigatorPK"))
+				{	soap_flag_investigatorPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteInvestigator, 0, sizeof(ns1__deleteInvestigator), 0, soap_copy_ns1__deleteInvestigator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigator);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteInvestigator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigator * SOAP_FMAC4 soap_get_ns1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteInvestigator * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator);
+		if (size)
+			*size = sizeof(ns1__deleteInvestigator);
+		((ns1__deleteInvestigator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteInvestigator);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteInvestigator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigator %p -> %p\n", q, p));
+	*(ns1__deleteInvestigator*)p = *(ns1__deleteInvestigator*)q;
+}
+
+void ns1__getICATAPIVersionResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getICATAPIVersionResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getICATAPIVersionResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getICATAPIVersionResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getICATAPIVersionResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getICATAPIVersionResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getICATAPIVersionResponse(struct soap *soap, const char *tag, int id, const ns1__getICATAPIVersionResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getICATAPIVersionResponse), "ns1:getICATAPIVersionResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "return", -1, &(a->ns1__getICATAPIVersionResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getICATAPIVersionResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getICATAPIVersionResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersionResponse * SOAP_FMAC4 soap_in_ns1__getICATAPIVersionResponse(struct soap *soap, const char *tag, ns1__getICATAPIVersionResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getICATAPIVersionResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getICATAPIVersionResponse, sizeof(ns1__getICATAPIVersionResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getICATAPIVersionResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getICATAPIVersionResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "return", &(a->ns1__getICATAPIVersionResponse::return_), "xsd:string"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getICATAPIVersionResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getICATAPIVersionResponse, 0, sizeof(ns1__getICATAPIVersionResponse), 0, soap_copy_ns1__getICATAPIVersionResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getICATAPIVersionResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getICATAPIVersionResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getICATAPIVersionResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getICATAPIVersionResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getICATAPIVersionResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersionResponse * SOAP_FMAC4 soap_get_ns1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getICATAPIVersionResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getICATAPIVersionResponse * SOAP_FMAC2 soap_instantiate_ns1__getICATAPIVersionResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getICATAPIVersionResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getICATAPIVersionResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse);
+		if (size)
+			*size = sizeof(ns1__getICATAPIVersionResponse);
+		((ns1__getICATAPIVersionResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getICATAPIVersionResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getICATAPIVersionResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getICATAPIVersionResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getICATAPIVersionResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getICATAPIVersionResponse %p -> %p\n", q, p));
+	*(ns1__getICATAPIVersionResponse*)p = *(ns1__getICATAPIVersionResponse*)q;
+}
+
+void ns1__getICATAPIVersion::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getICATAPIVersion::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getICATAPIVersion::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getICATAPIVersion::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__getICATAPIVersion::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getICATAPIVersion(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getICATAPIVersion(struct soap *soap, const char *tag, int id, const ns1__getICATAPIVersion *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getICATAPIVersion), "ns1:getICATAPIVersion"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getICATAPIVersion::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getICATAPIVersion::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getICATAPIVersion(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersion * SOAP_FMAC4 soap_in_ns1__getICATAPIVersion(struct soap *soap, const char *tag, ns1__getICATAPIVersion *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getICATAPIVersion *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getICATAPIVersion, sizeof(ns1__getICATAPIVersion), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getICATAPIVersion)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getICATAPIVersion *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getICATAPIVersion::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getICATAPIVersion *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getICATAPIVersion, 0, sizeof(ns1__getICATAPIVersion), 0, soap_copy_ns1__getICATAPIVersion);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getICATAPIVersion::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getICATAPIVersion);
+	if (this->soap_out(soap, tag?tag:"ns1:getICATAPIVersion", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getICATAPIVersion::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getICATAPIVersion(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersion * SOAP_FMAC4 soap_get_ns1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getICATAPIVersion(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getICATAPIVersion * SOAP_FMAC2 soap_instantiate_ns1__getICATAPIVersion(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getICATAPIVersion(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getICATAPIVersion, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion);
+		if (size)
+			*size = sizeof(ns1__getICATAPIVersion);
+		((ns1__getICATAPIVersion*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getICATAPIVersion);
+		for (int i = 0; i < n; i++)
+			((ns1__getICATAPIVersion*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getICATAPIVersion*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getICATAPIVersion(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getICATAPIVersion %p -> %p\n", q, p));
+	*(ns1__getICATAPIVersion*)p = *(ns1__getICATAPIVersion*)q;
+}
+
+void ns1__getDatafilesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__getDatafilesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatafilesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__getDatafilesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getDatafilesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatafilesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafilesResponse(struct soap *soap, const char *tag, int id, const ns1__getDatafilesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafilesResponse), "ns1:getDatafilesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__getDatafilesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatafilesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatafilesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatafilesResponse * SOAP_FMAC4 soap_in_ns1__getDatafilesResponse(struct soap *soap, const char *tag, ns1__getDatafilesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatafilesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafilesResponse, sizeof(ns1__getDatafilesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatafilesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatafilesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__getDatafilesResponse::return_), "ns1:datafile"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatafilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafilesResponse, 0, sizeof(ns1__getDatafilesResponse), 0, soap_copy_ns1__getDatafilesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatafilesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafilesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatafilesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatafilesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatafilesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatafilesResponse * SOAP_FMAC4 soap_get_ns1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatafilesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatafilesResponse * SOAP_FMAC2 soap_instantiate_ns1__getDatafilesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafilesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafilesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse);
+		if (size)
+			*size = sizeof(ns1__getDatafilesResponse);
+		((ns1__getDatafilesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatafilesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatafilesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatafilesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafilesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafilesResponse %p -> %p\n", q, p));
+	*(ns1__getDatafilesResponse*)p = *(ns1__getDatafilesResponse*)q;
+}
+
+void ns1__getDatafiles::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getDatafiles::sessionId = NULL;
+	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatafiles::datafileIds);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getDatafiles::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getDatafiles::sessionId);
+	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__getDatafiles::datafileIds);
+	/* transient soap skipped */
+}
+
+int ns1__getDatafiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getDatafiles(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getDatafiles(struct soap *soap, const char *tag, int id, const ns1__getDatafiles *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getDatafiles), "ns1:getDatafiles"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getDatafiles::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfLONG64(soap, "datafileIds", -1, &(a->ns1__getDatafiles::datafileIds), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getDatafiles::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getDatafiles(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getDatafiles * SOAP_FMAC4 soap_in_ns1__getDatafiles(struct soap *soap, const char *tag, ns1__getDatafiles *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getDatafiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getDatafiles, sizeof(ns1__getDatafiles), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getDatafiles)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getDatafiles *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getDatafiles::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfLONG64(soap, "datafileIds", &(a->ns1__getDatafiles::datafileIds), "xsd:long"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getDatafiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getDatafiles, 0, sizeof(ns1__getDatafiles), 0, soap_copy_ns1__getDatafiles);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getDatafiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getDatafiles);
+	if (this->soap_out(soap, tag?tag:"ns1:getDatafiles", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getDatafiles::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getDatafiles(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getDatafiles * SOAP_FMAC4 soap_get_ns1__getDatafiles(struct soap *soap, ns1__getDatafiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getDatafiles * SOAP_FMAC2 soap_instantiate_ns1__getDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getDatafiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles);
+		if (size)
+			*size = sizeof(ns1__getDatafiles);
+		((ns1__getDatafiles*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getDatafiles);
+		for (int i = 0; i < n; i++)
+			((ns1__getDatafiles*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getDatafiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getDatafiles %p -> %p\n", q, p));
+	*(ns1__getDatafiles*)p = *(ns1__getDatafiles*)q;
+}
+
+void ns1__searchByParameterOperatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterOperatorResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByParameterOperatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterOperatorResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByParameterOperatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByParameterOperatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchByParameterOperatorResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterOperatorResponse), "ns1:searchByParameterOperatorResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByParameterOperatorResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByParameterOperatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByParameterOperatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperatorResponse * SOAP_FMAC4 soap_in_ns1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterOperatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByParameterOperatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterOperatorResponse, sizeof(ns1__searchByParameterOperatorResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterOperatorResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByParameterOperatorResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByParameterOperatorResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByParameterOperatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterOperatorResponse, 0, sizeof(ns1__searchByParameterOperatorResponse), 0, soap_copy_ns1__searchByParameterOperatorResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByParameterOperatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterOperatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterOperatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByParameterOperatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByParameterOperatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperatorResponse * SOAP_FMAC4 soap_get_ns1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByParameterOperatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByParameterOperatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterOperatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterOperatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterOperatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse);
+		if (size)
+			*size = sizeof(ns1__searchByParameterOperatorResponse);
+		((ns1__searchByParameterOperatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByParameterOperatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByParameterOperatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByParameterOperatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterOperatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterOperatorResponse %p -> %p\n", q, p));
+	*(ns1__searchByParameterOperatorResponse*)p = *(ns1__searchByParameterOperatorResponse*)q;
+}
+
+void ns1__parameterLogicalCondition::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__parameterCondition(soap, &this->ns1__parameterLogicalCondition::listComparable);
+	this->ns1__parameterLogicalCondition::operator_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterLogicalCondition::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__parameterCondition(soap, &this->ns1__parameterLogicalCondition::listComparable);
+	soap_serialize_PointerTons1__logicalOperator(soap, &this->ns1__parameterLogicalCondition::operator_);
+	/* transient soap skipped */
+}
+
+int ns1__parameterLogicalCondition::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterLogicalCondition(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterLogicalCondition(struct soap *soap, const char *tag, int id, const ns1__parameterLogicalCondition *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterLogicalCondition), "ns1:parameterLogicalCondition"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__parameterCondition(soap, "listComparable", -1, &(a->ns1__parameterLogicalCondition::listComparable), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__logicalOperator(soap, "operator", -1, &(a->ns1__parameterLogicalCondition::operator_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__parameterLogicalCondition::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterLogicalCondition(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterLogicalCondition * SOAP_FMAC4 soap_in_ns1__parameterLogicalCondition(struct soap *soap, const char *tag, ns1__parameterLogicalCondition *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__parameterLogicalCondition *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterLogicalCondition)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__parameterLogicalCondition *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_operator_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__parameterCondition(soap, "listComparable", &(a->ns1__parameterLogicalCondition::listComparable), "ns1:parameterCondition"))
+					continue;
+			if (soap_flag_operator_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__logicalOperator(soap, "operator", &(a->ns1__parameterLogicalCondition::operator_), "ns1:logicalOperator"))
+				{	soap_flag_operator_1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__parameterLogicalCondition *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterLogicalCondition, 0, sizeof(ns1__parameterLogicalCondition), 0, soap_copy_ns1__parameterLogicalCondition);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__parameterLogicalCondition::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterLogicalCondition);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterLogicalCondition", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterLogicalCondition::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterLogicalCondition(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterLogicalCondition * SOAP_FMAC4 soap_get_ns1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterLogicalCondition(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterLogicalCondition * SOAP_FMAC2 soap_instantiate_ns1__parameterLogicalCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterLogicalCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterLogicalCondition, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition);
+		if (size)
+			*size = sizeof(ns1__parameterLogicalCondition);
+		((ns1__parameterLogicalCondition*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterLogicalCondition);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterLogicalCondition*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterLogicalCondition*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterLogicalCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterLogicalCondition %p -> %p\n", q, p));
+	*(ns1__parameterLogicalCondition*)p = *(ns1__parameterLogicalCondition*)q;
+}
+
+void ns1__searchByParameterOperator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByParameterOperator::sessionId = NULL;
+	this->ns1__searchByParameterOperator::operator_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByParameterOperator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByParameterOperator::sessionId);
+	soap_serialize_PointerTons1__parameterLogicalCondition(soap, &this->ns1__searchByParameterOperator::operator_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByParameterOperator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByParameterOperator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterOperator(struct soap *soap, const char *tag, int id, const ns1__searchByParameterOperator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterOperator), "ns1:searchByParameterOperator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByParameterOperator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterLogicalCondition(soap, "operator", -1, &(a->ns1__searchByParameterOperator::operator_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByParameterOperator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByParameterOperator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperator * SOAP_FMAC4 soap_in_ns1__searchByParameterOperator(struct soap *soap, const char *tag, ns1__searchByParameterOperator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByParameterOperator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterOperator, sizeof(ns1__searchByParameterOperator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterOperator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByParameterOperator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_operator_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByParameterOperator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_operator_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterLogicalCondition(soap, "operator", &(a->ns1__searchByParameterOperator::operator_), "ns1:parameterLogicalCondition"))
+				{	soap_flag_operator_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByParameterOperator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterOperator, 0, sizeof(ns1__searchByParameterOperator), 0, soap_copy_ns1__searchByParameterOperator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByParameterOperator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterOperator);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterOperator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByParameterOperator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByParameterOperator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperator * SOAP_FMAC4 soap_get_ns1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByParameterOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByParameterOperator * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterOperator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterOperator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterOperator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator);
+		if (size)
+			*size = sizeof(ns1__searchByParameterOperator);
+		((ns1__searchByParameterOperator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByParameterOperator);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByParameterOperator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByParameterOperator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterOperator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterOperator %p -> %p\n", q, p));
+	*(ns1__searchByParameterOperator*)p = *(ns1__searchByParameterOperator*)q;
+}
+
+void ns1__isSessionValidResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->ns1__isSessionValidResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__isSessionValidResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__isSessionValidResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__isSessionValidResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__isSessionValidResponse(struct soap *soap, const char *tag, int id, const ns1__isSessionValidResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__isSessionValidResponse), "ns1:isSessionValidResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "return", -1, &(a->ns1__isSessionValidResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__isSessionValidResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__isSessionValidResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__isSessionValidResponse * SOAP_FMAC4 soap_in_ns1__isSessionValidResponse(struct soap *soap, const char *tag, ns1__isSessionValidResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__isSessionValidResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__isSessionValidResponse, sizeof(ns1__isSessionValidResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__isSessionValidResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__isSessionValidResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "return", &(a->ns1__isSessionValidResponse::return_), "xsd:boolean"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__isSessionValidResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__isSessionValidResponse, 0, sizeof(ns1__isSessionValidResponse), 0, soap_copy_ns1__isSessionValidResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__isSessionValidResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__isSessionValidResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:isSessionValidResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__isSessionValidResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__isSessionValidResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__isSessionValidResponse * SOAP_FMAC4 soap_get_ns1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__isSessionValidResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__isSessionValidResponse * SOAP_FMAC2 soap_instantiate_ns1__isSessionValidResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__isSessionValidResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__isSessionValidResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse);
+		if (size)
+			*size = sizeof(ns1__isSessionValidResponse);
+		((ns1__isSessionValidResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__isSessionValidResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__isSessionValidResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__isSessionValidResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__isSessionValidResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__isSessionValidResponse %p -> %p\n", q, p));
+	*(ns1__isSessionValidResponse*)p = *(ns1__isSessionValidResponse*)q;
+}
+
+void ns1__isSessionValid::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__isSessionValid::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__isSessionValid::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__isSessionValid::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__isSessionValid::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__isSessionValid(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__isSessionValid(struct soap *soap, const char *tag, int id, const ns1__isSessionValid *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__isSessionValid), "ns1:isSessionValid"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__isSessionValid::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__isSessionValid::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__isSessionValid(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__isSessionValid * SOAP_FMAC4 soap_in_ns1__isSessionValid(struct soap *soap, const char *tag, ns1__isSessionValid *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__isSessionValid *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__isSessionValid, sizeof(ns1__isSessionValid), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__isSessionValid)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__isSessionValid *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__isSessionValid::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__isSessionValid *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__isSessionValid, 0, sizeof(ns1__isSessionValid), 0, soap_copy_ns1__isSessionValid);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__isSessionValid::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__isSessionValid);
+	if (this->soap_out(soap, tag?tag:"ns1:isSessionValid", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__isSessionValid::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__isSessionValid(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__isSessionValid * SOAP_FMAC4 soap_get_ns1__isSessionValid(struct soap *soap, ns1__isSessionValid *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__isSessionValid(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__isSessionValid * SOAP_FMAC2 soap_instantiate_ns1__isSessionValid(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__isSessionValid(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__isSessionValid, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid);
+		if (size)
+			*size = sizeof(ns1__isSessionValid);
+		((ns1__isSessionValid*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__isSessionValid);
+		for (int i = 0; i < n; i++)
+			((ns1__isSessionValid*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__isSessionValid*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__isSessionValid(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__isSessionValid %p -> %p\n", q, p));
+	*(ns1__isSessionValid*)p = *(ns1__isSessionValid*)q;
+}
+
+void ns1__deleteDataSetResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataSetResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataSetResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataSetResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataSetResponse");
+}
+
+void *ns1__deleteDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataSetResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetResponse * SOAP_FMAC4 soap_in_ns1__deleteDataSetResponse(struct soap *soap, const char *tag, ns1__deleteDataSetResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSetResponse, sizeof(ns1__deleteDataSetResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSetResponse)
+			return (ns1__deleteDataSetResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSetResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSetResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataSetResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetResponse * SOAP_FMAC4 soap_get_ns1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse);
+		if (size)
+			*size = sizeof(ns1__deleteDataSetResponse);
+		((ns1__deleteDataSetResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataSetResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataSetResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSetResponse %p -> %p\n", q, p));
+	*(ns1__deleteDataSetResponse*)p = *(ns1__deleteDataSetResponse*)q;
+}
+
+void ns1__deleteDataSet::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteDataSet::sessionId = NULL;
+	this->ns1__deleteDataSet::dataSetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataSet::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataSet::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteDataSet::dataSetId);
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataSet(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataSet(struct soap *soap, const char *tag, int id, const ns1__deleteDataSet *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataSet), "ns1:deleteDataSet"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataSet::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "dataSetId", -1, &(a->ns1__deleteDataSet::dataSetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataSet(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSet * SOAP_FMAC4 soap_in_ns1__deleteDataSet(struct soap *soap, const char *tag, ns1__deleteDataSet *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataSet, sizeof(ns1__deleteDataSet), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataSet)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteDataSet *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataSetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataSet::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataSetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "dataSetId", &(a->ns1__deleteDataSet::dataSetId), "xsd:long"))
+				{	soap_flag_dataSetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataSet, 0, sizeof(ns1__deleteDataSet), 0, soap_copy_ns1__deleteDataSet);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataSet);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataSet", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataSet(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSet * SOAP_FMAC4 soap_get_ns1__deleteDataSet(struct soap *soap, ns1__deleteDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataSet * SOAP_FMAC2 soap_instantiate_ns1__deleteDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet);
+		if (size)
+			*size = sizeof(ns1__deleteDataSet);
+		((ns1__deleteDataSet*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataSet);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataSet*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataSet %p -> %p\n", q, p));
+	*(ns1__deleteDataSet*)p = *(ns1__deleteDataSet*)q;
+}
+
+void ns1__searchDatafilesByParameterComparatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatafilesByParameterComparatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatafilesByParameterComparatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatafilesByParameterComparatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparatorResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse), "ns1:searchDatafilesByParameterComparatorResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchDatafilesByParameterComparatorResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatafilesByParameterComparatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatafilesByParameterComparatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, sizeof(ns1__searchDatafilesByParameterComparatorResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatafilesByParameterComparatorResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchDatafilesByParameterComparatorResponse::return_), "ns1:datafile"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatafilesByParameterComparatorResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, 0, sizeof(ns1__searchDatafilesByParameterComparatorResponse), 0, soap_copy_ns1__searchDatafilesByParameterComparatorResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatafilesByParameterComparatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatafilesByParameterComparatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatafilesByParameterComparatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatafilesByParameterComparatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatafilesByParameterComparatorResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse);
+		if (size)
+			*size = sizeof(ns1__searchDatafilesByParameterComparatorResponse);
+		((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatafilesByParameterComparatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparatorResponse %p -> %p\n", q, p));
+	*(ns1__searchDatafilesByParameterComparatorResponse*)p = *(ns1__searchDatafilesByParameterComparatorResponse*)q;
+}
+
+void ns1__searchDatafilesByParameterComparator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchDatafilesByParameterComparator::sessionId = NULL;
+	this->ns1__searchDatafilesByParameterComparator::comparator = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatafilesByParameterComparator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatafilesByParameterComparator::sessionId);
+	soap_serialize_PointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatafilesByParameterComparator::comparator);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatafilesByParameterComparator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatafilesByParameterComparator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator), "ns1:searchDatafilesByParameterComparator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatafilesByParameterComparator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterComparisonCondition(soap, "comparator", -1, &(a->ns1__searchDatafilesByParameterComparator::comparator), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatafilesByParameterComparator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatafilesByParameterComparator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatafilesByParameterComparator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, sizeof(ns1__searchDatafilesByParameterComparator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatafilesByParameterComparator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_comparator1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatafilesByParameterComparator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterComparisonCondition(soap, "comparator", &(a->ns1__searchDatafilesByParameterComparator::comparator), "ns1:parameterComparisonCondition"))
+				{	soap_flag_comparator1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatafilesByParameterComparator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, 0, sizeof(ns1__searchDatafilesByParameterComparator), 0, soap_copy_ns1__searchDatafilesByParameterComparator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatafilesByParameterComparator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparator);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatafilesByParameterComparator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatafilesByParameterComparator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatafilesByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatafilesByParameterComparator * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator);
+		if (size)
+			*size = sizeof(ns1__searchDatafilesByParameterComparator);
+		((ns1__searchDatafilesByParameterComparator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatafilesByParameterComparator);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatafilesByParameterComparator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatafilesByParameterComparator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparator %p -> %p\n", q, p));
+	*(ns1__searchDatafilesByParameterComparator*)p = *(ns1__searchDatafilesByParameterComparator*)q;
+}
+
+void ns1__getInvestigationsIncludesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getInvestigationsIncludesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getInvestigationsIncludesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getInvestigationsIncludesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getInvestigationsIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getInvestigationsIncludesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getInvestigationsIncludesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse), "ns1:getInvestigationsIncludesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getInvestigationsIncludesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getInvestigationsIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getInvestigationsIncludesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludesResponse * SOAP_FMAC4 soap_in_ns1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationsIncludesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getInvestigationsIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, sizeof(ns1__getInvestigationsIncludesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationsIncludesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getInvestigationsIncludesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getInvestigationsIncludesResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getInvestigationsIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, 0, sizeof(ns1__getInvestigationsIncludesResponse), 0, soap_copy_ns1__getInvestigationsIncludesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getInvestigationsIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationsIncludesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationsIncludesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getInvestigationsIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getInvestigationsIncludesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludesResponse * SOAP_FMAC4 soap_get_ns1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getInvestigationsIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getInvestigationsIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationsIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationsIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse);
+		if (size)
+			*size = sizeof(ns1__getInvestigationsIncludesResponse);
+		((ns1__getInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getInvestigationsIncludesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getInvestigationsIncludesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationsIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationsIncludesResponse %p -> %p\n", q, p));
+	*(ns1__getInvestigationsIncludesResponse*)p = *(ns1__getInvestigationsIncludesResponse*)q;
+}
+
+void ns1__getInvestigationsIncludes::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getInvestigationsIncludes::userId = NULL;
+	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__getInvestigationsIncludes::investigationIds);
+	this->ns1__getInvestigationsIncludes::investigationInclude = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getInvestigationsIncludes::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getInvestigationsIncludes::userId);
+	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__getInvestigationsIncludes::investigationIds);
+	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getInvestigationsIncludes::investigationInclude);
+	/* transient soap skipped */
+}
+
+int ns1__getInvestigationsIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getInvestigationsIncludes(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, int id, const ns1__getInvestigationsIncludes *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getInvestigationsIncludes), "ns1:getInvestigationsIncludes"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "userId", -1, &(a->ns1__getInvestigationsIncludes::userId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfLONG64(soap, "investigationIds", -1, &(a->ns1__getInvestigationsIncludes::investigationIds), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getInvestigationsIncludes::investigationInclude), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getInvestigationsIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getInvestigationsIncludes(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_in_ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getInvestigationsIncludes *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getInvestigationsIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getInvestigationsIncludes, sizeof(ns1__getInvestigationsIncludes), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getInvestigationsIncludes)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getInvestigationsIncludes *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_userId1 = 1;
+	size_t soap_flag_investigationInclude1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_userId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "userId", &(a->ns1__getInvestigationsIncludes::userId), "xsd:string"))
+				{	soap_flag_userId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfLONG64(soap, "investigationIds", &(a->ns1__getInvestigationsIncludes::investigationIds), "xsd:long"))
+					continue;
+			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getInvestigationsIncludes::investigationInclude), "ns1:investigationInclude"))
+				{	soap_flag_investigationInclude1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getInvestigationsIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getInvestigationsIncludes, 0, sizeof(ns1__getInvestigationsIncludes), 0, soap_copy_ns1__getInvestigationsIncludes);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getInvestigationsIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getInvestigationsIncludes);
+	if (this->soap_out(soap, tag?tag:"ns1:getInvestigationsIncludes", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getInvestigationsIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getInvestigationsIncludes(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_get_ns1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getInvestigationsIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getInvestigationsIncludes * SOAP_FMAC2 soap_instantiate_ns1__getInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getInvestigationsIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes);
+		if (size)
+			*size = sizeof(ns1__getInvestigationsIncludes);
+		((ns1__getInvestigationsIncludes*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getInvestigationsIncludes);
+		for (int i = 0; i < n; i++)
+			((ns1__getInvestigationsIncludes*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getInvestigationsIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getInvestigationsIncludes %p -> %p\n", q, p));
+	*(ns1__getInvestigationsIncludes*)p = *(ns1__getInvestigationsIncludes*)q;
+}
+
+void ns1__removeDataFileParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataFileParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeDataFileParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataFileParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataFileParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataFileParameterResponse");
+}
+
+void *ns1__removeDataFileParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataFileParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_in_ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, ns1__removeDataFileParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeDataFileParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFileParameterResponse, sizeof(ns1__removeDataFileParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFileParameterResponse)
+			return (ns1__removeDataFileParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeDataFileParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFileParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataFileParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataFileParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataFileParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_get_ns1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataFileParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse);
+		if (size)
+			*size = sizeof(ns1__removeDataFileParameterResponse);
+		((ns1__removeDataFileParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataFileParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFileParameterResponse %p -> %p\n", q, p));
+	*(ns1__removeDataFileParameterResponse*)p = *(ns1__removeDataFileParameterResponse*)q;
+}
+
+void ns1__removeDataFileParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeDataFileParameter::sessionId = NULL;
+	this->ns1__removeDataFileParameter::datafileParameterPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataFileParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataFileParameter::sessionId);
+	soap_serialize_PointerTons1__datafileParameterPK(soap, &this->ns1__removeDataFileParameter::datafileParameterPK);
+	/* transient soap skipped */
+}
+
+int ns1__removeDataFileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataFileParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFileParameter(struct soap *soap, const char *tag, int id, const ns1__removeDataFileParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataFileParameter), "ns1:removeDataFileParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataFileParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", -1, &(a->ns1__removeDataFileParameter::datafileParameterPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeDataFileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataFileParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameter * SOAP_FMAC4 soap_in_ns1__removeDataFileParameter(struct soap *soap, const char *tag, ns1__removeDataFileParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeDataFileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFileParameter, sizeof(ns1__removeDataFileParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFileParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeDataFileParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileParameterPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataFileParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datafileParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", &(a->ns1__removeDataFileParameter::datafileParameterPK), "ns1:datafileParameterPK"))
+				{	soap_flag_datafileParameterPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeDataFileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataFileParameter, 0, sizeof(ns1__removeDataFileParameter), 0, soap_copy_ns1__removeDataFileParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeDataFileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFileParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataFileParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataFileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataFileParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameter * SOAP_FMAC4 soap_get_ns1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataFileParameter * SOAP_FMAC2 soap_instantiate_ns1__removeDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter);
+		if (size)
+			*size = sizeof(ns1__removeDataFileParameter);
+		((ns1__removeDataFileParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataFileParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataFileParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFileParameter %p -> %p\n", q, p));
+	*(ns1__removeDataFileParameter*)p = *(ns1__removeDataFileParameter*)q;
+}
+
+void ns1__searchByUserIDPaginationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDPaginationResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserIDPaginationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDPaginationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserIDPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserIDPaginationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserIDPaginationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse), "ns1:searchByUserIDPaginationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserIDPaginationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserIDPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserIDPaginationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserIDPaginationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserIDPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, sizeof(ns1__searchByUserIDPaginationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserIDPaginationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserIDPaginationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserIDPaginationResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserIDPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, 0, sizeof(ns1__searchByUserIDPaginationResponse), 0, soap_copy_ns1__searchByUserIDPaginationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserIDPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserIDPaginationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserIDPaginationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserIDPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserIDPaginationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserIDPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserIDPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserIDPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserIDPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse);
+		if (size)
+			*size = sizeof(ns1__searchByUserIDPaginationResponse);
+		((ns1__searchByUserIDPaginationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserIDPaginationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserIDPaginationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserIDPaginationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserIDPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserIDPaginationResponse %p -> %p\n", q, p));
+	*(ns1__searchByUserIDPaginationResponse*)p = *(ns1__searchByUserIDPaginationResponse*)q;
+}
+
+void ns1__searchByUserIDPagination::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByUserIDPagination::sessionId = NULL;
+	this->ns1__searchByUserIDPagination::userSearch = NULL;
+	soap_default_int(soap, &this->ns1__searchByUserIDPagination::startIndex);
+	soap_default_int(soap, &this->ns1__searchByUserIDPagination::numberOfResults);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserIDPagination::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserIDPagination::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserIDPagination::userSearch);
+	soap_embedded(soap, &this->ns1__searchByUserIDPagination::startIndex, SOAP_TYPE_int);
+	soap_embedded(soap, &this->ns1__searchByUserIDPagination::numberOfResults, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserIDPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserIDPagination(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserIDPagination(struct soap *soap, const char *tag, int id, const ns1__searchByUserIDPagination *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserIDPagination), "ns1:searchByUserIDPagination"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserIDPagination::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "userSearch", -1, &(a->ns1__searchByUserIDPagination::userSearch), ""))
+		return soap->error;
+	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByUserIDPagination::startIndex), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByUserIDPagination::numberOfResults), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserIDPagination::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserIDPagination(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPagination * SOAP_FMAC4 soap_in_ns1__searchByUserIDPagination(struct soap *soap, const char *tag, ns1__searchByUserIDPagination *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserIDPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserIDPagination, sizeof(ns1__searchByUserIDPagination), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserIDPagination)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserIDPagination *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_userSearch1 = 1;
+	size_t soap_flag_startIndex1 = 1;
+	size_t soap_flag_numberOfResults1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserIDPagination::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_userSearch1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "userSearch", &(a->ns1__searchByUserIDPagination::userSearch), "xsd:string"))
+				{	soap_flag_userSearch1--;
+					continue;
+				}
+			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByUserIDPagination::startIndex), "xsd:int"))
+				{	soap_flag_startIndex1--;
+					continue;
+				}
+			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByUserIDPagination::numberOfResults), "xsd:int"))
+				{	soap_flag_numberOfResults1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserIDPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserIDPagination, 0, sizeof(ns1__searchByUserIDPagination), 0, soap_copy_ns1__searchByUserIDPagination);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserIDPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserIDPagination);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserIDPagination", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserIDPagination::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserIDPagination(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPagination * SOAP_FMAC4 soap_get_ns1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserIDPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserIDPagination * SOAP_FMAC2 soap_instantiate_ns1__searchByUserIDPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserIDPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserIDPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination);
+		if (size)
+			*size = sizeof(ns1__searchByUserIDPagination);
+		((ns1__searchByUserIDPagination*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserIDPagination);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserIDPagination*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserIDPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserIDPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserIDPagination %p -> %p\n", q, p));
+	*(ns1__searchByUserIDPagination*)p = *(ns1__searchByUserIDPagination*)q;
+}
+
+void ns1__searchByUserIDResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserIDResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserIDResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserIDResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserIDResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserIDResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserIDResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserIDResponse), "ns1:searchByUserIDResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserIDResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserIDResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserIDResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDResponse * SOAP_FMAC4 soap_in_ns1__searchByUserIDResponse(struct soap *soap, const char *tag, ns1__searchByUserIDResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserIDResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserIDResponse, sizeof(ns1__searchByUserIDResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserIDResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserIDResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserIDResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserIDResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserIDResponse, 0, sizeof(ns1__searchByUserIDResponse), 0, soap_copy_ns1__searchByUserIDResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserIDResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserIDResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserIDResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserIDResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserIDResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDResponse * SOAP_FMAC4 soap_get_ns1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserIDResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserIDResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserIDResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserIDResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserIDResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse);
+		if (size)
+			*size = sizeof(ns1__searchByUserIDResponse);
+		((ns1__searchByUserIDResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserIDResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserIDResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserIDResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserIDResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserIDResponse %p -> %p\n", q, p));
+	*(ns1__searchByUserIDResponse*)p = *(ns1__searchByUserIDResponse*)q;
+}
+
+void ns1__searchByUserID::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByUserID::sessionId = NULL;
+	this->ns1__searchByUserID::userSearch = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserID::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserID::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserID::userSearch);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserID::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserID(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserID(struct soap *soap, const char *tag, int id, const ns1__searchByUserID *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserID), "ns1:searchByUserID"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserID::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "userSearch", -1, &(a->ns1__searchByUserID::userSearch), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserID::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserID(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserID * SOAP_FMAC4 soap_in_ns1__searchByUserID(struct soap *soap, const char *tag, ns1__searchByUserID *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserID *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserID, sizeof(ns1__searchByUserID), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserID)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserID *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_userSearch1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserID::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_userSearch1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "userSearch", &(a->ns1__searchByUserID::userSearch), "xsd:string"))
+				{	soap_flag_userSearch1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserID *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserID, 0, sizeof(ns1__searchByUserID), 0, soap_copy_ns1__searchByUserID);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserID::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserID);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserID", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserID::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserID(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserID * SOAP_FMAC4 soap_get_ns1__searchByUserID(struct soap *soap, ns1__searchByUserID *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserID(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserID * SOAP_FMAC2 soap_instantiate_ns1__searchByUserID(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserID(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserID, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID);
+		if (size)
+			*size = sizeof(ns1__searchByUserID);
+		((ns1__searchByUserID*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserID);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserID*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserID*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserID(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserID %p -> %p\n", q, p));
+	*(ns1__searchByUserID*)p = *(ns1__searchByUserID*)q;
+}
+
+void ns1__modifyPublicationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyPublicationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyPublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyPublicationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyPublicationResponse(struct soap *soap, const char *tag, int id, const ns1__modifyPublicationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyPublicationResponse");
+}
+
+void *ns1__modifyPublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyPublicationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyPublicationResponse * SOAP_FMAC4 soap_in_ns1__modifyPublicationResponse(struct soap *soap, const char *tag, ns1__modifyPublicationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyPublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyPublicationResponse, sizeof(ns1__modifyPublicationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyPublicationResponse)
+			return (ns1__modifyPublicationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyPublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyPublicationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyPublicationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyPublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyPublicationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyPublicationResponse * SOAP_FMAC4 soap_get_ns1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyPublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyPublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyPublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyPublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyPublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse);
+		if (size)
+			*size = sizeof(ns1__modifyPublicationResponse);
+		((ns1__modifyPublicationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyPublicationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyPublicationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyPublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyPublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyPublicationResponse %p -> %p\n", q, p));
+	*(ns1__modifyPublicationResponse*)p = *(ns1__modifyPublicationResponse*)q;
+}
+
+void ns1__modifyPublication::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyPublication::sessionId = NULL;
+	this->ns1__modifyPublication::publication = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyPublication::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyPublication::sessionId);
+	soap_serialize_PointerTons1__publication(soap, &this->ns1__modifyPublication::publication);
+	/* transient soap skipped */
+}
+
+int ns1__modifyPublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyPublication(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyPublication(struct soap *soap, const char *tag, int id, const ns1__modifyPublication *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyPublication), "ns1:modifyPublication"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyPublication::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__publication(soap, "publication", -1, &(a->ns1__modifyPublication::publication), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyPublication::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyPublication(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyPublication * SOAP_FMAC4 soap_in_ns1__modifyPublication(struct soap *soap, const char *tag, ns1__modifyPublication *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyPublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyPublication, sizeof(ns1__modifyPublication), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyPublication)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyPublication *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_publication1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyPublication::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_publication1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__publication(soap, "publication", &(a->ns1__modifyPublication::publication), "ns1:publication"))
+				{	soap_flag_publication1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyPublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyPublication, 0, sizeof(ns1__modifyPublication), 0, soap_copy_ns1__modifyPublication);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyPublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyPublication);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyPublication", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyPublication::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyPublication(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyPublication * SOAP_FMAC4 soap_get_ns1__modifyPublication(struct soap *soap, ns1__modifyPublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyPublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyPublication * SOAP_FMAC2 soap_instantiate_ns1__modifyPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyPublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication);
+		if (size)
+			*size = sizeof(ns1__modifyPublication);
+		((ns1__modifyPublication*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyPublication);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyPublication*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyPublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyPublication %p -> %p\n", q, p));
+	*(ns1__modifyPublication*)p = *(ns1__modifyPublication*)q;
+}
+
+void ns1__removeDataSetParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataSetParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeDataSetParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataSetParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataSetParameterResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataSetParameterResponse");
+}
+
+void *ns1__removeDataSetParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataSetParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_in_ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, ns1__removeDataSetParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeDataSetParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSetParameterResponse, sizeof(ns1__removeDataSetParameterResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSetParameterResponse)
+			return (ns1__removeDataSetParameterResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeDataSetParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSetParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataSetParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataSetParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataSetParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_get_ns1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataSetParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse);
+		if (size)
+			*size = sizeof(ns1__removeDataSetParameterResponse);
+		((ns1__removeDataSetParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataSetParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSetParameterResponse %p -> %p\n", q, p));
+	*(ns1__removeDataSetParameterResponse*)p = *(ns1__removeDataSetParameterResponse*)q;
+}
+
+void ns1__removeDataSetParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeDataSetParameter::sessionId = NULL;
+	this->ns1__removeDataSetParameter::datasetParameterPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataSetParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataSetParameter::sessionId);
+	soap_serialize_PointerTons1__datasetParameterPK(soap, &this->ns1__removeDataSetParameter::datasetParameterPK);
+	/* transient soap skipped */
+}
+
+int ns1__removeDataSetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataSetParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataSetParameter(struct soap *soap, const char *tag, int id, const ns1__removeDataSetParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataSetParameter), "ns1:removeDataSetParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataSetParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", -1, &(a->ns1__removeDataSetParameter::datasetParameterPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeDataSetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataSetParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameter * SOAP_FMAC4 soap_in_ns1__removeDataSetParameter(struct soap *soap, const char *tag, ns1__removeDataSetParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeDataSetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataSetParameter, sizeof(ns1__removeDataSetParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataSetParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeDataSetParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetParameterPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataSetParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datasetParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", &(a->ns1__removeDataSetParameter::datasetParameterPK), "ns1:datasetParameterPK"))
+				{	soap_flag_datasetParameterPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeDataSetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataSetParameter, 0, sizeof(ns1__removeDataSetParameter), 0, soap_copy_ns1__removeDataSetParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeDataSetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataSetParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataSetParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataSetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataSetParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameter * SOAP_FMAC4 soap_get_ns1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataSetParameter * SOAP_FMAC2 soap_instantiate_ns1__removeDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter);
+		if (size)
+			*size = sizeof(ns1__removeDataSetParameter);
+		((ns1__removeDataSetParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataSetParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataSetParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataSetParameter %p -> %p\n", q, p));
+	*(ns1__removeDataSetParameter*)p = *(ns1__removeDataSetParameter*)q;
+}
+
+void ns1__getMyInvestigationsIncludesPaginationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesPaginationResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getMyInvestigationsIncludesPaginationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesPaginationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getMyInvestigationsIncludesPaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getMyInvestigationsIncludesPaginationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludesPaginationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse), "ns1:getMyInvestigationsIncludesPaginationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getMyInvestigationsIncludesPaginationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getMyInvestigationsIncludesPaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPaginationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getMyInvestigationsIncludesPaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getMyInvestigationsIncludesPaginationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getMyInvestigationsIncludesPaginationResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getMyInvestigationsIncludesPaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, 0, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), 0, soap_copy_ns1__getMyInvestigationsIncludesPaginationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getMyInvestigationsIncludesPaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludesPaginationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getMyInvestigationsIncludesPaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getMyInvestigationsIncludesPaginationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getMyInvestigationsIncludesPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getMyInvestigationsIncludesPaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse);
+		if (size)
+			*size = sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
+		((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludesPaginationResponse %p -> %p\n", q, p));
+	*(ns1__getMyInvestigationsIncludesPaginationResponse*)p = *(ns1__getMyInvestigationsIncludesPaginationResponse*)q;
+}
+
+void ns1__getMyInvestigationsIncludesPagination::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getMyInvestigationsIncludesPagination::sessionId = NULL;
+	this->ns1__getMyInvestigationsIncludesPagination::investigationInclude = NULL;
+	soap_default_int(soap, &this->ns1__getMyInvestigationsIncludesPagination::startIndex);
+	soap_default_int(soap, &this->ns1__getMyInvestigationsIncludesPagination::numberOfResults);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getMyInvestigationsIncludesPagination::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getMyInvestigationsIncludesPagination::sessionId);
+	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getMyInvestigationsIncludesPagination::investigationInclude);
+	soap_embedded(soap, &this->ns1__getMyInvestigationsIncludesPagination::startIndex, SOAP_TYPE_int);
+	soap_embedded(soap, &this->ns1__getMyInvestigationsIncludesPagination::numberOfResults, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__getMyInvestigationsIncludesPagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getMyInvestigationsIncludesPagination(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludesPagination *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination), "ns1:getMyInvestigationsIncludesPagination"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getMyInvestigationsIncludesPagination::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getMyInvestigationsIncludesPagination::investigationInclude), ""))
+		return soap->error;
+	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__getMyInvestigationsIncludesPagination::startIndex), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__getMyInvestigationsIncludesPagination::numberOfResults), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getMyInvestigationsIncludesPagination::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getMyInvestigationsIncludesPagination(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPagination *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getMyInvestigationsIncludesPagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, sizeof(ns1__getMyInvestigationsIncludesPagination), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getMyInvestigationsIncludesPagination *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationInclude1 = 1;
+	size_t soap_flag_startIndex1 = 1;
+	size_t soap_flag_numberOfResults1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getMyInvestigationsIncludesPagination::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getMyInvestigationsIncludesPagination::investigationInclude), "ns1:investigationInclude"))
+				{	soap_flag_investigationInclude1--;
+					continue;
+				}
+			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "startIndex", &(a->ns1__getMyInvestigationsIncludesPagination::startIndex), "xsd:int"))
+				{	soap_flag_startIndex1--;
+					continue;
+				}
+			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberOfResults", &(a->ns1__getMyInvestigationsIncludesPagination::numberOfResults), "xsd:int"))
+				{	soap_flag_numberOfResults1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getMyInvestigationsIncludesPagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, 0, sizeof(ns1__getMyInvestigationsIncludesPagination), 0, soap_copy_ns1__getMyInvestigationsIncludesPagination);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__getMyInvestigationsIncludesPagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination);
+	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludesPagination", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getMyInvestigationsIncludesPagination::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getMyInvestigationsIncludesPagination(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getMyInvestigationsIncludesPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludesPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination);
+		if (size)
+			*size = sizeof(ns1__getMyInvestigationsIncludesPagination);
+		((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getMyInvestigationsIncludesPagination);
+		for (int i = 0; i < n; i++)
+			((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getMyInvestigationsIncludesPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludesPagination %p -> %p\n", q, p));
+	*(ns1__getMyInvestigationsIncludesPagination*)p = *(ns1__getMyInvestigationsIncludesPagination*)q;
+}
+
+void ns1__getMyInvestigationsIncludesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getMyInvestigationsIncludesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsIncludesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getMyInvestigationsIncludesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getMyInvestigationsIncludesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse), "ns1:getMyInvestigationsIncludesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getMyInvestigationsIncludesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getMyInvestigationsIncludesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getMyInvestigationsIncludesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getMyInvestigationsIncludesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, sizeof(ns1__getMyInvestigationsIncludesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getMyInvestigationsIncludesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getMyInvestigationsIncludesResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getMyInvestigationsIncludesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, 0, sizeof(ns1__getMyInvestigationsIncludesResponse), 0, soap_copy_ns1__getMyInvestigationsIncludesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getMyInvestigationsIncludesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getMyInvestigationsIncludesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getMyInvestigationsIncludesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getMyInvestigationsIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getMyInvestigationsIncludesResponse * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse);
+		if (size)
+			*size = sizeof(ns1__getMyInvestigationsIncludesResponse);
+		((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getMyInvestigationsIncludesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getMyInvestigationsIncludesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludesResponse %p -> %p\n", q, p));
+	*(ns1__getMyInvestigationsIncludesResponse*)p = *(ns1__getMyInvestigationsIncludesResponse*)q;
+}
+
+void ns1__getMyInvestigationsIncludes::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getMyInvestigationsIncludes::sessionId = NULL;
+	this->ns1__getMyInvestigationsIncludes::investigationInclude = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getMyInvestigationsIncludes::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getMyInvestigationsIncludes::sessionId);
+	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__getMyInvestigationsIncludes::investigationInclude);
+	/* transient soap skipped */
+}
+
+int ns1__getMyInvestigationsIncludes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getMyInvestigationsIncludes(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsIncludes *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludes), "ns1:getMyInvestigationsIncludes"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getMyInvestigationsIncludes::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__getMyInvestigationsIncludes::investigationInclude), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getMyInvestigationsIncludes::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getMyInvestigationsIncludes(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludes *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getMyInvestigationsIncludes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsIncludes, sizeof(ns1__getMyInvestigationsIncludes), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsIncludes)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getMyInvestigationsIncludes *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationInclude1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getMyInvestigationsIncludes::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__getMyInvestigationsIncludes::investigationInclude), "ns1:investigationInclude"))
+				{	soap_flag_investigationInclude1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getMyInvestigationsIncludes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsIncludes, 0, sizeof(ns1__getMyInvestigationsIncludes), 0, soap_copy_ns1__getMyInvestigationsIncludes);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getMyInvestigationsIncludes::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsIncludes);
+	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsIncludes", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getMyInvestigationsIncludes::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getMyInvestigationsIncludes(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getMyInvestigationsIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getMyInvestigationsIncludes * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes);
+		if (size)
+			*size = sizeof(ns1__getMyInvestigationsIncludes);
+		((ns1__getMyInvestigationsIncludes*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getMyInvestigationsIncludes);
+		for (int i = 0; i < n; i++)
+			((ns1__getMyInvestigationsIncludes*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getMyInvestigationsIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsIncludes %p -> %p\n", q, p));
+	*(ns1__getMyInvestigationsIncludes*)p = *(ns1__getMyInvestigationsIncludes*)q;
+}
+
+void ns1__getMyInvestigationsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getMyInvestigationsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__getMyInvestigationsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getMyInvestigationsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getMyInvestigationsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigationsResponse(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigationsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigationsResponse), "ns1:getMyInvestigationsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__getMyInvestigationsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getMyInvestigationsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getMyInvestigationsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsResponse * SOAP_FMAC4 soap_in_ns1__getMyInvestigationsResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getMyInvestigationsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigationsResponse, sizeof(ns1__getMyInvestigationsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigationsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getMyInvestigationsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__getMyInvestigationsResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getMyInvestigationsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigationsResponse, 0, sizeof(ns1__getMyInvestigationsResponse), 0, soap_copy_ns1__getMyInvestigationsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getMyInvestigationsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigationsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigationsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getMyInvestigationsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getMyInvestigationsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsResponse * SOAP_FMAC4 soap_get_ns1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getMyInvestigationsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getMyInvestigationsResponse * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigationsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigationsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigationsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse);
+		if (size)
+			*size = sizeof(ns1__getMyInvestigationsResponse);
+		((ns1__getMyInvestigationsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getMyInvestigationsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getMyInvestigationsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getMyInvestigationsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigationsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigationsResponse %p -> %p\n", q, p));
+	*(ns1__getMyInvestigationsResponse*)p = *(ns1__getMyInvestigationsResponse*)q;
+}
+
+void ns1__getMyInvestigations::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getMyInvestigations::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getMyInvestigations::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getMyInvestigations::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__getMyInvestigations::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getMyInvestigations(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getMyInvestigations(struct soap *soap, const char *tag, int id, const ns1__getMyInvestigations *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getMyInvestigations), "ns1:getMyInvestigations"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getMyInvestigations::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getMyInvestigations::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getMyInvestigations(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigations * SOAP_FMAC4 soap_in_ns1__getMyInvestigations(struct soap *soap, const char *tag, ns1__getMyInvestigations *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getMyInvestigations *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getMyInvestigations, sizeof(ns1__getMyInvestigations), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getMyInvestigations)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getMyInvestigations *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getMyInvestigations::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getMyInvestigations *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getMyInvestigations, 0, sizeof(ns1__getMyInvestigations), 0, soap_copy_ns1__getMyInvestigations);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getMyInvestigations::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getMyInvestigations);
+	if (this->soap_out(soap, tag?tag:"ns1:getMyInvestigations", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getMyInvestigations::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getMyInvestigations(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigations * SOAP_FMAC4 soap_get_ns1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getMyInvestigations(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getMyInvestigations * SOAP_FMAC2 soap_instantiate_ns1__getMyInvestigations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getMyInvestigations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getMyInvestigations, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations);
+		if (size)
+			*size = sizeof(ns1__getMyInvestigations);
+		((ns1__getMyInvestigations*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getMyInvestigations);
+		for (int i = 0; i < n; i++)
+			((ns1__getMyInvestigations*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getMyInvestigations*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getMyInvestigations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getMyInvestigations %p -> %p\n", q, p));
+	*(ns1__getMyInvestigations*)p = *(ns1__getMyInvestigations*)q;
+}
+
+void ns1__searchByKeywordsAllResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsAllResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByKeywordsAllResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsAllResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByKeywordsAllResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByKeywordsAllResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, int id, const ns1__searchByKeywordsAllResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywordsAllResponse), "ns1:searchByKeywordsAllResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByKeywordsAllResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByKeywordsAllResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByKeywordsAllResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAllResponse * SOAP_FMAC4 soap_in_ns1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsAllResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByKeywordsAllResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywordsAllResponse, sizeof(ns1__searchByKeywordsAllResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywordsAllResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByKeywordsAllResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByKeywordsAllResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByKeywordsAllResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywordsAllResponse, 0, sizeof(ns1__searchByKeywordsAllResponse), 0, soap_copy_ns1__searchByKeywordsAllResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByKeywordsAllResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywordsAllResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywordsAllResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByKeywordsAllResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByKeywordsAllResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAllResponse * SOAP_FMAC4 soap_get_ns1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByKeywordsAllResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByKeywordsAllResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywordsAllResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywordsAllResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywordsAllResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse);
+		if (size)
+			*size = sizeof(ns1__searchByKeywordsAllResponse);
+		((ns1__searchByKeywordsAllResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByKeywordsAllResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByKeywordsAllResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByKeywordsAllResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywordsAllResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywordsAllResponse %p -> %p\n", q, p));
+	*(ns1__searchByKeywordsAllResponse*)p = *(ns1__searchByKeywordsAllResponse*)q;
+}
+
+void ns1__keywordDetails::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->ns1__keywordDetails::caseSensitive);
+	this->ns1__keywordDetails::investigationInclude = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__keywordDetails::keywords);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__keywordDetails::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__investigationInclude(soap, &this->ns1__keywordDetails::investigationInclude);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__keywordDetails::keywords);
+	/* transient soap skipped */
+}
+
+int ns1__keywordDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__keywordDetails(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordDetails(struct soap *soap, const char *tag, int id, const ns1__keywordDetails *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keywordDetails), "ns1:keywordDetails"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "caseSensitive", -1, &(a->ns1__keywordDetails::caseSensitive), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigationInclude(soap, "investigationInclude", -1, &(a->ns1__keywordDetails::investigationInclude), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "keywords", -1, &(a->ns1__keywordDetails::keywords), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__keywordDetails::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__keywordDetails(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__keywordDetails * SOAP_FMAC4 soap_in_ns1__keywordDetails(struct soap *soap, const char *tag, ns1__keywordDetails *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__keywordDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordDetails, sizeof(ns1__keywordDetails), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__keywordDetails)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__keywordDetails *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_caseSensitive1 = 1;
+	size_t soap_flag_investigationInclude1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_caseSensitive1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "caseSensitive", &(a->ns1__keywordDetails::caseSensitive), "xsd:boolean"))
+				{	soap_flag_caseSensitive1--;
+					continue;
+				}
+			if (soap_flag_investigationInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigationInclude(soap, "investigationInclude", &(a->ns1__keywordDetails::investigationInclude), "ns1:investigationInclude"))
+				{	soap_flag_investigationInclude1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "keywords", &(a->ns1__keywordDetails::keywords), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__keywordDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keywordDetails, 0, sizeof(ns1__keywordDetails), 0, soap_copy_ns1__keywordDetails);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_caseSensitive1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__keywordDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keywordDetails);
+	if (this->soap_out(soap, tag?tag:"ns1:keywordDetails", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__keywordDetails::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__keywordDetails(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__keywordDetails * SOAP_FMAC4 soap_get_ns1__keywordDetails(struct soap *soap, ns1__keywordDetails *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__keywordDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__keywordDetails * SOAP_FMAC2 soap_instantiate_ns1__keywordDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keywordDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keywordDetails, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails);
+		if (size)
+			*size = sizeof(ns1__keywordDetails);
+		((ns1__keywordDetails*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__keywordDetails);
+		for (int i = 0; i < n; i++)
+			((ns1__keywordDetails*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__keywordDetails*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keywordDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keywordDetails %p -> %p\n", q, p));
+	*(ns1__keywordDetails*)p = *(ns1__keywordDetails*)q;
+}
+
+void ns1__searchByKeywordsAll::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByKeywordsAll::sessionId = NULL;
+	this->ns1__searchByKeywordsAll::keywordDetails = NULL;
+	soap_default_int(soap, &this->ns1__searchByKeywordsAll::startIndex);
+	soap_default_int(soap, &this->ns1__searchByKeywordsAll::numberOfResults);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByKeywordsAll::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByKeywordsAll::sessionId);
+	soap_serialize_PointerTons1__keywordDetails(soap, &this->ns1__searchByKeywordsAll::keywordDetails);
+	soap_embedded(soap, &this->ns1__searchByKeywordsAll::startIndex, SOAP_TYPE_int);
+	soap_embedded(soap, &this->ns1__searchByKeywordsAll::numberOfResults, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__searchByKeywordsAll::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByKeywordsAll(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywordsAll(struct soap *soap, const char *tag, int id, const ns1__searchByKeywordsAll *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywordsAll), "ns1:searchByKeywordsAll"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByKeywordsAll::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keywordDetails(soap, "keywordDetails", -1, &(a->ns1__searchByKeywordsAll::keywordDetails), ""))
+		return soap->error;
+	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByKeywordsAll::startIndex), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByKeywordsAll::numberOfResults), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByKeywordsAll::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByKeywordsAll(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAll * SOAP_FMAC4 soap_in_ns1__searchByKeywordsAll(struct soap *soap, const char *tag, ns1__searchByKeywordsAll *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByKeywordsAll *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywordsAll, sizeof(ns1__searchByKeywordsAll), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywordsAll)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByKeywordsAll *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_keywordDetails1 = 1;
+	size_t soap_flag_startIndex1 = 1;
+	size_t soap_flag_numberOfResults1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByKeywordsAll::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_keywordDetails1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keywordDetails(soap, "keywordDetails", &(a->ns1__searchByKeywordsAll::keywordDetails), "ns1:keywordDetails"))
+				{	soap_flag_keywordDetails1--;
+					continue;
+				}
+			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByKeywordsAll::startIndex), "xsd:int"))
+				{	soap_flag_startIndex1--;
+					continue;
+				}
+			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByKeywordsAll::numberOfResults), "xsd:int"))
+				{	soap_flag_numberOfResults1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByKeywordsAll *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywordsAll, 0, sizeof(ns1__searchByKeywordsAll), 0, soap_copy_ns1__searchByKeywordsAll);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByKeywordsAll::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywordsAll);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywordsAll", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByKeywordsAll::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByKeywordsAll(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAll * SOAP_FMAC4 soap_get_ns1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByKeywordsAll(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByKeywordsAll * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywordsAll(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywordsAll(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywordsAll, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll);
+		if (size)
+			*size = sizeof(ns1__searchByKeywordsAll);
+		((ns1__searchByKeywordsAll*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByKeywordsAll);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByKeywordsAll*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByKeywordsAll*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywordsAll(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywordsAll %p -> %p\n", q, p));
+	*(ns1__searchByKeywordsAll*)p = *(ns1__searchByKeywordsAll*)q;
+}
+
+void ns1__searchByKeywordsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByKeywordsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByKeywordsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByKeywordsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByKeywordsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywordsResponse(struct soap *soap, const char *tag, int id, const ns1__searchByKeywordsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywordsResponse), "ns1:searchByKeywordsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByKeywordsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByKeywordsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByKeywordsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsResponse * SOAP_FMAC4 soap_in_ns1__searchByKeywordsResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByKeywordsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywordsResponse, sizeof(ns1__searchByKeywordsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywordsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByKeywordsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByKeywordsResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByKeywordsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywordsResponse, 0, sizeof(ns1__searchByKeywordsResponse), 0, soap_copy_ns1__searchByKeywordsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByKeywordsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywordsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywordsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByKeywordsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByKeywordsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsResponse * SOAP_FMAC4 soap_get_ns1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByKeywordsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByKeywordsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywordsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywordsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywordsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse);
+		if (size)
+			*size = sizeof(ns1__searchByKeywordsResponse);
+		((ns1__searchByKeywordsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByKeywordsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByKeywordsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByKeywordsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywordsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywordsResponse %p -> %p\n", q, p));
+	*(ns1__searchByKeywordsResponse*)p = *(ns1__searchByKeywordsResponse*)q;
+}
+
+void ns1__searchByKeywords::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByKeywords::sessionId = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByKeywords::keywords);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByKeywords::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByKeywords::sessionId);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__searchByKeywords::keywords);
+	/* transient soap skipped */
+}
+
+int ns1__searchByKeywords::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByKeywords(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByKeywords(struct soap *soap, const char *tag, int id, const ns1__searchByKeywords *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByKeywords), "ns1:searchByKeywords"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByKeywords::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "keywords", -1, &(a->ns1__searchByKeywords::keywords), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByKeywords::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByKeywords(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywords * SOAP_FMAC4 soap_in_ns1__searchByKeywords(struct soap *soap, const char *tag, ns1__searchByKeywords *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByKeywords *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByKeywords, sizeof(ns1__searchByKeywords), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByKeywords)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByKeywords *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByKeywords::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "keywords", &(a->ns1__searchByKeywords::keywords), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByKeywords *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByKeywords, 0, sizeof(ns1__searchByKeywords), 0, soap_copy_ns1__searchByKeywords);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByKeywords::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByKeywords);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByKeywords", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByKeywords::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByKeywords(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywords * SOAP_FMAC4 soap_get_ns1__searchByKeywords(struct soap *soap, ns1__searchByKeywords *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByKeywords(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByKeywords * SOAP_FMAC2 soap_instantiate_ns1__searchByKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByKeywords, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords);
+		if (size)
+			*size = sizeof(ns1__searchByKeywords);
+		((ns1__searchByKeywords*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByKeywords);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByKeywords*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByKeywords*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByKeywords %p -> %p\n", q, p));
+	*(ns1__searchByKeywords*)p = *(ns1__searchByKeywords*)q;
+}
+
+void ns1__checkDatasetDownloadAccessResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__checkDatasetDownloadAccessResponse::downloadInfo = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__checkDatasetDownloadAccessResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__downloadInfo(soap, &this->ns1__checkDatasetDownloadAccessResponse::downloadInfo);
+	/* transient soap skipped */
+}
+
+int ns1__checkDatasetDownloadAccessResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__checkDatasetDownloadAccessResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, int id, const ns1__checkDatasetDownloadAccessResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse), "ns1:checkDatasetDownloadAccessResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__downloadInfo(soap, "downloadInfo", -1, &(a->ns1__checkDatasetDownloadAccessResponse::downloadInfo), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__checkDatasetDownloadAccessResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__checkDatasetDownloadAccessResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse * SOAP_FMAC4 soap_in_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccessResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__checkDatasetDownloadAccessResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, sizeof(ns1__checkDatasetDownloadAccessResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__checkDatasetDownloadAccessResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_downloadInfo1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_downloadInfo1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__downloadInfo(soap, "downloadInfo", &(a->ns1__checkDatasetDownloadAccessResponse::downloadInfo), "ns1:downloadInfo"))
+				{	soap_flag_downloadInfo1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__checkDatasetDownloadAccessResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, 0, sizeof(ns1__checkDatasetDownloadAccessResponse), 0, soap_copy_ns1__checkDatasetDownloadAccessResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__checkDatasetDownloadAccessResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:checkDatasetDownloadAccessResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__checkDatasetDownloadAccessResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__checkDatasetDownloadAccessResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse * SOAP_FMAC4 soap_get_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__checkDatasetDownloadAccessResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__checkDatasetDownloadAccessResponse * SOAP_FMAC2 soap_instantiate_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatasetDownloadAccessResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse);
+		if (size)
+			*size = sizeof(ns1__checkDatasetDownloadAccessResponse);
+		((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__checkDatasetDownloadAccessResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__checkDatasetDownloadAccessResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatasetDownloadAccessResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatasetDownloadAccessResponse %p -> %p\n", q, p));
+	*(ns1__checkDatasetDownloadAccessResponse*)p = *(ns1__checkDatasetDownloadAccessResponse*)q;
+}
+
+void ns1__checkDatasetDownloadAccess::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__checkDatasetDownloadAccess::sessionId = NULL;
+	this->ns1__checkDatasetDownloadAccess::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__checkDatasetDownloadAccess::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__checkDatasetDownloadAccess::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__checkDatasetDownloadAccess::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__checkDatasetDownloadAccess::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__checkDatasetDownloadAccess(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, int id, const ns1__checkDatasetDownloadAccess *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccess), "ns1:checkDatasetDownloadAccess"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__checkDatasetDownloadAccess::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__checkDatasetDownloadAccess::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__checkDatasetDownloadAccess::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__checkDatasetDownloadAccess(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_in_ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccess *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__checkDatasetDownloadAccess *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatasetDownloadAccess, sizeof(ns1__checkDatasetDownloadAccess), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__checkDatasetDownloadAccess)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__checkDatasetDownloadAccess *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__checkDatasetDownloadAccess::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__checkDatasetDownloadAccess::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__checkDatasetDownloadAccess *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatasetDownloadAccess, 0, sizeof(ns1__checkDatasetDownloadAccess), 0, soap_copy_ns1__checkDatasetDownloadAccess);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__checkDatasetDownloadAccess::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatasetDownloadAccess);
+	if (this->soap_out(soap, tag?tag:"ns1:checkDatasetDownloadAccess", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__checkDatasetDownloadAccess::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__checkDatasetDownloadAccess(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_get_ns1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__checkDatasetDownloadAccess(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__checkDatasetDownloadAccess * SOAP_FMAC2 soap_instantiate_ns1__checkDatasetDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatasetDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatasetDownloadAccess, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess);
+		if (size)
+			*size = sizeof(ns1__checkDatasetDownloadAccess);
+		((ns1__checkDatasetDownloadAccess*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__checkDatasetDownloadAccess);
+		for (int i = 0; i < n; i++)
+			((ns1__checkDatasetDownloadAccess*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__checkDatasetDownloadAccess*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatasetDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatasetDownloadAccess %p -> %p\n", q, p));
+	*(ns1__checkDatasetDownloadAccess*)p = *(ns1__checkDatasetDownloadAccess*)q;
+}
+
+void ns1__searchByUserSurnamePaginationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnamePaginationResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserSurnamePaginationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnamePaginationResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserSurnamePaginationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserSurnamePaginationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurnamePaginationResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse), "ns1:searchByUserSurnamePaginationResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserSurnamePaginationResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserSurnamePaginationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserSurnamePaginationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse * SOAP_FMAC4 soap_in_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnamePaginationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserSurnamePaginationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, sizeof(ns1__searchByUserSurnamePaginationResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserSurnamePaginationResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserSurnamePaginationResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserSurnamePaginationResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, 0, sizeof(ns1__searchByUserSurnamePaginationResponse), 0, soap_copy_ns1__searchByUserSurnamePaginationResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserSurnamePaginationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurnamePaginationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserSurnamePaginationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserSurnamePaginationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse * SOAP_FMAC4 soap_get_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserSurnamePaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserSurnamePaginationResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurnamePaginationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse);
+		if (size)
+			*size = sizeof(ns1__searchByUserSurnamePaginationResponse);
+		((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserSurnamePaginationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserSurnamePaginationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurnamePaginationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurnamePaginationResponse %p -> %p\n", q, p));
+	*(ns1__searchByUserSurnamePaginationResponse*)p = *(ns1__searchByUserSurnamePaginationResponse*)q;
+}
+
+void ns1__searchByUserSurnamePagination::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByUserSurnamePagination::sessionId = NULL;
+	this->ns1__searchByUserSurnamePagination::surname = NULL;
+	soap_default_int(soap, &this->ns1__searchByUserSurnamePagination::startIndex);
+	soap_default_int(soap, &this->ns1__searchByUserSurnamePagination::numberOfResults);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserSurnamePagination::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurnamePagination::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurnamePagination::surname);
+	soap_embedded(soap, &this->ns1__searchByUserSurnamePagination::startIndex, SOAP_TYPE_int);
+	soap_embedded(soap, &this->ns1__searchByUserSurnamePagination::numberOfResults, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserSurnamePagination::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserSurnamePagination(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurnamePagination *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurnamePagination), "ns1:searchByUserSurnamePagination"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserSurnamePagination::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "surname", -1, &(a->ns1__searchByUserSurnamePagination::surname), ""))
+		return soap->error;
+	if (soap_out_int(soap, "startIndex", -1, &(a->ns1__searchByUserSurnamePagination::startIndex), ""))
+		return soap->error;
+	if (soap_out_int(soap, "numberOfResults", -1, &(a->ns1__searchByUserSurnamePagination::numberOfResults), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserSurnamePagination::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserSurnamePagination(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_in_ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, ns1__searchByUserSurnamePagination *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserSurnamePagination *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurnamePagination, sizeof(ns1__searchByUserSurnamePagination), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurnamePagination)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserSurnamePagination *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_surname1 = 1;
+	size_t soap_flag_startIndex1 = 1;
+	size_t soap_flag_numberOfResults1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserSurnamePagination::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_surname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "surname", &(a->ns1__searchByUserSurnamePagination::surname), "xsd:string"))
+				{	soap_flag_surname1--;
+					continue;
+				}
+			if (soap_flag_startIndex1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "startIndex", &(a->ns1__searchByUserSurnamePagination::startIndex), "xsd:int"))
+				{	soap_flag_startIndex1--;
+					continue;
+				}
+			if (soap_flag_numberOfResults1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_int(soap, "numberOfResults", &(a->ns1__searchByUserSurnamePagination::numberOfResults), "xsd:int"))
+				{	soap_flag_numberOfResults1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserSurnamePagination *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurnamePagination, 0, sizeof(ns1__searchByUserSurnamePagination), 0, soap_copy_ns1__searchByUserSurnamePagination);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_startIndex1 > 0 || soap_flag_numberOfResults1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserSurnamePagination::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurnamePagination);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurnamePagination", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserSurnamePagination::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserSurnamePagination(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_get_ns1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserSurnamePagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserSurnamePagination * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurnamePagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurnamePagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurnamePagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination);
+		if (size)
+			*size = sizeof(ns1__searchByUserSurnamePagination);
+		((ns1__searchByUserSurnamePagination*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserSurnamePagination);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserSurnamePagination*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserSurnamePagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurnamePagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurnamePagination %p -> %p\n", q, p));
+	*(ns1__searchByUserSurnamePagination*)p = *(ns1__searchByUserSurnamePagination*)q;
+}
+
+void ns1__searchByUserSurnameResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnameResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserSurnameResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByUserSurnameResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserSurnameResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserSurnameResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurnameResponse(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurnameResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurnameResponse), "ns1:searchByUserSurnameResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByUserSurnameResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserSurnameResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserSurnameResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnameResponse * SOAP_FMAC4 soap_in_ns1__searchByUserSurnameResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnameResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserSurnameResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurnameResponse, sizeof(ns1__searchByUserSurnameResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurnameResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserSurnameResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByUserSurnameResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserSurnameResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurnameResponse, 0, sizeof(ns1__searchByUserSurnameResponse), 0, soap_copy_ns1__searchByUserSurnameResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserSurnameResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurnameResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurnameResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserSurnameResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserSurnameResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnameResponse * SOAP_FMAC4 soap_get_ns1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserSurnameResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserSurnameResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurnameResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurnameResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurnameResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse);
+		if (size)
+			*size = sizeof(ns1__searchByUserSurnameResponse);
+		((ns1__searchByUserSurnameResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserSurnameResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserSurnameResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserSurnameResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurnameResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurnameResponse %p -> %p\n", q, p));
+	*(ns1__searchByUserSurnameResponse*)p = *(ns1__searchByUserSurnameResponse*)q;
+}
+
+void ns1__searchByUserSurname::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByUserSurname::sessionId = NULL;
+	this->ns1__searchByUserSurname::surname = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByUserSurname::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurname::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByUserSurname::surname);
+	/* transient soap skipped */
+}
+
+int ns1__searchByUserSurname::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByUserSurname(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByUserSurname(struct soap *soap, const char *tag, int id, const ns1__searchByUserSurname *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByUserSurname), "ns1:searchByUserSurname"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByUserSurname::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "surname", -1, &(a->ns1__searchByUserSurname::surname), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByUserSurname::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByUserSurname(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurname * SOAP_FMAC4 soap_in_ns1__searchByUserSurname(struct soap *soap, const char *tag, ns1__searchByUserSurname *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByUserSurname *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByUserSurname, sizeof(ns1__searchByUserSurname), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByUserSurname)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByUserSurname *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_surname1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByUserSurname::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_surname1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "surname", &(a->ns1__searchByUserSurname::surname), "xsd:string"))
+				{	soap_flag_surname1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByUserSurname *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByUserSurname, 0, sizeof(ns1__searchByUserSurname), 0, soap_copy_ns1__searchByUserSurname);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByUserSurname::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByUserSurname);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByUserSurname", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByUserSurname::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByUserSurname(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurname * SOAP_FMAC4 soap_get_ns1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByUserSurname(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByUserSurname * SOAP_FMAC2 soap_instantiate_ns1__searchByUserSurname(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByUserSurname(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByUserSurname, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname);
+		if (size)
+			*size = sizeof(ns1__searchByUserSurname);
+		((ns1__searchByUserSurname*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByUserSurname);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByUserSurname*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByUserSurname*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByUserSurname(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByUserSurname %p -> %p\n", q, p));
+	*(ns1__searchByUserSurname*)p = *(ns1__searchByUserSurname*)q;
+}
+
+void ns1__deleteDataFileResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataFileResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataFileResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__deleteDataFileResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteDataFileResponse");
+}
+
+void *ns1__deleteDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataFileResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileResponse * SOAP_FMAC4 soap_in_ns1__deleteDataFileResponse(struct soap *soap, const char *tag, ns1__deleteDataFileResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFileResponse, sizeof(ns1__deleteDataFileResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFileResponse)
+			return (ns1__deleteDataFileResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFileResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFileResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataFileResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileResponse * SOAP_FMAC4 soap_get_ns1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse);
+		if (size)
+			*size = sizeof(ns1__deleteDataFileResponse);
+		((ns1__deleteDataFileResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataFileResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataFileResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFileResponse %p -> %p\n", q, p));
+	*(ns1__deleteDataFileResponse*)p = *(ns1__deleteDataFileResponse*)q;
+}
+
+void ns1__deleteDataFile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteDataFile::sessionId = NULL;
+	this->ns1__deleteDataFile::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteDataFile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteDataFile::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteDataFile::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__deleteDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteDataFile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteDataFile(struct soap *soap, const char *tag, int id, const ns1__deleteDataFile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteDataFile), "ns1:deleteDataFile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteDataFile::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__deleteDataFile::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteDataFile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFile * SOAP_FMAC4 soap_in_ns1__deleteDataFile(struct soap *soap, const char *tag, ns1__deleteDataFile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteDataFile, sizeof(ns1__deleteDataFile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteDataFile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteDataFile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteDataFile::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__deleteDataFile::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteDataFile, 0, sizeof(ns1__deleteDataFile), 0, soap_copy_ns1__deleteDataFile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteDataFile);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteDataFile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteDataFile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFile * SOAP_FMAC4 soap_get_ns1__deleteDataFile(struct soap *soap, ns1__deleteDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteDataFile * SOAP_FMAC2 soap_instantiate_ns1__deleteDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile);
+		if (size)
+			*size = sizeof(ns1__deleteDataFile);
+		((ns1__deleteDataFile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteDataFile);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteDataFile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteDataFile %p -> %p\n", q, p));
+	*(ns1__deleteDataFile*)p = *(ns1__deleteDataFile*)q;
+}
+
+void ns1__downloadInfo::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadInfo::credential = NULL;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__downloadInfo::datafileLocations);
+	soap_default_std__vectorTemplateOfPointerToxsd__anyType(soap, &this->ns1__downloadInfo::datafileNames);
+	this->ns1__downloadInfo::userId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadInfo::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadInfo::credential);
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__downloadInfo::datafileLocations);
+	soap_serialize_std__vectorTemplateOfPointerToxsd__anyType(soap, &this->ns1__downloadInfo::datafileNames);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadInfo::userId);
+	/* transient soap skipped */
+}
+
+int ns1__downloadInfo::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadInfo(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadInfo(struct soap *soap, const char *tag, int id, const ns1__downloadInfo *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadInfo), "ns1:downloadInfo"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "credential", -1, &(a->ns1__downloadInfo::credential), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "datafileLocations", -1, &(a->ns1__downloadInfo::datafileLocations), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerToxsd__anyType(soap, "datafileNames", -1, &(a->ns1__downloadInfo::datafileNames), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "userId", -1, &(a->ns1__downloadInfo::userId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadInfo::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadInfo(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadInfo * SOAP_FMAC4 soap_in_ns1__downloadInfo(struct soap *soap, const char *tag, ns1__downloadInfo *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadInfo *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadInfo, sizeof(ns1__downloadInfo), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadInfo)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadInfo *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_credential1 = 1;
+	size_t soap_flag_userId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_credential1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "credential", &(a->ns1__downloadInfo::credential), "xsd:string"))
+				{	soap_flag_credential1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "datafileLocations", &(a->ns1__downloadInfo::datafileLocations), "xsd:string"))
+					continue;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerToxsd__anyType(soap, "datafileNames", &(a->ns1__downloadInfo::datafileNames), "xsd:anyType"))
+					continue;
+			if (soap_flag_userId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "userId", &(a->ns1__downloadInfo::userId), "xsd:string"))
+				{	soap_flag_userId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadInfo *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadInfo, 0, sizeof(ns1__downloadInfo), 0, soap_copy_ns1__downloadInfo);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadInfo::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadInfo);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadInfo", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadInfo::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadInfo(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadInfo * SOAP_FMAC4 soap_get_ns1__downloadInfo(struct soap *soap, ns1__downloadInfo *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadInfo(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadInfo * SOAP_FMAC2 soap_instantiate_ns1__downloadInfo(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadInfo(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadInfo, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo);
+		if (size)
+			*size = sizeof(ns1__downloadInfo);
+		((ns1__downloadInfo*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadInfo);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadInfo*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadInfo*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadInfo(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadInfo %p -> %p\n", q, p));
+	*(ns1__downloadInfo*)p = *(ns1__downloadInfo*)q;
+}
+
+void ns1__checkDatafileDownloadAccessResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__checkDatafileDownloadAccessResponse::downloadInfo = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__checkDatafileDownloadAccessResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__downloadInfo(soap, &this->ns1__checkDatafileDownloadAccessResponse::downloadInfo);
+	/* transient soap skipped */
+}
+
+int ns1__checkDatafileDownloadAccessResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__checkDatafileDownloadAccessResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, int id, const ns1__checkDatafileDownloadAccessResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse), "ns1:checkDatafileDownloadAccessResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__downloadInfo(soap, "downloadInfo", -1, &(a->ns1__checkDatafileDownloadAccessResponse::downloadInfo), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__checkDatafileDownloadAccessResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__checkDatafileDownloadAccessResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse * SOAP_FMAC4 soap_in_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccessResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__checkDatafileDownloadAccessResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, sizeof(ns1__checkDatafileDownloadAccessResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__checkDatafileDownloadAccessResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_downloadInfo1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_downloadInfo1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__downloadInfo(soap, "downloadInfo", &(a->ns1__checkDatafileDownloadAccessResponse::downloadInfo), "ns1:downloadInfo"))
+				{	soap_flag_downloadInfo1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__checkDatafileDownloadAccessResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, 0, sizeof(ns1__checkDatafileDownloadAccessResponse), 0, soap_copy_ns1__checkDatafileDownloadAccessResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__checkDatafileDownloadAccessResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:checkDatafileDownloadAccessResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__checkDatafileDownloadAccessResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__checkDatafileDownloadAccessResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse * SOAP_FMAC4 soap_get_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__checkDatafileDownloadAccessResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__checkDatafileDownloadAccessResponse * SOAP_FMAC2 soap_instantiate_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatafileDownloadAccessResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse);
+		if (size)
+			*size = sizeof(ns1__checkDatafileDownloadAccessResponse);
+		((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__checkDatafileDownloadAccessResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__checkDatafileDownloadAccessResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatafileDownloadAccessResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatafileDownloadAccessResponse %p -> %p\n", q, p));
+	*(ns1__checkDatafileDownloadAccessResponse*)p = *(ns1__checkDatafileDownloadAccessResponse*)q;
+}
+
+void ns1__checkDatafileDownloadAccess::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__checkDatafileDownloadAccess::sessionId = NULL;
+	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__checkDatafileDownloadAccess::datafileIds);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__checkDatafileDownloadAccess::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__checkDatafileDownloadAccess::sessionId);
+	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__checkDatafileDownloadAccess::datafileIds);
+	/* transient soap skipped */
+}
+
+int ns1__checkDatafileDownloadAccess::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__checkDatafileDownloadAccess(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, int id, const ns1__checkDatafileDownloadAccess *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccess), "ns1:checkDatafileDownloadAccess"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__checkDatafileDownloadAccess::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfLONG64(soap, "datafileIds", -1, &(a->ns1__checkDatafileDownloadAccess::datafileIds), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__checkDatafileDownloadAccess::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__checkDatafileDownloadAccess(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_in_ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccess *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__checkDatafileDownloadAccess *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__checkDatafileDownloadAccess, sizeof(ns1__checkDatafileDownloadAccess), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__checkDatafileDownloadAccess)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__checkDatafileDownloadAccess *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__checkDatafileDownloadAccess::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfLONG64(soap, "datafileIds", &(a->ns1__checkDatafileDownloadAccess::datafileIds), "xsd:long"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__checkDatafileDownloadAccess *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__checkDatafileDownloadAccess, 0, sizeof(ns1__checkDatafileDownloadAccess), 0, soap_copy_ns1__checkDatafileDownloadAccess);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__checkDatafileDownloadAccess::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__checkDatafileDownloadAccess);
+	if (this->soap_out(soap, tag?tag:"ns1:checkDatafileDownloadAccess", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__checkDatafileDownloadAccess::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__checkDatafileDownloadAccess(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_get_ns1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__checkDatafileDownloadAccess(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__checkDatafileDownloadAccess * SOAP_FMAC2 soap_instantiate_ns1__checkDatafileDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__checkDatafileDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__checkDatafileDownloadAccess, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess);
+		if (size)
+			*size = sizeof(ns1__checkDatafileDownloadAccess);
+		((ns1__checkDatafileDownloadAccess*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__checkDatafileDownloadAccess);
+		for (int i = 0; i < n; i++)
+			((ns1__checkDatafileDownloadAccess*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__checkDatafileDownloadAccess*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__checkDatafileDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__checkDatafileDownloadAccess %p -> %p\n", q, p));
+	*(ns1__checkDatafileDownloadAccess*)p = *(ns1__checkDatafileDownloadAccess*)q;
+}
+
+void ns1__getFacilityUserByFacilityUserIdResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getFacilityUserByFacilityUserIdResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getFacilityUserByFacilityUserIdResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__facilityUser(soap, &this->ns1__getFacilityUserByFacilityUserIdResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getFacilityUserByFacilityUserIdResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getFacilityUserByFacilityUserIdResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFacilityUserIdResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse), "ns1:getFacilityUserByFacilityUserIdResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__facilityUser(soap, "return", -1, &(a->ns1__getFacilityUserByFacilityUserIdResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getFacilityUserByFacilityUserIdResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserIdResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getFacilityUserByFacilityUserIdResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getFacilityUserByFacilityUserIdResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__facilityUser(soap, "return", &(a->ns1__getFacilityUserByFacilityUserIdResponse::return_), "ns1:facilityUser"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getFacilityUserByFacilityUserIdResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, 0, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), 0, soap_copy_ns1__getFacilityUserByFacilityUserIdResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getFacilityUserByFacilityUserIdResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFacilityUserIdResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getFacilityUserByFacilityUserIdResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getFacilityUserByFacilityUserIdResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getFacilityUserByFacilityUserIdResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getFacilityUserByFacilityUserIdResponse * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse);
+		if (size)
+			*size = sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
+		((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFacilityUserIdResponse %p -> %p\n", q, p));
+	*(ns1__getFacilityUserByFacilityUserIdResponse*)p = *(ns1__getFacilityUserByFacilityUserIdResponse*)q;
+}
+
+void ns1__getFacilityUserByFacilityUserId::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getFacilityUserByFacilityUserId::sessionId = NULL;
+	this->ns1__getFacilityUserByFacilityUserId::facilityUserId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getFacilityUserByFacilityUserId::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFacilityUserId::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFacilityUserId::facilityUserId);
+	/* transient soap skipped */
+}
+
+int ns1__getFacilityUserByFacilityUserId::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getFacilityUserByFacilityUserId(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFacilityUserId *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId), "ns1:getFacilityUserByFacilityUserId"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getFacilityUserByFacilityUserId::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "facilityUserId", -1, &(a->ns1__getFacilityUserByFacilityUserId::facilityUserId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getFacilityUserByFacilityUserId::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getFacilityUserByFacilityUserId(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserId *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getFacilityUserByFacilityUserId *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, sizeof(ns1__getFacilityUserByFacilityUserId), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFacilityUserId)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getFacilityUserByFacilityUserId *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_facilityUserId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getFacilityUserByFacilityUserId::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_facilityUserId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "facilityUserId", &(a->ns1__getFacilityUserByFacilityUserId::facilityUserId), "xsd:string"))
+				{	soap_flag_facilityUserId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getFacilityUserByFacilityUserId *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, 0, sizeof(ns1__getFacilityUserByFacilityUserId), 0, soap_copy_ns1__getFacilityUserByFacilityUserId);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getFacilityUserByFacilityUserId::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId);
+	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFacilityUserId", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getFacilityUserByFacilityUserId::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getFacilityUserByFacilityUserId(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getFacilityUserByFacilityUserId(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getFacilityUserByFacilityUserId * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFacilityUserId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFacilityUserId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId);
+		if (size)
+			*size = sizeof(ns1__getFacilityUserByFacilityUserId);
+		((ns1__getFacilityUserByFacilityUserId*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getFacilityUserByFacilityUserId);
+		for (int i = 0; i < n; i++)
+			((ns1__getFacilityUserByFacilityUserId*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getFacilityUserByFacilityUserId*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFacilityUserId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFacilityUserId %p -> %p\n", q, p));
+	*(ns1__getFacilityUserByFacilityUserId*)p = *(ns1__getFacilityUserByFacilityUserId*)q;
+}
+
+void ns1__addSampleParameterResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addSampleParameterResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addSampleParameterResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__sampleParameter(soap, &this->ns1__addSampleParameterResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addSampleParameterResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addSampleParameterResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSampleParameterResponse(struct soap *soap, const char *tag, int id, const ns1__addSampleParameterResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSampleParameterResponse), "ns1:addSampleParameterResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__sampleParameter(soap, "return", -1, &(a->ns1__addSampleParameterResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addSampleParameterResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addSampleParameterResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addSampleParameterResponse * SOAP_FMAC4 soap_in_ns1__addSampleParameterResponse(struct soap *soap, const char *tag, ns1__addSampleParameterResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addSampleParameterResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSampleParameterResponse, sizeof(ns1__addSampleParameterResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addSampleParameterResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addSampleParameterResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sampleParameter(soap, "return", &(a->ns1__addSampleParameterResponse::return_), "ns1:sampleParameter"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addSampleParameterResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSampleParameterResponse, 0, sizeof(ns1__addSampleParameterResponse), 0, soap_copy_ns1__addSampleParameterResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addSampleParameterResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSampleParameterResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addSampleParameterResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addSampleParameterResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addSampleParameterResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addSampleParameterResponse * SOAP_FMAC4 soap_get_ns1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addSampleParameterResponse * SOAP_FMAC2 soap_instantiate_ns1__addSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse);
+		if (size)
+			*size = sizeof(ns1__addSampleParameterResponse);
+		((ns1__addSampleParameterResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addSampleParameterResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addSampleParameterResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addSampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSampleParameterResponse %p -> %p\n", q, p));
+	*(ns1__addSampleParameterResponse*)p = *(ns1__addSampleParameterResponse*)q;
+}
+
+void ns1__addSampleParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addSampleParameter::sessionId = NULL;
+	this->ns1__addSampleParameter::sampleParameter = NULL;
+	this->ns1__addSampleParameter::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addSampleParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addSampleParameter::sessionId);
+	soap_serialize_PointerTons1__sampleParameter(soap, &this->ns1__addSampleParameter::sampleParameter);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addSampleParameter::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__addSampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addSampleParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addSampleParameter(struct soap *soap, const char *tag, int id, const ns1__addSampleParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addSampleParameter), "ns1:addSampleParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addSampleParameter::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sampleParameter(soap, "sampleParameter", -1, &(a->ns1__addSampleParameter::sampleParameter), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__addSampleParameter::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addSampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addSampleParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addSampleParameter * SOAP_FMAC4 soap_in_ns1__addSampleParameter(struct soap *soap, const char *tag, ns1__addSampleParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addSampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addSampleParameter, sizeof(ns1__addSampleParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addSampleParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addSampleParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleParameter1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addSampleParameter::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sampleParameter(soap, "sampleParameter", &(a->ns1__addSampleParameter::sampleParameter), "ns1:sampleParameter"))
+				{	soap_flag_sampleParameter1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__addSampleParameter::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addSampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addSampleParameter, 0, sizeof(ns1__addSampleParameter), 0, soap_copy_ns1__addSampleParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addSampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addSampleParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:addSampleParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addSampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addSampleParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addSampleParameter * SOAP_FMAC4 soap_get_ns1__addSampleParameter(struct soap *soap, ns1__addSampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addSampleParameter * SOAP_FMAC2 soap_instantiate_ns1__addSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addSampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter);
+		if (size)
+			*size = sizeof(ns1__addSampleParameter);
+		((ns1__addSampleParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addSampleParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__addSampleParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addSampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addSampleParameter %p -> %p\n", q, p));
+	*(ns1__addSampleParameter*)p = *(ns1__addSampleParameter*)q;
+}
+
+void ns1__modifyDataSetResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataSetResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataSetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataSetResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSetResponse(struct soap *soap, const char *tag, int id, const ns1__modifyDataSetResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifyDataSetResponse");
+}
+
+void *ns1__modifyDataSetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataSetResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetResponse * SOAP_FMAC4 soap_in_ns1__modifyDataSetResponse(struct soap *soap, const char *tag, ns1__modifyDataSetResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifyDataSetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSetResponse, sizeof(ns1__modifyDataSetResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSetResponse)
+			return (ns1__modifyDataSetResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifyDataSetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSetResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSetResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataSetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataSetResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetResponse * SOAP_FMAC4 soap_get_ns1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataSetResponse * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse);
+		if (size)
+			*size = sizeof(ns1__modifyDataSetResponse);
+		((ns1__modifyDataSetResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataSetResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataSetResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSetResponse %p -> %p\n", q, p));
+	*(ns1__modifyDataSetResponse*)p = *(ns1__modifyDataSetResponse*)q;
+}
+
+void ns1__modifyDataSet::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifyDataSet::sessionId = NULL;
+	this->ns1__modifyDataSet::dataSet = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifyDataSet::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifyDataSet::sessionId);
+	soap_serialize_PointerTons1__dataset(soap, &this->ns1__modifyDataSet::dataSet);
+	/* transient soap skipped */
+}
+
+int ns1__modifyDataSet::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifyDataSet(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifyDataSet(struct soap *soap, const char *tag, int id, const ns1__modifyDataSet *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifyDataSet), "ns1:modifyDataSet"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifyDataSet::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__dataset(soap, "dataSet", -1, &(a->ns1__modifyDataSet::dataSet), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifyDataSet::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifyDataSet(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSet * SOAP_FMAC4 soap_in_ns1__modifyDataSet(struct soap *soap, const char *tag, ns1__modifyDataSet *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifyDataSet *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifyDataSet, sizeof(ns1__modifyDataSet), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifyDataSet)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifyDataSet *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataSet1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifyDataSet::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataSet1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__dataset(soap, "dataSet", &(a->ns1__modifyDataSet::dataSet), "ns1:dataset"))
+				{	soap_flag_dataSet1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifyDataSet *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifyDataSet, 0, sizeof(ns1__modifyDataSet), 0, soap_copy_ns1__modifyDataSet);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifyDataSet::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifyDataSet);
+	if (this->soap_out(soap, tag?tag:"ns1:modifyDataSet", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifyDataSet::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifyDataSet(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSet * SOAP_FMAC4 soap_get_ns1__modifyDataSet(struct soap *soap, ns1__modifyDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifyDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifyDataSet * SOAP_FMAC2 soap_instantiate_ns1__modifyDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifyDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifyDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet);
+		if (size)
+			*size = sizeof(ns1__modifyDataSet);
+		((ns1__modifyDataSet*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifyDataSet);
+		for (int i = 0; i < n; i++)
+			((ns1__modifyDataSet*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifyDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifyDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifyDataSet %p -> %p\n", q, p));
+	*(ns1__modifyDataSet*)p = *(ns1__modifyDataSet*)q;
+}
+
+void ns1__downloadDatafilesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadDatafilesResponse::URL = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadDatafilesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafilesResponse::URL);
+	/* transient soap skipped */
+}
+
+int ns1__downloadDatafilesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadDatafilesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafilesResponse(struct soap *soap, const char *tag, int id, const ns1__downloadDatafilesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafilesResponse), "ns1:downloadDatafilesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "URL", -1, &(a->ns1__downloadDatafilesResponse::URL), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadDatafilesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadDatafilesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafilesResponse * SOAP_FMAC4 soap_in_ns1__downloadDatafilesResponse(struct soap *soap, const char *tag, ns1__downloadDatafilesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadDatafilesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafilesResponse, sizeof(ns1__downloadDatafilesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafilesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadDatafilesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_URL1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "URL", &(a->ns1__downloadDatafilesResponse::URL), "xsd:string"))
+				{	soap_flag_URL1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadDatafilesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafilesResponse, 0, sizeof(ns1__downloadDatafilesResponse), 0, soap_copy_ns1__downloadDatafilesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadDatafilesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafilesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafilesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadDatafilesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadDatafilesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafilesResponse * SOAP_FMAC4 soap_get_ns1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadDatafilesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadDatafilesResponse * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafilesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafilesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafilesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse);
+		if (size)
+			*size = sizeof(ns1__downloadDatafilesResponse);
+		((ns1__downloadDatafilesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadDatafilesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadDatafilesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadDatafilesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafilesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafilesResponse %p -> %p\n", q, p));
+	*(ns1__downloadDatafilesResponse*)p = *(ns1__downloadDatafilesResponse*)q;
+}
+
+void ns1__downloadDatafiles::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadDatafiles::sessionId = NULL;
+	soap_default_std__vectorTemplateOfLONG64(soap, &this->ns1__downloadDatafiles::datafileIds);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadDatafiles::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatafiles::sessionId);
+	soap_serialize_std__vectorTemplateOfLONG64(soap, &this->ns1__downloadDatafiles::datafileIds);
+	/* transient soap skipped */
+}
+
+int ns1__downloadDatafiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadDatafiles(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatafiles(struct soap *soap, const char *tag, int id, const ns1__downloadDatafiles *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatafiles), "ns1:downloadDatafiles"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__downloadDatafiles::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfLONG64(soap, "datafileIds", -1, &(a->ns1__downloadDatafiles::datafileIds), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadDatafiles::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadDatafiles(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafiles * SOAP_FMAC4 soap_in_ns1__downloadDatafiles(struct soap *soap, const char *tag, ns1__downloadDatafiles *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadDatafiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatafiles, sizeof(ns1__downloadDatafiles), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatafiles)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadDatafiles *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__downloadDatafiles::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfLONG64(soap, "datafileIds", &(a->ns1__downloadDatafiles::datafileIds), "xsd:long"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadDatafiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatafiles, 0, sizeof(ns1__downloadDatafiles), 0, soap_copy_ns1__downloadDatafiles);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadDatafiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatafiles);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadDatafiles", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadDatafiles::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadDatafiles(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafiles * SOAP_FMAC4 soap_get_ns1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadDatafiles * SOAP_FMAC2 soap_instantiate_ns1__downloadDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatafiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles);
+		if (size)
+			*size = sizeof(ns1__downloadDatafiles);
+		((ns1__downloadDatafiles*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadDatafiles);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadDatafiles*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadDatafiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatafiles %p -> %p\n", q, p));
+	*(ns1__downloadDatafiles*)p = *(ns1__downloadDatafiles*)q;
+}
+
+void ns1__NoSuchUserException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__NoSuchUserException::message = NULL;
+	this->ns1__NoSuchUserException::stackTraceAsString = NULL;
+	this->ns1__NoSuchUserException::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__NoSuchUserException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchUserException::message);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchUserException::stackTraceAsString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchUserException::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__NoSuchUserException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__NoSuchUserException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__NoSuchUserException(struct soap *soap, const char *tag, int id, const ns1__NoSuchUserException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__NoSuchUserException), "ns1:NoSuchUserException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__NoSuchUserException::message), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__NoSuchUserException::stackTraceAsString), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__NoSuchUserException::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__NoSuchUserException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__NoSuchUserException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__NoSuchUserException * SOAP_FMAC4 soap_in_ns1__NoSuchUserException(struct soap *soap, const char *tag, ns1__NoSuchUserException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__NoSuchUserException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__NoSuchUserException, sizeof(ns1__NoSuchUserException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__NoSuchUserException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__NoSuchUserException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	size_t soap_flag_stackTraceAsString1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__NoSuchUserException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__NoSuchUserException::stackTraceAsString), "xsd:string"))
+				{	soap_flag_stackTraceAsString1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__NoSuchUserException::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__NoSuchUserException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__NoSuchUserException, 0, sizeof(ns1__NoSuchUserException), 0, soap_copy_ns1__NoSuchUserException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__NoSuchUserException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__NoSuchUserException);
+	if (this->soap_out(soap, tag?tag:"ns1:NoSuchUserException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__NoSuchUserException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__NoSuchUserException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__NoSuchUserException * SOAP_FMAC4 soap_get_ns1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__NoSuchUserException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__NoSuchUserException * SOAP_FMAC2 soap_instantiate_ns1__NoSuchUserException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__NoSuchUserException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__NoSuchUserException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException);
+		if (size)
+			*size = sizeof(ns1__NoSuchUserException);
+		((ns1__NoSuchUserException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__NoSuchUserException);
+		for (int i = 0; i < n; i++)
+			((ns1__NoSuchUserException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__NoSuchUserException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__NoSuchUserException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__NoSuchUserException %p -> %p\n", q, p));
+	*(ns1__NoSuchUserException*)p = *(ns1__NoSuchUserException*)q;
+}
+
+void ns1__userDetails::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__userDetails::credential = NULL;
+	this->ns1__userDetails::department = NULL;
+	this->ns1__userDetails::email = NULL;
+	this->ns1__userDetails::federalId = NULL;
+	this->ns1__userDetails::firstName = NULL;
+	this->ns1__userDetails::initial = NULL;
+	this->ns1__userDetails::institution = NULL;
+	this->ns1__userDetails::lastName = NULL;
+	this->ns1__userDetails::title = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__userDetails::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::credential);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::department);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::email);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::federalId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::firstName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::initial);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::institution);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::lastName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__userDetails::title);
+	/* transient soap skipped */
+}
+
+int ns1__userDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__userDetails(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__userDetails(struct soap *soap, const char *tag, int id, const ns1__userDetails *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__userDetails), "ns1:userDetails"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "credential", -1, &(a->ns1__userDetails::credential), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "department", -1, &(a->ns1__userDetails::department), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "email", -1, &(a->ns1__userDetails::email), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "federalId", -1, &(a->ns1__userDetails::federalId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "firstName", -1, &(a->ns1__userDetails::firstName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "initial", -1, &(a->ns1__userDetails::initial), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "institution", -1, &(a->ns1__userDetails::institution), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "lastName", -1, &(a->ns1__userDetails::lastName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "title", -1, &(a->ns1__userDetails::title), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__userDetails::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__userDetails(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__userDetails * SOAP_FMAC4 soap_in_ns1__userDetails(struct soap *soap, const char *tag, ns1__userDetails *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__userDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__userDetails, sizeof(ns1__userDetails), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__userDetails)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__userDetails *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_credential1 = 1;
+	size_t soap_flag_department1 = 1;
+	size_t soap_flag_email1 = 1;
+	size_t soap_flag_federalId1 = 1;
+	size_t soap_flag_firstName1 = 1;
+	size_t soap_flag_initial1 = 1;
+	size_t soap_flag_institution1 = 1;
+	size_t soap_flag_lastName1 = 1;
+	size_t soap_flag_title1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_credential1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "credential", &(a->ns1__userDetails::credential), "xsd:string"))
+				{	soap_flag_credential1--;
+					continue;
+				}
+			if (soap_flag_department1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "department", &(a->ns1__userDetails::department), "xsd:string"))
+				{	soap_flag_department1--;
+					continue;
+				}
+			if (soap_flag_email1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "email", &(a->ns1__userDetails::email), "xsd:string"))
+				{	soap_flag_email1--;
+					continue;
+				}
+			if (soap_flag_federalId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "federalId", &(a->ns1__userDetails::federalId), "xsd:string"))
+				{	soap_flag_federalId1--;
+					continue;
+				}
+			if (soap_flag_firstName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "firstName", &(a->ns1__userDetails::firstName), "xsd:string"))
+				{	soap_flag_firstName1--;
+					continue;
+				}
+			if (soap_flag_initial1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "initial", &(a->ns1__userDetails::initial), "xsd:string"))
+				{	soap_flag_initial1--;
+					continue;
+				}
+			if (soap_flag_institution1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "institution", &(a->ns1__userDetails::institution), "xsd:string"))
+				{	soap_flag_institution1--;
+					continue;
+				}
+			if (soap_flag_lastName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "lastName", &(a->ns1__userDetails::lastName), "xsd:string"))
+				{	soap_flag_lastName1--;
+					continue;
+				}
+			if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "title", &(a->ns1__userDetails::title), "xsd:string"))
+				{	soap_flag_title1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__userDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__userDetails, 0, sizeof(ns1__userDetails), 0, soap_copy_ns1__userDetails);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__userDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__userDetails);
+	if (this->soap_out(soap, tag?tag:"ns1:userDetails", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__userDetails::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__userDetails(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__userDetails * SOAP_FMAC4 soap_get_ns1__userDetails(struct soap *soap, ns1__userDetails *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__userDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__userDetails * SOAP_FMAC2 soap_instantiate_ns1__userDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__userDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__userDetails, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails);
+		if (size)
+			*size = sizeof(ns1__userDetails);
+		((ns1__userDetails*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__userDetails);
+		for (int i = 0; i < n; i++)
+			((ns1__userDetails*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__userDetails*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__userDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__userDetails %p -> %p\n", q, p));
+	*(ns1__userDetails*)p = *(ns1__userDetails*)q;
+}
+
+void ns1__getUserDetailsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getUserDetailsResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getUserDetailsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__userDetails(soap, &this->ns1__getUserDetailsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getUserDetailsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getUserDetailsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getUserDetailsResponse(struct soap *soap, const char *tag, int id, const ns1__getUserDetailsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getUserDetailsResponse), "ns1:getUserDetailsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__userDetails(soap, "return", -1, &(a->ns1__getUserDetailsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getUserDetailsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getUserDetailsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getUserDetailsResponse * SOAP_FMAC4 soap_in_ns1__getUserDetailsResponse(struct soap *soap, const char *tag, ns1__getUserDetailsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getUserDetailsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getUserDetailsResponse, sizeof(ns1__getUserDetailsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getUserDetailsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getUserDetailsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__userDetails(soap, "return", &(a->ns1__getUserDetailsResponse::return_), "ns1:userDetails"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getUserDetailsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getUserDetailsResponse, 0, sizeof(ns1__getUserDetailsResponse), 0, soap_copy_ns1__getUserDetailsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getUserDetailsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getUserDetailsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getUserDetailsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getUserDetailsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getUserDetailsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getUserDetailsResponse * SOAP_FMAC4 soap_get_ns1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getUserDetailsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getUserDetailsResponse * SOAP_FMAC2 soap_instantiate_ns1__getUserDetailsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getUserDetailsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getUserDetailsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse);
+		if (size)
+			*size = sizeof(ns1__getUserDetailsResponse);
+		((ns1__getUserDetailsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getUserDetailsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getUserDetailsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getUserDetailsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getUserDetailsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getUserDetailsResponse %p -> %p\n", q, p));
+	*(ns1__getUserDetailsResponse*)p = *(ns1__getUserDetailsResponse*)q;
+}
+
+void ns1__getUserDetails::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getUserDetails::sessionId = NULL;
+	this->ns1__getUserDetails::usersName = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getUserDetails::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getUserDetails::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getUserDetails::usersName);
+	/* transient soap skipped */
+}
+
+int ns1__getUserDetails::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getUserDetails(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getUserDetails(struct soap *soap, const char *tag, int id, const ns1__getUserDetails *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getUserDetails), "ns1:getUserDetails"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getUserDetails::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "usersName", -1, &(a->ns1__getUserDetails::usersName), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getUserDetails::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getUserDetails(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getUserDetails * SOAP_FMAC4 soap_in_ns1__getUserDetails(struct soap *soap, const char *tag, ns1__getUserDetails *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getUserDetails *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getUserDetails, sizeof(ns1__getUserDetails), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getUserDetails)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getUserDetails *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_usersName1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getUserDetails::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_usersName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "usersName", &(a->ns1__getUserDetails::usersName), "xsd:string"))
+				{	soap_flag_usersName1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getUserDetails *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getUserDetails, 0, sizeof(ns1__getUserDetails), 0, soap_copy_ns1__getUserDetails);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getUserDetails::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getUserDetails);
+	if (this->soap_out(soap, tag?tag:"ns1:getUserDetails", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getUserDetails::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getUserDetails(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getUserDetails * SOAP_FMAC4 soap_get_ns1__getUserDetails(struct soap *soap, ns1__getUserDetails *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getUserDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getUserDetails * SOAP_FMAC2 soap_instantiate_ns1__getUserDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getUserDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getUserDetails, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails);
+		if (size)
+			*size = sizeof(ns1__getUserDetails);
+		((ns1__getUserDetails*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getUserDetails);
+		for (int i = 0; i < n; i++)
+			((ns1__getUserDetails*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getUserDetails*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getUserDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getUserDetails %p -> %p\n", q, p));
+	*(ns1__getUserDetails*)p = *(ns1__getUserDetails*)q;
+}
+
+void ns1__getAllKeywordsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__getAllKeywordsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getAllKeywordsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__getAllKeywordsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getAllKeywordsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getAllKeywordsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAllKeywordsResponse(struct soap *soap, const char *tag, int id, const ns1__getAllKeywordsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAllKeywordsResponse), "ns1:getAllKeywordsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__getAllKeywordsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getAllKeywordsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getAllKeywordsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getAllKeywordsResponse * SOAP_FMAC4 soap_in_ns1__getAllKeywordsResponse(struct soap *soap, const char *tag, ns1__getAllKeywordsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getAllKeywordsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAllKeywordsResponse, sizeof(ns1__getAllKeywordsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getAllKeywordsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getAllKeywordsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__getAllKeywordsResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getAllKeywordsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAllKeywordsResponse, 0, sizeof(ns1__getAllKeywordsResponse), 0, soap_copy_ns1__getAllKeywordsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getAllKeywordsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAllKeywordsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getAllKeywordsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getAllKeywordsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getAllKeywordsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getAllKeywordsResponse * SOAP_FMAC4 soap_get_ns1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getAllKeywordsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getAllKeywordsResponse * SOAP_FMAC2 soap_instantiate_ns1__getAllKeywordsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAllKeywordsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAllKeywordsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse);
+		if (size)
+			*size = sizeof(ns1__getAllKeywordsResponse);
+		((ns1__getAllKeywordsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getAllKeywordsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getAllKeywordsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getAllKeywordsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAllKeywordsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAllKeywordsResponse %p -> %p\n", q, p));
+	*(ns1__getAllKeywordsResponse*)p = *(ns1__getAllKeywordsResponse*)q;
+}
+
+void ns1__getAllKeywords::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getAllKeywords::sessionId = NULL;
+	this->ns1__getAllKeywords::type = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getAllKeywords::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getAllKeywords::sessionId);
+	soap_serialize_PointerTons1__keywordType(soap, &this->ns1__getAllKeywords::type);
+	/* transient soap skipped */
+}
+
+int ns1__getAllKeywords::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getAllKeywords(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getAllKeywords(struct soap *soap, const char *tag, int id, const ns1__getAllKeywords *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getAllKeywords), "ns1:getAllKeywords"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getAllKeywords::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keywordType(soap, "type", -1, &(a->ns1__getAllKeywords::type), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getAllKeywords::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getAllKeywords(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getAllKeywords * SOAP_FMAC4 soap_in_ns1__getAllKeywords(struct soap *soap, const char *tag, ns1__getAllKeywords *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getAllKeywords *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getAllKeywords, sizeof(ns1__getAllKeywords), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getAllKeywords)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getAllKeywords *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_type1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getAllKeywords::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_type1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keywordType(soap, "type", &(a->ns1__getAllKeywords::type), "ns1:keywordType"))
+				{	soap_flag_type1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getAllKeywords *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getAllKeywords, 0, sizeof(ns1__getAllKeywords), 0, soap_copy_ns1__getAllKeywords);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getAllKeywords::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getAllKeywords);
+	if (this->soap_out(soap, tag?tag:"ns1:getAllKeywords", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getAllKeywords::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getAllKeywords(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getAllKeywords * SOAP_FMAC4 soap_get_ns1__getAllKeywords(struct soap *soap, ns1__getAllKeywords *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getAllKeywords(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getAllKeywords * SOAP_FMAC2 soap_instantiate_ns1__getAllKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getAllKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getAllKeywords, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords);
+		if (size)
+			*size = sizeof(ns1__getAllKeywords);
+		((ns1__getAllKeywords*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getAllKeywords);
+		for (int i = 0; i < n; i++)
+			((ns1__getAllKeywords*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getAllKeywords*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getAllKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getAllKeywords %p -> %p\n", q, p));
+	*(ns1__getAllKeywords*)p = *(ns1__getAllKeywords*)q;
+}
+
+void ns1__removePublicationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removePublicationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removePublicationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removePublicationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removePublicationResponse(struct soap *soap, const char *tag, int id, const ns1__removePublicationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removePublicationResponse");
+}
+
+void *ns1__removePublicationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removePublicationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removePublicationResponse * SOAP_FMAC4 soap_in_ns1__removePublicationResponse(struct soap *soap, const char *tag, ns1__removePublicationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removePublicationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removePublicationResponse, sizeof(ns1__removePublicationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removePublicationResponse)
+			return (ns1__removePublicationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removePublicationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removePublicationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removePublicationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removePublicationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removePublicationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removePublicationResponse * SOAP_FMAC4 soap_get_ns1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removePublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removePublicationResponse * SOAP_FMAC2 soap_instantiate_ns1__removePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removePublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse);
+		if (size)
+			*size = sizeof(ns1__removePublicationResponse);
+		((ns1__removePublicationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removePublicationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removePublicationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removePublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removePublicationResponse %p -> %p\n", q, p));
+	*(ns1__removePublicationResponse*)p = *(ns1__removePublicationResponse*)q;
+}
+
+void ns1__removePublication::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removePublication::sessionId = NULL;
+	this->ns1__removePublication::publicationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removePublication::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removePublication::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__removePublication::publicationId);
+	/* transient soap skipped */
+}
+
+int ns1__removePublication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removePublication(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removePublication(struct soap *soap, const char *tag, int id, const ns1__removePublication *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removePublication), "ns1:removePublication"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removePublication::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "publicationId", -1, &(a->ns1__removePublication::publicationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removePublication::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removePublication(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removePublication * SOAP_FMAC4 soap_in_ns1__removePublication(struct soap *soap, const char *tag, ns1__removePublication *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removePublication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removePublication, sizeof(ns1__removePublication), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removePublication)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removePublication *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_publicationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removePublication::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_publicationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "publicationId", &(a->ns1__removePublication::publicationId), "xsd:long"))
+				{	soap_flag_publicationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removePublication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removePublication, 0, sizeof(ns1__removePublication), 0, soap_copy_ns1__removePublication);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removePublication::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removePublication);
+	if (this->soap_out(soap, tag?tag:"ns1:removePublication", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removePublication::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removePublication(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removePublication * SOAP_FMAC4 soap_get_ns1__removePublication(struct soap *soap, ns1__removePublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removePublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removePublication * SOAP_FMAC2 soap_instantiate_ns1__removePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removePublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication);
+		if (size)
+			*size = sizeof(ns1__removePublication);
+		((ns1__removePublication*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removePublication);
+		for (int i = 0; i < n; i++)
+			((ns1__removePublication*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removePublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removePublication %p -> %p\n", q, p));
+	*(ns1__removePublication*)p = *(ns1__removePublication*)q;
+}
+
+void ns1__createDataSetsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSetsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataSetsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSetsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__createDataSetsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataSetsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSetsResponse(struct soap *soap, const char *tag, int id, const ns1__createDataSetsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSetsResponse), "ns1:createDataSetsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "return", -1, &(a->ns1__createDataSetsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataSetsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataSetsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataSetsResponse * SOAP_FMAC4 soap_in_ns1__createDataSetsResponse(struct soap *soap, const char *tag, ns1__createDataSetsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataSetsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSetsResponse, sizeof(ns1__createDataSetsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataSetsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataSetsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "return", &(a->ns1__createDataSetsResponse::return_), "ns1:dataset"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataSetsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSetsResponse, 0, sizeof(ns1__createDataSetsResponse), 0, soap_copy_ns1__createDataSetsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataSetsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSetsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataSetsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataSetsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataSetsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataSetsResponse * SOAP_FMAC4 soap_get_ns1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataSetsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataSetsResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataSetsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSetsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSetsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse);
+		if (size)
+			*size = sizeof(ns1__createDataSetsResponse);
+		((ns1__createDataSetsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataSetsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataSetsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataSetsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSetsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSetsResponse %p -> %p\n", q, p));
+	*(ns1__createDataSetsResponse*)p = *(ns1__createDataSetsResponse*)q;
+}
+
+void ns1__createDataSets::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createDataSets::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSets::dataSets);
+	this->ns1__createDataSets::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataSets::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataSets::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__createDataSets::dataSets);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataSets::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__createDataSets::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataSets(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataSets(struct soap *soap, const char *tag, int id, const ns1__createDataSets *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataSets), "ns1:createDataSets"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataSets::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "dataSets", -1, &(a->ns1__createDataSets::dataSets), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__createDataSets::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataSets::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataSets(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataSets * SOAP_FMAC4 soap_in_ns1__createDataSets(struct soap *soap, const char *tag, ns1__createDataSets *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataSets *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataSets, sizeof(ns1__createDataSets), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataSets)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataSets *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataSets::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "dataSets", &(a->ns1__createDataSets::dataSets), "ns1:dataset"))
+					continue;
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__createDataSets::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataSets *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataSets, 0, sizeof(ns1__createDataSets), 0, soap_copy_ns1__createDataSets);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataSets::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataSets);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataSets", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataSets::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataSets(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataSets * SOAP_FMAC4 soap_get_ns1__createDataSets(struct soap *soap, ns1__createDataSets *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataSets(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataSets * SOAP_FMAC2 soap_instantiate_ns1__createDataSets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataSets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataSets, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets);
+		if (size)
+			*size = sizeof(ns1__createDataSets);
+		((ns1__createDataSets*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataSets);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataSets*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataSets*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataSets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataSets %p -> %p\n", q, p));
+	*(ns1__createDataSets*)p = *(ns1__createDataSets*)q;
+}
+
+void ns1__deleteInvestigationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteInvestigationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__deleteInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteInvestigationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:deleteInvestigationResponse");
+}
+
+void *ns1__deleteInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteInvestigationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_in_ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, ns1__deleteInvestigationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__deleteInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigationResponse, sizeof(ns1__deleteInvestigationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigationResponse)
+			return (ns1__deleteInvestigationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__deleteInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteInvestigationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_get_ns1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse);
+		if (size)
+			*size = sizeof(ns1__deleteInvestigationResponse);
+		((ns1__deleteInvestigationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteInvestigationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteInvestigationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigationResponse %p -> %p\n", q, p));
+	*(ns1__deleteInvestigationResponse*)p = *(ns1__deleteInvestigationResponse*)q;
+}
+
+void ns1__deleteInvestigation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__deleteInvestigation::sessionId = NULL;
+	this->ns1__deleteInvestigation::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__deleteInvestigation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__deleteInvestigation::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__deleteInvestigation::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__deleteInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__deleteInvestigation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__deleteInvestigation(struct soap *soap, const char *tag, int id, const ns1__deleteInvestigation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__deleteInvestigation), "ns1:deleteInvestigation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__deleteInvestigation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__deleteInvestigation::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__deleteInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__deleteInvestigation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigation * SOAP_FMAC4 soap_in_ns1__deleteInvestigation(struct soap *soap, const char *tag, ns1__deleteInvestigation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__deleteInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__deleteInvestigation, sizeof(ns1__deleteInvestigation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__deleteInvestigation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__deleteInvestigation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__deleteInvestigation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__deleteInvestigation::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__deleteInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__deleteInvestigation, 0, sizeof(ns1__deleteInvestigation), 0, soap_copy_ns1__deleteInvestigation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__deleteInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__deleteInvestigation);
+	if (this->soap_out(soap, tag?tag:"ns1:deleteInvestigation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__deleteInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__deleteInvestigation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigation * SOAP_FMAC4 soap_get_ns1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__deleteInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__deleteInvestigation * SOAP_FMAC2 soap_instantiate_ns1__deleteInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__deleteInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__deleteInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation);
+		if (size)
+			*size = sizeof(ns1__deleteInvestigation);
+		((ns1__deleteInvestigation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__deleteInvestigation);
+		for (int i = 0; i < n; i++)
+			((ns1__deleteInvestigation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__deleteInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__deleteInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__deleteInvestigation %p -> %p\n", q, p));
+	*(ns1__deleteInvestigation*)p = *(ns1__deleteInvestigation*)q;
+}
+
+void ns1__removeKeywordResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeKeywordResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeKeywordResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeKeywordResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeKeywordResponse(struct soap *soap, const char *tag, int id, const ns1__removeKeywordResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeKeywordResponse");
+}
+
+void *ns1__removeKeywordResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeKeywordResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeKeywordResponse * SOAP_FMAC4 soap_in_ns1__removeKeywordResponse(struct soap *soap, const char *tag, ns1__removeKeywordResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeKeywordResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeKeywordResponse, sizeof(ns1__removeKeywordResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeKeywordResponse)
+			return (ns1__removeKeywordResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeKeywordResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeKeywordResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeKeywordResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeKeywordResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeKeywordResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeKeywordResponse * SOAP_FMAC4 soap_get_ns1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeKeywordResponse * SOAP_FMAC2 soap_instantiate_ns1__removeKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeKeywordResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse);
+		if (size)
+			*size = sizeof(ns1__removeKeywordResponse);
+		((ns1__removeKeywordResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeKeywordResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeKeywordResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeKeywordResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeKeywordResponse %p -> %p\n", q, p));
+	*(ns1__removeKeywordResponse*)p = *(ns1__removeKeywordResponse*)q;
+}
+
+void ns1__removeKeyword::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeKeyword::sessionId = NULL;
+	this->ns1__removeKeyword::keywordPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeKeyword::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeKeyword::sessionId);
+	soap_serialize_PointerTons1__keywordPK(soap, &this->ns1__removeKeyword::keywordPK);
+	/* transient soap skipped */
+}
+
+int ns1__removeKeyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeKeyword(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeKeyword(struct soap *soap, const char *tag, int id, const ns1__removeKeyword *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeKeyword), "ns1:removeKeyword"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeKeyword::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keywordPK(soap, "keywordPK", -1, &(a->ns1__removeKeyword::keywordPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeKeyword::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeKeyword(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeKeyword * SOAP_FMAC4 soap_in_ns1__removeKeyword(struct soap *soap, const char *tag, ns1__removeKeyword *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeKeyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeKeyword, sizeof(ns1__removeKeyword), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeKeyword)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeKeyword *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_keywordPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeKeyword::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_keywordPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keywordPK(soap, "keywordPK", &(a->ns1__removeKeyword::keywordPK), "ns1:keywordPK"))
+				{	soap_flag_keywordPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeKeyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeKeyword, 0, sizeof(ns1__removeKeyword), 0, soap_copy_ns1__removeKeyword);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeKeyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeKeyword);
+	if (this->soap_out(soap, tag?tag:"ns1:removeKeyword", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeKeyword::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeKeyword(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeKeyword * SOAP_FMAC4 soap_get_ns1__removeKeyword(struct soap *soap, ns1__removeKeyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeKeyword * SOAP_FMAC2 soap_instantiate_ns1__removeKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeKeyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword);
+		if (size)
+			*size = sizeof(ns1__removeKeyword);
+		((ns1__removeKeyword*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeKeyword);
+		for (int i = 0; i < n; i++)
+			((ns1__removeKeyword*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeKeyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeKeyword %p -> %p\n", q, p));
+	*(ns1__removeKeyword*)p = *(ns1__removeKeyword*)q;
+}
+
+void ns1__removeInvestigatorResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeInvestigatorResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeInvestigatorResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeInvestigatorResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, int id, const ns1__removeInvestigatorResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeInvestigatorResponse");
+}
+
+void *ns1__removeInvestigatorResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeInvestigatorResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_in_ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, ns1__removeInvestigatorResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeInvestigatorResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigatorResponse, sizeof(ns1__removeInvestigatorResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigatorResponse)
+			return (ns1__removeInvestigatorResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeInvestigatorResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigatorResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigatorResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeInvestigatorResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeInvestigatorResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_get_ns1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeInvestigatorResponse * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse);
+		if (size)
+			*size = sizeof(ns1__removeInvestigatorResponse);
+		((ns1__removeInvestigatorResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeInvestigatorResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeInvestigatorResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigatorResponse %p -> %p\n", q, p));
+	*(ns1__removeInvestigatorResponse*)p = *(ns1__removeInvestigatorResponse*)q;
+}
+
+void ns1__removeInvestigator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeInvestigator::sessionId = NULL;
+	this->ns1__removeInvestigator::investigatorPK = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeInvestigator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeInvestigator::sessionId);
+	soap_serialize_PointerTons1__investigatorPK(soap, &this->ns1__removeInvestigator::investigatorPK);
+	/* transient soap skipped */
+}
+
+int ns1__removeInvestigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeInvestigator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigator(struct soap *soap, const char *tag, int id, const ns1__removeInvestigator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeInvestigator), "ns1:removeInvestigator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeInvestigator::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigatorPK(soap, "investigatorPK", -1, &(a->ns1__removeInvestigator::investigatorPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeInvestigator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeInvestigator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigator * SOAP_FMAC4 soap_in_ns1__removeInvestigator(struct soap *soap, const char *tag, ns1__removeInvestigator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeInvestigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigator, sizeof(ns1__removeInvestigator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeInvestigator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigatorPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeInvestigator::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigatorPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigatorPK(soap, "investigatorPK", &(a->ns1__removeInvestigator::investigatorPK), "ns1:investigatorPK"))
+				{	soap_flag_investigatorPK1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeInvestigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeInvestigator, 0, sizeof(ns1__removeInvestigator), 0, soap_copy_ns1__removeInvestigator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeInvestigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigator);
+	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeInvestigator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeInvestigator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigator * SOAP_FMAC4 soap_get_ns1__removeInvestigator(struct soap *soap, ns1__removeInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeInvestigator * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator);
+		if (size)
+			*size = sizeof(ns1__removeInvestigator);
+		((ns1__removeInvestigator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeInvestigator);
+		for (int i = 0; i < n; i++)
+			((ns1__removeInvestigator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigator %p -> %p\n", q, p));
+	*(ns1__removeInvestigator*)p = *(ns1__removeInvestigator*)q;
+}
+
+void ns1__removeInvestigationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeInvestigationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeInvestigationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeInvestigationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigationResponse(struct soap *soap, const char *tag, int id, const ns1__removeInvestigationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeInvestigationResponse");
+}
+
+void *ns1__removeInvestigationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeInvestigationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigationResponse * SOAP_FMAC4 soap_in_ns1__removeInvestigationResponse(struct soap *soap, const char *tag, ns1__removeInvestigationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeInvestigationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigationResponse, sizeof(ns1__removeInvestigationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigationResponse)
+			return (ns1__removeInvestigationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeInvestigationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeInvestigationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeInvestigationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigationResponse * SOAP_FMAC4 soap_get_ns1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeInvestigationResponse * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse);
+		if (size)
+			*size = sizeof(ns1__removeInvestigationResponse);
+		((ns1__removeInvestigationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeInvestigationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeInvestigationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigationResponse %p -> %p\n", q, p));
+	*(ns1__removeInvestigationResponse*)p = *(ns1__removeInvestigationResponse*)q;
+}
+
+void ns1__removeInvestigation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeInvestigation::sessionId = NULL;
+	this->ns1__removeInvestigation::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeInvestigation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeInvestigation::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__removeInvestigation::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__removeInvestigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeInvestigation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeInvestigation(struct soap *soap, const char *tag, int id, const ns1__removeInvestigation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeInvestigation), "ns1:removeInvestigation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeInvestigation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__removeInvestigation::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeInvestigation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeInvestigation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigation * SOAP_FMAC4 soap_in_ns1__removeInvestigation(struct soap *soap, const char *tag, ns1__removeInvestigation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeInvestigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeInvestigation, sizeof(ns1__removeInvestigation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeInvestigation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeInvestigation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeInvestigation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__removeInvestigation::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeInvestigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeInvestigation, 0, sizeof(ns1__removeInvestigation), 0, soap_copy_ns1__removeInvestigation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeInvestigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeInvestigation);
+	if (this->soap_out(soap, tag?tag:"ns1:removeInvestigation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeInvestigation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeInvestigation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigation * SOAP_FMAC4 soap_get_ns1__removeInvestigation(struct soap *soap, ns1__removeInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeInvestigation * SOAP_FMAC2 soap_instantiate_ns1__removeInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation);
+		if (size)
+			*size = sizeof(ns1__removeInvestigation);
+		((ns1__removeInvestigation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeInvestigation);
+		for (int i = 0; i < n; i++)
+			((ns1__removeInvestigation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeInvestigation %p -> %p\n", q, p));
+	*(ns1__removeInvestigation*)p = *(ns1__removeInvestigation*)q;
+}
+
+void ns1__getFacilityUserByFederalIdResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getFacilityUserByFederalIdResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getFacilityUserByFederalIdResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__facilityUser(soap, &this->ns1__getFacilityUserByFederalIdResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__getFacilityUserByFederalIdResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getFacilityUserByFederalIdResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFederalIdResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse), "ns1:getFacilityUserByFederalIdResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__facilityUser(soap, "return", -1, &(a->ns1__getFacilityUserByFederalIdResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getFacilityUserByFederalIdResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getFacilityUserByFederalIdResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalIdResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getFacilityUserByFederalIdResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, sizeof(ns1__getFacilityUserByFederalIdResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getFacilityUserByFederalIdResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__facilityUser(soap, "return", &(a->ns1__getFacilityUserByFederalIdResponse::return_), "ns1:facilityUser"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getFacilityUserByFederalIdResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, 0, sizeof(ns1__getFacilityUserByFederalIdResponse), 0, soap_copy_ns1__getFacilityUserByFederalIdResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getFacilityUserByFederalIdResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFederalIdResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getFacilityUserByFederalIdResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getFacilityUserByFederalIdResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getFacilityUserByFederalIdResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getFacilityUserByFederalIdResponse * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFederalIdResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse);
+		if (size)
+			*size = sizeof(ns1__getFacilityUserByFederalIdResponse);
+		((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getFacilityUserByFederalIdResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getFacilityUserByFederalIdResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFederalIdResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFederalIdResponse %p -> %p\n", q, p));
+	*(ns1__getFacilityUserByFederalIdResponse*)p = *(ns1__getFacilityUserByFederalIdResponse*)q;
+}
+
+void ns1__getFacilityUserByFederalId::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__getFacilityUserByFederalId::sessionId = NULL;
+	this->ns1__getFacilityUserByFederalId::federalId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__getFacilityUserByFederalId::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFederalId::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__getFacilityUserByFederalId::federalId);
+	/* transient soap skipped */
+}
+
+int ns1__getFacilityUserByFederalId::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__getFacilityUserByFederalId(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, int id, const ns1__getFacilityUserByFederalId *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__getFacilityUserByFederalId), "ns1:getFacilityUserByFederalId"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__getFacilityUserByFederalId::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "federalId", -1, &(a->ns1__getFacilityUserByFederalId::federalId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__getFacilityUserByFederalId::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__getFacilityUserByFederalId(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_in_ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalId *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__getFacilityUserByFederalId *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__getFacilityUserByFederalId, sizeof(ns1__getFacilityUserByFederalId), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__getFacilityUserByFederalId)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__getFacilityUserByFederalId *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_federalId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__getFacilityUserByFederalId::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_federalId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "federalId", &(a->ns1__getFacilityUserByFederalId::federalId), "xsd:string"))
+				{	soap_flag_federalId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__getFacilityUserByFederalId *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__getFacilityUserByFederalId, 0, sizeof(ns1__getFacilityUserByFederalId), 0, soap_copy_ns1__getFacilityUserByFederalId);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__getFacilityUserByFederalId::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__getFacilityUserByFederalId);
+	if (this->soap_out(soap, tag?tag:"ns1:getFacilityUserByFederalId", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__getFacilityUserByFederalId::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__getFacilityUserByFederalId(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_get_ns1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__getFacilityUserByFederalId(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__getFacilityUserByFederalId * SOAP_FMAC2 soap_instantiate_ns1__getFacilityUserByFederalId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__getFacilityUserByFederalId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__getFacilityUserByFederalId, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId);
+		if (size)
+			*size = sizeof(ns1__getFacilityUserByFederalId);
+		((ns1__getFacilityUserByFederalId*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__getFacilityUserByFederalId);
+		for (int i = 0; i < n; i++)
+			((ns1__getFacilityUserByFederalId*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__getFacilityUserByFederalId*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__getFacilityUserByFederalId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__getFacilityUserByFederalId %p -> %p\n", q, p));
+	*(ns1__getFacilityUserByFederalId*)p = *(ns1__getFacilityUserByFederalId*)q;
+}
+
+void ns1__downloadDatasetResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadDatasetResponse::URL = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadDatasetResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDatasetResponse::URL);
+	/* transient soap skipped */
+}
+
+int ns1__downloadDatasetResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadDatasetResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDatasetResponse(struct soap *soap, const char *tag, int id, const ns1__downloadDatasetResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDatasetResponse), "ns1:downloadDatasetResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "URL", -1, &(a->ns1__downloadDatasetResponse::URL), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadDatasetResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadDatasetResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatasetResponse * SOAP_FMAC4 soap_in_ns1__downloadDatasetResponse(struct soap *soap, const char *tag, ns1__downloadDatasetResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadDatasetResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDatasetResponse, sizeof(ns1__downloadDatasetResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadDatasetResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadDatasetResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_URL1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_URL1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "URL", &(a->ns1__downloadDatasetResponse::URL), "xsd:string"))
+				{	soap_flag_URL1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadDatasetResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDatasetResponse, 0, sizeof(ns1__downloadDatasetResponse), 0, soap_copy_ns1__downloadDatasetResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadDatasetResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDatasetResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadDatasetResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadDatasetResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadDatasetResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatasetResponse * SOAP_FMAC4 soap_get_ns1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadDatasetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadDatasetResponse * SOAP_FMAC2 soap_instantiate_ns1__downloadDatasetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDatasetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDatasetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse);
+		if (size)
+			*size = sizeof(ns1__downloadDatasetResponse);
+		((ns1__downloadDatasetResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadDatasetResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadDatasetResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadDatasetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDatasetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDatasetResponse %p -> %p\n", q, p));
+	*(ns1__downloadDatasetResponse*)p = *(ns1__downloadDatasetResponse*)q;
+}
+
+void ns1__downloadDataset::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__downloadDataset::sessionId = NULL;
+	this->ns1__downloadDataset::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__downloadDataset::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__downloadDataset::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__downloadDataset::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__downloadDataset::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__downloadDataset(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__downloadDataset(struct soap *soap, const char *tag, int id, const ns1__downloadDataset *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__downloadDataset), "ns1:downloadDataset"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__downloadDataset::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__downloadDataset::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__downloadDataset::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__downloadDataset(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__downloadDataset * SOAP_FMAC4 soap_in_ns1__downloadDataset(struct soap *soap, const char *tag, ns1__downloadDataset *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__downloadDataset *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__downloadDataset, sizeof(ns1__downloadDataset), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__downloadDataset)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__downloadDataset *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__downloadDataset::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__downloadDataset::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__downloadDataset *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__downloadDataset, 0, sizeof(ns1__downloadDataset), 0, soap_copy_ns1__downloadDataset);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__downloadDataset::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__downloadDataset);
+	if (this->soap_out(soap, tag?tag:"ns1:downloadDataset", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__downloadDataset::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__downloadDataset(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__downloadDataset * SOAP_FMAC4 soap_get_ns1__downloadDataset(struct soap *soap, ns1__downloadDataset *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__downloadDataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__downloadDataset * SOAP_FMAC2 soap_instantiate_ns1__downloadDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__downloadDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__downloadDataset, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset);
+		if (size)
+			*size = sizeof(ns1__downloadDataset);
+		((ns1__downloadDataset*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__downloadDataset);
+		for (int i = 0; i < n; i++)
+			((ns1__downloadDataset*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__downloadDataset*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__downloadDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__downloadDataset %p -> %p\n", q, p));
+	*(ns1__downloadDataset*)p = *(ns1__downloadDataset*)q;
+}
+
+void ns1__logoutResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->ns1__logoutResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__logoutResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__logoutResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__logoutResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logoutResponse(struct soap *soap, const char *tag, int id, const ns1__logoutResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__logoutResponse), "ns1:logoutResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "return", -1, &(a->ns1__logoutResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__logoutResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__logoutResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__logoutResponse * SOAP_FMAC4 soap_in_ns1__logoutResponse(struct soap *soap, const char *tag, ns1__logoutResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__logoutResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logoutResponse, sizeof(ns1__logoutResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__logoutResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__logoutResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "return", &(a->ns1__logoutResponse::return_), "xsd:boolean"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__logoutResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__logoutResponse, 0, sizeof(ns1__logoutResponse), 0, soap_copy_ns1__logoutResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_return_1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__logoutResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__logoutResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:logoutResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__logoutResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__logoutResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__logoutResponse * SOAP_FMAC4 soap_get_ns1__logoutResponse(struct soap *soap, ns1__logoutResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__logoutResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__logoutResponse * SOAP_FMAC2 soap_instantiate_ns1__logoutResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__logoutResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__logoutResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse);
+		if (size)
+			*size = sizeof(ns1__logoutResponse);
+		((ns1__logoutResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__logoutResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__logoutResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__logoutResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__logoutResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__logoutResponse %p -> %p\n", q, p));
+	*(ns1__logoutResponse*)p = *(ns1__logoutResponse*)q;
+}
+
+void ns1__logout::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__logout::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__logout::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__logout::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__logout::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__logout(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__logout(struct soap *soap, const char *tag, int id, const ns1__logout *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__logout), "ns1:logout"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__logout::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__logout::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__logout(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__logout * SOAP_FMAC4 soap_in_ns1__logout(struct soap *soap, const char *tag, ns1__logout *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__logout *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__logout, sizeof(ns1__logout), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__logout)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__logout *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__logout::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__logout *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__logout, 0, sizeof(ns1__logout), 0, soap_copy_ns1__logout);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__logout::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__logout);
+	if (this->soap_out(soap, tag?tag:"ns1:logout", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__logout::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__logout(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__logout * SOAP_FMAC4 soap_get_ns1__logout(struct soap *soap, ns1__logout *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__logout(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__logout * SOAP_FMAC2 soap_instantiate_ns1__logout(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__logout(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__logout, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__logout);
+		if (size)
+			*size = sizeof(ns1__logout);
+		((ns1__logout*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__logout[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__logout);
+		for (int i = 0; i < n; i++)
+			((ns1__logout*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__logout*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__logout(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__logout %p -> %p\n", q, p));
+	*(ns1__logout*)p = *(ns1__logout*)q;
+}
+
+void ns1__listFacilityCyclesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__facilityCycle(soap, &this->ns1__listFacilityCyclesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listFacilityCyclesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__facilityCycle(soap, &this->ns1__listFacilityCyclesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listFacilityCyclesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listFacilityCyclesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listFacilityCyclesResponse(struct soap *soap, const char *tag, int id, const ns1__listFacilityCyclesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listFacilityCyclesResponse), "ns1:listFacilityCyclesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__facilityCycle(soap, "return", -1, &(a->ns1__listFacilityCyclesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listFacilityCyclesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listFacilityCyclesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listFacilityCyclesResponse * SOAP_FMAC4 soap_in_ns1__listFacilityCyclesResponse(struct soap *soap, const char *tag, ns1__listFacilityCyclesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listFacilityCyclesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listFacilityCyclesResponse, sizeof(ns1__listFacilityCyclesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listFacilityCyclesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listFacilityCyclesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__facilityCycle(soap, "return", &(a->ns1__listFacilityCyclesResponse::return_), "ns1:facilityCycle"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listFacilityCyclesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listFacilityCyclesResponse, 0, sizeof(ns1__listFacilityCyclesResponse), 0, soap_copy_ns1__listFacilityCyclesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listFacilityCyclesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listFacilityCyclesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listFacilityCyclesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listFacilityCyclesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listFacilityCyclesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listFacilityCyclesResponse * SOAP_FMAC4 soap_get_ns1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listFacilityCyclesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listFacilityCyclesResponse * SOAP_FMAC2 soap_instantiate_ns1__listFacilityCyclesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listFacilityCyclesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listFacilityCyclesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse);
+		if (size)
+			*size = sizeof(ns1__listFacilityCyclesResponse);
+		((ns1__listFacilityCyclesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listFacilityCyclesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listFacilityCyclesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listFacilityCyclesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listFacilityCyclesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listFacilityCyclesResponse %p -> %p\n", q, p));
+	*(ns1__listFacilityCyclesResponse*)p = *(ns1__listFacilityCyclesResponse*)q;
+}
+
+void ns1__listFacilityCycles::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listFacilityCycles::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listFacilityCycles::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listFacilityCycles::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listFacilityCycles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listFacilityCycles(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listFacilityCycles(struct soap *soap, const char *tag, int id, const ns1__listFacilityCycles *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listFacilityCycles), "ns1:listFacilityCycles"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listFacilityCycles::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listFacilityCycles::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listFacilityCycles(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listFacilityCycles * SOAP_FMAC4 soap_in_ns1__listFacilityCycles(struct soap *soap, const char *tag, ns1__listFacilityCycles *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listFacilityCycles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listFacilityCycles, sizeof(ns1__listFacilityCycles), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listFacilityCycles)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listFacilityCycles *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listFacilityCycles::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listFacilityCycles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listFacilityCycles, 0, sizeof(ns1__listFacilityCycles), 0, soap_copy_ns1__listFacilityCycles);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listFacilityCycles::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listFacilityCycles);
+	if (this->soap_out(soap, tag?tag:"ns1:listFacilityCycles", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listFacilityCycles::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listFacilityCycles(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listFacilityCycles * SOAP_FMAC4 soap_get_ns1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listFacilityCycles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listFacilityCycles * SOAP_FMAC2 soap_instantiate_ns1__listFacilityCycles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listFacilityCycles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listFacilityCycles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles);
+		if (size)
+			*size = sizeof(ns1__listFacilityCycles);
+		((ns1__listFacilityCycles*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listFacilityCycles);
+		for (int i = 0; i < n; i++)
+			((ns1__listFacilityCycles*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listFacilityCycles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listFacilityCycles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listFacilityCycles %p -> %p\n", q, p));
+	*(ns1__listFacilityCycles*)p = *(ns1__listFacilityCycles*)q;
+}
+
+void ns1__addDataFileParametersResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParametersResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataFileParametersResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParametersResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__addDataFileParametersResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataFileParametersResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParametersResponse(struct soap *soap, const char *tag, int id, const ns1__addDataFileParametersResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParametersResponse), "ns1:addDataFileParametersResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "return", -1, &(a->ns1__addDataFileParametersResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataFileParametersResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataFileParametersResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParametersResponse * SOAP_FMAC4 soap_in_ns1__addDataFileParametersResponse(struct soap *soap, const char *tag, ns1__addDataFileParametersResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataFileParametersResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParametersResponse, sizeof(ns1__addDataFileParametersResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParametersResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataFileParametersResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "return", &(a->ns1__addDataFileParametersResponse::return_), "ns1:datafileParameter"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataFileParametersResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParametersResponse, 0, sizeof(ns1__addDataFileParametersResponse), 0, soap_copy_ns1__addDataFileParametersResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataFileParametersResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParametersResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParametersResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataFileParametersResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataFileParametersResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParametersResponse * SOAP_FMAC4 soap_get_ns1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataFileParametersResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataFileParametersResponse * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParametersResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParametersResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParametersResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse);
+		if (size)
+			*size = sizeof(ns1__addDataFileParametersResponse);
+		((ns1__addDataFileParametersResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataFileParametersResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataFileParametersResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataFileParametersResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParametersResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParametersResponse %p -> %p\n", q, p));
+	*(ns1__addDataFileParametersResponse*)p = *(ns1__addDataFileParametersResponse*)q;
+}
+
+void ns1__addDataFileParameters::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__addDataFileParameters::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameters::dataFileParameters);
+	this->ns1__addDataFileParameters::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__addDataFileParameters::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__addDataFileParameters::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__addDataFileParameters::dataFileParameters);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__addDataFileParameters::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__addDataFileParameters::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__addDataFileParameters(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__addDataFileParameters(struct soap *soap, const char *tag, int id, const ns1__addDataFileParameters *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__addDataFileParameters), "ns1:addDataFileParameters"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__addDataFileParameters::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "dataFileParameters", -1, &(a->ns1__addDataFileParameters::dataFileParameters), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__addDataFileParameters::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__addDataFileParameters::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__addDataFileParameters(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameters * SOAP_FMAC4 soap_in_ns1__addDataFileParameters(struct soap *soap, const char *tag, ns1__addDataFileParameters *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__addDataFileParameters *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__addDataFileParameters, sizeof(ns1__addDataFileParameters), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__addDataFileParameters)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__addDataFileParameters *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__addDataFileParameters::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "dataFileParameters", &(a->ns1__addDataFileParameters::dataFileParameters), "ns1:datafileParameter"))
+					continue;
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__addDataFileParameters::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__addDataFileParameters *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__addDataFileParameters, 0, sizeof(ns1__addDataFileParameters), 0, soap_copy_ns1__addDataFileParameters);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__addDataFileParameters::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__addDataFileParameters);
+	if (this->soap_out(soap, tag?tag:"ns1:addDataFileParameters", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__addDataFileParameters::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__addDataFileParameters(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameters * SOAP_FMAC4 soap_get_ns1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__addDataFileParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__addDataFileParameters * SOAP_FMAC2 soap_instantiate_ns1__addDataFileParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__addDataFileParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__addDataFileParameters, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters);
+		if (size)
+			*size = sizeof(ns1__addDataFileParameters);
+		((ns1__addDataFileParameters*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__addDataFileParameters);
+		for (int i = 0; i < n; i++)
+			((ns1__addDataFileParameters*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__addDataFileParameters*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__addDataFileParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__addDataFileParameters %p -> %p\n", q, p));
+	*(ns1__addDataFileParameters*)p = *(ns1__addDataFileParameters*)q;
+}
+
+void ns1__removeAuthorisationResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeAuthorisationResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeAuthorisationResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeAuthorisationResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, int id, const ns1__removeAuthorisationResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeAuthorisationResponse");
+}
+
+void *ns1__removeAuthorisationResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeAuthorisationResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_in_ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, ns1__removeAuthorisationResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeAuthorisationResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeAuthorisationResponse, sizeof(ns1__removeAuthorisationResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeAuthorisationResponse)
+			return (ns1__removeAuthorisationResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeAuthorisationResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeAuthorisationResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeAuthorisationResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeAuthorisationResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeAuthorisationResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_get_ns1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeAuthorisationResponse * SOAP_FMAC2 soap_instantiate_ns1__removeAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse);
+		if (size)
+			*size = sizeof(ns1__removeAuthorisationResponse);
+		((ns1__removeAuthorisationResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeAuthorisationResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeAuthorisationResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeAuthorisationResponse %p -> %p\n", q, p));
+	*(ns1__removeAuthorisationResponse*)p = *(ns1__removeAuthorisationResponse*)q;
+}
+
+void ns1__removeAuthorisation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeAuthorisation::sessionId = NULL;
+	this->ns1__removeAuthorisation::authorisationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeAuthorisation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeAuthorisation::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__removeAuthorisation::authorisationId);
+	/* transient soap skipped */
+}
+
+int ns1__removeAuthorisation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeAuthorisation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeAuthorisation(struct soap *soap, const char *tag, int id, const ns1__removeAuthorisation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeAuthorisation), "ns1:removeAuthorisation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeAuthorisation::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "authorisationId", -1, &(a->ns1__removeAuthorisation::authorisationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeAuthorisation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeAuthorisation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisation * SOAP_FMAC4 soap_in_ns1__removeAuthorisation(struct soap *soap, const char *tag, ns1__removeAuthorisation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeAuthorisation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeAuthorisation, sizeof(ns1__removeAuthorisation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeAuthorisation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeAuthorisation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_authorisationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeAuthorisation::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_authorisationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "authorisationId", &(a->ns1__removeAuthorisation::authorisationId), "xsd:long"))
+				{	soap_flag_authorisationId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeAuthorisation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeAuthorisation, 0, sizeof(ns1__removeAuthorisation), 0, soap_copy_ns1__removeAuthorisation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeAuthorisation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeAuthorisation);
+	if (this->soap_out(soap, tag?tag:"ns1:removeAuthorisation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeAuthorisation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeAuthorisation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisation * SOAP_FMAC4 soap_get_ns1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeAuthorisation * SOAP_FMAC2 soap_instantiate_ns1__removeAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation);
+		if (size)
+			*size = sizeof(ns1__removeAuthorisation);
+		((ns1__removeAuthorisation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeAuthorisation);
+		for (int i = 0; i < n; i++)
+			((ns1__removeAuthorisation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeAuthorisation %p -> %p\n", q, p));
+	*(ns1__removeAuthorisation*)p = *(ns1__removeAuthorisation*)q;
+}
+
+void ns1__removeDataFileResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataFileResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataFileResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__removeDataFileResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeDataFileResponse");
+}
+
+void *ns1__removeDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataFileResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileResponse * SOAP_FMAC4 soap_in_ns1__removeDataFileResponse(struct soap *soap, const char *tag, ns1__removeDataFileResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFileResponse, sizeof(ns1__removeDataFileResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFileResponse)
+			return (ns1__removeDataFileResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFileResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataFileResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataFileResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileResponse * SOAP_FMAC4 soap_get_ns1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__removeDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse);
+		if (size)
+			*size = sizeof(ns1__removeDataFileResponse);
+		((ns1__removeDataFileResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataFileResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataFileResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFileResponse %p -> %p\n", q, p));
+	*(ns1__removeDataFileResponse*)p = *(ns1__removeDataFileResponse*)q;
+}
+
+void ns1__removeDataFile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeDataFile::sessionId = NULL;
+	this->ns1__removeDataFile::datafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeDataFile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeDataFile::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__removeDataFile::datafileId);
+	/* transient soap skipped */
+}
+
+int ns1__removeDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeDataFile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeDataFile(struct soap *soap, const char *tag, int id, const ns1__removeDataFile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeDataFile), "ns1:removeDataFile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeDataFile::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__removeDataFile::datafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeDataFile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFile * SOAP_FMAC4 soap_in_ns1__removeDataFile(struct soap *soap, const char *tag, ns1__removeDataFile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeDataFile, sizeof(ns1__removeDataFile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeDataFile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeDataFile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeDataFile::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__removeDataFile::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeDataFile, 0, sizeof(ns1__removeDataFile), 0, soap_copy_ns1__removeDataFile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeDataFile);
+	if (this->soap_out(soap, tag?tag:"ns1:removeDataFile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeDataFile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFile * SOAP_FMAC4 soap_get_ns1__removeDataFile(struct soap *soap, ns1__removeDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeDataFile * SOAP_FMAC2 soap_instantiate_ns1__removeDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile);
+		if (size)
+			*size = sizeof(ns1__removeDataFile);
+		((ns1__removeDataFile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeDataFile);
+		for (int i = 0; i < n; i++)
+			((ns1__removeDataFile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeDataFile %p -> %p\n", q, p));
+	*(ns1__removeDataFile*)p = *(ns1__removeDataFile*)q;
+}
+
+void ns1__searchDatafilesByParameterComparatorsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatafilesByParameterComparatorsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__searchDatafilesByParameterComparatorsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatafilesByParameterComparatorsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatafilesByParameterComparatorsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparatorsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse), "ns1:searchDatafilesByParameterComparatorsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "return", -1, &(a->ns1__searchDatafilesByParameterComparatorsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatafilesByParameterComparatorsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatafilesByParameterComparatorsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatafilesByParameterComparatorsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "return", &(a->ns1__searchDatafilesByParameterComparatorsResponse::return_), "ns1:datafile"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatafilesByParameterComparatorsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, 0, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), 0, soap_copy_ns1__searchDatafilesByParameterComparatorsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatafilesByParameterComparatorsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatafilesByParameterComparatorsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatafilesByParameterComparatorsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatafilesByParameterComparatorsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatafilesByParameterComparatorsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse);
+		if (size)
+			*size = sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
+		((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparatorsResponse %p -> %p\n", q, p));
+	*(ns1__searchDatafilesByParameterComparatorsResponse*)p = *(ns1__searchDatafilesByParameterComparatorsResponse*)q;
+}
+
+void ns1__searchDatafilesByParameterComparators::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchDatafilesByParameterComparators::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatafilesByParameterComparators::comparators);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchDatafilesByParameterComparators::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchDatafilesByParameterComparators::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchDatafilesByParameterComparators::comparators);
+	/* transient soap skipped */
+}
+
+int ns1__searchDatafilesByParameterComparators::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchDatafilesByParameterComparators(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, int id, const ns1__searchDatafilesByParameterComparators *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators), "ns1:searchDatafilesByParameterComparators"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchDatafilesByParameterComparators::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", -1, &(a->ns1__searchDatafilesByParameterComparators::comparators), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchDatafilesByParameterComparators::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchDatafilesByParameterComparators(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_in_ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparators *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchDatafilesByParameterComparators *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, sizeof(ns1__searchDatafilesByParameterComparators), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchDatafilesByParameterComparators)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchDatafilesByParameterComparators *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchDatafilesByParameterComparators::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", &(a->ns1__searchDatafilesByParameterComparators::comparators), "ns1:parameterComparisonCondition"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchDatafilesByParameterComparators *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, 0, sizeof(ns1__searchDatafilesByParameterComparators), 0, soap_copy_ns1__searchDatafilesByParameterComparators);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchDatafilesByParameterComparators::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchDatafilesByParameterComparators);
+	if (this->soap_out(soap, tag?tag:"ns1:searchDatafilesByParameterComparators", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchDatafilesByParameterComparators::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchDatafilesByParameterComparators(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_get_ns1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchDatafilesByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchDatafilesByParameterComparators * SOAP_FMAC2 soap_instantiate_ns1__searchDatafilesByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchDatafilesByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators);
+		if (size)
+			*size = sizeof(ns1__searchDatafilesByParameterComparators);
+		((ns1__searchDatafilesByParameterComparators*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchDatafilesByParameterComparators);
+		for (int i = 0; i < n; i++)
+			((ns1__searchDatafilesByParameterComparators*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchDatafilesByParameterComparators*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchDatafilesByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchDatafilesByParameterComparators %p -> %p\n", q, p));
+	*(ns1__searchDatafilesByParameterComparators*)p = *(ns1__searchDatafilesByParameterComparators*)q;
+}
+
+void ns1__ParameterSearchException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__ParameterSearchException::message = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__ParameterSearchException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ParameterSearchException::message);
+	/* transient soap skipped */
+}
+
+int ns1__ParameterSearchException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__ParameterSearchException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ParameterSearchException(struct soap *soap, const char *tag, int id, const ns1__ParameterSearchException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ParameterSearchException), "ns1:ParameterSearchException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__ParameterSearchException::message), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__ParameterSearchException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__ParameterSearchException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__ParameterSearchException * SOAP_FMAC4 soap_in_ns1__ParameterSearchException(struct soap *soap, const char *tag, ns1__ParameterSearchException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__ParameterSearchException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ParameterSearchException, sizeof(ns1__ParameterSearchException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__ParameterSearchException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__ParameterSearchException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__ParameterSearchException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__ParameterSearchException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ParameterSearchException, 0, sizeof(ns1__ParameterSearchException), 0, soap_copy_ns1__ParameterSearchException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__ParameterSearchException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ParameterSearchException);
+	if (this->soap_out(soap, tag?tag:"ns1:ParameterSearchException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__ParameterSearchException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__ParameterSearchException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__ParameterSearchException * SOAP_FMAC4 soap_get_ns1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__ParameterSearchException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__ParameterSearchException * SOAP_FMAC2 soap_instantiate_ns1__ParameterSearchException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ParameterSearchException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ParameterSearchException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException);
+		if (size)
+			*size = sizeof(ns1__ParameterSearchException);
+		((ns1__ParameterSearchException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__ParameterSearchException);
+		for (int i = 0; i < n; i++)
+			((ns1__ParameterSearchException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__ParameterSearchException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ParameterSearchException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ParameterSearchException %p -> %p\n", q, p));
+	*(ns1__ParameterSearchException*)p = *(ns1__ParameterSearchException*)q;
+}
+
+void ns1__shiftPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__shiftPK::endDate = NULL;
+	this->ns1__shiftPK::investigationId = NULL;
+	this->ns1__shiftPK::startDate = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__shiftPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTotime(soap, &this->ns1__shiftPK::endDate);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__shiftPK::investigationId);
+	soap_serialize_PointerTotime(soap, &this->ns1__shiftPK::startDate);
+	/* transient soap skipped */
+}
+
+int ns1__shiftPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__shiftPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__shiftPK(struct soap *soap, const char *tag, int id, const ns1__shiftPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__shiftPK), "ns1:shiftPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTotime(soap, "endDate", -1, &(a->ns1__shiftPK::endDate), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__shiftPK::investigationId), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "startDate", -1, &(a->ns1__shiftPK::startDate), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__shiftPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__shiftPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__shiftPK * SOAP_FMAC4 soap_in_ns1__shiftPK(struct soap *soap, const char *tag, ns1__shiftPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__shiftPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__shiftPK, sizeof(ns1__shiftPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__shiftPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__shiftPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_endDate1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	size_t soap_flag_startDate1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_endDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "endDate", &(a->ns1__shiftPK::endDate), "xsd:dateTime"))
+				{	soap_flag_endDate1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__shiftPK::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag_startDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "startDate", &(a->ns1__shiftPK::startDate), "xsd:dateTime"))
+				{	soap_flag_startDate1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__shiftPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__shiftPK, 0, sizeof(ns1__shiftPK), 0, soap_copy_ns1__shiftPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__shiftPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__shiftPK);
+	if (this->soap_out(soap, tag?tag:"ns1:shiftPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__shiftPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__shiftPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__shiftPK * SOAP_FMAC4 soap_get_ns1__shiftPK(struct soap *soap, ns1__shiftPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__shiftPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__shiftPK * SOAP_FMAC2 soap_instantiate_ns1__shiftPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__shiftPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__shiftPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK);
+		if (size)
+			*size = sizeof(ns1__shiftPK);
+		((ns1__shiftPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__shiftPK);
+		for (int i = 0; i < n; i++)
+			((ns1__shiftPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__shiftPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__shiftPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__shiftPK %p -> %p\n", q, p));
+	*(ns1__shiftPK*)p = *(ns1__shiftPK*)q;
+}
+
+void ns1__shift::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__shift::shiftComment = NULL;
+	this->ns1__shift::shiftPK = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__shift::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__shift::shiftComment);
+	soap_serialize_PointerTons1__shiftPK(soap, &this->ns1__shift::shiftPK);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__shift::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__shift(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__shift(struct soap *soap, const char *tag, int id, const ns1__shift *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__shift), "ns1:shift"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "shiftComment", -1, &(a->ns1__shift::shiftComment), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__shiftPK(soap, "shiftPK", -1, &(a->ns1__shift::shiftPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__shift::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__shift(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__shift * SOAP_FMAC4 soap_in_ns1__shift(struct soap *soap, const char *tag, ns1__shift *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__shift *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__shift, sizeof(ns1__shift), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__shift)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__shift *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_shiftComment1 = 1;
+	size_t soap_flag_shiftPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_shiftComment1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "shiftComment", &(a->ns1__shift::shiftComment), "xsd:string"))
+				{	soap_flag_shiftComment1--;
+					continue;
+				}
+			if (soap_flag_shiftPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__shiftPK(soap, "shiftPK", &(a->ns1__shift::shiftPK), "ns1:shiftPK"))
+				{	soap_flag_shiftPK1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__shift *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__shift, 0, sizeof(ns1__shift), 0, soap_copy_ns1__shift);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__shift::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__shift);
+	if (this->soap_out(soap, tag?tag:"ns1:shift", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__shift::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__shift(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__shift * SOAP_FMAC4 soap_get_ns1__shift(struct soap *soap, ns1__shift *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__shift(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__shift * SOAP_FMAC2 soap_instantiate_ns1__shift(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__shift(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__shift, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__shift);
+		if (size)
+			*size = sizeof(ns1__shift);
+		((ns1__shift*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__shift[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__shift);
+		for (int i = 0; i < n; i++)
+			((ns1__shift*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__shift*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__shift(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__shift %p -> %p\n", q, p));
+	*(ns1__shift*)p = *(ns1__shift*)q;
+}
+
+void ns1__publication::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__publication::fullReference = NULL;
+	this->ns1__publication::id = NULL;
+	this->ns1__publication::repository = NULL;
+	this->ns1__publication::repositoryId = NULL;
+	this->ns1__publication::url = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__publication::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::fullReference);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__publication::id);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::repository);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::repositoryId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__publication::url);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__publication::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__publication(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__publication(struct soap *soap, const char *tag, int id, const ns1__publication *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__publication), "ns1:publication"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "fullReference", -1, &(a->ns1__publication::fullReference), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__publication::id), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "repository", -1, &(a->ns1__publication::repository), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "repositoryId", -1, &(a->ns1__publication::repositoryId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "url", -1, &(a->ns1__publication::url), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__publication::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__publication(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__publication * SOAP_FMAC4 soap_in_ns1__publication(struct soap *soap, const char *tag, ns1__publication *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__publication *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__publication, sizeof(ns1__publication), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__publication)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__publication *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_fullReference1 = 1;
+	size_t soap_flag_id1 = 1;
+	size_t soap_flag_repository1 = 1;
+	size_t soap_flag_repositoryId1 = 1;
+	size_t soap_flag_url1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_fullReference1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "fullReference", &(a->ns1__publication::fullReference), "xsd:string"))
+				{	soap_flag_fullReference1--;
+					continue;
+				}
+			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__publication::id), "xsd:long"))
+				{	soap_flag_id1--;
+					continue;
+				}
+			if (soap_flag_repository1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "repository", &(a->ns1__publication::repository), "xsd:string"))
+				{	soap_flag_repository1--;
+					continue;
+				}
+			if (soap_flag_repositoryId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "repositoryId", &(a->ns1__publication::repositoryId), "xsd:string"))
+				{	soap_flag_repositoryId1--;
+					continue;
+				}
+			if (soap_flag_url1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "url", &(a->ns1__publication::url), "xsd:string"))
+				{	soap_flag_url1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__publication *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__publication, 0, sizeof(ns1__publication), 0, soap_copy_ns1__publication);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__publication::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__publication);
+	if (this->soap_out(soap, tag?tag:"ns1:publication", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__publication::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__publication(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__publication * SOAP_FMAC4 soap_get_ns1__publication(struct soap *soap, ns1__publication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__publication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__publication * SOAP_FMAC2 soap_instantiate_ns1__publication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__publication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__publication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__publication);
+		if (size)
+			*size = sizeof(ns1__publication);
+		((ns1__publication*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__publication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__publication);
+		for (int i = 0; i < n; i++)
+			((ns1__publication*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__publication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__publication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__publication %p -> %p\n", q, p));
+	*(ns1__publication*)p = *(ns1__publication*)q;
+}
+
+void ns1__keywordPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__keywordPK::investigationId = NULL;
+	this->ns1__keywordPK::name = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__keywordPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerToLONG64(soap, &this->ns1__keywordPK::investigationId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__keywordPK::name);
+	/* transient soap skipped */
+}
+
+int ns1__keywordPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__keywordPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keywordPK(struct soap *soap, const char *tag, int id, const ns1__keywordPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keywordPK), "ns1:keywordPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__keywordPK::investigationId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__keywordPK::name), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__keywordPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__keywordPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__keywordPK * SOAP_FMAC4 soap_in_ns1__keywordPK(struct soap *soap, const char *tag, ns1__keywordPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__keywordPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keywordPK, sizeof(ns1__keywordPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__keywordPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__keywordPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	size_t soap_flag_name1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__keywordPK::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__keywordPK::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__keywordPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keywordPK, 0, sizeof(ns1__keywordPK), 0, soap_copy_ns1__keywordPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__keywordPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keywordPK);
+	if (this->soap_out(soap, tag?tag:"ns1:keywordPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__keywordPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__keywordPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__keywordPK * SOAP_FMAC4 soap_get_ns1__keywordPK(struct soap *soap, ns1__keywordPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__keywordPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__keywordPK * SOAP_FMAC2 soap_instantiate_ns1__keywordPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keywordPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keywordPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK);
+		if (size)
+			*size = sizeof(ns1__keywordPK);
+		((ns1__keywordPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__keywordPK);
+		for (int i = 0; i < n; i++)
+			((ns1__keywordPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__keywordPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keywordPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keywordPK %p -> %p\n", q, p));
+	*(ns1__keywordPK*)p = *(ns1__keywordPK*)q;
+}
+
+void ns1__keyword::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__keyword::keywordPK = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__keyword::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__keywordPK(soap, &this->ns1__keyword::keywordPK);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__keyword::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__keyword(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__keyword(struct soap *soap, const char *tag, int id, const ns1__keyword *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__keyword), "ns1:keyword"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__keywordPK(soap, "keywordPK", -1, &(a->ns1__keyword::keywordPK), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__keyword::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__keyword(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__keyword * SOAP_FMAC4 soap_in_ns1__keyword(struct soap *soap, const char *tag, ns1__keyword *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__keyword *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__keyword, sizeof(ns1__keyword), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__keyword)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__keyword *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_keywordPK1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_keywordPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__keywordPK(soap, "keywordPK", &(a->ns1__keyword::keywordPK), "ns1:keywordPK"))
+				{	soap_flag_keywordPK1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__keyword *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__keyword, 0, sizeof(ns1__keyword), 0, soap_copy_ns1__keyword);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__keyword::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__keyword);
+	if (this->soap_out(soap, tag?tag:"ns1:keyword", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__keyword::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__keyword(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__keyword * SOAP_FMAC4 soap_get_ns1__keyword(struct soap *soap, ns1__keyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__keyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__keyword * SOAP_FMAC2 soap_instantiate_ns1__keyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__keyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__keyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keyword);
+		if (size)
+			*size = sizeof(ns1__keyword);
+		((ns1__keyword*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__keyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__keyword);
+		for (int i = 0; i < n; i++)
+			((ns1__keyword*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__keyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__keyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__keyword %p -> %p\n", q, p));
+	*(ns1__keyword*)p = *(ns1__keyword*)q;
+}
+
+void ns1__investigatorPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__investigatorPK::facilityUserId = NULL;
+	this->ns1__investigatorPK::investigationId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__investigatorPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigatorPK::facilityUserId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__investigatorPK::investigationId);
+	/* transient soap skipped */
+}
+
+int ns1__investigatorPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__investigatorPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigatorPK(struct soap *soap, const char *tag, int id, const ns1__investigatorPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigatorPK), "ns1:investigatorPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "facilityUserId", -1, &(a->ns1__investigatorPK::facilityUserId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__investigatorPK::investigationId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__investigatorPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__investigatorPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__investigatorPK * SOAP_FMAC4 soap_in_ns1__investigatorPK(struct soap *soap, const char *tag, ns1__investigatorPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__investigatorPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigatorPK, sizeof(ns1__investigatorPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__investigatorPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__investigatorPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityUserId1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityUserId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "facilityUserId", &(a->ns1__investigatorPK::facilityUserId), "xsd:string"))
+				{	soap_flag_facilityUserId1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__investigatorPK::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__investigatorPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigatorPK, 0, sizeof(ns1__investigatorPK), 0, soap_copy_ns1__investigatorPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__investigatorPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigatorPK);
+	if (this->soap_out(soap, tag?tag:"ns1:investigatorPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__investigatorPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__investigatorPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__investigatorPK * SOAP_FMAC4 soap_get_ns1__investigatorPK(struct soap *soap, ns1__investigatorPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__investigatorPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__investigatorPK * SOAP_FMAC2 soap_instantiate_ns1__investigatorPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigatorPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigatorPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK);
+		if (size)
+			*size = sizeof(ns1__investigatorPK);
+		((ns1__investigatorPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__investigatorPK);
+		for (int i = 0; i < n; i++)
+			((ns1__investigatorPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__investigatorPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigatorPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigatorPK %p -> %p\n", q, p));
+	*(ns1__investigatorPK*)p = *(ns1__investigatorPK*)q;
+}
+
+void ns1__facilityUser::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__facilityUser::facilityUserId = NULL;
+	this->ns1__facilityUser::federalId = NULL;
+	this->ns1__facilityUser::firstName = NULL;
+	this->ns1__facilityUser::initials = NULL;
+	this->ns1__facilityUser::lastName = NULL;
+	this->ns1__facilityUser::middleName = NULL;
+	this->ns1__facilityUser::title = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__facilityUser::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::facilityUserId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::federalId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::firstName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::initials);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::lastName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::middleName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityUser::title);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__facilityUser::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__facilityUser(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__facilityUser(struct soap *soap, const char *tag, int id, const ns1__facilityUser *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__facilityUser), "ns1:facilityUser"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "facilityUserId", -1, &(a->ns1__facilityUser::facilityUserId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "federalId", -1, &(a->ns1__facilityUser::federalId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "firstName", -1, &(a->ns1__facilityUser::firstName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "initials", -1, &(a->ns1__facilityUser::initials), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "lastName", -1, &(a->ns1__facilityUser::lastName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "middleName", -1, &(a->ns1__facilityUser::middleName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "title", -1, &(a->ns1__facilityUser::title), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__facilityUser::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__facilityUser(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__facilityUser * SOAP_FMAC4 soap_in_ns1__facilityUser(struct soap *soap, const char *tag, ns1__facilityUser *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__facilityUser *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__facilityUser, sizeof(ns1__facilityUser), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__facilityUser)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__facilityUser *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_facilityUserId1 = 1;
+	size_t soap_flag_federalId1 = 1;
+	size_t soap_flag_firstName1 = 1;
+	size_t soap_flag_initials1 = 1;
+	size_t soap_flag_lastName1 = 1;
+	size_t soap_flag_middleName1 = 1;
+	size_t soap_flag_title1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_facilityUserId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "facilityUserId", &(a->ns1__facilityUser::facilityUserId), "xsd:string"))
+				{	soap_flag_facilityUserId1--;
+					continue;
+				}
+			if (soap_flag_federalId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "federalId", &(a->ns1__facilityUser::federalId), "xsd:string"))
+				{	soap_flag_federalId1--;
+					continue;
+				}
+			if (soap_flag_firstName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "firstName", &(a->ns1__facilityUser::firstName), "xsd:string"))
+				{	soap_flag_firstName1--;
+					continue;
+				}
+			if (soap_flag_initials1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "initials", &(a->ns1__facilityUser::initials), "xsd:string"))
+				{	soap_flag_initials1--;
+					continue;
+				}
+			if (soap_flag_lastName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "lastName", &(a->ns1__facilityUser::lastName), "xsd:string"))
+				{	soap_flag_lastName1--;
+					continue;
+				}
+			if (soap_flag_middleName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "middleName", &(a->ns1__facilityUser::middleName), "xsd:string"))
+				{	soap_flag_middleName1--;
+					continue;
+				}
+			if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "title", &(a->ns1__facilityUser::title), "xsd:string"))
+				{	soap_flag_title1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__facilityUser *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__facilityUser, 0, sizeof(ns1__facilityUser), 0, soap_copy_ns1__facilityUser);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__facilityUser::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__facilityUser);
+	if (this->soap_out(soap, tag?tag:"ns1:facilityUser", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__facilityUser::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__facilityUser(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__facilityUser * SOAP_FMAC4 soap_get_ns1__facilityUser(struct soap *soap, ns1__facilityUser *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__facilityUser(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__facilityUser * SOAP_FMAC2 soap_instantiate_ns1__facilityUser(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__facilityUser(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__facilityUser, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser);
+		if (size)
+			*size = sizeof(ns1__facilityUser);
+		((ns1__facilityUser*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__facilityUser);
+		for (int i = 0; i < n; i++)
+			((ns1__facilityUser*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__facilityUser*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__facilityUser(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__facilityUser %p -> %p\n", q, p));
+	*(ns1__facilityUser*)p = *(ns1__facilityUser*)q;
+}
+
+void ns1__investigator::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__investigator::facilityUser = NULL;
+	this->ns1__investigator::investigatorPK = NULL;
+	this->ns1__investigator::role = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__investigator::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__facilityUser(soap, &this->ns1__investigator::facilityUser);
+	soap_serialize_PointerTons1__investigatorPK(soap, &this->ns1__investigator::investigatorPK);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigator::role);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__investigator::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__investigator(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigator(struct soap *soap, const char *tag, int id, const ns1__investigator *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigator), "ns1:investigator"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__facilityUser(soap, "facilityUser", -1, &(a->ns1__investigator::facilityUser), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__investigatorPK(soap, "investigatorPK", -1, &(a->ns1__investigator::investigatorPK), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "role", -1, &(a->ns1__investigator::role), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__investigator::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__investigator(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__investigator * SOAP_FMAC4 soap_in_ns1__investigator(struct soap *soap, const char *tag, ns1__investigator *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__investigator *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigator, sizeof(ns1__investigator), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__investigator)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__investigator *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_facilityUser1 = 1;
+	size_t soap_flag_investigatorPK1 = 1;
+	size_t soap_flag_role1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_facilityUser1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__facilityUser(soap, "facilityUser", &(a->ns1__investigator::facilityUser), "ns1:facilityUser"))
+				{	soap_flag_facilityUser1--;
+					continue;
+				}
+			if (soap_flag_investigatorPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__investigatorPK(soap, "investigatorPK", &(a->ns1__investigator::investigatorPK), "ns1:investigatorPK"))
+				{	soap_flag_investigatorPK1--;
+					continue;
+				}
+			if (soap_flag_role1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "role", &(a->ns1__investigator::role), "xsd:string"))
+				{	soap_flag_role1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__investigator *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigator, 0, sizeof(ns1__investigator), 0, soap_copy_ns1__investigator);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__investigator::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigator);
+	if (this->soap_out(soap, tag?tag:"ns1:investigator", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__investigator::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__investigator(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__investigator * SOAP_FMAC4 soap_get_ns1__investigator(struct soap *soap, ns1__investigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__investigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__investigator * SOAP_FMAC2 soap_instantiate_ns1__investigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigator);
+		if (size)
+			*size = sizeof(ns1__investigator);
+		((ns1__investigator*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__investigator);
+		for (int i = 0; i < n; i++)
+			((ns1__investigator*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__investigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigator %p -> %p\n", q, p));
+	*(ns1__investigator*)p = *(ns1__investigator*)q;
+}
+
+void ns1__facilityCycle::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__facilityCycle::description = NULL;
+	this->ns1__facilityCycle::finishDate = NULL;
+	this->ns1__facilityCycle::name = NULL;
+	this->ns1__facilityCycle::startDate = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__facilityCycle::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityCycle::description);
+	soap_serialize_PointerTotime(soap, &this->ns1__facilityCycle::finishDate);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__facilityCycle::name);
+	soap_serialize_PointerTotime(soap, &this->ns1__facilityCycle::startDate);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__facilityCycle::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__facilityCycle(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__facilityCycle(struct soap *soap, const char *tag, int id, const ns1__facilityCycle *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__facilityCycle), "ns1:facilityCycle"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__facilityCycle::description), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "finishDate", -1, &(a->ns1__facilityCycle::finishDate), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__facilityCycle::name), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "startDate", -1, &(a->ns1__facilityCycle::startDate), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__facilityCycle::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__facilityCycle(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__facilityCycle * SOAP_FMAC4 soap_in_ns1__facilityCycle(struct soap *soap, const char *tag, ns1__facilityCycle *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__facilityCycle *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__facilityCycle, sizeof(ns1__facilityCycle), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__facilityCycle)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__facilityCycle *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_finishDate1 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_startDate1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__facilityCycle::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_finishDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "finishDate", &(a->ns1__facilityCycle::finishDate), "xsd:dateTime"))
+				{	soap_flag_finishDate1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__facilityCycle::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_startDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "startDate", &(a->ns1__facilityCycle::startDate), "xsd:dateTime"))
+				{	soap_flag_startDate1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__facilityCycle *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__facilityCycle, 0, sizeof(ns1__facilityCycle), 0, soap_copy_ns1__facilityCycle);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__facilityCycle::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__facilityCycle);
+	if (this->soap_out(soap, tag?tag:"ns1:facilityCycle", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__facilityCycle::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__facilityCycle(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__facilityCycle * SOAP_FMAC4 soap_get_ns1__facilityCycle(struct soap *soap, ns1__facilityCycle *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__facilityCycle(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__facilityCycle * SOAP_FMAC2 soap_instantiate_ns1__facilityCycle(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__facilityCycle(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__facilityCycle, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle);
+		if (size)
+			*size = sizeof(ns1__facilityCycle);
+		((ns1__facilityCycle*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__facilityCycle);
+		for (int i = 0; i < n; i++)
+			((ns1__facilityCycle*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__facilityCycle*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__facilityCycle(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__facilityCycle %p -> %p\n", q, p));
+	*(ns1__facilityCycle*)p = *(ns1__facilityCycle*)q;
+}
+
+void ns1__datasetParameterPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datasetParameterPK::datasetId = NULL;
+	this->ns1__datasetParameterPK::name = NULL;
+	this->ns1__datasetParameterPK::units = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datasetParameterPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerToLONG64(soap, &this->ns1__datasetParameterPK::datasetId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameterPK::name);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameterPK::units);
+	/* transient soap skipped */
+}
+
+int ns1__datasetParameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datasetParameterPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetParameterPK(struct soap *soap, const char *tag, int id, const ns1__datasetParameterPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datasetParameterPK), "ns1:datasetParameterPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__datasetParameterPK::datasetId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datasetParameterPK::name), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__datasetParameterPK::units), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datasetParameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datasetParameterPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datasetParameterPK * SOAP_FMAC4 soap_in_ns1__datasetParameterPK(struct soap *soap, const char *tag, ns1__datasetParameterPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datasetParameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetParameterPK, sizeof(ns1__datasetParameterPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datasetParameterPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datasetParameterPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_units1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__datasetParameterPK::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datasetParameterPK::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__datasetParameterPK::units), "xsd:string"))
+				{	soap_flag_units1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datasetParameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datasetParameterPK, 0, sizeof(ns1__datasetParameterPK), 0, soap_copy_ns1__datasetParameterPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__datasetParameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datasetParameterPK);
+	if (this->soap_out(soap, tag?tag:"ns1:datasetParameterPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datasetParameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datasetParameterPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datasetParameterPK * SOAP_FMAC4 soap_get_ns1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datasetParameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datasetParameterPK * SOAP_FMAC2 soap_instantiate_ns1__datasetParameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datasetParameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datasetParameterPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK);
+		if (size)
+			*size = sizeof(ns1__datasetParameterPK);
+		((ns1__datasetParameterPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datasetParameterPK);
+		for (int i = 0; i < n; i++)
+			((ns1__datasetParameterPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datasetParameterPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datasetParameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datasetParameterPK %p -> %p\n", q, p));
+	*(ns1__datasetParameterPK*)p = *(ns1__datasetParameterPK*)q;
+}
+
+void ns1__datasetParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datasetParameter::datasetParameterPK = NULL;
+	this->ns1__datasetParameter::dateTimeValue = NULL;
+	this->ns1__datasetParameter::description = NULL;
+	this->ns1__datasetParameter::error = NULL;
+	this->ns1__datasetParameter::numericValue = NULL;
+	this->ns1__datasetParameter::parameter = NULL;
+	this->ns1__datasetParameter::rangeBottom = NULL;
+	this->ns1__datasetParameter::rangeTop = NULL;
+	this->ns1__datasetParameter::stringValue = NULL;
+	this->ns1__datasetParameter::valueType = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datasetParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datasetParameterPK(soap, &this->ns1__datasetParameter::datasetParameterPK);
+	soap_serialize_PointerTotime(soap, &this->ns1__datasetParameter::dateTimeValue);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::description);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::error);
+	soap_serialize_PointerTodouble(soap, &this->ns1__datasetParameter::numericValue);
+	soap_serialize_PointerTons1__parameter(soap, &this->ns1__datasetParameter::parameter);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::rangeBottom);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::rangeTop);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datasetParameter::stringValue);
+	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__datasetParameter::valueType);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__datasetParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datasetParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datasetParameter(struct soap *soap, const char *tag, int id, const ns1__datasetParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datasetParameter), "ns1:datasetParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", -1, &(a->ns1__datasetParameter::datasetParameterPK), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "dateTimeValue", -1, &(a->ns1__datasetParameter::dateTimeValue), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datasetParameter::description), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "error", -1, &(a->ns1__datasetParameter::error), ""))
+		return soap->error;
+	if (soap_out_PointerTodouble(soap, "numericValue", -1, &(a->ns1__datasetParameter::numericValue), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameter(soap, "parameter", -1, &(a->ns1__datasetParameter::parameter), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "rangeBottom", -1, &(a->ns1__datasetParameter::rangeBottom), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "rangeTop", -1, &(a->ns1__datasetParameter::rangeTop), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stringValue", -1, &(a->ns1__datasetParameter::stringValue), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__datasetParameter::valueType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datasetParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datasetParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datasetParameter * SOAP_FMAC4 soap_in_ns1__datasetParameter(struct soap *soap, const char *tag, ns1__datasetParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datasetParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datasetParameter, sizeof(ns1__datasetParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datasetParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datasetParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_datasetParameterPK1 = 1;
+	size_t soap_flag_dateTimeValue1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_error1 = 1;
+	size_t soap_flag_numericValue1 = 1;
+	size_t soap_flag_parameter1 = 1;
+	size_t soap_flag_rangeBottom1 = 1;
+	size_t soap_flag_rangeTop1 = 1;
+	size_t soap_flag_stringValue1 = 1;
+	size_t soap_flag_valueType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_datasetParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datasetParameterPK(soap, "datasetParameterPK", &(a->ns1__datasetParameter::datasetParameterPK), "ns1:datasetParameterPK"))
+				{	soap_flag_datasetParameterPK1--;
+					continue;
+				}
+			if (soap_flag_dateTimeValue1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "dateTimeValue", &(a->ns1__datasetParameter::dateTimeValue), "xsd:dateTime"))
+				{	soap_flag_dateTimeValue1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datasetParameter::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_error1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "error", &(a->ns1__datasetParameter::error), "xsd:string"))
+				{	soap_flag_error1--;
+					continue;
+				}
+			if (soap_flag_numericValue1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTodouble(soap, "numericValue", &(a->ns1__datasetParameter::numericValue), "xsd:double"))
+				{	soap_flag_numericValue1--;
+					continue;
+				}
+			if (soap_flag_parameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameter(soap, "parameter", &(a->ns1__datasetParameter::parameter), "ns1:parameter"))
+				{	soap_flag_parameter1--;
+					continue;
+				}
+			if (soap_flag_rangeBottom1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "rangeBottom", &(a->ns1__datasetParameter::rangeBottom), "xsd:string"))
+				{	soap_flag_rangeBottom1--;
+					continue;
+				}
+			if (soap_flag_rangeTop1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "rangeTop", &(a->ns1__datasetParameter::rangeTop), "xsd:string"))
+				{	soap_flag_rangeTop1--;
+					continue;
+				}
+			if (soap_flag_stringValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stringValue", &(a->ns1__datasetParameter::stringValue), "xsd:string"))
+				{	soap_flag_stringValue1--;
+					continue;
+				}
+			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__datasetParameter::valueType), "ns1:parameterValueType"))
+				{	soap_flag_valueType1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datasetParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datasetParameter, 0, sizeof(ns1__datasetParameter), 0, soap_copy_ns1__datasetParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__datasetParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datasetParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:datasetParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datasetParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datasetParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datasetParameter * SOAP_FMAC4 soap_get_ns1__datasetParameter(struct soap *soap, ns1__datasetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datasetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datasetParameter * SOAP_FMAC2 soap_instantiate_ns1__datasetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datasetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datasetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter);
+		if (size)
+			*size = sizeof(ns1__datasetParameter);
+		((ns1__datasetParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datasetParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__datasetParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datasetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datasetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datasetParameter %p -> %p\n", q, p));
+	*(ns1__datasetParameter*)p = *(ns1__datasetParameter*)q;
+}
+
+void ns1__dataset::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__dataset::datafileCollection);
+	soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__dataset::datasetParameterCollection);
+	this->ns1__dataset::datasetStatus = NULL;
+	this->ns1__dataset::datasetType = NULL;
+	this->ns1__dataset::description = NULL;
+	this->ns1__dataset::id = NULL;
+	this->ns1__dataset::investigationId = NULL;
+	this->ns1__dataset::location = NULL;
+	this->ns1__dataset::name = NULL;
+	this->ns1__dataset::sampleId = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__dataset::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafile(soap, &this->ns1__dataset::datafileCollection);
+	soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(soap, &this->ns1__dataset::datasetParameterCollection);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::datasetStatus);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::datasetType);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::description);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__dataset::id);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__dataset::investigationId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::location);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__dataset::name);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__dataset::sampleId);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__dataset::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__dataset(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__dataset(struct soap *soap, const char *tag, int id, const ns1__dataset *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__dataset), "ns1:dataset"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafile(soap, "datafileCollection", -1, &(a->ns1__dataset::datafileCollection), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "datasetParameterCollection", -1, &(a->ns1__dataset::datasetParameterCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "datasetStatus", -1, &(a->ns1__dataset::datasetStatus), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "datasetType", -1, &(a->ns1__dataset::datasetType), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__dataset::description), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__dataset::id), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "investigationId", -1, &(a->ns1__dataset::investigationId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "location", -1, &(a->ns1__dataset::location), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__dataset::name), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__dataset::sampleId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__dataset::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__dataset(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__dataset * SOAP_FMAC4 soap_in_ns1__dataset(struct soap *soap, const char *tag, ns1__dataset *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__dataset *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__dataset, sizeof(ns1__dataset), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__dataset)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__dataset *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_datasetStatus1 = 1;
+	size_t soap_flag_datasetType1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_id1 = 1;
+	size_t soap_flag_investigationId1 = 1;
+	size_t soap_flag_location1 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_sampleId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafile(soap, "datafileCollection", &(a->ns1__dataset::datafileCollection), "ns1:datafile"))
+					continue;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(soap, "datasetParameterCollection", &(a->ns1__dataset::datasetParameterCollection), "ns1:datasetParameter"))
+					continue;
+			if (soap_flag_datasetStatus1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "datasetStatus", &(a->ns1__dataset::datasetStatus), "xsd:string"))
+				{	soap_flag_datasetStatus1--;
+					continue;
+				}
+			if (soap_flag_datasetType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "datasetType", &(a->ns1__dataset::datasetType), "xsd:string"))
+				{	soap_flag_datasetType1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__dataset::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__dataset::id), "xsd:long"))
+				{	soap_flag_id1--;
+					continue;
+				}
+			if (soap_flag_investigationId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "investigationId", &(a->ns1__dataset::investigationId), "xsd:long"))
+				{	soap_flag_investigationId1--;
+					continue;
+				}
+			if (soap_flag_location1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "location", &(a->ns1__dataset::location), "xsd:string"))
+				{	soap_flag_location1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__dataset::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__dataset::sampleId), "xsd:long"))
+				{	soap_flag_sampleId1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__dataset *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__dataset, 0, sizeof(ns1__dataset), 0, soap_copy_ns1__dataset);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__dataset::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__dataset);
+	if (this->soap_out(soap, tag?tag:"ns1:dataset", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__dataset::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__dataset(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__dataset * SOAP_FMAC4 soap_get_ns1__dataset(struct soap *soap, ns1__dataset *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__dataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__dataset * SOAP_FMAC2 soap_instantiate_ns1__dataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__dataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__dataset, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__dataset);
+		if (size)
+			*size = sizeof(ns1__dataset);
+		((ns1__dataset*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__dataset[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__dataset);
+		for (int i = 0; i < n; i++)
+			((ns1__dataset*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__dataset*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__dataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__dataset %p -> %p\n", q, p));
+	*(ns1__dataset*)p = *(ns1__dataset*)q;
+}
+
+void ns1__investigation::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__investigation::bcatInvStr = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__investigation::datasetCollection);
+	this->ns1__investigation::facility = NULL;
+	this->ns1__investigation::facilityCycle = NULL;
+	this->ns1__investigation::grantId = NULL;
+	this->ns1__investigation::id = NULL;
+	this->ns1__investigation::instrument = NULL;
+	this->ns1__investigation::invAbstract = NULL;
+	this->ns1__investigation::invEndDate = NULL;
+	this->ns1__investigation::invNumber = NULL;
+	this->ns1__investigation::invParamName = NULL;
+	this->ns1__investigation::invParamValue = NULL;
+	this->ns1__investigation::invStartDate = NULL;
+	this->ns1__investigation::invType = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__investigator(soap, &this->ns1__investigation::investigatorCollection);
+	soap_default_std__vectorTemplateOfPointerTons1__keyword(soap, &this->ns1__investigation::keywordCollection);
+	this->ns1__investigation::prevInvNumber = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__publication(soap, &this->ns1__investigation::publicationCollection);
+	this->ns1__investigation::releaseDate = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__investigation::sampleCollection);
+	soap_default_std__vectorTemplateOfPointerTons1__shift(soap, &this->ns1__investigation::shiftCollection);
+	this->ns1__investigation::title = NULL;
+	this->ns1__investigation::visitId = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__investigation::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::bcatInvStr);
+	soap_serialize_std__vectorTemplateOfPointerTons1__dataset(soap, &this->ns1__investigation::datasetCollection);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::facility);
+	soap_serialize_PointerTons1__facilityCycle(soap, &this->ns1__investigation::facilityCycle);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__investigation::grantId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__investigation::id);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::instrument);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invAbstract);
+	soap_serialize_PointerTotime(soap, &this->ns1__investigation::invEndDate);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invNumber);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invParamName);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invParamValue);
+	soap_serialize_PointerTotime(soap, &this->ns1__investigation::invStartDate);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::invType);
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigator(soap, &this->ns1__investigation::investigatorCollection);
+	soap_serialize_std__vectorTemplateOfPointerTons1__keyword(soap, &this->ns1__investigation::keywordCollection);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::prevInvNumber);
+	soap_serialize_std__vectorTemplateOfPointerTons1__publication(soap, &this->ns1__investigation::publicationCollection);
+	soap_serialize_PointerTotime(soap, &this->ns1__investigation::releaseDate);
+	soap_serialize_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__investigation::sampleCollection);
+	soap_serialize_std__vectorTemplateOfPointerTons1__shift(soap, &this->ns1__investigation::shiftCollection);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::title);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__investigation::visitId);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__investigation::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__investigation(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__investigation(struct soap *soap, const char *tag, int id, const ns1__investigation *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__investigation), "ns1:investigation"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "bcatInvStr", -1, &(a->ns1__investigation::bcatInvStr), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__dataset(soap, "datasetCollection", -1, &(a->ns1__investigation::datasetCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "facility", -1, &(a->ns1__investigation::facility), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__facilityCycle(soap, "facilityCycle", -1, &(a->ns1__investigation::facilityCycle), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "grantId", -1, &(a->ns1__investigation::grantId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__investigation::id), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "instrument", -1, &(a->ns1__investigation::instrument), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "invAbstract", -1, &(a->ns1__investigation::invAbstract), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "invEndDate", -1, &(a->ns1__investigation::invEndDate), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "invNumber", -1, &(a->ns1__investigation::invNumber), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "invParamName", -1, &(a->ns1__investigation::invParamName), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "invParamValue", -1, &(a->ns1__investigation::invParamValue), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "invStartDate", -1, &(a->ns1__investigation::invStartDate), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "invType", -1, &(a->ns1__investigation::invType), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigator(soap, "investigatorCollection", -1, &(a->ns1__investigation::investigatorCollection), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__keyword(soap, "keywordCollection", -1, &(a->ns1__investigation::keywordCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "prevInvNumber", -1, &(a->ns1__investigation::prevInvNumber), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__publication(soap, "publicationCollection", -1, &(a->ns1__investigation::publicationCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "releaseDate", -1, &(a->ns1__investigation::releaseDate), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__sample(soap, "sampleCollection", -1, &(a->ns1__investigation::sampleCollection), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__shift(soap, "shiftCollection", -1, &(a->ns1__investigation::shiftCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "title", -1, &(a->ns1__investigation::title), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "visitId", -1, &(a->ns1__investigation::visitId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__investigation::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__investigation(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__investigation * SOAP_FMAC4 soap_in_ns1__investigation(struct soap *soap, const char *tag, ns1__investigation *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__investigation *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__investigation, sizeof(ns1__investigation), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__investigation)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__investigation *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_bcatInvStr1 = 1;
+	size_t soap_flag_facility1 = 1;
+	size_t soap_flag_facilityCycle1 = 1;
+	size_t soap_flag_grantId1 = 1;
+	size_t soap_flag_id1 = 1;
+	size_t soap_flag_instrument1 = 1;
+	size_t soap_flag_invAbstract1 = 1;
+	size_t soap_flag_invEndDate1 = 1;
+	size_t soap_flag_invNumber1 = 1;
+	size_t soap_flag_invParamName1 = 1;
+	size_t soap_flag_invParamValue1 = 1;
+	size_t soap_flag_invStartDate1 = 1;
+	size_t soap_flag_invType1 = 1;
+	size_t soap_flag_prevInvNumber1 = 1;
+	size_t soap_flag_releaseDate1 = 1;
+	size_t soap_flag_title1 = 1;
+	size_t soap_flag_visitId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_bcatInvStr1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "bcatInvStr", &(a->ns1__investigation::bcatInvStr), "xsd:string"))
+				{	soap_flag_bcatInvStr1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__dataset(soap, "datasetCollection", &(a->ns1__investigation::datasetCollection), "ns1:dataset"))
+					continue;
+			if (soap_flag_facility1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "facility", &(a->ns1__investigation::facility), "xsd:string"))
+				{	soap_flag_facility1--;
+					continue;
+				}
+			if (soap_flag_facilityCycle1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__facilityCycle(soap, "facilityCycle", &(a->ns1__investigation::facilityCycle), "ns1:facilityCycle"))
+				{	soap_flag_facilityCycle1--;
+					continue;
+				}
+			if (soap_flag_grantId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "grantId", &(a->ns1__investigation::grantId), "xsd:long"))
+				{	soap_flag_grantId1--;
+					continue;
+				}
+			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__investigation::id), "xsd:long"))
+				{	soap_flag_id1--;
+					continue;
+				}
+			if (soap_flag_instrument1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "instrument", &(a->ns1__investigation::instrument), "xsd:string"))
+				{	soap_flag_instrument1--;
+					continue;
+				}
+			if (soap_flag_invAbstract1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "invAbstract", &(a->ns1__investigation::invAbstract), "xsd:string"))
+				{	soap_flag_invAbstract1--;
+					continue;
+				}
+			if (soap_flag_invEndDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "invEndDate", &(a->ns1__investigation::invEndDate), "xsd:dateTime"))
+				{	soap_flag_invEndDate1--;
+					continue;
+				}
+			if (soap_flag_invNumber1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "invNumber", &(a->ns1__investigation::invNumber), "xsd:string"))
+				{	soap_flag_invNumber1--;
+					continue;
+				}
+			if (soap_flag_invParamName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "invParamName", &(a->ns1__investigation::invParamName), "xsd:string"))
+				{	soap_flag_invParamName1--;
+					continue;
+				}
+			if (soap_flag_invParamValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "invParamValue", &(a->ns1__investigation::invParamValue), "xsd:string"))
+				{	soap_flag_invParamValue1--;
+					continue;
+				}
+			if (soap_flag_invStartDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "invStartDate", &(a->ns1__investigation::invStartDate), "xsd:dateTime"))
+				{	soap_flag_invStartDate1--;
+					continue;
+				}
+			if (soap_flag_invType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "invType", &(a->ns1__investigation::invType), "xsd:string"))
+				{	soap_flag_invType1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigator(soap, "investigatorCollection", &(a->ns1__investigation::investigatorCollection), "ns1:investigator"))
+					continue;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__keyword(soap, "keywordCollection", &(a->ns1__investigation::keywordCollection), "ns1:keyword"))
+					continue;
+			if (soap_flag_prevInvNumber1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "prevInvNumber", &(a->ns1__investigation::prevInvNumber), "xsd:string"))
+				{	soap_flag_prevInvNumber1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__publication(soap, "publicationCollection", &(a->ns1__investigation::publicationCollection), "ns1:publication"))
+					continue;
+			if (soap_flag_releaseDate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "releaseDate", &(a->ns1__investigation::releaseDate), "xsd:dateTime"))
+				{	soap_flag_releaseDate1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__sample(soap, "sampleCollection", &(a->ns1__investigation::sampleCollection), "ns1:sample"))
+					continue;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__shift(soap, "shiftCollection", &(a->ns1__investigation::shiftCollection), "ns1:shift"))
+					continue;
+			if (soap_flag_title1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "title", &(a->ns1__investigation::title), "xsd:string"))
+				{	soap_flag_title1--;
+					continue;
+				}
+			if (soap_flag_visitId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "visitId", &(a->ns1__investigation::visitId), "xsd:string"))
+				{	soap_flag_visitId1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__investigation *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__investigation, 0, sizeof(ns1__investigation), 0, soap_copy_ns1__investigation);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__investigation::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__investigation);
+	if (this->soap_out(soap, tag?tag:"ns1:investigation", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__investigation::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__investigation(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__investigation * SOAP_FMAC4 soap_get_ns1__investigation(struct soap *soap, ns1__investigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__investigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__investigation * SOAP_FMAC2 soap_instantiate_ns1__investigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__investigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__investigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigation);
+		if (size)
+			*size = sizeof(ns1__investigation);
+		((ns1__investigation*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__investigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__investigation);
+		for (int i = 0; i < n; i++)
+			((ns1__investigation*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__investigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__investigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__investigation %p -> %p\n", q, p));
+	*(ns1__investigation*)p = *(ns1__investigation*)q;
+}
+
+void ns1__searchByParameterComparatorsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByParameterComparatorsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__investigation(soap, &this->ns1__searchByParameterComparatorsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchByParameterComparatorsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByParameterComparatorsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparatorsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse), "ns1:searchByParameterComparatorsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__investigation(soap, "return", -1, &(a->ns1__searchByParameterComparatorsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByParameterComparatorsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByParameterComparatorsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorsResponse * SOAP_FMAC4 soap_in_ns1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByParameterComparatorsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, sizeof(ns1__searchByParameterComparatorsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparatorsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByParameterComparatorsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__investigation(soap, "return", &(a->ns1__searchByParameterComparatorsResponse::return_), "ns1:investigation"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByParameterComparatorsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, 0, sizeof(ns1__searchByParameterComparatorsResponse), 0, soap_copy_ns1__searchByParameterComparatorsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByParameterComparatorsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparatorsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparatorsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByParameterComparatorsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByParameterComparatorsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorsResponse * SOAP_FMAC4 soap_get_ns1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByParameterComparatorsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByParameterComparatorsResponse * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparatorsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparatorsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse);
+		if (size)
+			*size = sizeof(ns1__searchByParameterComparatorsResponse);
+		((ns1__searchByParameterComparatorsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByParameterComparatorsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByParameterComparatorsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparatorsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparatorsResponse %p -> %p\n", q, p));
+	*(ns1__searchByParameterComparatorsResponse*)p = *(ns1__searchByParameterComparatorsResponse*)q;
+}
+
+void ns1__parameterPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__parameterPK::name = NULL;
+	this->ns1__parameterPK::units = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__parameterPK::name);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__parameterPK::units);
+	/* transient soap skipped */
+}
+
+int ns1__parameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterPK(struct soap *soap, const char *tag, int id, const ns1__parameterPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterPK), "ns1:parameterPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__parameterPK::name), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__parameterPK::units), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__parameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterPK * SOAP_FMAC4 soap_in_ns1__parameterPK(struct soap *soap, const char *tag, ns1__parameterPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__parameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterPK, sizeof(ns1__parameterPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__parameterPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_units1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__parameterPK::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__parameterPK::units), "xsd:string"))
+				{	soap_flag_units1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__parameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterPK, 0, sizeof(ns1__parameterPK), 0, soap_copy_ns1__parameterPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__parameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterPK);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterPK * SOAP_FMAC4 soap_get_ns1__parameterPK(struct soap *soap, ns1__parameterPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterPK * SOAP_FMAC2 soap_instantiate_ns1__parameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK);
+		if (size)
+			*size = sizeof(ns1__parameterPK);
+		((ns1__parameterPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterPK);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterPK %p -> %p\n", q, p));
+	*(ns1__parameterPK*)p = *(ns1__parameterPK*)q;
+}
+
+void ns1__parameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->ns1__parameter::datafileParameter);
+	soap_default_bool(soap, &this->ns1__parameter::datasetParameter);
+	this->ns1__parameter::description = NULL;
+	this->ns1__parameter::nonNumericValueFormat = NULL;
+	this->ns1__parameter::parameterPK = NULL;
+	soap_default_bool(soap, &this->ns1__parameter::sampleParameter);
+	this->ns1__parameter::searchable = NULL;
+	this->ns1__parameter::unitsLongVersion = NULL;
+	this->ns1__parameter::valueType = NULL;
+	soap_default_bool(soap, &this->ns1__parameter::verified);
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::description);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::nonNumericValueFormat);
+	soap_serialize_PointerTons1__parameterPK(soap, &this->ns1__parameter::parameterPK);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::searchable);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__parameter::unitsLongVersion);
+	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__parameter::valueType);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__parameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameter(struct soap *soap, const char *tag, int id, const ns1__parameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameter), "ns1:parameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "datafileParameter", -1, &(a->ns1__parameter::datafileParameter), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "datasetParameter", -1, &(a->ns1__parameter::datasetParameter), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__parameter::description), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "nonNumericValueFormat", -1, &(a->ns1__parameter::nonNumericValueFormat), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterPK(soap, "parameterPK", -1, &(a->ns1__parameter::parameterPK), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "sampleParameter", -1, &(a->ns1__parameter::sampleParameter), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "searchable", -1, &(a->ns1__parameter::searchable), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "unitsLongVersion", -1, &(a->ns1__parameter::unitsLongVersion), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__parameter::valueType), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "verified", -1, &(a->ns1__parameter::verified), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__parameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameter * SOAP_FMAC4 soap_in_ns1__parameter(struct soap *soap, const char *tag, ns1__parameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__parameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameter, sizeof(ns1__parameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__parameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_datafileParameter1 = 1;
+	size_t soap_flag_datasetParameter1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_nonNumericValueFormat1 = 1;
+	size_t soap_flag_parameterPK1 = 1;
+	size_t soap_flag_sampleParameter1 = 1;
+	size_t soap_flag_searchable1 = 1;
+	size_t soap_flag_unitsLongVersion1 = 1;
+	size_t soap_flag_valueType1 = 1;
+	size_t soap_flag_verified1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_datafileParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "datafileParameter", &(a->ns1__parameter::datafileParameter), "xsd:boolean"))
+				{	soap_flag_datafileParameter1--;
+					continue;
+				}
+			if (soap_flag_datasetParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "datasetParameter", &(a->ns1__parameter::datasetParameter), "xsd:boolean"))
+				{	soap_flag_datasetParameter1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__parameter::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_nonNumericValueFormat1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "nonNumericValueFormat", &(a->ns1__parameter::nonNumericValueFormat), "xsd:string"))
+				{	soap_flag_nonNumericValueFormat1--;
+					continue;
+				}
+			if (soap_flag_parameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterPK(soap, "parameterPK", &(a->ns1__parameter::parameterPK), "ns1:parameterPK"))
+				{	soap_flag_parameterPK1--;
+					continue;
+				}
+			if (soap_flag_sampleParameter1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "sampleParameter", &(a->ns1__parameter::sampleParameter), "xsd:boolean"))
+				{	soap_flag_sampleParameter1--;
+					continue;
+				}
+			if (soap_flag_searchable1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "searchable", &(a->ns1__parameter::searchable), "xsd:string"))
+				{	soap_flag_searchable1--;
+					continue;
+				}
+			if (soap_flag_unitsLongVersion1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "unitsLongVersion", &(a->ns1__parameter::unitsLongVersion), "xsd:string"))
+				{	soap_flag_unitsLongVersion1--;
+					continue;
+				}
+			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__parameter::valueType), "ns1:parameterValueType"))
+				{	soap_flag_valueType1--;
+					continue;
+				}
+			if (soap_flag_verified1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "verified", &(a->ns1__parameter::verified), "xsd:boolean"))
+				{	soap_flag_verified1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__parameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameter, 0, sizeof(ns1__parameter), 0, soap_copy_ns1__parameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0 || soap_flag_datafileParameter1 > 0 || soap_flag_datasetParameter1 > 0 || soap_flag_sampleParameter1 > 0 || soap_flag_verified1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__parameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameter);
+	if (this->soap_out(soap, tag?tag:"ns1:parameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameter * SOAP_FMAC4 soap_get_ns1__parameter(struct soap *soap, ns1__parameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameter * SOAP_FMAC2 soap_instantiate_ns1__parameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameter);
+		if (size)
+			*size = sizeof(ns1__parameter);
+		((ns1__parameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameter);
+		for (int i = 0; i < n; i++)
+			((ns1__parameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameter %p -> %p\n", q, p));
+	*(ns1__parameter*)p = *(ns1__parameter*)q;
+}
+
+void ns1__parameterValued::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__parameterValued::param = NULL;
+	this->ns1__parameterValued::type = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterValued::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__parameter(soap, &this->ns1__parameterValued::param);
+	soap_serialize_PointerTons1__parameterType(soap, &this->ns1__parameterValued::type);
+	/* transient soap skipped */
+}
+
+int ns1__parameterValued::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterValued(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterValued(struct soap *soap, const char *tag, int id, const ns1__parameterValued *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterValued), "ns1:parameterValued"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__parameter(soap, "param", -1, &(a->ns1__parameterValued::param), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterType(soap, "type", -1, &(a->ns1__parameterValued::type), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__parameterValued::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterValued(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterValued * SOAP_FMAC4 soap_in_ns1__parameterValued(struct soap *soap, const char *tag, ns1__parameterValued *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__parameterValued *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterValued, sizeof(ns1__parameterValued), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterValued)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__parameterValued *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_param1 = 1;
+	size_t soap_flag_type1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_param1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameter(soap, "param", &(a->ns1__parameterValued::param), "ns1:parameter"))
+				{	soap_flag_param1--;
+					continue;
+				}
+			if (soap_flag_type1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterType(soap, "type", &(a->ns1__parameterValued::type), "ns1:parameterType"))
+				{	soap_flag_type1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__parameterValued *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterValued, 0, sizeof(ns1__parameterValued), 0, soap_copy_ns1__parameterValued);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__parameterValued::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterValued);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterValued", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterValued::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterValued(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterValued * SOAP_FMAC4 soap_get_ns1__parameterValued(struct soap *soap, ns1__parameterValued *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterValued(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterValued * SOAP_FMAC2 soap_instantiate_ns1__parameterValued(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterValued(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterValued, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued);
+		if (size)
+			*size = sizeof(ns1__parameterValued);
+		((ns1__parameterValued*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterValued);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterValued*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterValued*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterValued(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterValued %p -> %p\n", q, p));
+	*(ns1__parameterValued*)p = *(ns1__parameterValued*)q;
+}
+
+void ns1__parameterCondition::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterCondition::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__parameterCondition::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterCondition(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterCondition(struct soap *soap, const char *tag, int id, const ns1__parameterCondition *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:parameterCondition");
+}
+
+void *ns1__parameterCondition::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterCondition(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterCondition * SOAP_FMAC4 soap_in_ns1__parameterCondition(struct soap *soap, const char *tag, ns1__parameterCondition *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__parameterCondition *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterCondition, sizeof(ns1__parameterCondition), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterCondition)
+			return (ns1__parameterCondition *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__parameterCondition::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterCondition);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterCondition", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterCondition::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterCondition(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterCondition * SOAP_FMAC4 soap_get_ns1__parameterCondition(struct soap *soap, ns1__parameterCondition *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterCondition(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterCondition * SOAP_FMAC2 soap_instantiate_ns1__parameterCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterCondition, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (type && !soap_match_tag(soap, type, "ns1:parameterComparisonCondition"))
+	{	cp->type = SOAP_TYPE_ns1__parameterComparisonCondition;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterComparisonCondition);
+			((ns1__parameterComparisonCondition*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterComparisonCondition);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterComparisonCondition*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterComparisonCondition*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterLogicalCondition"))
+	{	cp->type = SOAP_TYPE_ns1__parameterLogicalCondition;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterLogicalCondition);
+			((ns1__parameterLogicalCondition*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterLogicalCondition);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterLogicalCondition*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterLogicalCondition*)cp->ptr;
+	}
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition);
+		if (size)
+			*size = sizeof(ns1__parameterCondition);
+		((ns1__parameterCondition*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterCondition);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterCondition*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterCondition*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterCondition %p -> %p\n", q, p));
+	*(ns1__parameterCondition*)p = *(ns1__parameterCondition*)q;
+}
+
+void ns1__parameterComparisonCondition::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__parameterComparisonCondition::comparator = NULL;
+	this->ns1__parameterComparisonCondition::parameterValued = NULL;
+	this->ns1__parameterComparisonCondition::value = NULL;
+	this->ns1__parameterComparisonCondition::value2 = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__parameterComparisonCondition::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__comparisonOperator(soap, &this->ns1__parameterComparisonCondition::comparator);
+	soap_serialize_PointerTons1__parameterValued(soap, &this->ns1__parameterComparisonCondition::parameterValued);
+	soap_serialize_PointerToxsd__anyType(soap, &this->ns1__parameterComparisonCondition::value);
+	soap_serialize_PointerToxsd__anyType(soap, &this->ns1__parameterComparisonCondition::value2);
+	/* transient soap skipped */
+}
+
+int ns1__parameterComparisonCondition::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__parameterComparisonCondition(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__parameterComparisonCondition(struct soap *soap, const char *tag, int id, const ns1__parameterComparisonCondition *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__parameterComparisonCondition), "ns1:parameterComparisonCondition"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__comparisonOperator(soap, "comparator", -1, &(a->ns1__parameterComparisonCondition::comparator), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterValued(soap, "parameterValued", -1, &(a->ns1__parameterComparisonCondition::parameterValued), ""))
+		return soap->error;
+	if (soap_out_PointerToxsd__anyType(soap, "value", -1, &(a->ns1__parameterComparisonCondition::value), ""))
+		return soap->error;
+	if (soap_out_PointerToxsd__anyType(soap, "value2", -1, &(a->ns1__parameterComparisonCondition::value2), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__parameterComparisonCondition::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__parameterComparisonCondition(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__parameterComparisonCondition * SOAP_FMAC4 soap_in_ns1__parameterComparisonCondition(struct soap *soap, const char *tag, ns1__parameterComparisonCondition *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__parameterComparisonCondition *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__parameterComparisonCondition)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__parameterComparisonCondition *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_comparator1 = 1;
+	size_t soap_flag_parameterValued1 = 1;
+	size_t soap_flag_value1 = 1;
+	size_t soap_flag_value21 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_comparator1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__comparisonOperator(soap, "comparator", &(a->ns1__parameterComparisonCondition::comparator), "ns1:comparisonOperator"))
+				{	soap_flag_comparator1--;
+					continue;
+				}
+			if (soap_flag_parameterValued1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterValued(soap, "parameterValued", &(a->ns1__parameterComparisonCondition::parameterValued), "ns1:parameterValued"))
+				{	soap_flag_parameterValued1--;
+					continue;
+				}
+			if (soap_flag_value1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToxsd__anyType(soap, "value", &(a->ns1__parameterComparisonCondition::value), "xsd:anyType"))
+				{	soap_flag_value1--;
+					continue;
+				}
+			if (soap_flag_value21 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToxsd__anyType(soap, "value2", &(a->ns1__parameterComparisonCondition::value2), "xsd:anyType"))
+				{	soap_flag_value21--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__parameterComparisonCondition *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__parameterComparisonCondition, 0, sizeof(ns1__parameterComparisonCondition), 0, soap_copy_ns1__parameterComparisonCondition);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__parameterComparisonCondition::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__parameterComparisonCondition);
+	if (this->soap_out(soap, tag?tag:"ns1:parameterComparisonCondition", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__parameterComparisonCondition::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__parameterComparisonCondition(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__parameterComparisonCondition * SOAP_FMAC4 soap_get_ns1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__parameterComparisonCondition(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__parameterComparisonCondition * SOAP_FMAC2 soap_instantiate_ns1__parameterComparisonCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__parameterComparisonCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__parameterComparisonCondition, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition);
+		if (size)
+			*size = sizeof(ns1__parameterComparisonCondition);
+		((ns1__parameterComparisonCondition*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__parameterComparisonCondition);
+		for (int i = 0; i < n; i++)
+			((ns1__parameterComparisonCondition*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__parameterComparisonCondition*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__parameterComparisonCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__parameterComparisonCondition %p -> %p\n", q, p));
+	*(ns1__parameterComparisonCondition*)p = *(ns1__parameterComparisonCondition*)q;
+}
+
+void ns1__searchByParameterComparators::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchByParameterComparators::sessionId = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchByParameterComparators::comparators);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchByParameterComparators::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchByParameterComparators::sessionId);
+	soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, &this->ns1__searchByParameterComparators::comparators);
+	/* transient soap skipped */
+}
+
+int ns1__searchByParameterComparators::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchByParameterComparators(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchByParameterComparators(struct soap *soap, const char *tag, int id, const ns1__searchByParameterComparators *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchByParameterComparators), "ns1:searchByParameterComparators"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchByParameterComparators::sessionId), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", -1, &(a->ns1__searchByParameterComparators::comparators), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchByParameterComparators::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchByParameterComparators(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparators * SOAP_FMAC4 soap_in_ns1__searchByParameterComparators(struct soap *soap, const char *tag, ns1__searchByParameterComparators *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchByParameterComparators *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchByParameterComparators, sizeof(ns1__searchByParameterComparators), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchByParameterComparators)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchByParameterComparators *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchByParameterComparators::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, "comparators", &(a->ns1__searchByParameterComparators::comparators), "ns1:parameterComparisonCondition"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchByParameterComparators *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchByParameterComparators, 0, sizeof(ns1__searchByParameterComparators), 0, soap_copy_ns1__searchByParameterComparators);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchByParameterComparators::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchByParameterComparators);
+	if (this->soap_out(soap, tag?tag:"ns1:searchByParameterComparators", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchByParameterComparators::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchByParameterComparators(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparators * SOAP_FMAC4 soap_get_ns1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchByParameterComparators * SOAP_FMAC2 soap_instantiate_ns1__searchByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchByParameterComparators, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators);
+		if (size)
+			*size = sizeof(ns1__searchByParameterComparators);
+		((ns1__searchByParameterComparators*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchByParameterComparators);
+		for (int i = 0; i < n; i++)
+			((ns1__searchByParameterComparators*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchByParameterComparators*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchByParameterComparators %p -> %p\n", q, p));
+	*(ns1__searchByParameterComparators*)p = *(ns1__searchByParameterComparators*)q;
+}
+
+void ns1__modifySampleResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifySampleResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__modifySampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifySampleResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySampleResponse(struct soap *soap, const char *tag, int id, const ns1__modifySampleResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:modifySampleResponse");
+}
+
+void *ns1__modifySampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifySampleResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleResponse * SOAP_FMAC4 soap_in_ns1__modifySampleResponse(struct soap *soap, const char *tag, ns1__modifySampleResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__modifySampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySampleResponse, sizeof(ns1__modifySampleResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifySampleResponse)
+			return (ns1__modifySampleResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__modifySampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySampleResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:modifySampleResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifySampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifySampleResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleResponse * SOAP_FMAC4 soap_get_ns1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifySampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifySampleResponse * SOAP_FMAC2 soap_instantiate_ns1__modifySampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse);
+		if (size)
+			*size = sizeof(ns1__modifySampleResponse);
+		((ns1__modifySampleResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifySampleResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__modifySampleResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifySampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySampleResponse %p -> %p\n", q, p));
+	*(ns1__modifySampleResponse*)p = *(ns1__modifySampleResponse*)q;
+}
+
+void ns1__modifySample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__modifySample::sessionId = NULL;
+	this->ns1__modifySample::sample = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__modifySample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__modifySample::sessionId);
+	soap_serialize_PointerTons1__sample(soap, &this->ns1__modifySample::sample);
+	/* transient soap skipped */
+}
+
+int ns1__modifySample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__modifySample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__modifySample(struct soap *soap, const char *tag, int id, const ns1__modifySample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__modifySample), "ns1:modifySample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__modifySample::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sample(soap, "sample", -1, &(a->ns1__modifySample::sample), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__modifySample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__modifySample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__modifySample * SOAP_FMAC4 soap_in_ns1__modifySample(struct soap *soap, const char *tag, ns1__modifySample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__modifySample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__modifySample, sizeof(ns1__modifySample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__modifySample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__modifySample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sample1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__modifySample::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sample1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sample(soap, "sample", &(a->ns1__modifySample::sample), "ns1:sample"))
+				{	soap_flag_sample1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__modifySample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__modifySample, 0, sizeof(ns1__modifySample), 0, soap_copy_ns1__modifySample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__modifySample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__modifySample);
+	if (this->soap_out(soap, tag?tag:"ns1:modifySample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__modifySample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__modifySample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__modifySample * SOAP_FMAC4 soap_get_ns1__modifySample(struct soap *soap, ns1__modifySample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__modifySample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__modifySample * SOAP_FMAC2 soap_instantiate_ns1__modifySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__modifySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__modifySample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample);
+		if (size)
+			*size = sizeof(ns1__modifySample);
+		((ns1__modifySample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__modifySample);
+		for (int i = 0; i < n; i++)
+			((ns1__modifySample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__modifySample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__modifySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__modifySample %p -> %p\n", q, p));
+	*(ns1__modifySample*)p = *(ns1__modifySample*)q;
+}
+
+void ns1__ValidationException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__ValidationException::message = NULL;
+	this->ns1__ValidationException::stackTraceAsString = NULL;
+	this->ns1__ValidationException::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__ValidationException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ValidationException::message);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ValidationException::stackTraceAsString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__ValidationException::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__ValidationException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__ValidationException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__ValidationException(struct soap *soap, const char *tag, int id, const ns1__ValidationException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__ValidationException), "ns1:ValidationException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__ValidationException::message), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__ValidationException::stackTraceAsString), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__ValidationException::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__ValidationException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__ValidationException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__ValidationException * SOAP_FMAC4 soap_in_ns1__ValidationException(struct soap *soap, const char *tag, ns1__ValidationException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__ValidationException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__ValidationException, sizeof(ns1__ValidationException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__ValidationException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__ValidationException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	size_t soap_flag_stackTraceAsString1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__ValidationException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__ValidationException::stackTraceAsString), "xsd:string"))
+				{	soap_flag_stackTraceAsString1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__ValidationException::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__ValidationException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__ValidationException, 0, sizeof(ns1__ValidationException), 0, soap_copy_ns1__ValidationException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__ValidationException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__ValidationException);
+	if (this->soap_out(soap, tag?tag:"ns1:ValidationException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__ValidationException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__ValidationException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__ValidationException * SOAP_FMAC4 soap_get_ns1__ValidationException(struct soap *soap, ns1__ValidationException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__ValidationException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__ValidationException * SOAP_FMAC2 soap_instantiate_ns1__ValidationException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__ValidationException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__ValidationException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException);
+		if (size)
+			*size = sizeof(ns1__ValidationException);
+		((ns1__ValidationException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__ValidationException);
+		for (int i = 0; i < n; i++)
+			((ns1__ValidationException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__ValidationException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__ValidationException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__ValidationException %p -> %p\n", q, p));
+	*(ns1__ValidationException*)p = *(ns1__ValidationException*)q;
+}
+
+void ns1__createDataFileResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createDataFileResponse::return_ = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataFileResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datafile(soap, &this->ns1__createDataFileResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__createDataFileResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataFileResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFileResponse(struct soap *soap, const char *tag, int id, const ns1__createDataFileResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFileResponse), "ns1:createDataFileResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTons1__datafile(soap, "return", -1, &(a->ns1__createDataFileResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataFileResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataFileResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataFileResponse * SOAP_FMAC4 soap_in_ns1__createDataFileResponse(struct soap *soap, const char *tag, ns1__createDataFileResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataFileResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFileResponse, sizeof(ns1__createDataFileResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataFileResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataFileResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_return_1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_return_1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafile(soap, "return", &(a->ns1__createDataFileResponse::return_), "ns1:datafile"))
+				{	soap_flag_return_1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataFileResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFileResponse, 0, sizeof(ns1__createDataFileResponse), 0, soap_copy_ns1__createDataFileResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataFileResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFileResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataFileResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataFileResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataFileResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataFileResponse * SOAP_FMAC4 soap_get_ns1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataFileResponse * SOAP_FMAC2 soap_instantiate_ns1__createDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse);
+		if (size)
+			*size = sizeof(ns1__createDataFileResponse);
+		((ns1__createDataFileResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataFileResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataFileResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFileResponse %p -> %p\n", q, p));
+	*(ns1__createDataFileResponse*)p = *(ns1__createDataFileResponse*)q;
+}
+
+void ns1__relatedDatafilesPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__relatedDatafilesPK::destDatafileId = NULL;
+	this->ns1__relatedDatafilesPK::sourceDatafileId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__relatedDatafilesPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerToLONG64(soap, &this->ns1__relatedDatafilesPK::destDatafileId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__relatedDatafilesPK::sourceDatafileId);
+	/* transient soap skipped */
+}
+
+int ns1__relatedDatafilesPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__relatedDatafilesPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__relatedDatafilesPK(struct soap *soap, const char *tag, int id, const ns1__relatedDatafilesPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__relatedDatafilesPK), "ns1:relatedDatafilesPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerToLONG64(soap, "destDatafileId", -1, &(a->ns1__relatedDatafilesPK::destDatafileId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "sourceDatafileId", -1, &(a->ns1__relatedDatafilesPK::sourceDatafileId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__relatedDatafilesPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__relatedDatafilesPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__relatedDatafilesPK * SOAP_FMAC4 soap_in_ns1__relatedDatafilesPK(struct soap *soap, const char *tag, ns1__relatedDatafilesPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__relatedDatafilesPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__relatedDatafilesPK, sizeof(ns1__relatedDatafilesPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__relatedDatafilesPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__relatedDatafilesPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_destDatafileId1 = 1;
+	size_t soap_flag_sourceDatafileId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_destDatafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "destDatafileId", &(a->ns1__relatedDatafilesPK::destDatafileId), "xsd:long"))
+				{	soap_flag_destDatafileId1--;
+					continue;
+				}
+			if (soap_flag_sourceDatafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "sourceDatafileId", &(a->ns1__relatedDatafilesPK::sourceDatafileId), "xsd:long"))
+				{	soap_flag_sourceDatafileId1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__relatedDatafilesPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__relatedDatafilesPK, 0, sizeof(ns1__relatedDatafilesPK), 0, soap_copy_ns1__relatedDatafilesPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__relatedDatafilesPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__relatedDatafilesPK);
+	if (this->soap_out(soap, tag?tag:"ns1:relatedDatafilesPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__relatedDatafilesPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__relatedDatafilesPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__relatedDatafilesPK * SOAP_FMAC4 soap_get_ns1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__relatedDatafilesPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__relatedDatafilesPK * SOAP_FMAC2 soap_instantiate_ns1__relatedDatafilesPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__relatedDatafilesPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__relatedDatafilesPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK);
+		if (size)
+			*size = sizeof(ns1__relatedDatafilesPK);
+		((ns1__relatedDatafilesPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__relatedDatafilesPK);
+		for (int i = 0; i < n; i++)
+			((ns1__relatedDatafilesPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__relatedDatafilesPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__relatedDatafilesPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__relatedDatafilesPK %p -> %p\n", q, p));
+	*(ns1__relatedDatafilesPK*)p = *(ns1__relatedDatafilesPK*)q;
+}
+
+void ns1__relatedDatafiles::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__relatedDatafiles::relatedDatafilesPK = NULL;
+	this->ns1__relatedDatafiles::relation = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__relatedDatafiles::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__relatedDatafilesPK(soap, &this->ns1__relatedDatafiles::relatedDatafilesPK);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__relatedDatafiles::relation);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__relatedDatafiles::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__relatedDatafiles(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__relatedDatafiles(struct soap *soap, const char *tag, int id, const ns1__relatedDatafiles *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__relatedDatafiles), "ns1:relatedDatafiles"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__relatedDatafilesPK(soap, "relatedDatafilesPK", -1, &(a->ns1__relatedDatafiles::relatedDatafilesPK), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "relation", -1, &(a->ns1__relatedDatafiles::relation), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__relatedDatafiles::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__relatedDatafiles(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__relatedDatafiles * SOAP_FMAC4 soap_in_ns1__relatedDatafiles(struct soap *soap, const char *tag, ns1__relatedDatafiles *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__relatedDatafiles *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__relatedDatafiles, sizeof(ns1__relatedDatafiles), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__relatedDatafiles)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__relatedDatafiles *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_relatedDatafilesPK1 = 1;
+	size_t soap_flag_relation1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_relatedDatafilesPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__relatedDatafilesPK(soap, "relatedDatafilesPK", &(a->ns1__relatedDatafiles::relatedDatafilesPK), "ns1:relatedDatafilesPK"))
+				{	soap_flag_relatedDatafilesPK1--;
+					continue;
+				}
+			if (soap_flag_relation1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "relation", &(a->ns1__relatedDatafiles::relation), "xsd:string"))
+				{	soap_flag_relation1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__relatedDatafiles *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__relatedDatafiles, 0, sizeof(ns1__relatedDatafiles), 0, soap_copy_ns1__relatedDatafiles);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__relatedDatafiles::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__relatedDatafiles);
+	if (this->soap_out(soap, tag?tag:"ns1:relatedDatafiles", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__relatedDatafiles::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__relatedDatafiles(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__relatedDatafiles * SOAP_FMAC4 soap_get_ns1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__relatedDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__relatedDatafiles * SOAP_FMAC2 soap_instantiate_ns1__relatedDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__relatedDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__relatedDatafiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles);
+		if (size)
+			*size = sizeof(ns1__relatedDatafiles);
+		((ns1__relatedDatafiles*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__relatedDatafiles);
+		for (int i = 0; i < n; i++)
+			((ns1__relatedDatafiles*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__relatedDatafiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__relatedDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__relatedDatafiles %p -> %p\n", q, p));
+	*(ns1__relatedDatafiles*)p = *(ns1__relatedDatafiles*)q;
+}
+
+void ns1__datafileParameterPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datafileParameterPK::datafileId = NULL;
+	this->ns1__datafileParameterPK::name = NULL;
+	this->ns1__datafileParameterPK::units = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datafileParameterPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerToLONG64(soap, &this->ns1__datafileParameterPK::datafileId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameterPK::name);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameterPK::units);
+	/* transient soap skipped */
+}
+
+int ns1__datafileParameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datafileParameterPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileParameterPK(struct soap *soap, const char *tag, int id, const ns1__datafileParameterPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileParameterPK), "ns1:datafileParameterPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerToLONG64(soap, "datafileId", -1, &(a->ns1__datafileParameterPK::datafileId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datafileParameterPK::name), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__datafileParameterPK::units), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datafileParameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datafileParameterPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datafileParameterPK * SOAP_FMAC4 soap_in_ns1__datafileParameterPK(struct soap *soap, const char *tag, ns1__datafileParameterPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datafileParameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileParameterPK, sizeof(ns1__datafileParameterPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datafileParameterPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datafileParameterPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_datafileId1 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_units1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_datafileId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datafileId", &(a->ns1__datafileParameterPK::datafileId), "xsd:long"))
+				{	soap_flag_datafileId1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datafileParameterPK::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__datafileParameterPK::units), "xsd:string"))
+				{	soap_flag_units1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datafileParameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileParameterPK, 0, sizeof(ns1__datafileParameterPK), 0, soap_copy_ns1__datafileParameterPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__datafileParameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileParameterPK);
+	if (this->soap_out(soap, tag?tag:"ns1:datafileParameterPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datafileParameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datafileParameterPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datafileParameterPK * SOAP_FMAC4 soap_get_ns1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafileParameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datafileParameterPK * SOAP_FMAC2 soap_instantiate_ns1__datafileParameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileParameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileParameterPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK);
+		if (size)
+			*size = sizeof(ns1__datafileParameterPK);
+		((ns1__datafileParameterPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datafileParameterPK);
+		for (int i = 0; i < n; i++)
+			((ns1__datafileParameterPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datafileParameterPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileParameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileParameterPK %p -> %p\n", q, p));
+	*(ns1__datafileParameterPK*)p = *(ns1__datafileParameterPK*)q;
+}
+
+void ns1__datafileParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datafileParameter::datafileParameterPK = NULL;
+	this->ns1__datafileParameter::dateTimeValue = NULL;
+	this->ns1__datafileParameter::description = NULL;
+	this->ns1__datafileParameter::error = NULL;
+	this->ns1__datafileParameter::numericValue = NULL;
+	this->ns1__datafileParameter::rangeBottom = NULL;
+	this->ns1__datafileParameter::rangeTop = NULL;
+	this->ns1__datafileParameter::stringValue = NULL;
+	this->ns1__datafileParameter::valueType = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datafileParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datafileParameterPK(soap, &this->ns1__datafileParameter::datafileParameterPK);
+	soap_serialize_PointerTotime(soap, &this->ns1__datafileParameter::dateTimeValue);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::description);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::error);
+	soap_serialize_PointerTodouble(soap, &this->ns1__datafileParameter::numericValue);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::rangeBottom);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::rangeTop);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileParameter::stringValue);
+	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__datafileParameter::valueType);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__datafileParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datafileParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileParameter(struct soap *soap, const char *tag, int id, const ns1__datafileParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileParameter), "ns1:datafileParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", -1, &(a->ns1__datafileParameter::datafileParameterPK), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "dateTimeValue", -1, &(a->ns1__datafileParameter::dateTimeValue), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datafileParameter::description), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "error", -1, &(a->ns1__datafileParameter::error), ""))
+		return soap->error;
+	if (soap_out_PointerTodouble(soap, "numericValue", -1, &(a->ns1__datafileParameter::numericValue), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "rangeBottom", -1, &(a->ns1__datafileParameter::rangeBottom), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "rangeTop", -1, &(a->ns1__datafileParameter::rangeTop), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stringValue", -1, &(a->ns1__datafileParameter::stringValue), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__datafileParameter::valueType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datafileParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datafileParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datafileParameter * SOAP_FMAC4 soap_in_ns1__datafileParameter(struct soap *soap, const char *tag, ns1__datafileParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datafileParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileParameter, sizeof(ns1__datafileParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datafileParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datafileParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_datafileParameterPK1 = 1;
+	size_t soap_flag_dateTimeValue1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_error1 = 1;
+	size_t soap_flag_numericValue1 = 1;
+	size_t soap_flag_rangeBottom1 = 1;
+	size_t soap_flag_rangeTop1 = 1;
+	size_t soap_flag_stringValue1 = 1;
+	size_t soap_flag_valueType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_datafileParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileParameterPK(soap, "datafileParameterPK", &(a->ns1__datafileParameter::datafileParameterPK), "ns1:datafileParameterPK"))
+				{	soap_flag_datafileParameterPK1--;
+					continue;
+				}
+			if (soap_flag_dateTimeValue1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "dateTimeValue", &(a->ns1__datafileParameter::dateTimeValue), "xsd:dateTime"))
+				{	soap_flag_dateTimeValue1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datafileParameter::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_error1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "error", &(a->ns1__datafileParameter::error), "xsd:string"))
+				{	soap_flag_error1--;
+					continue;
+				}
+			if (soap_flag_numericValue1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTodouble(soap, "numericValue", &(a->ns1__datafileParameter::numericValue), "xsd:double"))
+				{	soap_flag_numericValue1--;
+					continue;
+				}
+			if (soap_flag_rangeBottom1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "rangeBottom", &(a->ns1__datafileParameter::rangeBottom), "xsd:string"))
+				{	soap_flag_rangeBottom1--;
+					continue;
+				}
+			if (soap_flag_rangeTop1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "rangeTop", &(a->ns1__datafileParameter::rangeTop), "xsd:string"))
+				{	soap_flag_rangeTop1--;
+					continue;
+				}
+			if (soap_flag_stringValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stringValue", &(a->ns1__datafileParameter::stringValue), "xsd:string"))
+				{	soap_flag_stringValue1--;
+					continue;
+				}
+			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__datafileParameter::valueType), "ns1:parameterValueType"))
+				{	soap_flag_valueType1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datafileParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileParameter, 0, sizeof(ns1__datafileParameter), 0, soap_copy_ns1__datafileParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__datafileParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:datafileParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datafileParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datafileParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datafileParameter * SOAP_FMAC4 soap_get_ns1__datafileParameter(struct soap *soap, ns1__datafileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datafileParameter * SOAP_FMAC2 soap_instantiate_ns1__datafileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter);
+		if (size)
+			*size = sizeof(ns1__datafileParameter);
+		((ns1__datafileParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datafileParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__datafileParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datafileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileParameter %p -> %p\n", q, p));
+	*(ns1__datafileParameter*)p = *(ns1__datafileParameter*)q;
+}
+
+void ns1__datafileFormatPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datafileFormatPK::name = NULL;
+	this->ns1__datafileFormatPK::version = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datafileFormatPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormatPK::name);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormatPK::version);
+	/* transient soap skipped */
+}
+
+int ns1__datafileFormatPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datafileFormatPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileFormatPK(struct soap *soap, const char *tag, int id, const ns1__datafileFormatPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileFormatPK), "ns1:datafileFormatPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datafileFormatPK::name), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "version", -1, &(a->ns1__datafileFormatPK::version), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datafileFormatPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datafileFormatPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datafileFormatPK * SOAP_FMAC4 soap_in_ns1__datafileFormatPK(struct soap *soap, const char *tag, ns1__datafileFormatPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datafileFormatPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileFormatPK, sizeof(ns1__datafileFormatPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datafileFormatPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datafileFormatPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_version1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datafileFormatPK::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_version1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "version", &(a->ns1__datafileFormatPK::version), "xsd:string"))
+				{	soap_flag_version1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datafileFormatPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileFormatPK, 0, sizeof(ns1__datafileFormatPK), 0, soap_copy_ns1__datafileFormatPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__datafileFormatPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileFormatPK);
+	if (this->soap_out(soap, tag?tag:"ns1:datafileFormatPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datafileFormatPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datafileFormatPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datafileFormatPK * SOAP_FMAC4 soap_get_ns1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafileFormatPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datafileFormatPK * SOAP_FMAC2 soap_instantiate_ns1__datafileFormatPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileFormatPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileFormatPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK);
+		if (size)
+			*size = sizeof(ns1__datafileFormatPK);
+		((ns1__datafileFormatPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datafileFormatPK);
+		for (int i = 0; i < n; i++)
+			((ns1__datafileFormatPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datafileFormatPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileFormatPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileFormatPK %p -> %p\n", q, p));
+	*(ns1__datafileFormatPK*)p = *(ns1__datafileFormatPK*)q;
+}
+
+void ns1__datafileFormat::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datafileFormat::datafileFormatPK = NULL;
+	this->ns1__datafileFormat::description = NULL;
+	this->ns1__datafileFormat::formatType = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datafileFormat::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__datafileFormatPK(soap, &this->ns1__datafileFormat::datafileFormatPK);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormat::description);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafileFormat::formatType);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__datafileFormat::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datafileFormat(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafileFormat(struct soap *soap, const char *tag, int id, const ns1__datafileFormat *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafileFormat), "ns1:datafileFormat"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileFormatPK(soap, "datafileFormatPK", -1, &(a->ns1__datafileFormat::datafileFormatPK), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datafileFormat::description), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "formatType", -1, &(a->ns1__datafileFormat::formatType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datafileFormat::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datafileFormat(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datafileFormat * SOAP_FMAC4 soap_in_ns1__datafileFormat(struct soap *soap, const char *tag, ns1__datafileFormat *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datafileFormat *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafileFormat, sizeof(ns1__datafileFormat), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datafileFormat)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datafileFormat *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_datafileFormatPK1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_formatType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_datafileFormatPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileFormatPK(soap, "datafileFormatPK", &(a->ns1__datafileFormat::datafileFormatPK), "ns1:datafileFormatPK"))
+				{	soap_flag_datafileFormatPK1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datafileFormat::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_formatType1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "formatType", &(a->ns1__datafileFormat::formatType), "xsd:string"))
+				{	soap_flag_formatType1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datafileFormat *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafileFormat, 0, sizeof(ns1__datafileFormat), 0, soap_copy_ns1__datafileFormat);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__datafileFormat::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafileFormat);
+	if (this->soap_out(soap, tag?tag:"ns1:datafileFormat", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datafileFormat::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datafileFormat(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datafileFormat * SOAP_FMAC4 soap_get_ns1__datafileFormat(struct soap *soap, ns1__datafileFormat *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafileFormat(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datafileFormat * SOAP_FMAC2 soap_instantiate_ns1__datafileFormat(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafileFormat(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafileFormat, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat);
+		if (size)
+			*size = sizeof(ns1__datafileFormat);
+		((ns1__datafileFormat*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datafileFormat);
+		for (int i = 0; i < n; i++)
+			((ns1__datafileFormat*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datafileFormat*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafileFormat(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafileFormat %p -> %p\n", q, p));
+	*(ns1__datafileFormat*)p = *(ns1__datafileFormat*)q;
+}
+
+void ns1__datafile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__datafile::checksum = NULL;
+	this->ns1__datafile::command = NULL;
+	this->ns1__datafile::datafileCreateTime = NULL;
+	this->ns1__datafile::datafileFormat = NULL;
+	this->ns1__datafile::datafileInclude = NULL;
+	this->ns1__datafile::datafileModifyTime = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__datafile::datafileParameterCollection);
+	this->ns1__datafile::datafileVersion = NULL;
+	this->ns1__datafile::datafileVersionComment = NULL;
+	this->ns1__datafile::datasetId = NULL;
+	this->ns1__datafile::description = NULL;
+	this->ns1__datafile::fileSize = NULL;
+	this->ns1__datafile::id = NULL;
+	this->ns1__datafile::location = NULL;
+	this->ns1__datafile::name = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection1);
+	soap_default_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection);
+	this->ns1__datafile::signature = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__datafile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::checksum);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::command);
+	soap_serialize_PointerTotime(soap, &this->ns1__datafile::datafileCreateTime);
+	soap_serialize_PointerTons1__datafileFormat(soap, &this->ns1__datafile::datafileFormat);
+	soap_serialize_PointerTons1__datafileInclude(soap, &this->ns1__datafile::datafileInclude);
+	soap_serialize_PointerTotime(soap, &this->ns1__datafile::datafileModifyTime);
+	soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(soap, &this->ns1__datafile::datafileParameterCollection);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::datafileVersion);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::datafileVersionComment);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__datafile::datasetId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::description);
+	soap_serialize_PointerToint(soap, &this->ns1__datafile::fileSize);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__datafile::id);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::location);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::name);
+	soap_serialize_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection1);
+	soap_serialize_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, &this->ns1__datafile::relatedDatafilesCollection);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__datafile::signature);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__datafile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__datafile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__datafile(struct soap *soap, const char *tag, int id, const ns1__datafile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__datafile), "ns1:datafile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "checksum", -1, &(a->ns1__datafile::checksum), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "command", -1, &(a->ns1__datafile::command), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "datafileCreateTime", -1, &(a->ns1__datafile::datafileCreateTime), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileFormat(soap, "datafileFormat", -1, &(a->ns1__datafile::datafileFormat), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafileInclude(soap, "datafileInclude", -1, &(a->ns1__datafile::datafileInclude), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "datafileModifyTime", -1, &(a->ns1__datafile::datafileModifyTime), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "datafileParameterCollection", -1, &(a->ns1__datafile::datafileParameterCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "datafileVersion", -1, &(a->ns1__datafile::datafileVersion), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "datafileVersionComment", -1, &(a->ns1__datafile::datafileVersionComment), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__datafile::datasetId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__datafile::description), ""))
+		return soap->error;
+	if (soap_out_PointerToint(soap, "fileSize", -1, &(a->ns1__datafile::fileSize), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__datafile::id), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "location", -1, &(a->ns1__datafile::location), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__datafile::name), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection1", -1, &(a->ns1__datafile::relatedDatafilesCollection1), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection", -1, &(a->ns1__datafile::relatedDatafilesCollection), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "signature", -1, &(a->ns1__datafile::signature), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__datafile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__datafile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__datafile * SOAP_FMAC4 soap_in_ns1__datafile(struct soap *soap, const char *tag, ns1__datafile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__datafile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__datafile, sizeof(ns1__datafile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__datafile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__datafile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_checksum1 = 1;
+	size_t soap_flag_command1 = 1;
+	size_t soap_flag_datafileCreateTime1 = 1;
+	size_t soap_flag_datafileFormat1 = 1;
+	size_t soap_flag_datafileInclude1 = 1;
+	size_t soap_flag_datafileModifyTime1 = 1;
+	size_t soap_flag_datafileVersion1 = 1;
+	size_t soap_flag_datafileVersionComment1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_fileSize1 = 1;
+	size_t soap_flag_id1 = 1;
+	size_t soap_flag_location1 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_signature1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_checksum1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "checksum", &(a->ns1__datafile::checksum), "xsd:string"))
+				{	soap_flag_checksum1--;
+					continue;
+				}
+			if (soap_flag_command1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "command", &(a->ns1__datafile::command), "xsd:string"))
+				{	soap_flag_command1--;
+					continue;
+				}
+			if (soap_flag_datafileCreateTime1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "datafileCreateTime", &(a->ns1__datafile::datafileCreateTime), "xsd:dateTime"))
+				{	soap_flag_datafileCreateTime1--;
+					continue;
+				}
+			if (soap_flag_datafileFormat1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileFormat(soap, "datafileFormat", &(a->ns1__datafile::datafileFormat), "ns1:datafileFormat"))
+				{	soap_flag_datafileFormat1--;
+					continue;
+				}
+			if (soap_flag_datafileInclude1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafileInclude(soap, "datafileInclude", &(a->ns1__datafile::datafileInclude), "ns1:datafileInclude"))
+				{	soap_flag_datafileInclude1--;
+					continue;
+				}
+			if (soap_flag_datafileModifyTime1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "datafileModifyTime", &(a->ns1__datafile::datafileModifyTime), "xsd:dateTime"))
+				{	soap_flag_datafileModifyTime1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(soap, "datafileParameterCollection", &(a->ns1__datafile::datafileParameterCollection), "ns1:datafileParameter"))
+					continue;
+			if (soap_flag_datafileVersion1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "datafileVersion", &(a->ns1__datafile::datafileVersion), "xsd:string"))
+				{	soap_flag_datafileVersion1--;
+					continue;
+				}
+			if (soap_flag_datafileVersionComment1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "datafileVersionComment", &(a->ns1__datafile::datafileVersionComment), "xsd:string"))
+				{	soap_flag_datafileVersionComment1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__datafile::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__datafile::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_fileSize1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToint(soap, "fileSize", &(a->ns1__datafile::fileSize), "xsd:int"))
+				{	soap_flag_fileSize1--;
+					continue;
+				}
+			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__datafile::id), "xsd:long"))
+				{	soap_flag_id1--;
+					continue;
+				}
+			if (soap_flag_location1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "location", &(a->ns1__datafile::location), "xsd:string"))
+				{	soap_flag_location1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__datafile::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection1", &(a->ns1__datafile::relatedDatafilesCollection1), "ns1:relatedDatafiles"))
+					continue;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, "relatedDatafilesCollection", &(a->ns1__datafile::relatedDatafilesCollection), "ns1:relatedDatafiles"))
+					continue;
+			if (soap_flag_signature1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "signature", &(a->ns1__datafile::signature), "xsd:string"))
+				{	soap_flag_signature1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__datafile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__datafile, 0, sizeof(ns1__datafile), 0, soap_copy_ns1__datafile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__datafile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__datafile);
+	if (this->soap_out(soap, tag?tag:"ns1:datafile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__datafile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__datafile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__datafile * SOAP_FMAC4 soap_get_ns1__datafile(struct soap *soap, ns1__datafile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__datafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__datafile * SOAP_FMAC2 soap_instantiate_ns1__datafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__datafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__datafile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafile);
+		if (size)
+			*size = sizeof(ns1__datafile);
+		((ns1__datafile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__datafile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__datafile);
+		for (int i = 0; i < n; i++)
+			((ns1__datafile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__datafile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__datafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__datafile %p -> %p\n", q, p));
+	*(ns1__datafile*)p = *(ns1__datafile*)q;
+}
+
+void ns1__createDataFile::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__createDataFile::sessionId = NULL;
+	this->ns1__createDataFile::dataFile = NULL;
+	this->ns1__createDataFile::datasetId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__createDataFile::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__createDataFile::sessionId);
+	soap_serialize_PointerTons1__datafile(soap, &this->ns1__createDataFile::dataFile);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__createDataFile::datasetId);
+	/* transient soap skipped */
+}
+
+int ns1__createDataFile::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__createDataFile(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__createDataFile(struct soap *soap, const char *tag, int id, const ns1__createDataFile *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__createDataFile), "ns1:createDataFile"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__createDataFile::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__datafile(soap, "dataFile", -1, &(a->ns1__createDataFile::dataFile), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "datasetId", -1, &(a->ns1__createDataFile::datasetId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__createDataFile::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__createDataFile(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__createDataFile * SOAP_FMAC4 soap_in_ns1__createDataFile(struct soap *soap, const char *tag, ns1__createDataFile *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__createDataFile *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__createDataFile, sizeof(ns1__createDataFile), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__createDataFile)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__createDataFile *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_dataFile1 = 1;
+	size_t soap_flag_datasetId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__createDataFile::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_dataFile1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__datafile(soap, "dataFile", &(a->ns1__createDataFile::dataFile), "ns1:datafile"))
+				{	soap_flag_dataFile1--;
+					continue;
+				}
+			if (soap_flag_datasetId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "datasetId", &(a->ns1__createDataFile::datasetId), "xsd:long"))
+				{	soap_flag_datasetId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__createDataFile *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__createDataFile, 0, sizeof(ns1__createDataFile), 0, soap_copy_ns1__createDataFile);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__createDataFile::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__createDataFile);
+	if (this->soap_out(soap, tag?tag:"ns1:createDataFile", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__createDataFile::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__createDataFile(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__createDataFile * SOAP_FMAC4 soap_get_ns1__createDataFile(struct soap *soap, ns1__createDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__createDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__createDataFile * SOAP_FMAC2 soap_instantiate_ns1__createDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__createDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__createDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile);
+		if (size)
+			*size = sizeof(ns1__createDataFile);
+		((ns1__createDataFile*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__createDataFile);
+		for (int i = 0; i < n; i++)
+			((ns1__createDataFile*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__createDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__createDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__createDataFile %p -> %p\n", q, p));
+	*(ns1__createDataFile*)p = *(ns1__createDataFile*)q;
+}
+
+void ns1__listInstrumentsResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listInstrumentsResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listInstrumentsResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listInstrumentsResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listInstrumentsResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listInstrumentsResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInstrumentsResponse(struct soap *soap, const char *tag, int id, const ns1__listInstrumentsResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInstrumentsResponse), "ns1:listInstrumentsResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listInstrumentsResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listInstrumentsResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listInstrumentsResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listInstrumentsResponse * SOAP_FMAC4 soap_in_ns1__listInstrumentsResponse(struct soap *soap, const char *tag, ns1__listInstrumentsResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listInstrumentsResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInstrumentsResponse, sizeof(ns1__listInstrumentsResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listInstrumentsResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listInstrumentsResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listInstrumentsResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listInstrumentsResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInstrumentsResponse, 0, sizeof(ns1__listInstrumentsResponse), 0, soap_copy_ns1__listInstrumentsResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listInstrumentsResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInstrumentsResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listInstrumentsResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listInstrumentsResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listInstrumentsResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listInstrumentsResponse * SOAP_FMAC4 soap_get_ns1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listInstrumentsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listInstrumentsResponse * SOAP_FMAC2 soap_instantiate_ns1__listInstrumentsResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInstrumentsResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInstrumentsResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse);
+		if (size)
+			*size = sizeof(ns1__listInstrumentsResponse);
+		((ns1__listInstrumentsResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listInstrumentsResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listInstrumentsResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listInstrumentsResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInstrumentsResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInstrumentsResponse %p -> %p\n", q, p));
+	*(ns1__listInstrumentsResponse*)p = *(ns1__listInstrumentsResponse*)q;
+}
+
+void ns1__listInstruments::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listInstruments::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listInstruments::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listInstruments::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listInstruments::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listInstruments(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listInstruments(struct soap *soap, const char *tag, int id, const ns1__listInstruments *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listInstruments), "ns1:listInstruments"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listInstruments::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listInstruments::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listInstruments(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listInstruments * SOAP_FMAC4 soap_in_ns1__listInstruments(struct soap *soap, const char *tag, ns1__listInstruments *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listInstruments *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listInstruments, sizeof(ns1__listInstruments), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listInstruments)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listInstruments *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listInstruments::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listInstruments *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listInstruments, 0, sizeof(ns1__listInstruments), 0, soap_copy_ns1__listInstruments);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listInstruments::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listInstruments);
+	if (this->soap_out(soap, tag?tag:"ns1:listInstruments", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listInstruments::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listInstruments(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listInstruments * SOAP_FMAC4 soap_get_ns1__listInstruments(struct soap *soap, ns1__listInstruments *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listInstruments(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listInstruments * SOAP_FMAC2 soap_instantiate_ns1__listInstruments(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listInstruments(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listInstruments, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments);
+		if (size)
+			*size = sizeof(ns1__listInstruments);
+		((ns1__listInstruments*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listInstruments);
+		for (int i = 0; i < n; i++)
+			((ns1__listInstruments*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listInstruments*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listInstruments(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listInstruments %p -> %p\n", q, p));
+	*(ns1__listInstruments*)p = *(ns1__listInstruments*)q;
+}
+
+void ns1__NoSuchObjectFoundException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__NoSuchObjectFoundException::message = NULL;
+	this->ns1__NoSuchObjectFoundException::stackTraceAsString = NULL;
+	this->ns1__NoSuchObjectFoundException::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__NoSuchObjectFoundException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchObjectFoundException::message);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchObjectFoundException::stackTraceAsString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__NoSuchObjectFoundException::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__NoSuchObjectFoundException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__NoSuchObjectFoundException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__NoSuchObjectFoundException(struct soap *soap, const char *tag, int id, const ns1__NoSuchObjectFoundException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__NoSuchObjectFoundException), "ns1:NoSuchObjectFoundException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__NoSuchObjectFoundException::message), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__NoSuchObjectFoundException::stackTraceAsString), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__NoSuchObjectFoundException::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__NoSuchObjectFoundException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__NoSuchObjectFoundException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__NoSuchObjectFoundException * SOAP_FMAC4 soap_in_ns1__NoSuchObjectFoundException(struct soap *soap, const char *tag, ns1__NoSuchObjectFoundException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__NoSuchObjectFoundException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__NoSuchObjectFoundException, sizeof(ns1__NoSuchObjectFoundException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__NoSuchObjectFoundException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__NoSuchObjectFoundException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	size_t soap_flag_stackTraceAsString1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__NoSuchObjectFoundException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__NoSuchObjectFoundException::stackTraceAsString), "xsd:string"))
+				{	soap_flag_stackTraceAsString1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__NoSuchObjectFoundException::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__NoSuchObjectFoundException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__NoSuchObjectFoundException, 0, sizeof(ns1__NoSuchObjectFoundException), 0, soap_copy_ns1__NoSuchObjectFoundException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__NoSuchObjectFoundException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__NoSuchObjectFoundException);
+	if (this->soap_out(soap, tag?tag:"ns1:NoSuchObjectFoundException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__NoSuchObjectFoundException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__NoSuchObjectFoundException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__NoSuchObjectFoundException * SOAP_FMAC4 soap_get_ns1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__NoSuchObjectFoundException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__NoSuchObjectFoundException * SOAP_FMAC2 soap_instantiate_ns1__NoSuchObjectFoundException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__NoSuchObjectFoundException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__NoSuchObjectFoundException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException);
+		if (size)
+			*size = sizeof(ns1__NoSuchObjectFoundException);
+		((ns1__NoSuchObjectFoundException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__NoSuchObjectFoundException);
+		for (int i = 0; i < n; i++)
+			((ns1__NoSuchObjectFoundException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__NoSuchObjectFoundException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__NoSuchObjectFoundException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__NoSuchObjectFoundException %p -> %p\n", q, p));
+	*(ns1__NoSuchObjectFoundException*)p = *(ns1__NoSuchObjectFoundException*)q;
+}
+
+void ns1__InsufficientPrivilegesException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__InsufficientPrivilegesException::message = NULL;
+	this->ns1__InsufficientPrivilegesException::stackTraceAsString = NULL;
+	this->ns1__InsufficientPrivilegesException::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__InsufficientPrivilegesException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__InsufficientPrivilegesException::message);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__InsufficientPrivilegesException::stackTraceAsString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__InsufficientPrivilegesException::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__InsufficientPrivilegesException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__InsufficientPrivilegesException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__InsufficientPrivilegesException(struct soap *soap, const char *tag, int id, const ns1__InsufficientPrivilegesException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__InsufficientPrivilegesException), "ns1:InsufficientPrivilegesException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__InsufficientPrivilegesException::message), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__InsufficientPrivilegesException::stackTraceAsString), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__InsufficientPrivilegesException::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__InsufficientPrivilegesException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__InsufficientPrivilegesException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__InsufficientPrivilegesException * SOAP_FMAC4 soap_in_ns1__InsufficientPrivilegesException(struct soap *soap, const char *tag, ns1__InsufficientPrivilegesException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__InsufficientPrivilegesException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__InsufficientPrivilegesException, sizeof(ns1__InsufficientPrivilegesException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__InsufficientPrivilegesException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__InsufficientPrivilegesException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	size_t soap_flag_stackTraceAsString1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__InsufficientPrivilegesException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__InsufficientPrivilegesException::stackTraceAsString), "xsd:string"))
+				{	soap_flag_stackTraceAsString1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__InsufficientPrivilegesException::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__InsufficientPrivilegesException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__InsufficientPrivilegesException, 0, sizeof(ns1__InsufficientPrivilegesException), 0, soap_copy_ns1__InsufficientPrivilegesException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__InsufficientPrivilegesException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__InsufficientPrivilegesException);
+	if (this->soap_out(soap, tag?tag:"ns1:InsufficientPrivilegesException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__InsufficientPrivilegesException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__InsufficientPrivilegesException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__InsufficientPrivilegesException * SOAP_FMAC4 soap_get_ns1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__InsufficientPrivilegesException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__InsufficientPrivilegesException * SOAP_FMAC2 soap_instantiate_ns1__InsufficientPrivilegesException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__InsufficientPrivilegesException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__InsufficientPrivilegesException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException);
+		if (size)
+			*size = sizeof(ns1__InsufficientPrivilegesException);
+		((ns1__InsufficientPrivilegesException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__InsufficientPrivilegesException);
+		for (int i = 0; i < n; i++)
+			((ns1__InsufficientPrivilegesException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__InsufficientPrivilegesException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__InsufficientPrivilegesException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__InsufficientPrivilegesException %p -> %p\n", q, p));
+	*(ns1__InsufficientPrivilegesException*)p = *(ns1__InsufficientPrivilegesException*)q;
+}
+
+void ns1__removeSampleResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeSampleResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__removeSampleResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeSampleResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSampleResponse(struct soap *soap, const char *tag, int id, const ns1__removeSampleResponse *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:removeSampleResponse");
+}
+
+void *ns1__removeSampleResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeSampleResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleResponse * SOAP_FMAC4 soap_in_ns1__removeSampleResponse(struct soap *soap, const char *tag, ns1__removeSampleResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__removeSampleResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSampleResponse, sizeof(ns1__removeSampleResponse), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeSampleResponse)
+			return (ns1__removeSampleResponse *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__removeSampleResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSampleResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:removeSampleResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeSampleResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeSampleResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleResponse * SOAP_FMAC4 soap_get_ns1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeSampleResponse * SOAP_FMAC2 soap_instantiate_ns1__removeSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse);
+		if (size)
+			*size = sizeof(ns1__removeSampleResponse);
+		((ns1__removeSampleResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeSampleResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__removeSampleResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSampleResponse %p -> %p\n", q, p));
+	*(ns1__removeSampleResponse*)p = *(ns1__removeSampleResponse*)q;
+}
+
+void ns1__removeSample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__removeSample::sessionId = NULL;
+	this->ns1__removeSample::sampleId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__removeSample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__removeSample::sessionId);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__removeSample::sampleId);
+	/* transient soap skipped */
+}
+
+int ns1__removeSample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__removeSample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__removeSample(struct soap *soap, const char *tag, int id, const ns1__removeSample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__removeSample), "ns1:removeSample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__removeSample::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__removeSample::sampleId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__removeSample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__removeSample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__removeSample * SOAP_FMAC4 soap_in_ns1__removeSample(struct soap *soap, const char *tag, ns1__removeSample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__removeSample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__removeSample, sizeof(ns1__removeSample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__removeSample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__removeSample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__removeSample::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__removeSample::sampleId), "xsd:long"))
+				{	soap_flag_sampleId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__removeSample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__removeSample, 0, sizeof(ns1__removeSample), 0, soap_copy_ns1__removeSample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__removeSample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__removeSample);
+	if (this->soap_out(soap, tag?tag:"ns1:removeSample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__removeSample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__removeSample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__removeSample * SOAP_FMAC4 soap_get_ns1__removeSample(struct soap *soap, ns1__removeSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__removeSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__removeSample * SOAP_FMAC2 soap_instantiate_ns1__removeSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__removeSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__removeSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample);
+		if (size)
+			*size = sizeof(ns1__removeSample);
+		((ns1__removeSample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__removeSample);
+		for (int i = 0; i < n; i++)
+			((ns1__removeSample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__removeSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__removeSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__removeSample %p -> %p\n", q, p));
+	*(ns1__removeSample*)p = *(ns1__removeSample*)q;
+}
+
+void ns1__icatRole::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->ns1__icatRole::actionDelete);
+	soap_default_bool(soap, &this->ns1__icatRole::actionDownload);
+	soap_default_bool(soap, &this->ns1__icatRole::actionFacilityAcquired);
+	soap_default_bool(soap, &this->ns1__icatRole::actionInsert);
+	soap_default_bool(soap, &this->ns1__icatRole::actionManageUsers);
+	soap_default_bool(soap, &this->ns1__icatRole::actionRemove);
+	soap_default_bool(soap, &this->ns1__icatRole::actionRootInsert);
+	soap_default_bool(soap, &this->ns1__icatRole::actionRootRemove);
+	soap_default_bool(soap, &this->ns1__icatRole::actionSelect);
+	soap_default_bool(soap, &this->ns1__icatRole::actionUpdate);
+	this->ns1__icatRole::role = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__icatRole::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__icatRole::role);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__icatRole::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__icatRole(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__icatRole(struct soap *soap, const char *tag, int id, const ns1__icatRole *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__icatRole), "ns1:icatRole"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionDelete", -1, &(a->ns1__icatRole::actionDelete), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionDownload", -1, &(a->ns1__icatRole::actionDownload), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionFacilityAcquired", -1, &(a->ns1__icatRole::actionFacilityAcquired), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionInsert", -1, &(a->ns1__icatRole::actionInsert), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionManageUsers", -1, &(a->ns1__icatRole::actionManageUsers), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionRemove", -1, &(a->ns1__icatRole::actionRemove), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionRootInsert", -1, &(a->ns1__icatRole::actionRootInsert), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionRootRemove", -1, &(a->ns1__icatRole::actionRootRemove), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionSelect", -1, &(a->ns1__icatRole::actionSelect), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "actionUpdate", -1, &(a->ns1__icatRole::actionUpdate), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "role", -1, &(a->ns1__icatRole::role), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__icatRole::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__icatRole(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__icatRole * SOAP_FMAC4 soap_in_ns1__icatRole(struct soap *soap, const char *tag, ns1__icatRole *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__icatRole *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__icatRole, sizeof(ns1__icatRole), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__icatRole)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__icatRole *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_actionDelete1 = 1;
+	size_t soap_flag_actionDownload1 = 1;
+	size_t soap_flag_actionFacilityAcquired1 = 1;
+	size_t soap_flag_actionInsert1 = 1;
+	size_t soap_flag_actionManageUsers1 = 1;
+	size_t soap_flag_actionRemove1 = 1;
+	size_t soap_flag_actionRootInsert1 = 1;
+	size_t soap_flag_actionRootRemove1 = 1;
+	size_t soap_flag_actionSelect1 = 1;
+	size_t soap_flag_actionUpdate1 = 1;
+	size_t soap_flag_role1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_actionDelete1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionDelete", &(a->ns1__icatRole::actionDelete), "xsd:boolean"))
+				{	soap_flag_actionDelete1--;
+					continue;
+				}
+			if (soap_flag_actionDownload1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionDownload", &(a->ns1__icatRole::actionDownload), "xsd:boolean"))
+				{	soap_flag_actionDownload1--;
+					continue;
+				}
+			if (soap_flag_actionFacilityAcquired1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionFacilityAcquired", &(a->ns1__icatRole::actionFacilityAcquired), "xsd:boolean"))
+				{	soap_flag_actionFacilityAcquired1--;
+					continue;
+				}
+			if (soap_flag_actionInsert1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionInsert", &(a->ns1__icatRole::actionInsert), "xsd:boolean"))
+				{	soap_flag_actionInsert1--;
+					continue;
+				}
+			if (soap_flag_actionManageUsers1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionManageUsers", &(a->ns1__icatRole::actionManageUsers), "xsd:boolean"))
+				{	soap_flag_actionManageUsers1--;
+					continue;
+				}
+			if (soap_flag_actionRemove1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionRemove", &(a->ns1__icatRole::actionRemove), "xsd:boolean"))
+				{	soap_flag_actionRemove1--;
+					continue;
+				}
+			if (soap_flag_actionRootInsert1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionRootInsert", &(a->ns1__icatRole::actionRootInsert), "xsd:boolean"))
+				{	soap_flag_actionRootInsert1--;
+					continue;
+				}
+			if (soap_flag_actionRootRemove1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionRootRemove", &(a->ns1__icatRole::actionRootRemove), "xsd:boolean"))
+				{	soap_flag_actionRootRemove1--;
+					continue;
+				}
+			if (soap_flag_actionSelect1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionSelect", &(a->ns1__icatRole::actionSelect), "xsd:boolean"))
+				{	soap_flag_actionSelect1--;
+					continue;
+				}
+			if (soap_flag_actionUpdate1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "actionUpdate", &(a->ns1__icatRole::actionUpdate), "xsd:boolean"))
+				{	soap_flag_actionUpdate1--;
+					continue;
+				}
+			if (soap_flag_role1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "role", &(a->ns1__icatRole::role), "xsd:string"))
+				{	soap_flag_role1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__icatRole *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__icatRole, 0, sizeof(ns1__icatRole), 0, soap_copy_ns1__icatRole);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0 || soap_flag_actionDelete1 > 0 || soap_flag_actionDownload1 > 0 || soap_flag_actionFacilityAcquired1 > 0 || soap_flag_actionInsert1 > 0 || soap_flag_actionManageUsers1 > 0 || soap_flag_actionRemove1 > 0 || soap_flag_actionRootInsert1 > 0 || soap_flag_actionRootRemove1 > 0 || soap_flag_actionSelect1 > 0 || soap_flag_actionUpdate1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__icatRole::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__icatRole);
+	if (this->soap_out(soap, tag?tag:"ns1:icatRole", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__icatRole::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__icatRole(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__icatRole * SOAP_FMAC4 soap_get_ns1__icatRole(struct soap *soap, ns1__icatRole *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__icatRole(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__icatRole * SOAP_FMAC2 soap_instantiate_ns1__icatRole(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__icatRole(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__icatRole, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole);
+		if (size)
+			*size = sizeof(ns1__icatRole);
+		((ns1__icatRole*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__icatRole);
+		for (int i = 0; i < n; i++)
+			((ns1__icatRole*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__icatRole*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__icatRole(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__icatRole %p -> %p\n", q, p));
+	*(ns1__icatRole*)p = *(ns1__icatRole*)q;
+}
+
+void ns1__entityPrimaryKeyBaseBean::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__entityPrimaryKeyBaseBean::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int ns1__entityPrimaryKeyBaseBean::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__entityPrimaryKeyBaseBean(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__entityPrimaryKeyBaseBean(struct soap *soap, const char *tag, int id, const ns1__entityPrimaryKeyBaseBean *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), "ns1:entityPrimaryKeyBaseBean");
+}
+
+void *ns1__entityPrimaryKeyBaseBean::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__entityPrimaryKeyBaseBean(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__entityPrimaryKeyBaseBean * SOAP_FMAC4 soap_in_ns1__entityPrimaryKeyBaseBean(struct soap *soap, const char *tag, ns1__entityPrimaryKeyBaseBean *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (ns1__entityPrimaryKeyBaseBean *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean, sizeof(ns1__entityPrimaryKeyBaseBean), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__entityPrimaryKeyBaseBean)
+			return (ns1__entityPrimaryKeyBaseBean *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int ns1__entityPrimaryKeyBaseBean::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean);
+	if (this->soap_out(soap, tag?tag:"ns1:entityPrimaryKeyBaseBean", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__entityPrimaryKeyBaseBean::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__entityPrimaryKeyBaseBean(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__entityPrimaryKeyBaseBean * SOAP_FMAC4 soap_get_ns1__entityPrimaryKeyBaseBean(struct soap *soap, ns1__entityPrimaryKeyBaseBean *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__entityPrimaryKeyBaseBean(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__entityPrimaryKeyBaseBean * SOAP_FMAC2 soap_instantiate_ns1__entityPrimaryKeyBaseBean(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__entityPrimaryKeyBaseBean(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (type && !soap_match_tag(soap, type, "ns1:sampleParameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__sampleParameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__sampleParameterPK);
+			((ns1__sampleParameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__sampleParameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__sampleParameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__sampleParameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileFormatPK"))
+	{	cp->type = SOAP_TYPE_ns1__datafileFormatPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileFormatPK);
+			((ns1__datafileFormatPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileFormatPK);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileFormatPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileFormatPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileParameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__datafileParameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileParameterPK);
+			((ns1__datafileParameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileParameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileParameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileParameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafilesPK"))
+	{	cp->type = SOAP_TYPE_ns1__relatedDatafilesPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__relatedDatafilesPK);
+			((ns1__relatedDatafilesPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__relatedDatafilesPK);
+			for (int i = 0; i < n; i++)
+				((ns1__relatedDatafilesPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__relatedDatafilesPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__parameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterPK);
+			((ns1__parameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datasetParameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__datasetParameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datasetParameterPK);
+			((ns1__datasetParameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__datasetParameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__datasetParameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datasetParameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigatorPK"))
+	{	cp->type = SOAP_TYPE_ns1__investigatorPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigatorPK);
+			((ns1__investigatorPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigatorPK);
+			for (int i = 0; i < n; i++)
+				((ns1__investigatorPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigatorPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:keywordPK"))
+	{	cp->type = SOAP_TYPE_ns1__keywordPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__keywordPK);
+			((ns1__keywordPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__keywordPK);
+			for (int i = 0; i < n; i++)
+				((ns1__keywordPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__keywordPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:shiftPK"))
+	{	cp->type = SOAP_TYPE_ns1__shiftPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__shiftPK);
+			((ns1__shiftPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__shiftPK);
+			for (int i = 0; i < n; i++)
+				((ns1__shiftPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__shiftPK*)cp->ptr;
+	}
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean);
+		if (size)
+			*size = sizeof(ns1__entityPrimaryKeyBaseBean);
+		((ns1__entityPrimaryKeyBaseBean*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__entityPrimaryKeyBaseBean);
+		for (int i = 0; i < n; i++)
+			((ns1__entityPrimaryKeyBaseBean*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__entityPrimaryKeyBaseBean*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__entityPrimaryKeyBaseBean(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__entityPrimaryKeyBaseBean %p -> %p\n", q, p));
+	*(ns1__entityPrimaryKeyBaseBean*)p = *(ns1__entityPrimaryKeyBaseBean*)q;
+}
+
+void ns1__sampleParameterPK::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__sampleParameterPK::name = NULL;
+	this->ns1__sampleParameterPK::sampleId = NULL;
+	this->ns1__sampleParameterPK::units = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__sampleParameterPK::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameterPK::name);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__sampleParameterPK::sampleId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameterPK::units);
+	/* transient soap skipped */
+}
+
+int ns1__sampleParameterPK::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__sampleParameterPK(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__sampleParameterPK(struct soap *soap, const char *tag, int id, const ns1__sampleParameterPK *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__sampleParameterPK), "ns1:sampleParameterPK"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__sampleParameterPK::name), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "sampleId", -1, &(a->ns1__sampleParameterPK::sampleId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "units", -1, &(a->ns1__sampleParameterPK::units), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__sampleParameterPK::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__sampleParameterPK(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__sampleParameterPK * SOAP_FMAC4 soap_in_ns1__sampleParameterPK(struct soap *soap, const char *tag, ns1__sampleParameterPK *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__sampleParameterPK *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__sampleParameterPK, sizeof(ns1__sampleParameterPK), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__sampleParameterPK)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__sampleParameterPK *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_sampleId1 = 1;
+	size_t soap_flag_units1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__sampleParameterPK::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_sampleId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "sampleId", &(a->ns1__sampleParameterPK::sampleId), "xsd:long"))
+				{	soap_flag_sampleId1--;
+					continue;
+				}
+			if (soap_flag_units1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "units", &(a->ns1__sampleParameterPK::units), "xsd:string"))
+				{	soap_flag_units1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__sampleParameterPK *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__sampleParameterPK, 0, sizeof(ns1__sampleParameterPK), 0, soap_copy_ns1__sampleParameterPK);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__sampleParameterPK::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__sampleParameterPK);
+	if (this->soap_out(soap, tag?tag:"ns1:sampleParameterPK", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__sampleParameterPK::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__sampleParameterPK(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__sampleParameterPK * SOAP_FMAC4 soap_get_ns1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__sampleParameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__sampleParameterPK * SOAP_FMAC2 soap_instantiate_ns1__sampleParameterPK(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__sampleParameterPK(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__sampleParameterPK, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK);
+		if (size)
+			*size = sizeof(ns1__sampleParameterPK);
+		((ns1__sampleParameterPK*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__sampleParameterPK);
+		for (int i = 0; i < n; i++)
+			((ns1__sampleParameterPK*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__sampleParameterPK*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__sampleParameterPK(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__sampleParameterPK %p -> %p\n", q, p));
+	*(ns1__sampleParameterPK*)p = *(ns1__sampleParameterPK*)q;
+}
+
+void ns1__sampleParameter::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__sampleParameter::dateTimeValue = NULL;
+	this->ns1__sampleParameter::description = NULL;
+	this->ns1__sampleParameter::error = NULL;
+	this->ns1__sampleParameter::numericValue = NULL;
+	this->ns1__sampleParameter::rangeBottom = NULL;
+	this->ns1__sampleParameter::rangeTop = NULL;
+	this->ns1__sampleParameter::sampleParameterPK = NULL;
+	this->ns1__sampleParameter::stringValue = NULL;
+	this->ns1__sampleParameter::valueType = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__sampleParameter::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTotime(soap, &this->ns1__sampleParameter::dateTimeValue);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::description);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::error);
+	soap_serialize_PointerTodouble(soap, &this->ns1__sampleParameter::numericValue);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::rangeBottom);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::rangeTop);
+	soap_serialize_PointerTons1__sampleParameterPK(soap, &this->ns1__sampleParameter::sampleParameterPK);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sampleParameter::stringValue);
+	soap_serialize_PointerTons1__parameterValueType(soap, &this->ns1__sampleParameter::valueType);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__sampleParameter::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__sampleParameter(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__sampleParameter(struct soap *soap, const char *tag, int id, const ns1__sampleParameter *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__sampleParameter), "ns1:sampleParameter"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTotime(soap, "dateTimeValue", -1, &(a->ns1__sampleParameter::dateTimeValue), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "description", -1, &(a->ns1__sampleParameter::description), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "error", -1, &(a->ns1__sampleParameter::error), ""))
+		return soap->error;
+	if (soap_out_PointerTodouble(soap, "numericValue", -1, &(a->ns1__sampleParameter::numericValue), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "rangeBottom", -1, &(a->ns1__sampleParameter::rangeBottom), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "rangeTop", -1, &(a->ns1__sampleParameter::rangeTop), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", -1, &(a->ns1__sampleParameter::sampleParameterPK), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stringValue", -1, &(a->ns1__sampleParameter::stringValue), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__parameterValueType(soap, "valueType", -1, &(a->ns1__sampleParameter::valueType), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__sampleParameter::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__sampleParameter(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__sampleParameter * SOAP_FMAC4 soap_in_ns1__sampleParameter(struct soap *soap, const char *tag, ns1__sampleParameter *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__sampleParameter *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__sampleParameter, sizeof(ns1__sampleParameter), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__sampleParameter)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__sampleParameter *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_dateTimeValue1 = 1;
+	size_t soap_flag_description1 = 1;
+	size_t soap_flag_error1 = 1;
+	size_t soap_flag_numericValue1 = 1;
+	size_t soap_flag_rangeBottom1 = 1;
+	size_t soap_flag_rangeTop1 = 1;
+	size_t soap_flag_sampleParameterPK1 = 1;
+	size_t soap_flag_stringValue1 = 1;
+	size_t soap_flag_valueType1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_dateTimeValue1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTotime(soap, "dateTimeValue", &(a->ns1__sampleParameter::dateTimeValue), "xsd:dateTime"))
+				{	soap_flag_dateTimeValue1--;
+					continue;
+				}
+			if (soap_flag_description1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "description", &(a->ns1__sampleParameter::description), "xsd:string"))
+				{	soap_flag_description1--;
+					continue;
+				}
+			if (soap_flag_error1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "error", &(a->ns1__sampleParameter::error), "xsd:string"))
+				{	soap_flag_error1--;
+					continue;
+				}
+			if (soap_flag_numericValue1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTodouble(soap, "numericValue", &(a->ns1__sampleParameter::numericValue), "xsd:double"))
+				{	soap_flag_numericValue1--;
+					continue;
+				}
+			if (soap_flag_rangeBottom1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "rangeBottom", &(a->ns1__sampleParameter::rangeBottom), "xsd:string"))
+				{	soap_flag_rangeBottom1--;
+					continue;
+				}
+			if (soap_flag_rangeTop1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "rangeTop", &(a->ns1__sampleParameter::rangeTop), "xsd:string"))
+				{	soap_flag_rangeTop1--;
+					continue;
+				}
+			if (soap_flag_sampleParameterPK1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__sampleParameterPK(soap, "sampleParameterPK", &(a->ns1__sampleParameter::sampleParameterPK), "ns1:sampleParameterPK"))
+				{	soap_flag_sampleParameterPK1--;
+					continue;
+				}
+			if (soap_flag_stringValue1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stringValue", &(a->ns1__sampleParameter::stringValue), "xsd:string"))
+				{	soap_flag_stringValue1--;
+					continue;
+				}
+			if (soap_flag_valueType1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__parameterValueType(soap, "valueType", &(a->ns1__sampleParameter::valueType), "ns1:parameterValueType"))
+				{	soap_flag_valueType1--;
+					continue;
+				}
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__sampleParameter *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__sampleParameter, 0, sizeof(ns1__sampleParameter), 0, soap_copy_ns1__sampleParameter);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__sampleParameter::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__sampleParameter);
+	if (this->soap_out(soap, tag?tag:"ns1:sampleParameter", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__sampleParameter::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__sampleParameter(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__sampleParameter * SOAP_FMAC4 soap_get_ns1__sampleParameter(struct soap *soap, ns1__sampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__sampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__sampleParameter * SOAP_FMAC2 soap_instantiate_ns1__sampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__sampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__sampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter);
+		if (size)
+			*size = sizeof(ns1__sampleParameter);
+		((ns1__sampleParameter*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__sampleParameter);
+		for (int i = 0; i < n; i++)
+			((ns1__sampleParameter*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__sampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__sampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__sampleParameter %p -> %p\n", q, p));
+	*(ns1__sampleParameter*)p = *(ns1__sampleParameter*)q;
+}
+
+void ns1__entityBaseBean::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__entityBaseBean::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__entityBaseBean::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__entityBaseBean(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__entityBaseBean(struct soap *soap, const char *tag, int id, const ns1__entityBaseBean *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__entityBaseBean), "ns1:entityBaseBean"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__entityBaseBean::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__entityBaseBean(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__entityBaseBean * SOAP_FMAC4 soap_in_ns1__entityBaseBean(struct soap *soap, const char *tag, ns1__entityBaseBean *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__entityBaseBean *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__entityBaseBean, sizeof(ns1__entityBaseBean), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__entityBaseBean)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__entityBaseBean *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_facilityAcquiredData1 = 1;
+	size_t soap_flag_icatRole1 = 1;
+	size_t soap_flag_selected1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData1--;
+					continue;
+				}
+			if (soap_flag_icatRole1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole1--;
+					continue;
+				}
+			if (soap_flag_selected1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__entityBaseBean *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__entityBaseBean, 0, sizeof(ns1__entityBaseBean), 0, soap_copy_ns1__entityBaseBean);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData1 > 0 || soap_flag_selected1 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__entityBaseBean::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__entityBaseBean);
+	if (this->soap_out(soap, tag?tag:"ns1:entityBaseBean", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__entityBaseBean::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__entityBaseBean(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__entityBaseBean * SOAP_FMAC4 soap_get_ns1__entityBaseBean(struct soap *soap, ns1__entityBaseBean *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__entityBaseBean(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__entityBaseBean * SOAP_FMAC2 soap_instantiate_ns1__entityBaseBean(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__entityBaseBean(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__entityBaseBean, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (type && !soap_match_tag(soap, type, "ns1:sample"))
+	{	cp->type = SOAP_TYPE_ns1__sample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__sample);
+			((ns1__sample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sample[n]);
+			if (size)
+				*size = n * sizeof(ns1__sample);
+			for (int i = 0; i < n; i++)
+				((ns1__sample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__sample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:sampleParameter"))
+	{	cp->type = SOAP_TYPE_ns1__sampleParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__sampleParameter);
+			((ns1__sampleParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__sampleParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__sampleParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__sampleParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:icatRole"))
+	{	cp->type = SOAP_TYPE_ns1__icatRole;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__icatRole);
+			((ns1__icatRole*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole[n]);
+			if (size)
+				*size = n * sizeof(ns1__icatRole);
+			for (int i = 0; i < n; i++)
+				((ns1__icatRole*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__icatRole*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafile"))
+	{	cp->type = SOAP_TYPE_ns1__datafile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafile);
+			((ns1__datafile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafile);
+			for (int i = 0; i < n; i++)
+				((ns1__datafile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileFormat"))
+	{	cp->type = SOAP_TYPE_ns1__datafileFormat;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileFormat);
+			((ns1__datafileFormat*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileFormat);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileFormat*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileFormat*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileParameter"))
+	{	cp->type = SOAP_TYPE_ns1__datafileParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileParameter);
+			((ns1__datafileParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafiles"))
+	{	cp->type = SOAP_TYPE_ns1__relatedDatafiles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__relatedDatafiles);
+			((ns1__relatedDatafiles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles[n]);
+			if (size)
+				*size = n * sizeof(ns1__relatedDatafiles);
+			for (int i = 0; i < n; i++)
+				((ns1__relatedDatafiles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__relatedDatafiles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameter"))
+	{	cp->type = SOAP_TYPE_ns1__parameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameter);
+			((ns1__parameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameter);
+			for (int i = 0; i < n; i++)
+				((ns1__parameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigation"))
+	{	cp->type = SOAP_TYPE_ns1__investigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigation);
+			((ns1__investigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigation);
+			for (int i = 0; i < n; i++)
+				((ns1__investigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:dataset"))
+	{	cp->type = SOAP_TYPE_ns1__dataset;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__dataset);
+			((ns1__dataset*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset[n]);
+			if (size)
+				*size = n * sizeof(ns1__dataset);
+			for (int i = 0; i < n; i++)
+				((ns1__dataset*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__dataset*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datasetParameter"))
+	{	cp->type = SOAP_TYPE_ns1__datasetParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datasetParameter);
+			((ns1__datasetParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__datasetParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__datasetParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datasetParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:facilityCycle"))
+	{	cp->type = SOAP_TYPE_ns1__facilityCycle;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__facilityCycle);
+			((ns1__facilityCycle*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle[n]);
+			if (size)
+				*size = n * sizeof(ns1__facilityCycle);
+			for (int i = 0; i < n; i++)
+				((ns1__facilityCycle*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__facilityCycle*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigator"))
+	{	cp->type = SOAP_TYPE_ns1__investigator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigator);
+			((ns1__investigator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigator);
+			for (int i = 0; i < n; i++)
+				((ns1__investigator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:facilityUser"))
+	{	cp->type = SOAP_TYPE_ns1__facilityUser;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__facilityUser);
+			((ns1__facilityUser*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser[n]);
+			if (size)
+				*size = n * sizeof(ns1__facilityUser);
+			for (int i = 0; i < n; i++)
+				((ns1__facilityUser*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__facilityUser*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:keyword"))
+	{	cp->type = SOAP_TYPE_ns1__keyword;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__keyword);
+			((ns1__keyword*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword[n]);
+			if (size)
+				*size = n * sizeof(ns1__keyword);
+			for (int i = 0; i < n; i++)
+				((ns1__keyword*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__keyword*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:publication"))
+	{	cp->type = SOAP_TYPE_ns1__publication;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__publication);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__publication);
+			((ns1__publication*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__publication[n]);
+			if (size)
+				*size = n * sizeof(ns1__publication);
+			for (int i = 0; i < n; i++)
+				((ns1__publication*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__publication*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:shift"))
+	{	cp->type = SOAP_TYPE_ns1__shift;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shift);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__shift);
+			((ns1__shift*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shift[n]);
+			if (size)
+				*size = n * sizeof(ns1__shift);
+			for (int i = 0; i < n; i++)
+				((ns1__shift*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__shift*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:icatAuthorisation"))
+	{	cp->type = SOAP_TYPE_ns1__icatAuthorisation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__icatAuthorisation);
+			((ns1__icatAuthorisation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation[n]);
+			if (size)
+				*size = n * sizeof(ns1__icatAuthorisation);
+			for (int i = 0; i < n; i++)
+				((ns1__icatAuthorisation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__icatAuthorisation*)cp->ptr;
+	}
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean);
+		if (size)
+			*size = sizeof(ns1__entityBaseBean);
+		((ns1__entityBaseBean*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__entityBaseBean);
+		for (int i = 0; i < n; i++)
+			((ns1__entityBaseBean*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__entityBaseBean*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__entityBaseBean(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__entityBaseBean %p -> %p\n", q, p));
+	*(ns1__entityBaseBean*)p = *(ns1__entityBaseBean*)q;
+}
+
+void ns1__sample::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__sample::chemicalFormula = NULL;
+	this->ns1__sample::id = NULL;
+	this->ns1__sample::instance = NULL;
+	this->ns1__sample::name = NULL;
+	this->ns1__sample::proposalSampleId = NULL;
+	this->ns1__sample::safetyInformation = NULL;
+	soap_default_std__vectorTemplateOfPointerTons1__sampleParameter(soap, &this->ns1__sample::sampleParameterCollection);
+	soap_default_bool(soap, &this->ns1__entityBaseBean::facilityAcquiredData);
+	this->ns1__entityBaseBean::icatRole = NULL;
+	soap_default_bool(soap, &this->ns1__entityBaseBean::selected);
+	this->ns1__entityBaseBean::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__sample::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::chemicalFormula);
+	soap_serialize_PointerToLONG64(soap, &this->ns1__sample::id);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::instance);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::name);
+	soap_serialize_PointerToint(soap, &this->ns1__sample::proposalSampleId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__sample::safetyInformation);
+	soap_serialize_std__vectorTemplateOfPointerTons1__sampleParameter(soap, &this->ns1__sample::sampleParameterCollection);
+	soap_serialize_PointerTons1__icatRole(soap, &this->ns1__entityBaseBean::icatRole);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__entityBaseBean::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__sample::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__sample(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__sample(struct soap *soap, const char *tag, int id, const ns1__sample *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__sample), "ns1:sample"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_bool(soap, "facilityAcquiredData", -1, &(a->ns1__entityBaseBean::facilityAcquiredData), ""))
+		return soap->error;
+	if (soap_out_PointerTons1__icatRole(soap, "icatRole", -1, &(a->ns1__entityBaseBean::icatRole), ""))
+		return soap->error;
+	if (soap_out_bool(soap, "selected", -1, &(a->ns1__entityBaseBean::selected), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__entityBaseBean::uniqueId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "chemicalFormula", -1, &(a->ns1__sample::chemicalFormula), ""))
+		return soap->error;
+	if (soap_out_PointerToLONG64(soap, "id", -1, &(a->ns1__sample::id), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "instance", -1, &(a->ns1__sample::instance), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "name", -1, &(a->ns1__sample::name), ""))
+		return soap->error;
+	if (soap_out_PointerToint(soap, "proposalSampleId", -1, &(a->ns1__sample::proposalSampleId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "safetyInformation", -1, &(a->ns1__sample::safetyInformation), ""))
+		return soap->error;
+	if (soap_out_std__vectorTemplateOfPointerTons1__sampleParameter(soap, "sampleParameterCollection", -1, &(a->ns1__sample::sampleParameterCollection), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__sample::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__sample(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__sample * SOAP_FMAC4 soap_in_ns1__sample(struct soap *soap, const char *tag, ns1__sample *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__sample *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__sample, sizeof(ns1__sample), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__sample)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__sample *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item3 = 1;
+	size_t soap_flag_facilityAcquiredData2 = 1;
+	size_t soap_flag_icatRole2 = 1;
+	size_t soap_flag_selected2 = 1;
+	size_t soap_flag_uniqueId2 = 1;
+	size_t soap_flag_chemicalFormula1 = 1;
+	size_t soap_flag_id1 = 1;
+	size_t soap_flag_instance1 = 1;
+	size_t soap_flag_name1 = 1;
+	size_t soap_flag_proposalSampleId1 = 1;
+	size_t soap_flag_safetyInformation1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_facilityAcquiredData2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "facilityAcquiredData", &(a->ns1__entityBaseBean::facilityAcquiredData), "xsd:boolean"))
+				{	soap_flag_facilityAcquiredData2--;
+					continue;
+				}
+			if (soap_flag_icatRole2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__icatRole(soap, "icatRole", &(a->ns1__entityBaseBean::icatRole), "ns1:icatRole"))
+				{	soap_flag_icatRole2--;
+					continue;
+				}
+			if (soap_flag_selected2 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_bool(soap, "selected", &(a->ns1__entityBaseBean::selected), "xsd:boolean"))
+				{	soap_flag_selected2--;
+					continue;
+				}
+			if (soap_flag_uniqueId2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__entityBaseBean::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId2--;
+					continue;
+				}
+			if (soap_flag_chemicalFormula1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "chemicalFormula", &(a->ns1__sample::chemicalFormula), "xsd:string"))
+				{	soap_flag_chemicalFormula1--;
+					continue;
+				}
+			if (soap_flag_id1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToLONG64(soap, "id", &(a->ns1__sample::id), "xsd:long"))
+				{	soap_flag_id1--;
+					continue;
+				}
+			if (soap_flag_instance1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "instance", &(a->ns1__sample::instance), "xsd:string"))
+				{	soap_flag_instance1--;
+					continue;
+				}
+			if (soap_flag_name1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "name", &(a->ns1__sample::name), "xsd:string"))
+				{	soap_flag_name1--;
+					continue;
+				}
+			if (soap_flag_proposalSampleId1 && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToint(soap, "proposalSampleId", &(a->ns1__sample::proposalSampleId), "xsd:int"))
+				{	soap_flag_proposalSampleId1--;
+					continue;
+				}
+			if (soap_flag_safetyInformation1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "safetyInformation", &(a->ns1__sample::safetyInformation), "xsd:string"))
+				{	soap_flag_safetyInformation1--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__sampleParameter(soap, "sampleParameterCollection", &(a->ns1__sample::sampleParameterCollection), "ns1:sampleParameter"))
+					continue;
+			if (soap_flag___item3 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item3--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__sample *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__sample, 0, sizeof(ns1__sample), 0, soap_copy_ns1__sample);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_facilityAcquiredData2 > 0 || soap_flag_selected2 > 0))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+int ns1__sample::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__sample);
+	if (this->soap_out(soap, tag?tag:"ns1:sample", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__sample::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__sample(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__sample * SOAP_FMAC4 soap_get_ns1__sample(struct soap *soap, ns1__sample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__sample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__sample * SOAP_FMAC2 soap_instantiate_ns1__sample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__sample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__sample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__sample);
+		if (size)
+			*size = sizeof(ns1__sample);
+		((ns1__sample*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__sample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__sample);
+		for (int i = 0; i < n; i++)
+			((ns1__sample*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__sample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__sample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__sample %p -> %p\n", q, p));
+	*(ns1__sample*)p = *(ns1__sample*)q;
+}
+
+void ns1__searchSamplesBySampleNameResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__searchSamplesBySampleNameResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchSamplesBySampleNameResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfPointerTons1__sample(soap, &this->ns1__searchSamplesBySampleNameResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__searchSamplesBySampleNameResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchSamplesBySampleNameResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, int id, const ns1__searchSamplesBySampleNameResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse), "ns1:searchSamplesBySampleNameResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfPointerTons1__sample(soap, "return", -1, &(a->ns1__searchSamplesBySampleNameResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchSamplesBySampleNameResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchSamplesBySampleNameResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse * SOAP_FMAC4 soap_in_ns1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, ns1__searchSamplesBySampleNameResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchSamplesBySampleNameResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, sizeof(ns1__searchSamplesBySampleNameResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchSamplesBySampleNameResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchSamplesBySampleNameResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfPointerTons1__sample(soap, "return", &(a->ns1__searchSamplesBySampleNameResponse::return_), "ns1:sample"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchSamplesBySampleNameResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, 0, sizeof(ns1__searchSamplesBySampleNameResponse), 0, soap_copy_ns1__searchSamplesBySampleNameResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchSamplesBySampleNameResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:searchSamplesBySampleNameResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchSamplesBySampleNameResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchSamplesBySampleNameResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse * SOAP_FMAC4 soap_get_ns1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchSamplesBySampleNameResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchSamplesBySampleNameResponse * SOAP_FMAC2 soap_instantiate_ns1__searchSamplesBySampleNameResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchSamplesBySampleNameResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse);
+		if (size)
+			*size = sizeof(ns1__searchSamplesBySampleNameResponse);
+		((ns1__searchSamplesBySampleNameResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchSamplesBySampleNameResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__searchSamplesBySampleNameResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchSamplesBySampleNameResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchSamplesBySampleNameResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchSamplesBySampleNameResponse %p -> %p\n", q, p));
+	*(ns1__searchSamplesBySampleNameResponse*)p = *(ns1__searchSamplesBySampleNameResponse*)q;
+}
+
+void ns1__searchSamplesBySampleName::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__searchSamplesBySampleName::sessionId = NULL;
+	this->ns1__searchSamplesBySampleName::sampleName = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__searchSamplesBySampleName::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchSamplesBySampleName::sessionId);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__searchSamplesBySampleName::sampleName);
+	/* transient soap skipped */
+}
+
+int ns1__searchSamplesBySampleName::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__searchSamplesBySampleName(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, int id, const ns1__searchSamplesBySampleName *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__searchSamplesBySampleName), "ns1:searchSamplesBySampleName"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__searchSamplesBySampleName::sessionId), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "sampleName", -1, &(a->ns1__searchSamplesBySampleName::sampleName), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__searchSamplesBySampleName::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__searchSamplesBySampleName(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_in_ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, ns1__searchSamplesBySampleName *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__searchSamplesBySampleName *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__searchSamplesBySampleName, sizeof(ns1__searchSamplesBySampleName), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__searchSamplesBySampleName)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__searchSamplesBySampleName *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	size_t soap_flag_sampleName1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__searchSamplesBySampleName::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag_sampleName1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sampleName", &(a->ns1__searchSamplesBySampleName::sampleName), "xsd:string"))
+				{	soap_flag_sampleName1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__searchSamplesBySampleName *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__searchSamplesBySampleName, 0, sizeof(ns1__searchSamplesBySampleName), 0, soap_copy_ns1__searchSamplesBySampleName);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__searchSamplesBySampleName::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__searchSamplesBySampleName);
+	if (this->soap_out(soap, tag?tag:"ns1:searchSamplesBySampleName", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__searchSamplesBySampleName::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__searchSamplesBySampleName(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_get_ns1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__searchSamplesBySampleName(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__searchSamplesBySampleName * SOAP_FMAC2 soap_instantiate_ns1__searchSamplesBySampleName(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__searchSamplesBySampleName(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__searchSamplesBySampleName, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName);
+		if (size)
+			*size = sizeof(ns1__searchSamplesBySampleName);
+		((ns1__searchSamplesBySampleName*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__searchSamplesBySampleName);
+		for (int i = 0; i < n; i++)
+			((ns1__searchSamplesBySampleName*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__searchSamplesBySampleName*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__searchSamplesBySampleName(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__searchSamplesBySampleName %p -> %p\n", q, p));
+	*(ns1__searchSamplesBySampleName*)p = *(ns1__searchSamplesBySampleName*)q;
+}
+
+void ns1__SessionException::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__SessionException::message = NULL;
+	this->ns1__SessionException::stackTraceAsString = NULL;
+	this->ns1__SessionException::uniqueId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__SessionException::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__SessionException::message);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__SessionException::stackTraceAsString);
+	soap_serialize_PointerTostd__string(soap, &this->ns1__SessionException::uniqueId);
+	/* transient soap skipped */
+}
+
+int ns1__SessionException::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__SessionException(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__SessionException(struct soap *soap, const char *tag, int id, const ns1__SessionException *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__SessionException), "ns1:SessionException"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "message", -1, &(a->ns1__SessionException::message), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "stackTraceAsString", -1, &(a->ns1__SessionException::stackTraceAsString), ""))
+		return soap->error;
+	if (soap_out_PointerTostd__string(soap, "uniqueId", -1, &(a->ns1__SessionException::uniqueId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__SessionException::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__SessionException(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__SessionException * SOAP_FMAC4 soap_in_ns1__SessionException(struct soap *soap, const char *tag, ns1__SessionException *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__SessionException *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__SessionException, sizeof(ns1__SessionException), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__SessionException)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__SessionException *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_message1 = 1;
+	size_t soap_flag_stackTraceAsString1 = 1;
+	size_t soap_flag_uniqueId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_message1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "message", &(a->ns1__SessionException::message), "xsd:string"))
+				{	soap_flag_message1--;
+					continue;
+				}
+			if (soap_flag_stackTraceAsString1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "stackTraceAsString", &(a->ns1__SessionException::stackTraceAsString), "xsd:string"))
+				{	soap_flag_stackTraceAsString1--;
+					continue;
+				}
+			if (soap_flag_uniqueId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "uniqueId", &(a->ns1__SessionException::uniqueId), "xsd:string"))
+				{	soap_flag_uniqueId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__SessionException *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__SessionException, 0, sizeof(ns1__SessionException), 0, soap_copy_ns1__SessionException);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__SessionException::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__SessionException);
+	if (this->soap_out(soap, tag?tag:"ns1:SessionException", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__SessionException::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__SessionException(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__SessionException * SOAP_FMAC4 soap_get_ns1__SessionException(struct soap *soap, ns1__SessionException *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__SessionException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__SessionException * SOAP_FMAC2 soap_instantiate_ns1__SessionException(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__SessionException(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__SessionException, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException);
+		if (size)
+			*size = sizeof(ns1__SessionException);
+		((ns1__SessionException*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__SessionException);
+		for (int i = 0; i < n; i++)
+			((ns1__SessionException*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__SessionException*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__SessionException(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__SessionException %p -> %p\n", q, p));
+	*(ns1__SessionException*)p = *(ns1__SessionException*)q;
+}
+
+void ns1__listDatasetTypesResponse::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetTypesResponse::return_);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listDatasetTypesResponse::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_std__vectorTemplateOfstd__string(soap, &this->ns1__listDatasetTypesResponse::return_);
+	/* transient soap skipped */
+}
+
+int ns1__listDatasetTypesResponse::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listDatasetTypesResponse(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetTypesResponse(struct soap *soap, const char *tag, int id, const ns1__listDatasetTypesResponse *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetTypesResponse), "ns1:listDatasetTypesResponse"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_std__vectorTemplateOfstd__string(soap, "return", -1, &(a->ns1__listDatasetTypesResponse::return_), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listDatasetTypesResponse::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listDatasetTypesResponse(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypesResponse * SOAP_FMAC4 soap_in_ns1__listDatasetTypesResponse(struct soap *soap, const char *tag, ns1__listDatasetTypesResponse *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listDatasetTypesResponse *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetTypesResponse, sizeof(ns1__listDatasetTypesResponse), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetTypesResponse)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listDatasetTypesResponse *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_std__vectorTemplateOfstd__string(soap, "return", &(a->ns1__listDatasetTypesResponse::return_), "xsd:string"))
+					continue;
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listDatasetTypesResponse *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetTypesResponse, 0, sizeof(ns1__listDatasetTypesResponse), 0, soap_copy_ns1__listDatasetTypesResponse);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listDatasetTypesResponse::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetTypesResponse);
+	if (this->soap_out(soap, tag?tag:"ns1:listDatasetTypesResponse", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listDatasetTypesResponse::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listDatasetTypesResponse(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypesResponse * SOAP_FMAC4 soap_get_ns1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listDatasetTypesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listDatasetTypesResponse * SOAP_FMAC2 soap_instantiate_ns1__listDatasetTypesResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetTypesResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetTypesResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse);
+		if (size)
+			*size = sizeof(ns1__listDatasetTypesResponse);
+		((ns1__listDatasetTypesResponse*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listDatasetTypesResponse);
+		for (int i = 0; i < n; i++)
+			((ns1__listDatasetTypesResponse*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listDatasetTypesResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetTypesResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetTypesResponse %p -> %p\n", q, p));
+	*(ns1__listDatasetTypesResponse*)p = *(ns1__listDatasetTypesResponse*)q;
+}
+
+void ns1__listDatasetTypes::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->ns1__listDatasetTypes::sessionId = NULL;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void ns1__listDatasetTypes::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_serialize_PointerTostd__string(soap, &this->ns1__listDatasetTypes::sessionId);
+	/* transient soap skipped */
+}
+
+int ns1__listDatasetTypes::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_ns1__listDatasetTypes(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_ns1__listDatasetTypes(struct soap *soap, const char *tag, int id, const ns1__listDatasetTypes *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_ns1__listDatasetTypes), "ns1:listDatasetTypes"))
+		return soap->error;
+	/* transient soap skipped */
+	if (soap_out_PointerTostd__string(soap, "sessionId", -1, &(a->ns1__listDatasetTypes::sessionId), ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+void *ns1__listDatasetTypes::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_ns1__listDatasetTypes(soap, tag, this, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypes * SOAP_FMAC4 soap_in_ns1__listDatasetTypes(struct soap *soap, const char *tag, ns1__listDatasetTypes *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 0, NULL))
+		return NULL;
+	a = (ns1__listDatasetTypes *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_ns1__listDatasetTypes, sizeof(ns1__listDatasetTypes), soap->type, soap->arrayType);
+	if (!a)
+		return NULL;
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_ns1__listDatasetTypes)
+		{	soap_revert(soap);
+			*soap->id = '\0';
+			return (ns1__listDatasetTypes *)a->soap_in(soap, tag, type);
+		}
+	}
+	size_t soap_flag___item2 = 1;
+	size_t soap_flag_sessionId1 = 1;
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			/* transient soap skipped */
+			if (soap_flag_sessionId1 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_PointerTostd__string(soap, "sessionId", &(a->ns1__listDatasetTypes::sessionId), "xsd:string"))
+				{	soap_flag_sessionId1--;
+					continue;
+				}
+			if (soap_flag___item2 && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-item", &(a->xsd__anyType::__item)))
+				{	soap_flag___item2--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (ns1__listDatasetTypes *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_ns1__listDatasetTypes, 0, sizeof(ns1__listDatasetTypes), 0, soap_copy_ns1__listDatasetTypes);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+int ns1__listDatasetTypes::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_ns1__listDatasetTypes);
+	if (this->soap_out(soap, tag?tag:"ns1:listDatasetTypes", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *ns1__listDatasetTypes::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_ns1__listDatasetTypes(soap, this, tag, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypes * SOAP_FMAC4 soap_get_ns1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_ns1__listDatasetTypes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 ns1__listDatasetTypes * SOAP_FMAC2 soap_instantiate_ns1__listDatasetTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_ns1__listDatasetTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_ns1__listDatasetTypes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes);
+		if (size)
+			*size = sizeof(ns1__listDatasetTypes);
+		((ns1__listDatasetTypes*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(ns1__listDatasetTypes);
+		for (int i = 0; i < n; i++)
+			((ns1__listDatasetTypes*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (ns1__listDatasetTypes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_ns1__listDatasetTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying ns1__listDatasetTypes %p -> %p\n", q, p));
+	*(ns1__listDatasetTypes*)p = *(ns1__listDatasetTypes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__string(struct soap *soap, std::string *p)
+{
+	(void)soap; /* appease -Wall -Werror */
+	p->erase();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__string(struct soap *soap, const std::string *p)
+{	(void)soap; (void)p; /* appease -Wall -Werror */
+}
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__string(struct soap *soap, const char *tag, int id, const std::string *s, const char *type)
+{
+	if ((soap->mode & SOAP_C_NILSTRING) && s->empty())
+		return soap_element_null(soap, tag, id, type);
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, s, SOAP_TYPE_std__string), type) || soap_string_out(soap, s->c_str(), 0) || soap_element_end_out(soap, tag))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::string * SOAP_FMAC4 soap_in_std__string(struct soap *soap, const char *tag, std::string *s, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!s)
+		s = soap_new_std__string(soap, -1);
+	if (soap->null)
+		if (s)
+			s->erase();
+	if (soap->body && !*soap->href)
+	{	char *t;
+		s = (std::string*)soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType);
+		if (s)
+		{	if ((t = soap_string_in(soap, 1, -1, -1)))
+				s->assign(t);
+			else
+				return NULL;
+		}
+	}
+	else
+		s = (std::string*)soap_id_forward(soap, soap->href, soap_class_id_enter(soap, soap->id, s, SOAP_TYPE_std__string, sizeof(std::string), soap->type, soap->arrayType), 0, SOAP_TYPE_std__string, 0, sizeof(std::string), 0, soap_copy_std__string);
+	if (soap->body && soap_element_end_in(soap, tag))
+		return NULL;
+	return s;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_std__string(struct soap *soap, const std::string *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_std__string);
+	if (soap_out_std__string(soap, tag?tag:"string", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 std::string * SOAP_FMAC4 soap_get_std__string(struct soap *soap, std::string *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_std__string(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 std::string * SOAP_FMAC2 soap_instantiate_std__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__string, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::string);
+		if (size)
+			*size = sizeof(std::string);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::string[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::string);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::string*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::string %p -> %p\n", q, p));
+	*(std::string*)p = *(std::string*)q;
+}
+
+void xsd__string::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_std__string(soap, &this->xsd__string::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__string::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->xsd__string::__item, SOAP_TYPE_std__string);
+	soap_serialize_std__string(soap, &this->xsd__string::__item);
+	/* transient soap skipped */
+}
+
+int xsd__string::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__string(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__string(struct soap *soap, const char *tag, int id, const xsd__string *a, const char *type)
+{
+	return soap_out_std__string(soap, tag, id, &(a->xsd__string::__item), "xsd:string");
+}
+
+void *xsd__string::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__string(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__string * SOAP_FMAC4 soap_in_xsd__string(struct soap *soap, const char *tag, xsd__string *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__string *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__string, sizeof(xsd__string), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__string)
+			return (xsd__string *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_std__string(soap, tag, &(a->xsd__string::__item), "xsd:string"))
+		return NULL;
+	return a;
+}
+
+int xsd__string::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__string);
+	if (this->soap_out(soap, tag?tag:"xsd:string", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__string::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__string(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__string * SOAP_FMAC4 soap_get_xsd__string(struct soap *soap, xsd__string *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__string(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__string * SOAP_FMAC2 soap_instantiate_xsd__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__string, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__string);
+		if (size)
+			*size = sizeof(xsd__string);
+		((xsd__string*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__string[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__string);
+		for (int i = 0; i < n; i++)
+			((xsd__string*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__string*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__string %p -> %p\n", q, p));
+	*(xsd__string*)p = *(xsd__string*)q;
+}
+
+void xsd__long::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_LONG64(soap, &this->xsd__long::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__long::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->xsd__long::__item, SOAP_TYPE_LONG64);
+	/* transient soap skipped */
+}
+
+int xsd__long::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__long(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__long(struct soap *soap, const char *tag, int id, const xsd__long *a, const char *type)
+{
+	return soap_out_LONG64(soap, tag, id, &(a->xsd__long::__item), "xsd:long");
+}
+
+void *xsd__long::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__long(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__long * SOAP_FMAC4 soap_in_xsd__long(struct soap *soap, const char *tag, xsd__long *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__long *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__long, sizeof(xsd__long), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__long)
+			return (xsd__long *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_LONG64(soap, tag, &(a->xsd__long::__item), "xsd:long"))
+		return NULL;
+	return a;
+}
+
+int xsd__long::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__long);
+	if (this->soap_out(soap, tag?tag:"xsd:long", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__long::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__long(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__long * SOAP_FMAC4 soap_get_xsd__long(struct soap *soap, xsd__long *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__long(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__long * SOAP_FMAC2 soap_instantiate_xsd__long(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__long(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__long, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__long);
+		if (size)
+			*size = sizeof(xsd__long);
+		((xsd__long*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__long[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__long);
+		for (int i = 0; i < n; i++)
+			((xsd__long*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__long*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__long(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__long %p -> %p\n", q, p));
+	*(xsd__long*)p = *(xsd__long*)q;
+}
+
+void xsd__int::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_int(soap, &this->xsd__int::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__int::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->xsd__int::__item, SOAP_TYPE_int);
+	/* transient soap skipped */
+}
+
+int xsd__int::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__int(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__int(struct soap *soap, const char *tag, int id, const xsd__int *a, const char *type)
+{
+	return soap_out_int(soap, tag, id, &(a->xsd__int::__item), "xsd:int");
+}
+
+void *xsd__int::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__int(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__int * SOAP_FMAC4 soap_in_xsd__int(struct soap *soap, const char *tag, xsd__int *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__int *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__int, sizeof(xsd__int), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__int)
+			return (xsd__int *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_int(soap, tag, &(a->xsd__int::__item), "xsd:int"))
+		return NULL;
+	return a;
+}
+
+int xsd__int::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__int);
+	if (this->soap_out(soap, tag?tag:"xsd:int", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__int::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__int(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__int * SOAP_FMAC4 soap_get_xsd__int(struct soap *soap, xsd__int *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__int(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__int * SOAP_FMAC2 soap_instantiate_xsd__int(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__int(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__int, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__int);
+		if (size)
+			*size = sizeof(xsd__int);
+		((xsd__int*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__int[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__int);
+		for (int i = 0; i < n; i++)
+			((xsd__int*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__int*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__int(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__int %p -> %p\n", q, p));
+	*(xsd__int*)p = *(xsd__int*)q;
+}
+
+void xsd__float::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_float(soap, &this->xsd__float::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__float::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int xsd__float::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__float(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__float(struct soap *soap, const char *tag, int id, const xsd__float *a, const char *type)
+{
+	return soap_out_float(soap, tag, id, &(a->xsd__float::__item), "xsd:float");
+}
+
+void *xsd__float::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__float(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__float * SOAP_FMAC4 soap_in_xsd__float(struct soap *soap, const char *tag, xsd__float *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__float *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__float, sizeof(xsd__float), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__float)
+			return (xsd__float *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_float(soap, tag, &(a->xsd__float::__item), "xsd:float"))
+		return NULL;
+	return a;
+}
+
+int xsd__float::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__float);
+	if (this->soap_out(soap, tag?tag:"xsd:float", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__float::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__float(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__float * SOAP_FMAC4 soap_get_xsd__float(struct soap *soap, xsd__float *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__float(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__float * SOAP_FMAC2 soap_instantiate_xsd__float(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__float(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__float, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__float);
+		if (size)
+			*size = sizeof(xsd__float);
+		((xsd__float*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__float[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__float);
+		for (int i = 0; i < n; i++)
+			((xsd__float*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__float*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__float(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__float %p -> %p\n", q, p));
+	*(xsd__float*)p = *(xsd__float*)q;
+}
+
+void xsd__double::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_double(soap, &this->xsd__double::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__double::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->xsd__double::__item, SOAP_TYPE_double);
+	/* transient soap skipped */
+}
+
+int xsd__double::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__double(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__double(struct soap *soap, const char *tag, int id, const xsd__double *a, const char *type)
+{
+	return soap_out_double(soap, tag, id, &(a->xsd__double::__item), "xsd:double");
+}
+
+void *xsd__double::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__double(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__double * SOAP_FMAC4 soap_in_xsd__double(struct soap *soap, const char *tag, xsd__double *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__double *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__double, sizeof(xsd__double), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__double)
+			return (xsd__double *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_double(soap, tag, &(a->xsd__double::__item), "xsd:double"))
+		return NULL;
+	return a;
+}
+
+int xsd__double::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__double);
+	if (this->soap_out(soap, tag?tag:"xsd:double", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__double::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__double(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__double * SOAP_FMAC4 soap_get_xsd__double(struct soap *soap, xsd__double *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__double(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__double * SOAP_FMAC2 soap_instantiate_xsd__double(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__double(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__double, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__double);
+		if (size)
+			*size = sizeof(xsd__double);
+		((xsd__double*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__double[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__double);
+		for (int i = 0; i < n; i++)
+			((xsd__double*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__double*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__double(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__double %p -> %p\n", q, p));
+	*(xsd__double*)p = *(xsd__double*)q;
+}
+
+void xsd__dateTime::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_time(soap, &this->xsd__dateTime::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__dateTime::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	soap_embedded(soap, &this->xsd__dateTime::__item, SOAP_TYPE_time);
+	/* transient soap skipped */
+}
+
+int xsd__dateTime::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__dateTime(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__dateTime(struct soap *soap, const char *tag, int id, const xsd__dateTime *a, const char *type)
+{
+	return soap_out_time(soap, tag, id, &(a->xsd__dateTime::__item), "xsd:dateTime");
+}
+
+void *xsd__dateTime::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__dateTime(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__dateTime * SOAP_FMAC4 soap_in_xsd__dateTime(struct soap *soap, const char *tag, xsd__dateTime *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__dateTime *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__dateTime, sizeof(xsd__dateTime), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__dateTime)
+			return (xsd__dateTime *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_time(soap, tag, &(a->xsd__dateTime::__item), "xsd:dateTime"))
+		return NULL;
+	return a;
+}
+
+int xsd__dateTime::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__dateTime);
+	if (this->soap_out(soap, tag?tag:"xsd:dateTime", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__dateTime::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__dateTime(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__dateTime * SOAP_FMAC4 soap_get_xsd__dateTime(struct soap *soap, xsd__dateTime *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__dateTime(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__dateTime * SOAP_FMAC2 soap_instantiate_xsd__dateTime(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__dateTime(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__dateTime, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime);
+		if (size)
+			*size = sizeof(xsd__dateTime);
+		((xsd__dateTime*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__dateTime);
+		for (int i = 0; i < n; i++)
+			((xsd__dateTime*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__dateTime*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__dateTime(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__dateTime %p -> %p\n", q, p));
+	*(xsd__dateTime*)p = *(xsd__dateTime*)q;
+}
+
+void xsd__boolean::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	soap_default_bool(soap, &this->xsd__boolean::__item);
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__boolean::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int xsd__boolean::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__boolean(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__boolean(struct soap *soap, const char *tag, int id, const xsd__boolean *a, const char *type)
+{
+	return soap_out_bool(soap, tag, id, &(a->xsd__boolean::__item), "xsd:boolean");
+}
+
+void *xsd__boolean::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__boolean(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__boolean * SOAP_FMAC4 soap_in_xsd__boolean(struct soap *soap, const char *tag, xsd__boolean *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__boolean *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__boolean, sizeof(xsd__boolean), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__boolean)
+			return (xsd__boolean *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_in_bool(soap, tag, &(a->xsd__boolean::__item), "xsd:boolean"))
+		return NULL;
+	return a;
+}
+
+int xsd__boolean::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__boolean);
+	if (this->soap_out(soap, tag?tag:"xsd:boolean", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__boolean::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__boolean(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__boolean * SOAP_FMAC4 soap_get_xsd__boolean(struct soap *soap, xsd__boolean *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__boolean(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__boolean * SOAP_FMAC2 soap_instantiate_xsd__boolean(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__boolean(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__boolean, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__boolean);
+		if (size)
+			*size = sizeof(xsd__boolean);
+		((xsd__boolean*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__boolean[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__boolean);
+		for (int i = 0; i < n; i++)
+			((xsd__boolean*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__boolean*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__boolean(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__boolean %p -> %p\n", q, p));
+	*(xsd__boolean*)p = *(xsd__boolean*)q;
+}
+
+void xsd__anyType::soap_default(struct soap *soap)
+{
+	this->soap = soap;
+	this->xsd__anyType::__item = NULL;
+	/* transient soap skipped */
+}
+
+void xsd__anyType::soap_serialize(struct soap *soap) const
+{
+	(void)soap; /* appease -Wall -Werror */
+	/* transient soap skipped */
+}
+
+int xsd__anyType::soap_out(struct soap *soap, const char *tag, int id, const char *type) const
+{
+	return soap_out_xsd__anyType(soap, tag, id, this, type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_xsd__anyType(struct soap *soap, const char *tag, int id, const xsd__anyType *a, const char *type)
+{
+	return soap_outliteral(soap, tag, &(a->xsd__anyType::__item), NULL);
+}
+
+void *xsd__anyType::soap_in(struct soap *soap, const char *tag, const char *type)
+{	return soap_in_xsd__anyType(soap, tag, this, type);
+}
+
+SOAP_FMAC3 xsd__anyType * SOAP_FMAC4 soap_in_xsd__anyType(struct soap *soap, const char *tag, xsd__anyType *a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!(a = (xsd__anyType *)soap_class_id_enter(soap, soap->id, a, SOAP_TYPE_xsd__anyType, sizeof(xsd__anyType), soap->type, soap->arrayType)))
+	{	soap->error = SOAP_TAG_MISMATCH;
+		return NULL;
+	}
+	soap_revert(soap);
+	*soap->id = '\0';
+	if (soap->alloced)
+	{	a->soap_default(soap);
+		if (soap->clist->type != SOAP_TYPE_xsd__anyType)
+			return (xsd__anyType *)a->soap_in(soap, tag, type);
+	}
+	if (!soap_inliteral(soap, tag, &(a->xsd__anyType::__item)))
+		return NULL;
+	return a;
+}
+
+int xsd__anyType::soap_put(struct soap *soap, const char *tag, const  char *type) const
+{
+	register int id = soap_embed(soap, (void*)this, NULL, 0, tag, SOAP_TYPE_xsd__anyType);
+	if (this->soap_out(soap, tag?tag:"xsd:anyType", id, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+void *xsd__anyType::soap_get(struct soap *soap, const char *tag, const char *type)
+{
+	return soap_get_xsd__anyType(soap, this, tag, type);
+}
+
+SOAP_FMAC3 xsd__anyType * SOAP_FMAC4 soap_get_xsd__anyType(struct soap *soap, xsd__anyType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_xsd__anyType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 xsd__anyType * SOAP_FMAC2 soap_instantiate_xsd__anyType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_xsd__anyType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_xsd__anyType, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (type && !soap_match_tag(soap, type, "xsd:boolean"))
+	{	cp->type = SOAP_TYPE_xsd__boolean;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__boolean);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__boolean);
+			((xsd__boolean*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__boolean[n]);
+			if (size)
+				*size = n * sizeof(xsd__boolean);
+			for (int i = 0; i < n; i++)
+				((xsd__boolean*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__boolean*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "xsd:dateTime"))
+	{	cp->type = SOAP_TYPE_xsd__dateTime;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__dateTime);
+			((xsd__dateTime*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__dateTime[n]);
+			if (size)
+				*size = n * sizeof(xsd__dateTime);
+			for (int i = 0; i < n; i++)
+				((xsd__dateTime*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__dateTime*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "xsd:double"))
+	{	cp->type = SOAP_TYPE_xsd__double;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__double);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__double);
+			((xsd__double*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__double[n]);
+			if (size)
+				*size = n * sizeof(xsd__double);
+			for (int i = 0; i < n; i++)
+				((xsd__double*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__double*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "xsd:float"))
+	{	cp->type = SOAP_TYPE_xsd__float;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__float);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__float);
+			((xsd__float*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__float[n]);
+			if (size)
+				*size = n * sizeof(xsd__float);
+			for (int i = 0; i < n; i++)
+				((xsd__float*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__float*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "xsd:int"))
+	{	cp->type = SOAP_TYPE_xsd__int;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__int);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__int);
+			((xsd__int*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__int[n]);
+			if (size)
+				*size = n * sizeof(xsd__int);
+			for (int i = 0; i < n; i++)
+				((xsd__int*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__int*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "xsd:long"))
+	{	cp->type = SOAP_TYPE_xsd__long;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__long);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__long);
+			((xsd__long*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__long[n]);
+			if (size)
+				*size = n * sizeof(xsd__long);
+			for (int i = 0; i < n; i++)
+				((xsd__long*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__long*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "xsd:string"))
+	{	cp->type = SOAP_TYPE_xsd__string;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(xsd__string);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(xsd__string);
+			((xsd__string*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(xsd__string[n]);
+			if (size)
+				*size = n * sizeof(xsd__string);
+			for (int i = 0; i < n; i++)
+				((xsd__string*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (xsd__string*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterValueType"))
+	{	cp->type = SOAP_TYPE_ns1__parameterValueType_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterValueType_);
+			((ns1__parameterValueType_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValueType_[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterValueType_);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterValueType_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterValueType_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileInclude"))
+	{	cp->type = SOAP_TYPE_ns1__datafileInclude_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileInclude_);
+			((ns1__datafileInclude_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileInclude_[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileInclude_);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileInclude_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileInclude_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:comparisonOperator"))
+	{	cp->type = SOAP_TYPE_ns1__comparisonOperator_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__comparisonOperator_);
+			((ns1__comparisonOperator_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__comparisonOperator_[n]);
+			if (size)
+				*size = n * sizeof(ns1__comparisonOperator_);
+			for (int i = 0; i < n; i++)
+				((ns1__comparisonOperator_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__comparisonOperator_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterType"))
+	{	cp->type = SOAP_TYPE_ns1__parameterType_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterType_);
+			((ns1__parameterType_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterType_[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterType_);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterType_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterType_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:keywordType"))
+	{	cp->type = SOAP_TYPE_ns1__keywordType_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__keywordType_);
+			((ns1__keywordType_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordType_[n]);
+			if (size)
+				*size = n * sizeof(ns1__keywordType_);
+			for (int i = 0; i < n; i++)
+				((ns1__keywordType_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__keywordType_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigationInclude"))
+	{	cp->type = SOAP_TYPE_ns1__investigationInclude_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigationInclude_);
+			((ns1__investigationInclude_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigationInclude_[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigationInclude_);
+			for (int i = 0; i < n; i++)
+				((ns1__investigationInclude_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigationInclude_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:logicalOperator"))
+	{	cp->type = SOAP_TYPE_ns1__logicalOperator_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__logicalOperator_);
+			((ns1__logicalOperator_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__logicalOperator_[n]);
+			if (size)
+				*size = n * sizeof(ns1__logicalOperator_);
+			for (int i = 0; i < n; i++)
+				((ns1__logicalOperator_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__logicalOperator_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:elementType"))
+	{	cp->type = SOAP_TYPE_ns1__elementType_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__elementType_);
+			((ns1__elementType_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__elementType_[n]);
+			if (size)
+				*size = n * sizeof(ns1__elementType_);
+			for (int i = 0; i < n; i++)
+				((ns1__elementType_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__elementType_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datasetInclude"))
+	{	cp->type = SOAP_TYPE_ns1__datasetInclude_;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datasetInclude_);
+			((ns1__datasetInclude_*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetInclude_[n]);
+			if (size)
+				*size = n * sizeof(ns1__datasetInclude_);
+			for (int i = 0; i < n; i++)
+				((ns1__datasetInclude_*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datasetInclude_*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listDatasetTypes"))
+	{	cp->type = SOAP_TYPE_ns1__listDatasetTypes;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listDatasetTypes);
+			((ns1__listDatasetTypes*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypes[n]);
+			if (size)
+				*size = n * sizeof(ns1__listDatasetTypes);
+			for (int i = 0; i < n; i++)
+				((ns1__listDatasetTypes*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listDatasetTypes*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listDatasetTypesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listDatasetTypesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listDatasetTypesResponse);
+			((ns1__listDatasetTypesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetTypesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listDatasetTypesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listDatasetTypesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listDatasetTypesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:SessionException"))
+	{	cp->type = SOAP_TYPE_ns1__SessionException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__SessionException);
+			((ns1__SessionException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__SessionException[n]);
+			if (size)
+				*size = n * sizeof(ns1__SessionException);
+			for (int i = 0; i < n; i++)
+				((ns1__SessionException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__SessionException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchSamplesBySampleName"))
+	{	cp->type = SOAP_TYPE_ns1__searchSamplesBySampleName;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchSamplesBySampleName);
+			((ns1__searchSamplesBySampleName*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleName[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchSamplesBySampleName);
+			for (int i = 0; i < n; i++)
+				((ns1__searchSamplesBySampleName*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchSamplesBySampleName*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchSamplesBySampleNameResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchSamplesBySampleNameResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchSamplesBySampleNameResponse);
+			((ns1__searchSamplesBySampleNameResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchSamplesBySampleNameResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchSamplesBySampleNameResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchSamplesBySampleNameResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchSamplesBySampleNameResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:entityBaseBean"))
+	{	cp->type = SOAP_TYPE_ns1__entityBaseBean;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__entityBaseBean);
+			((ns1__entityBaseBean*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__entityBaseBean[n]);
+			if (size)
+				*size = n * sizeof(ns1__entityBaseBean);
+			for (int i = 0; i < n; i++)
+				((ns1__entityBaseBean*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__entityBaseBean*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:entityPrimaryKeyBaseBean"))
+	{	cp->type = SOAP_TYPE_ns1__entityPrimaryKeyBaseBean;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__entityPrimaryKeyBaseBean);
+			((ns1__entityPrimaryKeyBaseBean*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__entityPrimaryKeyBaseBean[n]);
+			if (size)
+				*size = n * sizeof(ns1__entityPrimaryKeyBaseBean);
+			for (int i = 0; i < n; i++)
+				((ns1__entityPrimaryKeyBaseBean*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__entityPrimaryKeyBaseBean*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeSample"))
+	{	cp->type = SOAP_TYPE_ns1__removeSample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeSample);
+			((ns1__removeSample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSample[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeSample);
+			for (int i = 0; i < n; i++)
+				((ns1__removeSample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeSample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeSampleResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeSampleResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeSampleResponse);
+			((ns1__removeSampleResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeSampleResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeSampleResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeSampleResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:InsufficientPrivilegesException"))
+	{	cp->type = SOAP_TYPE_ns1__InsufficientPrivilegesException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__InsufficientPrivilegesException);
+			((ns1__InsufficientPrivilegesException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__InsufficientPrivilegesException[n]);
+			if (size)
+				*size = n * sizeof(ns1__InsufficientPrivilegesException);
+			for (int i = 0; i < n; i++)
+				((ns1__InsufficientPrivilegesException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__InsufficientPrivilegesException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:NoSuchObjectFoundException"))
+	{	cp->type = SOAP_TYPE_ns1__NoSuchObjectFoundException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__NoSuchObjectFoundException);
+			((ns1__NoSuchObjectFoundException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchObjectFoundException[n]);
+			if (size)
+				*size = n * sizeof(ns1__NoSuchObjectFoundException);
+			for (int i = 0; i < n; i++)
+				((ns1__NoSuchObjectFoundException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__NoSuchObjectFoundException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listInstruments"))
+	{	cp->type = SOAP_TYPE_ns1__listInstruments;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listInstruments);
+			((ns1__listInstruments*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstruments[n]);
+			if (size)
+				*size = n * sizeof(ns1__listInstruments);
+			for (int i = 0; i < n; i++)
+				((ns1__listInstruments*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listInstruments*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listInstrumentsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listInstrumentsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listInstrumentsResponse);
+			((ns1__listInstrumentsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInstrumentsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listInstrumentsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listInstrumentsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listInstrumentsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataFile"))
+	{	cp->type = SOAP_TYPE_ns1__createDataFile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataFile);
+			((ns1__createDataFile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFile[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataFile);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataFile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataFile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataFileResponse"))
+	{	cp->type = SOAP_TYPE_ns1__createDataFileResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataFileResponse);
+			((ns1__createDataFileResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFileResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataFileResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataFileResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataFileResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:ValidationException"))
+	{	cp->type = SOAP_TYPE_ns1__ValidationException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__ValidationException);
+			((ns1__ValidationException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ValidationException[n]);
+			if (size)
+				*size = n * sizeof(ns1__ValidationException);
+			for (int i = 0; i < n; i++)
+				((ns1__ValidationException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__ValidationException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifySample"))
+	{	cp->type = SOAP_TYPE_ns1__modifySample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifySample);
+			((ns1__modifySample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySample[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifySample);
+			for (int i = 0; i < n; i++)
+				((ns1__modifySample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifySample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifySampleResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifySampleResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifySampleResponse);
+			((ns1__modifySampleResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifySampleResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifySampleResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifySampleResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparators"))
+	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparators;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByParameterComparators);
+			((ns1__searchByParameterComparators*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparators[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByParameterComparators);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByParameterComparators*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByParameterComparators*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterCondition"))
+	{	cp->type = SOAP_TYPE_ns1__parameterCondition;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterCondition);
+			((ns1__parameterCondition*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterCondition[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterCondition);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterCondition*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterCondition*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterValued"))
+	{	cp->type = SOAP_TYPE_ns1__parameterValued;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterValued);
+			((ns1__parameterValued*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterValued[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterValued);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterValued*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterValued*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparatorsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparatorsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByParameterComparatorsResponse);
+			((ns1__searchByParameterComparatorsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByParameterComparatorsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByParameterComparatorsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:ParameterSearchException"))
+	{	cp->type = SOAP_TYPE_ns1__ParameterSearchException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__ParameterSearchException);
+			((ns1__ParameterSearchException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ParameterSearchException[n]);
+			if (size)
+				*size = n * sizeof(ns1__ParameterSearchException);
+			for (int i = 0; i < n; i++)
+				((ns1__ParameterSearchException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__ParameterSearchException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparators"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparators;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatafilesByParameterComparators);
+			((ns1__searchDatafilesByParameterComparators*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparators[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatafilesByParameterComparators);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatafilesByParameterComparators*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatafilesByParameterComparators*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparatorsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
+			((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatafilesByParameterComparatorsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatafilesByParameterComparatorsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataFile"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataFile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataFile);
+			((ns1__removeDataFile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFile[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataFile);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataFile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataFile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataFileResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataFileResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataFileResponse);
+			((ns1__removeDataFileResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataFileResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataFileResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataFileResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeAuthorisation"))
+	{	cp->type = SOAP_TYPE_ns1__removeAuthorisation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeAuthorisation);
+			((ns1__removeAuthorisation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisation[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeAuthorisation);
+			for (int i = 0; i < n; i++)
+				((ns1__removeAuthorisation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeAuthorisation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeAuthorisationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeAuthorisationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeAuthorisationResponse);
+			((ns1__removeAuthorisationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeAuthorisationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeAuthorisationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeAuthorisationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeAuthorisationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParameters"))
+	{	cp->type = SOAP_TYPE_ns1__addDataFileParameters;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataFileParameters);
+			((ns1__addDataFileParameters*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameters[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataFileParameters);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataFileParameters*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataFileParameters*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParametersResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addDataFileParametersResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataFileParametersResponse);
+			((ns1__addDataFileParametersResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParametersResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataFileParametersResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataFileParametersResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataFileParametersResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listFacilityCycles"))
+	{	cp->type = SOAP_TYPE_ns1__listFacilityCycles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listFacilityCycles);
+			((ns1__listFacilityCycles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCycles[n]);
+			if (size)
+				*size = n * sizeof(ns1__listFacilityCycles);
+			for (int i = 0; i < n; i++)
+				((ns1__listFacilityCycles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listFacilityCycles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listFacilityCyclesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listFacilityCyclesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listFacilityCyclesResponse);
+			((ns1__listFacilityCyclesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listFacilityCyclesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listFacilityCyclesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listFacilityCyclesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listFacilityCyclesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:logout"))
+	{	cp->type = SOAP_TYPE_ns1__logout;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__logout);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__logout);
+			((ns1__logout*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__logout[n]);
+			if (size)
+				*size = n * sizeof(ns1__logout);
+			for (int i = 0; i < n; i++)
+				((ns1__logout*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__logout*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:logoutResponse"))
+	{	cp->type = SOAP_TYPE_ns1__logoutResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__logoutResponse);
+			((ns1__logoutResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__logoutResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__logoutResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__logoutResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__logoutResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadDataset"))
+	{	cp->type = SOAP_TYPE_ns1__downloadDataset;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadDataset);
+			((ns1__downloadDataset*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDataset[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadDataset);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadDataset*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadDataset*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadDatasetResponse"))
+	{	cp->type = SOAP_TYPE_ns1__downloadDatasetResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadDatasetResponse);
+			((ns1__downloadDatasetResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatasetResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadDatasetResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadDatasetResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadDatasetResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFederalId"))
+	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFederalId;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getFacilityUserByFederalId);
+			((ns1__getFacilityUserByFederalId*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalId[n]);
+			if (size)
+				*size = n * sizeof(ns1__getFacilityUserByFederalId);
+			for (int i = 0; i < n; i++)
+				((ns1__getFacilityUserByFederalId*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getFacilityUserByFederalId*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFederalIdResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getFacilityUserByFederalIdResponse);
+			((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFederalIdResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getFacilityUserByFederalIdResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getFacilityUserByFederalIdResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getFacilityUserByFederalIdResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigation"))
+	{	cp->type = SOAP_TYPE_ns1__removeInvestigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeInvestigation);
+			((ns1__removeInvestigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeInvestigation);
+			for (int i = 0; i < n; i++)
+				((ns1__removeInvestigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeInvestigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeInvestigationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeInvestigationResponse);
+			((ns1__removeInvestigationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeInvestigationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeInvestigationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeInvestigationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigator"))
+	{	cp->type = SOAP_TYPE_ns1__removeInvestigator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeInvestigator);
+			((ns1__removeInvestigator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigator[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeInvestigator);
+			for (int i = 0; i < n; i++)
+				((ns1__removeInvestigator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeInvestigator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeInvestigatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeInvestigatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeInvestigatorResponse);
+			((ns1__removeInvestigatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeInvestigatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeInvestigatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeInvestigatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeInvestigatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeKeyword"))
+	{	cp->type = SOAP_TYPE_ns1__removeKeyword;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeKeyword);
+			((ns1__removeKeyword*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeyword[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeKeyword);
+			for (int i = 0; i < n; i++)
+				((ns1__removeKeyword*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeKeyword*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeKeywordResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeKeywordResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeKeywordResponse);
+			((ns1__removeKeywordResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeKeywordResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeKeywordResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeKeywordResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeKeywordResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigation"))
+	{	cp->type = SOAP_TYPE_ns1__deleteInvestigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteInvestigation);
+			((ns1__deleteInvestigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteInvestigation);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteInvestigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteInvestigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteInvestigationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteInvestigationResponse);
+			((ns1__deleteInvestigationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteInvestigationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteInvestigationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteInvestigationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataSets"))
+	{	cp->type = SOAP_TYPE_ns1__createDataSets;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataSets);
+			((ns1__createDataSets*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSets[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataSets);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataSets*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataSets*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataSetsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__createDataSetsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataSetsResponse);
+			((ns1__createDataSetsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataSetsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataSetsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataSetsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removePublication"))
+	{	cp->type = SOAP_TYPE_ns1__removePublication;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removePublication);
+			((ns1__removePublication*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublication[n]);
+			if (size)
+				*size = n * sizeof(ns1__removePublication);
+			for (int i = 0; i < n; i++)
+				((ns1__removePublication*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removePublication*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removePublicationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removePublicationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removePublicationResponse);
+			((ns1__removePublicationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removePublicationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removePublicationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removePublicationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removePublicationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getAllKeywords"))
+	{	cp->type = SOAP_TYPE_ns1__getAllKeywords;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getAllKeywords);
+			((ns1__getAllKeywords*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywords[n]);
+			if (size)
+				*size = n * sizeof(ns1__getAllKeywords);
+			for (int i = 0; i < n; i++)
+				((ns1__getAllKeywords*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getAllKeywords*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getAllKeywordsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getAllKeywordsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getAllKeywordsResponse);
+			((ns1__getAllKeywordsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAllKeywordsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getAllKeywordsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getAllKeywordsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getAllKeywordsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getUserDetails"))
+	{	cp->type = SOAP_TYPE_ns1__getUserDetails;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getUserDetails);
+			((ns1__getUserDetails*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetails[n]);
+			if (size)
+				*size = n * sizeof(ns1__getUserDetails);
+			for (int i = 0; i < n; i++)
+				((ns1__getUserDetails*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getUserDetails*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getUserDetailsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getUserDetailsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getUserDetailsResponse);
+			((ns1__getUserDetailsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getUserDetailsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getUserDetailsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getUserDetailsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getUserDetailsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:userDetails"))
+	{	cp->type = SOAP_TYPE_ns1__userDetails;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__userDetails);
+			((ns1__userDetails*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__userDetails[n]);
+			if (size)
+				*size = n * sizeof(ns1__userDetails);
+			for (int i = 0; i < n; i++)
+				((ns1__userDetails*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__userDetails*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:NoSuchUserException"))
+	{	cp->type = SOAP_TYPE_ns1__NoSuchUserException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__NoSuchUserException);
+			((ns1__NoSuchUserException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__NoSuchUserException[n]);
+			if (size)
+				*size = n * sizeof(ns1__NoSuchUserException);
+			for (int i = 0; i < n; i++)
+				((ns1__NoSuchUserException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__NoSuchUserException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafiles"))
+	{	cp->type = SOAP_TYPE_ns1__downloadDatafiles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadDatafiles);
+			((ns1__downloadDatafiles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafiles[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadDatafiles);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadDatafiles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadDatafiles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafilesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__downloadDatafilesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadDatafilesResponse);
+			((ns1__downloadDatafilesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafilesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadDatafilesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadDatafilesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadDatafilesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSet"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataSet;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataSet);
+			((ns1__modifyDataSet*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSet[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataSet);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataSet*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataSet*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSetResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataSetResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataSetResponse);
+			((ns1__modifyDataSetResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataSetResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataSetResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataSetResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addSampleParameter"))
+	{	cp->type = SOAP_TYPE_ns1__addSampleParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addSampleParameter);
+			((ns1__addSampleParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__addSampleParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__addSampleParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addSampleParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addSampleParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addSampleParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addSampleParameterResponse);
+			((ns1__addSampleParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addSampleParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addSampleParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addSampleParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFacilityUserId"))
+	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserId;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getFacilityUserByFacilityUserId);
+			((ns1__getFacilityUserByFacilityUserId*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserId[n]);
+			if (size)
+				*size = n * sizeof(ns1__getFacilityUserByFacilityUserId);
+			for (int i = 0; i < n; i++)
+				((ns1__getFacilityUserByFacilityUserId*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getFacilityUserByFacilityUserId*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getFacilityUserByFacilityUserIdResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
+			((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getFacilityUserByFacilityUserIdResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getFacilityUserByFacilityUserIdResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getFacilityUserByFacilityUserIdResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:checkDatafileDownloadAccess"))
+	{	cp->type = SOAP_TYPE_ns1__checkDatafileDownloadAccess;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__checkDatafileDownloadAccess);
+			((ns1__checkDatafileDownloadAccess*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccess[n]);
+			if (size)
+				*size = n * sizeof(ns1__checkDatafileDownloadAccess);
+			for (int i = 0; i < n; i++)
+				((ns1__checkDatafileDownloadAccess*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__checkDatafileDownloadAccess*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:checkDatafileDownloadAccessResponse"))
+	{	cp->type = SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__checkDatafileDownloadAccessResponse);
+			((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatafileDownloadAccessResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__checkDatafileDownloadAccessResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__checkDatafileDownloadAccessResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__checkDatafileDownloadAccessResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadInfo"))
+	{	cp->type = SOAP_TYPE_ns1__downloadInfo;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadInfo);
+			((ns1__downloadInfo*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadInfo[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadInfo);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadInfo*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadInfo*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFile"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataFile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataFile);
+			((ns1__deleteDataFile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFile[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataFile);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataFile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataFile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFileResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataFileResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataFileResponse);
+			((ns1__deleteDataFileResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataFileResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataFileResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataFileResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurname"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserSurname;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserSurname);
+			((ns1__searchByUserSurname*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurname[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserSurname);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserSurname*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserSurname*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurnameResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserSurnameResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserSurnameResponse);
+			((ns1__searchByUserSurnameResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnameResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserSurnameResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserSurnameResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserSurnameResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurnamePagination"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserSurnamePagination;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserSurnamePagination);
+			((ns1__searchByUserSurnamePagination*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePagination[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserSurnamePagination);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserSurnamePagination*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserSurnamePagination*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserSurnamePaginationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserSurnamePaginationResponse);
+			((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserSurnamePaginationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserSurnamePaginationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserSurnamePaginationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserSurnamePaginationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:checkDatasetDownloadAccess"))
+	{	cp->type = SOAP_TYPE_ns1__checkDatasetDownloadAccess;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__checkDatasetDownloadAccess);
+			((ns1__checkDatasetDownloadAccess*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccess[n]);
+			if (size)
+				*size = n * sizeof(ns1__checkDatasetDownloadAccess);
+			for (int i = 0; i < n; i++)
+				((ns1__checkDatasetDownloadAccess*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__checkDatasetDownloadAccess*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:checkDatasetDownloadAccessResponse"))
+	{	cp->type = SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__checkDatasetDownloadAccessResponse);
+			((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__checkDatasetDownloadAccessResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__checkDatasetDownloadAccessResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__checkDatasetDownloadAccessResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__checkDatasetDownloadAccessResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywords"))
+	{	cp->type = SOAP_TYPE_ns1__searchByKeywords;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByKeywords);
+			((ns1__searchByKeywords*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywords[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByKeywords);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByKeywords*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByKeywords*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywordsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByKeywordsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByKeywordsResponse);
+			((ns1__searchByKeywordsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByKeywordsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByKeywordsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByKeywordsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywordsAll"))
+	{	cp->type = SOAP_TYPE_ns1__searchByKeywordsAll;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByKeywordsAll);
+			((ns1__searchByKeywordsAll*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAll[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByKeywordsAll);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByKeywordsAll*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByKeywordsAll*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:keywordDetails"))
+	{	cp->type = SOAP_TYPE_ns1__keywordDetails;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__keywordDetails);
+			((ns1__keywordDetails*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordDetails[n]);
+			if (size)
+				*size = n * sizeof(ns1__keywordDetails);
+			for (int i = 0; i < n; i++)
+				((ns1__keywordDetails*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__keywordDetails*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByKeywordsAllResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByKeywordsAllResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByKeywordsAllResponse);
+			((ns1__searchByKeywordsAllResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByKeywordsAllResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByKeywordsAllResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByKeywordsAllResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByKeywordsAllResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigations"))
+	{	cp->type = SOAP_TYPE_ns1__getMyInvestigations;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getMyInvestigations);
+			((ns1__getMyInvestigations*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigations[n]);
+			if (size)
+				*size = n * sizeof(ns1__getMyInvestigations);
+			for (int i = 0; i < n; i++)
+				((ns1__getMyInvestigations*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getMyInvestigations*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getMyInvestigationsResponse);
+			((ns1__getMyInvestigationsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getMyInvestigationsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getMyInvestigationsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getMyInvestigationsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludes"))
+	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludes;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getMyInvestigationsIncludes);
+			((ns1__getMyInvestigationsIncludes*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludes[n]);
+			if (size)
+				*size = n * sizeof(ns1__getMyInvestigationsIncludes);
+			for (int i = 0; i < n; i++)
+				((ns1__getMyInvestigationsIncludes*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getMyInvestigationsIncludes*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getMyInvestigationsIncludesResponse);
+			((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getMyInvestigationsIncludesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getMyInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getMyInvestigationsIncludesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludesPagination"))
+	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getMyInvestigationsIncludesPagination);
+			((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPagination[n]);
+			if (size)
+				*size = n * sizeof(ns1__getMyInvestigationsIncludesPagination);
+			for (int i = 0; i < n; i++)
+				((ns1__getMyInvestigationsIncludesPagination*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getMyInvestigationsIncludesPagination*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getMyInvestigationsIncludesPaginationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
+			((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getMyInvestigationsIncludesPaginationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getMyInvestigationsIncludesPaginationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getMyInvestigationsIncludesPaginationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataSetParameter"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataSetParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataSetParameter);
+			((ns1__removeDataSetParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataSetParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataSetParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataSetParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataSetParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataSetParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataSetParameterResponse);
+			((ns1__removeDataSetParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataSetParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataSetParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyPublication"))
+	{	cp->type = SOAP_TYPE_ns1__modifyPublication;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyPublication);
+			((ns1__modifyPublication*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublication[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyPublication);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyPublication*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyPublication*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyPublicationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyPublicationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyPublicationResponse);
+			((ns1__modifyPublicationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyPublicationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyPublicationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyPublicationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyPublicationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserID"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserID;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserID);
+			((ns1__searchByUserID*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserID[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserID);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserID*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserID*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserIDResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserIDResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserIDResponse);
+			((ns1__searchByUserIDResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserIDResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserIDResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserIDResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserIDPagination"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserIDPagination;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserIDPagination);
+			((ns1__searchByUserIDPagination*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPagination[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserIDPagination);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserIDPagination*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserIDPagination*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByUserIDPaginationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByUserIDPaginationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByUserIDPaginationResponse);
+			((ns1__searchByUserIDPaginationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByUserIDPaginationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByUserIDPaginationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByUserIDPaginationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByUserIDPaginationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataFileParameter"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataFileParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataFileParameter);
+			((ns1__removeDataFileParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataFileParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataFileParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataFileParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataFileParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataFileParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataFileParameterResponse);
+			((ns1__removeDataFileParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataFileParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataFileParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataFileParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationsIncludes"))
+	{	cp->type = SOAP_TYPE_ns1__getInvestigationsIncludes;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getInvestigationsIncludes);
+			((ns1__getInvestigationsIncludes*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludes[n]);
+			if (size)
+				*size = n * sizeof(ns1__getInvestigationsIncludes);
+			for (int i = 0; i < n; i++)
+				((ns1__getInvestigationsIncludes*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getInvestigationsIncludes*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationsIncludesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getInvestigationsIncludesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getInvestigationsIncludesResponse);
+			((ns1__getInvestigationsIncludesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationsIncludesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getInvestigationsIncludesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getInvestigationsIncludesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getInvestigationsIncludesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparator"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatafilesByParameterComparator);
+			((ns1__searchDatafilesByParameterComparator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparator[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatafilesByParameterComparator);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatafilesByParameterComparator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatafilesByParameterComparator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatafilesByParameterComparatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatafilesByParameterComparatorResponse);
+			((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatafilesByParameterComparatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatafilesByParameterComparatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatafilesByParameterComparatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSet"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataSet;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataSet);
+			((ns1__deleteDataSet*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSet[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataSet);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataSet*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataSet*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSetResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataSetResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataSetResponse);
+			((ns1__deleteDataSetResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataSetResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataSetResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataSetResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:isSessionValid"))
+	{	cp->type = SOAP_TYPE_ns1__isSessionValid;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__isSessionValid);
+			((ns1__isSessionValid*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValid[n]);
+			if (size)
+				*size = n * sizeof(ns1__isSessionValid);
+			for (int i = 0; i < n; i++)
+				((ns1__isSessionValid*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__isSessionValid*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:isSessionValidResponse"))
+	{	cp->type = SOAP_TYPE_ns1__isSessionValidResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__isSessionValidResponse);
+			((ns1__isSessionValidResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__isSessionValidResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__isSessionValidResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__isSessionValidResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__isSessionValidResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterOperator"))
+	{	cp->type = SOAP_TYPE_ns1__searchByParameterOperator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByParameterOperator);
+			((ns1__searchByParameterOperator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperator[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByParameterOperator);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByParameterOperator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByParameterOperator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterOperatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByParameterOperatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByParameterOperatorResponse);
+			((ns1__searchByParameterOperatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterOperatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByParameterOperatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByParameterOperatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByParameterOperatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatafiles"))
+	{	cp->type = SOAP_TYPE_ns1__getDatafiles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatafiles);
+			((ns1__getDatafiles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafiles[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatafiles);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatafiles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatafiles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatafilesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getDatafilesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatafilesResponse);
+			((ns1__getDatafilesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafilesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatafilesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatafilesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatafilesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getICATAPIVersion"))
+	{	cp->type = SOAP_TYPE_ns1__getICATAPIVersion;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getICATAPIVersion);
+			((ns1__getICATAPIVersion*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersion[n]);
+			if (size)
+				*size = n * sizeof(ns1__getICATAPIVersion);
+			for (int i = 0; i < n; i++)
+				((ns1__getICATAPIVersion*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getICATAPIVersion*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getICATAPIVersionResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getICATAPIVersionResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getICATAPIVersionResponse);
+			((ns1__getICATAPIVersionResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getICATAPIVersionResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getICATAPIVersionResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getICATAPIVersionResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getICATAPIVersionResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigator"))
+	{	cp->type = SOAP_TYPE_ns1__deleteInvestigator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteInvestigator);
+			((ns1__deleteInvestigator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigator[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteInvestigator);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteInvestigator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteInvestigator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteInvestigatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteInvestigatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteInvestigatorResponse);
+			((ns1__deleteInvestigatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteInvestigatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteInvestigatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteInvestigatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteInvestigatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addInvestigator"))
+	{	cp->type = SOAP_TYPE_ns1__addInvestigator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addInvestigator);
+			((ns1__addInvestigator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigator[n]);
+			if (size)
+				*size = n * sizeof(ns1__addInvestigator);
+			for (int i = 0; i < n; i++)
+				((ns1__addInvestigator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addInvestigator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addInvestigatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addInvestigatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addInvestigatorResponse);
+			((ns1__addInvestigatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addInvestigatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addInvestigatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addInvestigatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addInvestigatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataSet"))
+	{	cp->type = SOAP_TYPE_ns1__createDataSet;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataSet);
+			((ns1__createDataSet*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSet[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataSet);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataSet*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataSet*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataSetResponse"))
+	{	cp->type = SOAP_TYPE_ns1__createDataSetResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataSetResponse);
+			((ns1__createDataSetResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataSetResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataSetResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataSetResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataSetResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparator"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatasetsByParameterComparator);
+			((ns1__searchDatasetsByParameterComparator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparator[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatasetsByParameterComparator);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatasetsByParameterComparator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatasetsByParameterComparator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatasetsByParameterComparatorResponse);
+			((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatasetsByParameterComparatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatasetsByParameterComparatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeSampleParameter"))
+	{	cp->type = SOAP_TYPE_ns1__removeSampleParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeSampleParameter);
+			((ns1__removeSampleParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeSampleParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__removeSampleParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeSampleParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeSampleParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeSampleParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeSampleParameterResponse);
+			((ns1__removeSampleParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeSampleParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeSampleParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeSampleParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeSampleParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSetParameter"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataSetParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataSetParameter);
+			((ns1__deleteDataSetParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataSetParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataSetParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataSetParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataSetParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataSetParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataSetParameterResponse);
+			((ns1__deleteDataSetParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataSetParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataSetParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataSetParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:setDataSetSample"))
+	{	cp->type = SOAP_TYPE_ns1__setDataSetSample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__setDataSetSample);
+			((ns1__setDataSetSample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSample[n]);
+			if (size)
+				*size = n * sizeof(ns1__setDataSetSample);
+			for (int i = 0; i < n; i++)
+				((ns1__setDataSetSample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__setDataSetSample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:setDataSetSampleResponse"))
+	{	cp->type = SOAP_TYPE_ns1__setDataSetSampleResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__setDataSetSampleResponse);
+			((ns1__setDataSetSampleResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__setDataSetSampleResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__setDataSetSampleResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__setDataSetSampleResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__setDataSetSampleResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparators"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparators;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatasetsByParameterComparators);
+			((ns1__searchDatasetsByParameterComparators*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparators[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatasetsByParameterComparators);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatasetsByParameterComparators*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatasetsByParameterComparators*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsByParameterComparatorsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
+			((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsByParameterComparatorsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatasetsByParameterComparatorsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatasetsByParameterComparatorsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafile"))
+	{	cp->type = SOAP_TYPE_ns1__downloadDatafile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadDatafile);
+			((ns1__downloadDatafile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafile[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadDatafile);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadDatafile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadDatafile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:downloadDatafileResponse"))
+	{	cp->type = SOAP_TYPE_ns1__downloadDatafileResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__downloadDatafileResponse);
+			((ns1__downloadDatafileResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__downloadDatafileResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__downloadDatafileResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__downloadDatafileResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__downloadDatafileResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUser"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUser;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUser);
+			((ns1__getKeywordsForUser*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUser[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUser);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUser*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUser*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserResponse);
+			((ns1__getKeywordsForUserResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserStartWithMax"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMax;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserStartWithMax);
+			((ns1__getKeywordsForUserStartWithMax*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMax[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserStartWithMax);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserStartWithMax*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserStartWithMax*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserStartWithMaxResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
+			((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserStartWithMaxResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserStartWithMaxResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserStartWithMaxResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserMax"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserMax;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserMax);
+			((ns1__getKeywordsForUserMax*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMax[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserMax);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserMax*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserMax*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserMaxResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserMaxResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserMaxResponse);
+			((ns1__getKeywordsForUserMaxResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserMaxResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserMaxResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserMaxResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserMaxResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserType"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserType;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserType);
+			((ns1__getKeywordsForUserType*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserType[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserType);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserType*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserType*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getKeywordsForUserTypeResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getKeywordsForUserTypeResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getKeywordsForUserTypeResponse);
+			((ns1__getKeywordsForUserTypeResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getKeywordsForUserTypeResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getKeywordsForUserTypeResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getKeywordsForUserTypeResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getKeywordsForUserTypeResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listInvestigationTypes"))
+	{	cp->type = SOAP_TYPE_ns1__listInvestigationTypes;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listInvestigationTypes);
+			((ns1__listInvestigationTypes*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypes[n]);
+			if (size)
+				*size = n * sizeof(ns1__listInvestigationTypes);
+			for (int i = 0; i < n; i++)
+				((ns1__listInvestigationTypes*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listInvestigationTypes*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listInvestigationTypesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listInvestigationTypesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listInvestigationTypesResponse);
+			((ns1__listInvestigationTypesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listInvestigationTypesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listInvestigationTypesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listInvestigationTypesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listInvestigationTypesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSetParameter"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataSetParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataSetParameter);
+			((ns1__modifyDataSetParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataSetParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataSetParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataSetParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataSetParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataSetParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataSetParameterResponse);
+			((ns1__modifyDataSetParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataSetParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataSetParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataSetParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataSet"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataSet;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataSet);
+			((ns1__removeDataSet*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSet[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataSet);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataSet*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataSet*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:removeDataSetResponse"))
+	{	cp->type = SOAP_TYPE_ns1__removeDataSetResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__removeDataSetResponse);
+			((ns1__removeDataSetResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__removeDataSetResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__removeDataSetResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__removeDataSetResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__removeDataSetResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getAuthorisations"))
+	{	cp->type = SOAP_TYPE_ns1__getAuthorisations;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getAuthorisations);
+			((ns1__getAuthorisations*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisations[n]);
+			if (size)
+				*size = n * sizeof(ns1__getAuthorisations);
+			for (int i = 0; i < n; i++)
+				((ns1__getAuthorisations*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getAuthorisations*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getAuthorisationsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getAuthorisationsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getAuthorisationsResponse);
+			((ns1__getAuthorisationsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getAuthorisationsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getAuthorisationsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getAuthorisationsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getAuthorisationsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addKeyword"))
+	{	cp->type = SOAP_TYPE_ns1__addKeyword;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addKeyword);
+			((ns1__addKeyword*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeyword[n]);
+			if (size)
+				*size = n * sizeof(ns1__addKeyword);
+			for (int i = 0; i < n; i++)
+				((ns1__addKeyword*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addKeyword*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addKeywordResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addKeywordResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addKeywordResponse);
+			((ns1__addKeywordResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addKeywordResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addKeywordResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addKeywordResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addKeywordResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigation"))
+	{	cp->type = SOAP_TYPE_ns1__modifyInvestigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyInvestigation);
+			((ns1__modifyInvestigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyInvestigation);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyInvestigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyInvestigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyInvestigationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyInvestigationResponse);
+			((ns1__modifyInvestigationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyInvestigationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyInvestigationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyInvestigationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listDatasetStatus"))
+	{	cp->type = SOAP_TYPE_ns1__listDatasetStatus;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listDatasetStatus);
+			((ns1__listDatasetStatus*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatus[n]);
+			if (size)
+				*size = n * sizeof(ns1__listDatasetStatus);
+			for (int i = 0; i < n; i++)
+				((ns1__listDatasetStatus*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listDatasetStatus*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listDatasetStatusResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listDatasetStatusResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listDatasetStatusResponse);
+			((ns1__listDatasetStatusResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatasetStatusResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listDatasetStatusResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listDatasetStatusResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listDatasetStatusResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteSample"))
+	{	cp->type = SOAP_TYPE_ns1__deleteSample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteSample);
+			((ns1__deleteSample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSample[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteSample);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteSample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteSample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteSampleResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteSampleResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteSampleResponse);
+			((ns1__deleteSampleResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteSampleResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteSampleResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteSampleResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteKeyword"))
+	{	cp->type = SOAP_TYPE_ns1__deleteKeyword;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteKeyword);
+			((ns1__deleteKeyword*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeyword[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteKeyword);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteKeyword*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteKeyword*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteKeywordResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteKeywordResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteKeywordResponse);
+			((ns1__deleteKeywordResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteKeywordResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteKeywordResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteKeywordResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteKeywordResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParameters"))
+	{	cp->type = SOAP_TYPE_ns1__addDataSetParameters;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataSetParameters);
+			((ns1__addDataSetParameters*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameters[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataSetParameters);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataSetParameters*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataSetParameters*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParametersResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addDataSetParametersResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataSetParametersResponse);
+			((ns1__addDataSetParametersResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParametersResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataSetParametersResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataSetParametersResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataSetParametersResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumber"))
+	{	cp->type = SOAP_TYPE_ns1__searchByRunNumber;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByRunNumber);
+			((ns1__searchByRunNumber*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumber[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByRunNumber);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByRunNumber*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByRunNumber*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumberResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByRunNumberResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByRunNumberResponse);
+			((ns1__searchByRunNumberResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByRunNumberResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByRunNumberResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByRunNumberResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumberPagination"))
+	{	cp->type = SOAP_TYPE_ns1__searchByRunNumberPagination;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByRunNumberPagination);
+			((ns1__searchByRunNumberPagination*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPagination[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByRunNumberPagination);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByRunNumberPagination*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByRunNumberPagination*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByRunNumberPaginationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByRunNumberPaginationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByRunNumberPaginationResponse);
+			((ns1__searchByRunNumberPaginationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByRunNumberPaginationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByRunNumberPaginationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByRunNumberPaginationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByRunNumberPaginationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvanced"))
+	{	cp->type = SOAP_TYPE_ns1__searchByAdvanced;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByAdvanced);
+			((ns1__searchByAdvanced*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvanced[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByAdvanced);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByAdvanced*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByAdvanced*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:advancedSearchDetails"))
+	{	cp->type = SOAP_TYPE_ns1__advancedSearchDetails;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__advancedSearchDetails);
+			((ns1__advancedSearchDetails*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__advancedSearchDetails[n]);
+			if (size)
+				*size = n * sizeof(ns1__advancedSearchDetails);
+			for (int i = 0; i < n; i++)
+				((ns1__advancedSearchDetails*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__advancedSearchDetails*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvancedResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByAdvancedResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByAdvancedResponse);
+			((ns1__searchByAdvancedResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByAdvancedResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByAdvancedResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByAdvancedResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvancedPagination"))
+	{	cp->type = SOAP_TYPE_ns1__searchByAdvancedPagination;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByAdvancedPagination);
+			((ns1__searchByAdvancedPagination*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPagination[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByAdvancedPagination);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByAdvancedPagination*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByAdvancedPagination*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByAdvancedPaginationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByAdvancedPaginationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByAdvancedPaginationResponse);
+			((ns1__searchByAdvancedPaginationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByAdvancedPaginationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByAdvancedPaginationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByAdvancedPaginationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByAdvancedPaginationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listDatafileFormats"))
+	{	cp->type = SOAP_TYPE_ns1__listDatafileFormats;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listDatafileFormats);
+			((ns1__listDatafileFormats*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormats[n]);
+			if (size)
+				*size = n * sizeof(ns1__listDatafileFormats);
+			for (int i = 0; i < n; i++)
+				((ns1__listDatafileFormats*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listDatafileFormats*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listDatafileFormatsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listDatafileFormatsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listDatafileFormatsResponse);
+			((ns1__listDatafileFormatsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listDatafileFormatsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listDatafileFormatsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listDatafileFormatsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listDatafileFormatsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifySampleParameter"))
+	{	cp->type = SOAP_TYPE_ns1__modifySampleParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifySampleParameter);
+			((ns1__modifySampleParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifySampleParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__modifySampleParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifySampleParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifySampleParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifySampleParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifySampleParameterResponse);
+			((ns1__modifySampleParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifySampleParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifySampleParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifySampleParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifySampleParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparator"))
+	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByParameterComparator);
+			((ns1__searchByParameterComparator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparator[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByParameterComparator);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByParameterComparator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByParameterComparator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchByParameterComparatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchByParameterComparatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchByParameterComparatorResponse);
+			((ns1__searchByParameterComparatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchByParameterComparatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchByParameterComparatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchByParameterComparatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchByParameterComparatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigator"))
+	{	cp->type = SOAP_TYPE_ns1__modifyInvestigator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyInvestigator);
+			((ns1__modifyInvestigator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigator[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyInvestigator);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyInvestigator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyInvestigator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyInvestigatorResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyInvestigatorResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyInvestigatorResponse);
+			((ns1__modifyInvestigatorResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyInvestigatorResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyInvestigatorResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyInvestigatorResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyInvestigatorResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataFiles"))
+	{	cp->type = SOAP_TYPE_ns1__createDataFiles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataFiles);
+			((ns1__createDataFiles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFiles[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataFiles);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataFiles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataFiles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createDataFilesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__createDataFilesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createDataFilesResponse);
+			((ns1__createDataFilesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createDataFilesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__createDataFilesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__createDataFilesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createDataFilesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParameter"))
+	{	cp->type = SOAP_TYPE_ns1__addDataSetParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataSetParameter);
+			((ns1__addDataSetParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataSetParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataSetParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataSetParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataSetParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addDataSetParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataSetParameterResponse);
+			((ns1__addDataSetParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataSetParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataSetParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataSetParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataSetParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addAuthorisation"))
+	{	cp->type = SOAP_TYPE_ns1__addAuthorisation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addAuthorisation);
+			((ns1__addAuthorisation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisation[n]);
+			if (size)
+				*size = n * sizeof(ns1__addAuthorisation);
+			for (int i = 0; i < n; i++)
+				((ns1__addAuthorisation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addAuthorisation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addAuthorisationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addAuthorisationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addAuthorisationResponse);
+			((ns1__addAuthorisationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addAuthorisationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addAuthorisationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addAuthorisationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addAuthorisationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addSample"))
+	{	cp->type = SOAP_TYPE_ns1__addSample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addSample);
+			((ns1__addSample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSample[n]);
+			if (size)
+				*size = n * sizeof(ns1__addSample);
+			for (int i = 0; i < n; i++)
+				((ns1__addSample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addSample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addSampleResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addSampleResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addSampleResponse);
+			((ns1__addSampleResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addSampleResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addSampleResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addSampleResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addSampleResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:loginLifetime"))
+	{	cp->type = SOAP_TYPE_ns1__loginLifetime;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__loginLifetime);
+			((ns1__loginLifetime*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetime[n]);
+			if (size)
+				*size = n * sizeof(ns1__loginLifetime);
+			for (int i = 0; i < n; i++)
+				((ns1__loginLifetime*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__loginLifetime*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:loginLifetimeResponse"))
+	{	cp->type = SOAP_TYPE_ns1__loginLifetimeResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__loginLifetimeResponse);
+			((ns1__loginLifetimeResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__loginLifetimeResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__loginLifetimeResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__loginLifetimeResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__loginLifetimeResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:login"))
+	{	cp->type = SOAP_TYPE_ns1__login;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__login);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__login);
+			((ns1__login*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__login[n]);
+			if (size)
+				*size = n * sizeof(ns1__login);
+			for (int i = 0; i < n; i++)
+				((ns1__login*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__login*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:loginResponse"))
+	{	cp->type = SOAP_TYPE_ns1__loginResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__loginResponse);
+			((ns1__loginResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__loginResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__loginResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__loginResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__loginResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deletePublication"))
+	{	cp->type = SOAP_TYPE_ns1__deletePublication;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deletePublication);
+			((ns1__deletePublication*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublication[n]);
+			if (size)
+				*size = n * sizeof(ns1__deletePublication);
+			for (int i = 0; i < n; i++)
+				((ns1__deletePublication*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deletePublication*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deletePublicationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deletePublicationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deletePublicationResponse);
+			((ns1__deletePublicationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deletePublicationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deletePublicationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deletePublicationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deletePublicationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteAuthorisation"))
+	{	cp->type = SOAP_TYPE_ns1__deleteAuthorisation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteAuthorisation);
+			((ns1__deleteAuthorisation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisation[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteAuthorisation);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteAuthorisation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteAuthorisation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteAuthorisationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteAuthorisationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteAuthorisationResponse);
+			((ns1__deleteAuthorisationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteAuthorisationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteAuthorisationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteAuthorisationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteAuthorisationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:updateAuthorisation"))
+	{	cp->type = SOAP_TYPE_ns1__updateAuthorisation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__updateAuthorisation);
+			((ns1__updateAuthorisation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisation[n]);
+			if (size)
+				*size = n * sizeof(ns1__updateAuthorisation);
+			for (int i = 0; i < n; i++)
+				((ns1__updateAuthorisation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__updateAuthorisation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:updateAuthorisationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__updateAuthorisationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__updateAuthorisationResponse);
+			((ns1__updateAuthorisationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__updateAuthorisationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__updateAuthorisationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__updateAuthorisationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__updateAuthorisationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatasetIncludes"))
+	{	cp->type = SOAP_TYPE_ns1__getDatasetIncludes;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatasetIncludes);
+			((ns1__getDatasetIncludes*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludes[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatasetIncludes);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatasetIncludes*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatasetIncludes*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatasetIncludesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getDatasetIncludesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatasetIncludesResponse);
+			((ns1__getDatasetIncludesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetIncludesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatasetIncludesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatasetIncludesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatasetIncludesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDataset"))
+	{	cp->type = SOAP_TYPE_ns1__getDataset;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDataset);
+			((ns1__getDataset*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDataset[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDataset);
+			for (int i = 0; i < n; i++)
+				((ns1__getDataset*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDataset*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatasetResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getDatasetResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatasetResponse);
+			((ns1__getDatasetResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatasetResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatasetResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatasetResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listRoles"))
+	{	cp->type = SOAP_TYPE_ns1__listRoles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listRoles);
+			((ns1__listRoles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listRoles[n]);
+			if (size)
+				*size = n * sizeof(ns1__listRoles);
+			for (int i = 0; i < n; i++)
+				((ns1__listRoles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listRoles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listRolesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listRolesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listRolesResponse);
+			((ns1__listRolesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listRolesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listRolesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listRolesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listRolesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:ingestMetadata"))
+	{	cp->type = SOAP_TYPE_ns1__ingestMetadata;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__ingestMetadata);
+			((ns1__ingestMetadata*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadata[n]);
+			if (size)
+				*size = n * sizeof(ns1__ingestMetadata);
+			for (int i = 0; i < n; i++)
+				((ns1__ingestMetadata*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__ingestMetadata*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:ingestMetadataResponse"))
+	{	cp->type = SOAP_TYPE_ns1__ingestMetadataResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__ingestMetadataResponse);
+			((ns1__ingestMetadataResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ingestMetadataResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__ingestMetadataResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__ingestMetadataResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__ingestMetadataResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:ICATAPIException"))
+	{	cp->type = SOAP_TYPE_ns1__ICATAPIException;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__ICATAPIException);
+			((ns1__ICATAPIException*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__ICATAPIException[n]);
+			if (size)
+				*size = n * sizeof(ns1__ICATAPIException);
+			for (int i = 0; i < n; i++)
+				((ns1__ICATAPIException*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__ICATAPIException*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatafile"))
+	{	cp->type = SOAP_TYPE_ns1__getDatafile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatafile);
+			((ns1__getDatafile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafile[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatafile);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatafile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatafile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatafileResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getDatafileResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatafileResponse);
+			((ns1__getDatafileResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatafileResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatafileResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatafileResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatafileResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFile"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataFile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataFile);
+			((ns1__modifyDataFile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFile[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataFile);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataFile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataFile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFileResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataFileResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataFileResponse);
+			((ns1__modifyDataFileResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataFileResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataFileResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataFileResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationIncludes"))
+	{	cp->type = SOAP_TYPE_ns1__getInvestigationIncludes;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getInvestigationIncludes);
+			((ns1__getInvestigationIncludes*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludes[n]);
+			if (size)
+				*size = n * sizeof(ns1__getInvestigationIncludes);
+			for (int i = 0; i < n; i++)
+				((ns1__getInvestigationIncludes*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getInvestigationIncludes*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationIncludesResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getInvestigationIncludesResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getInvestigationIncludesResponse);
+			((ns1__getInvestigationIncludesResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationIncludesResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getInvestigationIncludesResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getInvestigationIncludesResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getInvestigationIncludesResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getInvestigation"))
+	{	cp->type = SOAP_TYPE_ns1__getInvestigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getInvestigation);
+			((ns1__getInvestigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__getInvestigation);
+			for (int i = 0; i < n; i++)
+				((ns1__getInvestigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getInvestigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getInvestigationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getInvestigationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getInvestigationResponse);
+			((ns1__getInvestigationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getInvestigationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getInvestigationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getInvestigationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getInvestigationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFileParameter"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataFileParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataFileParameter);
+			((ns1__deleteDataFileParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataFileParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataFileParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataFileParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteDataFileParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteDataFileParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteDataFileParameterResponse);
+			((ns1__deleteDataFileParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteDataFileParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteDataFileParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteDataFileParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addPublication"))
+	{	cp->type = SOAP_TYPE_ns1__addPublication;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addPublication);
+			((ns1__addPublication*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublication[n]);
+			if (size)
+				*size = n * sizeof(ns1__addPublication);
+			for (int i = 0; i < n; i++)
+				((ns1__addPublication*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addPublication*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addPublicationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addPublicationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addPublicationResponse);
+			((ns1__addPublicationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addPublicationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addPublicationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addPublicationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addPublicationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createInvestigation"))
+	{	cp->type = SOAP_TYPE_ns1__createInvestigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createInvestigation);
+			((ns1__createInvestigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__createInvestigation);
+			for (int i = 0; i < n; i++)
+				((ns1__createInvestigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createInvestigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:createInvestigationResponse"))
+	{	cp->type = SOAP_TYPE_ns1__createInvestigationResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__createInvestigationResponse);
+			((ns1__createInvestigationResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__createInvestigationResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__createInvestigationResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__createInvestigationResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__createInvestigationResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsBySample"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatasetsBySample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatasetsBySample);
+			((ns1__searchDatasetsBySample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySample[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatasetsBySample);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatasetsBySample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatasetsBySample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:searchDatasetsBySampleResponse"))
+	{	cp->type = SOAP_TYPE_ns1__searchDatasetsBySampleResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__searchDatasetsBySampleResponse);
+			((ns1__searchDatasetsBySampleResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__searchDatasetsBySampleResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__searchDatasetsBySampleResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__searchDatasetsBySampleResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__searchDatasetsBySampleResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParameter"))
+	{	cp->type = SOAP_TYPE_ns1__addDataFileParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataFileParameter);
+			((ns1__addDataFileParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataFileParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataFileParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataFileParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:addDataFileParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__addDataFileParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__addDataFileParameterResponse);
+			((ns1__addDataFileParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__addDataFileParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__addDataFileParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__addDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__addDataFileParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteSampleParameter"))
+	{	cp->type = SOAP_TYPE_ns1__deleteSampleParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteSampleParameter);
+			((ns1__deleteSampleParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteSampleParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteSampleParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteSampleParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:deleteSampleParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__deleteSampleParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__deleteSampleParameterResponse);
+			((ns1__deleteSampleParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__deleteSampleParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__deleteSampleParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__deleteSampleParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__deleteSampleParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFileParameter"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataFileParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataFileParameter);
+			((ns1__modifyDataFileParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataFileParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataFileParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataFileParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:modifyDataFileParameterResponse"))
+	{	cp->type = SOAP_TYPE_ns1__modifyDataFileParameterResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__modifyDataFileParameterResponse);
+			((ns1__modifyDataFileParameterResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__modifyDataFileParameterResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__modifyDataFileParameterResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__modifyDataFileParameterResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__modifyDataFileParameterResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listParameters"))
+	{	cp->type = SOAP_TYPE_ns1__listParameters;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listParameters);
+			((ns1__listParameters*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listParameters[n]);
+			if (size)
+				*size = n * sizeof(ns1__listParameters);
+			for (int i = 0; i < n; i++)
+				((ns1__listParameters*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listParameters*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:listParametersResponse"))
+	{	cp->type = SOAP_TYPE_ns1__listParametersResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__listParametersResponse);
+			((ns1__listParametersResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__listParametersResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__listParametersResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__listParametersResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__listParametersResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatasets"))
+	{	cp->type = SOAP_TYPE_ns1__getDatasets;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatasets);
+			((ns1__getDatasets*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasets[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatasets);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatasets*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatasets*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:getDatasetsResponse"))
+	{	cp->type = SOAP_TYPE_ns1__getDatasetsResponse;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__getDatasetsResponse);
+			((ns1__getDatasetsResponse*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__getDatasetsResponse[n]);
+			if (size)
+				*size = n * sizeof(ns1__getDatasetsResponse);
+			for (int i = 0; i < n; i++)
+				((ns1__getDatasetsResponse*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__getDatasetsResponse*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:sample"))
+	{	cp->type = SOAP_TYPE_ns1__sample;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sample);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__sample);
+			((ns1__sample*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sample[n]);
+			if (size)
+				*size = n * sizeof(ns1__sample);
+			for (int i = 0; i < n; i++)
+				((ns1__sample*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__sample*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:sampleParameter"))
+	{	cp->type = SOAP_TYPE_ns1__sampleParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__sampleParameter);
+			((ns1__sampleParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__sampleParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__sampleParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__sampleParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:sampleParameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__sampleParameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__sampleParameterPK);
+			((ns1__sampleParameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__sampleParameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__sampleParameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__sampleParameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__sampleParameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:icatRole"))
+	{	cp->type = SOAP_TYPE_ns1__icatRole;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__icatRole);
+			((ns1__icatRole*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatRole[n]);
+			if (size)
+				*size = n * sizeof(ns1__icatRole);
+			for (int i = 0; i < n; i++)
+				((ns1__icatRole*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__icatRole*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafile"))
+	{	cp->type = SOAP_TYPE_ns1__datafile;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafile);
+			((ns1__datafile*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafile[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafile);
+			for (int i = 0; i < n; i++)
+				((ns1__datafile*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafile*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileFormat"))
+	{	cp->type = SOAP_TYPE_ns1__datafileFormat;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileFormat);
+			((ns1__datafileFormat*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormat[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileFormat);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileFormat*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileFormat*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileFormatPK"))
+	{	cp->type = SOAP_TYPE_ns1__datafileFormatPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileFormatPK);
+			((ns1__datafileFormatPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileFormatPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileFormatPK);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileFormatPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileFormatPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileParameter"))
+	{	cp->type = SOAP_TYPE_ns1__datafileParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileParameter);
+			((ns1__datafileParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datafileParameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__datafileParameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datafileParameterPK);
+			((ns1__datafileParameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datafileParameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__datafileParameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__datafileParameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datafileParameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafiles"))
+	{	cp->type = SOAP_TYPE_ns1__relatedDatafiles;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__relatedDatafiles);
+			((ns1__relatedDatafiles*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafiles[n]);
+			if (size)
+				*size = n * sizeof(ns1__relatedDatafiles);
+			for (int i = 0; i < n; i++)
+				((ns1__relatedDatafiles*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__relatedDatafiles*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:relatedDatafilesPK"))
+	{	cp->type = SOAP_TYPE_ns1__relatedDatafilesPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__relatedDatafilesPK);
+			((ns1__relatedDatafilesPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__relatedDatafilesPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__relatedDatafilesPK);
+			for (int i = 0; i < n; i++)
+				((ns1__relatedDatafilesPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__relatedDatafilesPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterComparisonCondition"))
+	{	cp->type = SOAP_TYPE_ns1__parameterComparisonCondition;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterComparisonCondition);
+			((ns1__parameterComparisonCondition*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterComparisonCondition[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterComparisonCondition);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterComparisonCondition*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterComparisonCondition*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameter"))
+	{	cp->type = SOAP_TYPE_ns1__parameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameter);
+			((ns1__parameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameter);
+			for (int i = 0; i < n; i++)
+				((ns1__parameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__parameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterPK);
+			((ns1__parameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigation"))
+	{	cp->type = SOAP_TYPE_ns1__investigation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigation);
+			((ns1__investigation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigation[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigation);
+			for (int i = 0; i < n; i++)
+				((ns1__investigation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigation*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:dataset"))
+	{	cp->type = SOAP_TYPE_ns1__dataset;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__dataset);
+			((ns1__dataset*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__dataset[n]);
+			if (size)
+				*size = n * sizeof(ns1__dataset);
+			for (int i = 0; i < n; i++)
+				((ns1__dataset*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__dataset*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datasetParameter"))
+	{	cp->type = SOAP_TYPE_ns1__datasetParameter;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datasetParameter);
+			((ns1__datasetParameter*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameter[n]);
+			if (size)
+				*size = n * sizeof(ns1__datasetParameter);
+			for (int i = 0; i < n; i++)
+				((ns1__datasetParameter*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datasetParameter*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:datasetParameterPK"))
+	{	cp->type = SOAP_TYPE_ns1__datasetParameterPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__datasetParameterPK);
+			((ns1__datasetParameterPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__datasetParameterPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__datasetParameterPK);
+			for (int i = 0; i < n; i++)
+				((ns1__datasetParameterPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__datasetParameterPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:facilityCycle"))
+	{	cp->type = SOAP_TYPE_ns1__facilityCycle;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__facilityCycle);
+			((ns1__facilityCycle*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityCycle[n]);
+			if (size)
+				*size = n * sizeof(ns1__facilityCycle);
+			for (int i = 0; i < n; i++)
+				((ns1__facilityCycle*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__facilityCycle*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigator"))
+	{	cp->type = SOAP_TYPE_ns1__investigator;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigator);
+			((ns1__investigator*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigator[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigator);
+			for (int i = 0; i < n; i++)
+				((ns1__investigator*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigator*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:facilityUser"))
+	{	cp->type = SOAP_TYPE_ns1__facilityUser;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__facilityUser);
+			((ns1__facilityUser*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__facilityUser[n]);
+			if (size)
+				*size = n * sizeof(ns1__facilityUser);
+			for (int i = 0; i < n; i++)
+				((ns1__facilityUser*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__facilityUser*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:investigatorPK"))
+	{	cp->type = SOAP_TYPE_ns1__investigatorPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__investigatorPK);
+			((ns1__investigatorPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__investigatorPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__investigatorPK);
+			for (int i = 0; i < n; i++)
+				((ns1__investigatorPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__investigatorPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:keyword"))
+	{	cp->type = SOAP_TYPE_ns1__keyword;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__keyword);
+			((ns1__keyword*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keyword[n]);
+			if (size)
+				*size = n * sizeof(ns1__keyword);
+			for (int i = 0; i < n; i++)
+				((ns1__keyword*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__keyword*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:keywordPK"))
+	{	cp->type = SOAP_TYPE_ns1__keywordPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__keywordPK);
+			((ns1__keywordPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__keywordPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__keywordPK);
+			for (int i = 0; i < n; i++)
+				((ns1__keywordPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__keywordPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:publication"))
+	{	cp->type = SOAP_TYPE_ns1__publication;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__publication);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__publication);
+			((ns1__publication*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__publication[n]);
+			if (size)
+				*size = n * sizeof(ns1__publication);
+			for (int i = 0; i < n; i++)
+				((ns1__publication*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__publication*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:shift"))
+	{	cp->type = SOAP_TYPE_ns1__shift;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shift);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__shift);
+			((ns1__shift*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shift[n]);
+			if (size)
+				*size = n * sizeof(ns1__shift);
+			for (int i = 0; i < n; i++)
+				((ns1__shift*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__shift*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:shiftPK"))
+	{	cp->type = SOAP_TYPE_ns1__shiftPK;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__shiftPK);
+			((ns1__shiftPK*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__shiftPK[n]);
+			if (size)
+				*size = n * sizeof(ns1__shiftPK);
+			for (int i = 0; i < n; i++)
+				((ns1__shiftPK*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__shiftPK*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:parameterLogicalCondition"))
+	{	cp->type = SOAP_TYPE_ns1__parameterLogicalCondition;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__parameterLogicalCondition);
+			((ns1__parameterLogicalCondition*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__parameterLogicalCondition[n]);
+			if (size)
+				*size = n * sizeof(ns1__parameterLogicalCondition);
+			for (int i = 0; i < n; i++)
+				((ns1__parameterLogicalCondition*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__parameterLogicalCondition*)cp->ptr;
+	}
+	if (type && !soap_match_tag(soap, type, "ns1:icatAuthorisation"))
+	{	cp->type = SOAP_TYPE_ns1__icatAuthorisation;
+		if (n < 0)
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation);
+			if (!cp->ptr)
+			{	soap->error = SOAP_EOM;
+				return NULL;
+			}
+			if (size)
+				*size = sizeof(ns1__icatAuthorisation);
+			((ns1__icatAuthorisation*)cp->ptr)->soap = soap;
+		}
+		else
+		{	cp->ptr = (void*)SOAP_NEW(ns1__icatAuthorisation[n]);
+			if (size)
+				*size = n * sizeof(ns1__icatAuthorisation);
+			for (int i = 0; i < n; i++)
+				((ns1__icatAuthorisation*)cp->ptr)[i].soap = soap;
+		}
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+		return (ns1__icatAuthorisation*)cp->ptr;
+	}
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(xsd__anyType);
+		if (size)
+			*size = sizeof(xsd__anyType);
+		((xsd__anyType*)cp->ptr)->soap = soap;
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(xsd__anyType[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(xsd__anyType);
+		for (int i = 0; i < n; i++)
+			((xsd__anyType*)cp->ptr)[i].soap = soap;
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (xsd__anyType*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_xsd__anyType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying xsd__anyType %p -> %p\n", q, p));
+	*(xsd__anyType*)p = *(xsd__anyType*)q;
+}
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_default__QName(soap, &a->faultcode);
+	soap_default_string(soap, &a->faultstring);
+	soap_default_string(soap, &a->faultactor);
+	a->detail = NULL;
+	a->SOAP_ENV__Code = NULL;
+	a->SOAP_ENV__Reason = NULL;
+	soap_default_string(soap, &a->SOAP_ENV__Node);
+	soap_default_string(soap, &a->SOAP_ENV__Role);
+	a->SOAP_ENV__Detail = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize__QName(soap, &a->faultcode);
+	soap_serialize_string(soap, &a->faultstring);
+	soap_serialize_string(soap, &a->faultactor);
+	soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->detail);
+	soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Code);
+	soap_serialize_PointerToSOAP_ENV__Reason(soap, &a->SOAP_ENV__Reason);
+	soap_serialize_string(soap, &a->SOAP_ENV__Node);
+	soap_serialize_string(soap, &a->SOAP_ENV__Role);
+	soap_serialize_PointerToSOAP_ENV__Detail(soap, &a->SOAP_ENV__Detail);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Fault(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Fault *a, const char *type)
+{
+	const char *soap_tmp_faultcode = soap_QName2s(soap, a->faultcode);
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Fault), type))
+		return soap->error;
+	if (soap_out__QName(soap, "faultcode", -1, (char*const*)&soap_tmp_faultcode, ""))
+		return soap->error;
+	if (soap_out_string(soap, "faultstring", -1, &a->faultstring, ""))
+		return soap->error;
+	if (soap_out_string(soap, "faultactor", -1, &a->faultactor, ""))
+		return soap->error;
+	if (soap_out_PointerToSOAP_ENV__Detail(soap, "detail", -1, &a->detail, ""))
+		return soap->error;
+	if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", -1, &a->SOAP_ENV__Code, ""))
+		return soap->error;
+	if (soap_out_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", -1, &a->SOAP_ENV__Reason, ""))
+		return soap->error;
+	if (soap_out_string(soap, "SOAP-ENV:Node", -1, &a->SOAP_ENV__Node, ""))
+		return soap->error;
+	if (soap_out_string(soap, "SOAP-ENV:Role", -1, &a->SOAP_ENV__Role, ""))
+		return soap->error;
+	if (soap_out_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", -1, &a->SOAP_ENV__Detail, ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_in_SOAP_ENV__Fault(struct soap *soap, const char *tag, struct SOAP_ENV__Fault *a, const char *type)
+{
+	size_t soap_flag_faultcode = 1;
+	size_t soap_flag_faultstring = 1;
+	size_t soap_flag_faultactor = 1;
+	size_t soap_flag_detail = 1;
+	size_t soap_flag_SOAP_ENV__Code = 1;
+	size_t soap_flag_SOAP_ENV__Reason = 1;
+	size_t soap_flag_SOAP_ENV__Node = 1;
+	size_t soap_flag_SOAP_ENV__Role = 1;
+	size_t soap_flag_SOAP_ENV__Detail = 1;
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (struct SOAP_ENV__Fault *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Fault, sizeof(struct SOAP_ENV__Fault), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_SOAP_ENV__Fault(soap, a);
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_faultcode && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in__QName(soap, "faultcode", &a->faultcode, ""))
+				{	soap_flag_faultcode--;
+					continue;
+				}
+			if (soap_flag_faultstring && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "faultstring", &a->faultstring, "xsd:string"))
+				{	soap_flag_faultstring--;
+					continue;
+				}
+			if (soap_flag_faultactor && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "faultactor", &a->faultactor, "xsd:string"))
+				{	soap_flag_faultactor--;
+					continue;
+				}
+			if (soap_flag_detail && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToSOAP_ENV__Detail(soap, "detail", &a->detail, ""))
+				{	soap_flag_detail--;
+					continue;
+				}
+			if (soap_flag_SOAP_ENV__Code && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Code", &a->SOAP_ENV__Code, ""))
+				{	soap_flag_SOAP_ENV__Code--;
+					continue;
+				}
+			if (soap_flag_SOAP_ENV__Reason && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToSOAP_ENV__Reason(soap, "SOAP-ENV:Reason", &a->SOAP_ENV__Reason, ""))
+				{	soap_flag_SOAP_ENV__Reason--;
+					continue;
+				}
+			if (soap_flag_SOAP_ENV__Node && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "SOAP-ENV:Node", &a->SOAP_ENV__Node, "xsd:string"))
+				{	soap_flag_SOAP_ENV__Node--;
+					continue;
+				}
+			if (soap_flag_SOAP_ENV__Role && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "SOAP-ENV:Role", &a->SOAP_ENV__Role, "xsd:string"))
+				{	soap_flag_SOAP_ENV__Role--;
+					continue;
+				}
+			if (soap_flag_SOAP_ENV__Detail && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToSOAP_ENV__Detail(soap, "SOAP-ENV:Detail", &a->SOAP_ENV__Detail, ""))
+				{	soap_flag_SOAP_ENV__Detail--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Fault *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Fault, 0, sizeof(struct SOAP_ENV__Fault), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Fault(struct soap *soap, const struct SOAP_ENV__Fault *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Fault);
+	if (soap_out_SOAP_ENV__Fault(soap, tag?tag:"SOAP-ENV:Fault", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Fault * SOAP_FMAC4 soap_get_SOAP_ENV__Fault(struct soap *soap, struct SOAP_ENV__Fault *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_SOAP_ENV__Fault(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct SOAP_ENV__Fault * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Fault(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Fault(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Fault, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Fault);
+		if (size)
+			*size = sizeof(struct SOAP_ENV__Fault);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Fault[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct SOAP_ENV__Fault);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct SOAP_ENV__Fault*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Fault(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Fault %p -> %p\n", q, p));
+	*(struct SOAP_ENV__Fault*)p = *(struct SOAP_ENV__Fault*)q;
+}
+
+#endif
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_default_string(soap, &a->SOAP_ENV__Text);
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_string(soap, &a->SOAP_ENV__Text);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Reason(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Reason *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Reason), type))
+		return soap->error;
+	if (soap->lang)
+		soap_set_attr(soap, "xml:lang", soap->lang, 1);
+	if (soap_out_string(soap, "SOAP-ENV:Text", -1, &a->SOAP_ENV__Text, ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_in_SOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason *a, const char *type)
+{
+	size_t soap_flag_SOAP_ENV__Text = 1;
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (struct SOAP_ENV__Reason *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_SOAP_ENV__Reason(soap, a);
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_SOAP_ENV__Text && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in_string(soap, "SOAP-ENV:Text", &a->SOAP_ENV__Text, "xsd:string"))
+				{	soap_flag_SOAP_ENV__Text--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Reason *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Reason, 0, sizeof(struct SOAP_ENV__Reason), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Reason(struct soap *soap, const struct SOAP_ENV__Reason *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Reason);
+	if (soap_out_SOAP_ENV__Reason(soap, tag?tag:"SOAP-ENV:Reason", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Reason * SOAP_FMAC4 soap_get_SOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_SOAP_ENV__Reason(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct SOAP_ENV__Reason * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Reason(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Reason(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Reason, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Reason);
+		if (size)
+			*size = sizeof(struct SOAP_ENV__Reason);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Reason[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct SOAP_ENV__Reason);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct SOAP_ENV__Reason*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Reason(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Reason %p -> %p\n", q, p));
+	*(struct SOAP_ENV__Reason*)p = *(struct SOAP_ENV__Reason*)q;
+}
+
+#endif
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_default__QName(soap, &a->SOAP_ENV__Value);
+	a->SOAP_ENV__Subcode = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize__QName(soap, &a->SOAP_ENV__Value);
+	soap_serialize_PointerToSOAP_ENV__Code(soap, &a->SOAP_ENV__Subcode);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Code(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Code *a, const char *type)
+{
+	const char *soap_tmp_SOAP_ENV__Value = soap_QName2s(soap, a->SOAP_ENV__Value);
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Code), type))
+		return soap->error;
+	if (soap_out__QName(soap, "SOAP-ENV:Value", -1, (char*const*)&soap_tmp_SOAP_ENV__Value, ""))
+		return soap->error;
+	if (soap_out_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", -1, &a->SOAP_ENV__Subcode, ""))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_in_SOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code *a, const char *type)
+{
+	size_t soap_flag_SOAP_ENV__Value = 1;
+	size_t soap_flag_SOAP_ENV__Subcode = 1;
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (struct SOAP_ENV__Code *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_SOAP_ENV__Code(soap, a);
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_SOAP_ENV__Value && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_in__QName(soap, "SOAP-ENV:Value", &a->SOAP_ENV__Value, ""))
+				{	soap_flag_SOAP_ENV__Value--;
+					continue;
+				}
+			if (soap_flag_SOAP_ENV__Subcode && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerToSOAP_ENV__Code(soap, "SOAP-ENV:Subcode", &a->SOAP_ENV__Subcode, ""))
+				{	soap_flag_SOAP_ENV__Subcode--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Code *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Code, 0, sizeof(struct SOAP_ENV__Code), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Code(struct soap *soap, const struct SOAP_ENV__Code *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Code);
+	if (soap_out_SOAP_ENV__Code(soap, tag?tag:"SOAP-ENV:Code", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Code * SOAP_FMAC4 soap_get_SOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_SOAP_ENV__Code(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct SOAP_ENV__Code * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Code(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Code(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Code, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Code);
+		if (size)
+			*size = sizeof(struct SOAP_ENV__Code);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Code[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct SOAP_ENV__Code);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct SOAP_ENV__Code*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Code(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Code %p -> %p\n", q, p));
+	*(struct SOAP_ENV__Code*)p = *(struct SOAP_ENV__Code*)q;
+}
+
+#endif
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Header(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Header *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Header), type))
+		return soap->error;
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_in_SOAP_ENV__Header(struct soap *soap, const char *tag, struct SOAP_ENV__Header *a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (struct SOAP_ENV__Header *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Header, sizeof(struct SOAP_ENV__Header), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_SOAP_ENV__Header(soap, a);
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Header *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Header, 0, sizeof(struct SOAP_ENV__Header), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Header(struct soap *soap, const struct SOAP_ENV__Header *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Header);
+	if (soap_out_SOAP_ENV__Header(soap, tag?tag:"SOAP-ENV:Header", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Header * SOAP_FMAC4 soap_get_SOAP_ENV__Header(struct soap *soap, struct SOAP_ENV__Header *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_SOAP_ENV__Header(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct SOAP_ENV__Header * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Header(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Header(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Header, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Header);
+		if (size)
+			*size = sizeof(struct SOAP_ENV__Header);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Header[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct SOAP_ENV__Header);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct SOAP_ENV__Header*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Header(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Header %p -> %p\n", q, p));
+	*(struct SOAP_ENV__Header*)p = *(struct SOAP_ENV__Header*)q;
+}
+
+#endif
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatafilesByParameterComparators(struct soap *soap, struct __ns1__searchDatafilesByParameterComparators *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchDatafilesByParameterComparators_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatafilesByParameterComparators(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparators *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchDatafilesByParameterComparators(soap, &a->ns1__searchDatafilesByParameterComparators_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatafilesByParameterComparators *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchDatafilesByParameterComparators(soap, "ns1:searchDatafilesByParameterComparators", -1, &a->ns1__searchDatafilesByParameterComparators_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_in___ns1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, struct __ns1__searchDatafilesByParameterComparators *a, const char *type)
+{
+	size_t soap_flag_ns1__searchDatafilesByParameterComparators_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchDatafilesByParameterComparators *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatafilesByParameterComparators, sizeof(struct __ns1__searchDatafilesByParameterComparators), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchDatafilesByParameterComparators(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchDatafilesByParameterComparators_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchDatafilesByParameterComparators(soap, "ns1:searchDatafilesByParameterComparators", &a->ns1__searchDatafilesByParameterComparators_, "ns1:searchDatafilesByParameterComparators"))
+				{	soap_flag_ns1__searchDatafilesByParameterComparators_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatafilesByParameterComparators(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparators *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchDatafilesByParameterComparators(soap, tag?tag:"-ns1:searchDatafilesByParameterComparators", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparators * SOAP_FMAC4 soap_get___ns1__searchDatafilesByParameterComparators(struct soap *soap, struct __ns1__searchDatafilesByParameterComparators *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchDatafilesByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchDatafilesByParameterComparators * SOAP_FMAC2 soap_instantiate___ns1__searchDatafilesByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatafilesByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatafilesByParameterComparators, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparators);
+		if (size)
+			*size = sizeof(struct __ns1__searchDatafilesByParameterComparators);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparators[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchDatafilesByParameterComparators);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchDatafilesByParameterComparators*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatafilesByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatafilesByParameterComparators %p -> %p\n", q, p));
+	*(struct __ns1__searchDatafilesByParameterComparators*)p = *(struct __ns1__searchDatafilesByParameterComparators*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatafilesByParameterComparator(struct soap *soap, struct __ns1__searchDatafilesByParameterComparator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchDatafilesByParameterComparator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatafilesByParameterComparator(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchDatafilesByParameterComparator(soap, &a->ns1__searchDatafilesByParameterComparator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatafilesByParameterComparator *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchDatafilesByParameterComparator(soap, "ns1:searchDatafilesByParameterComparator", -1, &a->ns1__searchDatafilesByParameterComparator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_in___ns1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, struct __ns1__searchDatafilesByParameterComparator *a, const char *type)
+{
+	size_t soap_flag_ns1__searchDatafilesByParameterComparator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchDatafilesByParameterComparator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatafilesByParameterComparator, sizeof(struct __ns1__searchDatafilesByParameterComparator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchDatafilesByParameterComparator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchDatafilesByParameterComparator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchDatafilesByParameterComparator(soap, "ns1:searchDatafilesByParameterComparator", &a->ns1__searchDatafilesByParameterComparator_, "ns1:searchDatafilesByParameterComparator"))
+				{	soap_flag_ns1__searchDatafilesByParameterComparator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatafilesByParameterComparator(struct soap *soap, const struct __ns1__searchDatafilesByParameterComparator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchDatafilesByParameterComparator(soap, tag?tag:"-ns1:searchDatafilesByParameterComparator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatafilesByParameterComparator * SOAP_FMAC4 soap_get___ns1__searchDatafilesByParameterComparator(struct soap *soap, struct __ns1__searchDatafilesByParameterComparator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchDatafilesByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchDatafilesByParameterComparator * SOAP_FMAC2 soap_instantiate___ns1__searchDatafilesByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatafilesByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatafilesByParameterComparator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparator);
+		if (size)
+			*size = sizeof(struct __ns1__searchDatafilesByParameterComparator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatafilesByParameterComparator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchDatafilesByParameterComparator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchDatafilesByParameterComparator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatafilesByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatafilesByParameterComparator %p -> %p\n", q, p));
+	*(struct __ns1__searchDatafilesByParameterComparator*)p = *(struct __ns1__searchDatafilesByParameterComparator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatasetsByParameterComparators(struct soap *soap, struct __ns1__searchDatasetsByParameterComparators *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchDatasetsByParameterComparators_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatasetsByParameterComparators(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparators *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchDatasetsByParameterComparators(soap, &a->ns1__searchDatasetsByParameterComparators_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatasetsByParameterComparators *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchDatasetsByParameterComparators(soap, "ns1:searchDatasetsByParameterComparators", -1, &a->ns1__searchDatasetsByParameterComparators_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_in___ns1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, struct __ns1__searchDatasetsByParameterComparators *a, const char *type)
+{
+	size_t soap_flag_ns1__searchDatasetsByParameterComparators_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchDatasetsByParameterComparators *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatasetsByParameterComparators, sizeof(struct __ns1__searchDatasetsByParameterComparators), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchDatasetsByParameterComparators(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchDatasetsByParameterComparators_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchDatasetsByParameterComparators(soap, "ns1:searchDatasetsByParameterComparators", &a->ns1__searchDatasetsByParameterComparators_, "ns1:searchDatasetsByParameterComparators"))
+				{	soap_flag_ns1__searchDatasetsByParameterComparators_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatasetsByParameterComparators(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparators *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchDatasetsByParameterComparators(soap, tag?tag:"-ns1:searchDatasetsByParameterComparators", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparators * SOAP_FMAC4 soap_get___ns1__searchDatasetsByParameterComparators(struct soap *soap, struct __ns1__searchDatasetsByParameterComparators *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchDatasetsByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchDatasetsByParameterComparators * SOAP_FMAC2 soap_instantiate___ns1__searchDatasetsByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatasetsByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatasetsByParameterComparators, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparators);
+		if (size)
+			*size = sizeof(struct __ns1__searchDatasetsByParameterComparators);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparators[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchDatasetsByParameterComparators);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchDatasetsByParameterComparators*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatasetsByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatasetsByParameterComparators %p -> %p\n", q, p));
+	*(struct __ns1__searchDatasetsByParameterComparators*)p = *(struct __ns1__searchDatasetsByParameterComparators*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatasetsByParameterComparator(struct soap *soap, struct __ns1__searchDatasetsByParameterComparator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchDatasetsByParameterComparator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatasetsByParameterComparator(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchDatasetsByParameterComparator(soap, &a->ns1__searchDatasetsByParameterComparator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatasetsByParameterComparator *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchDatasetsByParameterComparator(soap, "ns1:searchDatasetsByParameterComparator", -1, &a->ns1__searchDatasetsByParameterComparator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_in___ns1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, struct __ns1__searchDatasetsByParameterComparator *a, const char *type)
+{
+	size_t soap_flag_ns1__searchDatasetsByParameterComparator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchDatasetsByParameterComparator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatasetsByParameterComparator, sizeof(struct __ns1__searchDatasetsByParameterComparator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchDatasetsByParameterComparator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchDatasetsByParameterComparator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchDatasetsByParameterComparator(soap, "ns1:searchDatasetsByParameterComparator", &a->ns1__searchDatasetsByParameterComparator_, "ns1:searchDatasetsByParameterComparator"))
+				{	soap_flag_ns1__searchDatasetsByParameterComparator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatasetsByParameterComparator(struct soap *soap, const struct __ns1__searchDatasetsByParameterComparator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchDatasetsByParameterComparator(soap, tag?tag:"-ns1:searchDatasetsByParameterComparator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatasetsByParameterComparator * SOAP_FMAC4 soap_get___ns1__searchDatasetsByParameterComparator(struct soap *soap, struct __ns1__searchDatasetsByParameterComparator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchDatasetsByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchDatasetsByParameterComparator * SOAP_FMAC2 soap_instantiate___ns1__searchDatasetsByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatasetsByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatasetsByParameterComparator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparator);
+		if (size)
+			*size = sizeof(struct __ns1__searchDatasetsByParameterComparator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsByParameterComparator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchDatasetsByParameterComparator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchDatasetsByParameterComparator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatasetsByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatasetsByParameterComparator %p -> %p\n", q, p));
+	*(struct __ns1__searchDatasetsByParameterComparator*)p = *(struct __ns1__searchDatasetsByParameterComparator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByParameterComparators(struct soap *soap, struct __ns1__searchByParameterComparators *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByParameterComparators_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByParameterComparators(struct soap *soap, const struct __ns1__searchByParameterComparators *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByParameterComparators(soap, &a->ns1__searchByParameterComparators_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByParameterComparators(struct soap *soap, const char *tag, int id, const struct __ns1__searchByParameterComparators *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByParameterComparators(soap, "ns1:searchByParameterComparators", -1, &a->ns1__searchByParameterComparators_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByParameterComparators * SOAP_FMAC4 soap_in___ns1__searchByParameterComparators(struct soap *soap, const char *tag, struct __ns1__searchByParameterComparators *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByParameterComparators_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByParameterComparators *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByParameterComparators, sizeof(struct __ns1__searchByParameterComparators), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByParameterComparators(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByParameterComparators_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByParameterComparators(soap, "ns1:searchByParameterComparators", &a->ns1__searchByParameterComparators_, "ns1:searchByParameterComparators"))
+				{	soap_flag_ns1__searchByParameterComparators_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByParameterComparators(struct soap *soap, const struct __ns1__searchByParameterComparators *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByParameterComparators(soap, tag?tag:"-ns1:searchByParameterComparators", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByParameterComparators * SOAP_FMAC4 soap_get___ns1__searchByParameterComparators(struct soap *soap, struct __ns1__searchByParameterComparators *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByParameterComparators * SOAP_FMAC2 soap_instantiate___ns1__searchByParameterComparators(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByParameterComparators(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByParameterComparators, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparators);
+		if (size)
+			*size = sizeof(struct __ns1__searchByParameterComparators);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparators[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByParameterComparators);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByParameterComparators*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByParameterComparators(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByParameterComparators %p -> %p\n", q, p));
+	*(struct __ns1__searchByParameterComparators*)p = *(struct __ns1__searchByParameterComparators*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByParameterComparator(struct soap *soap, struct __ns1__searchByParameterComparator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByParameterComparator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByParameterComparator(struct soap *soap, const struct __ns1__searchByParameterComparator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByParameterComparator(soap, &a->ns1__searchByParameterComparator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByParameterComparator(struct soap *soap, const char *tag, int id, const struct __ns1__searchByParameterComparator *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByParameterComparator(soap, "ns1:searchByParameterComparator", -1, &a->ns1__searchByParameterComparator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByParameterComparator * SOAP_FMAC4 soap_in___ns1__searchByParameterComparator(struct soap *soap, const char *tag, struct __ns1__searchByParameterComparator *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByParameterComparator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByParameterComparator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByParameterComparator, sizeof(struct __ns1__searchByParameterComparator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByParameterComparator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByParameterComparator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByParameterComparator(soap, "ns1:searchByParameterComparator", &a->ns1__searchByParameterComparator_, "ns1:searchByParameterComparator"))
+				{	soap_flag_ns1__searchByParameterComparator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByParameterComparator(struct soap *soap, const struct __ns1__searchByParameterComparator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByParameterComparator(soap, tag?tag:"-ns1:searchByParameterComparator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByParameterComparator * SOAP_FMAC4 soap_get___ns1__searchByParameterComparator(struct soap *soap, struct __ns1__searchByParameterComparator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByParameterComparator * SOAP_FMAC2 soap_instantiate___ns1__searchByParameterComparator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByParameterComparator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByParameterComparator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparator);
+		if (size)
+			*size = sizeof(struct __ns1__searchByParameterComparator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterComparator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByParameterComparator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByParameterComparator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByParameterComparator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByParameterComparator %p -> %p\n", q, p));
+	*(struct __ns1__searchByParameterComparator*)p = *(struct __ns1__searchByParameterComparator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByParameterOperator(struct soap *soap, struct __ns1__searchByParameterOperator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByParameterOperator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByParameterOperator(struct soap *soap, const struct __ns1__searchByParameterOperator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByParameterOperator(soap, &a->ns1__searchByParameterOperator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByParameterOperator(struct soap *soap, const char *tag, int id, const struct __ns1__searchByParameterOperator *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByParameterOperator(soap, "ns1:searchByParameterOperator", -1, &a->ns1__searchByParameterOperator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByParameterOperator * SOAP_FMAC4 soap_in___ns1__searchByParameterOperator(struct soap *soap, const char *tag, struct __ns1__searchByParameterOperator *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByParameterOperator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByParameterOperator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByParameterOperator, sizeof(struct __ns1__searchByParameterOperator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByParameterOperator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByParameterOperator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByParameterOperator(soap, "ns1:searchByParameterOperator", &a->ns1__searchByParameterOperator_, "ns1:searchByParameterOperator"))
+				{	soap_flag_ns1__searchByParameterOperator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByParameterOperator(struct soap *soap, const struct __ns1__searchByParameterOperator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByParameterOperator(soap, tag?tag:"-ns1:searchByParameterOperator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByParameterOperator * SOAP_FMAC4 soap_get___ns1__searchByParameterOperator(struct soap *soap, struct __ns1__searchByParameterOperator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByParameterOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByParameterOperator * SOAP_FMAC2 soap_instantiate___ns1__searchByParameterOperator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByParameterOperator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByParameterOperator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterOperator);
+		if (size)
+			*size = sizeof(struct __ns1__searchByParameterOperator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByParameterOperator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByParameterOperator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByParameterOperator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByParameterOperator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByParameterOperator %p -> %p\n", q, p));
+	*(struct __ns1__searchByParameterOperator*)p = *(struct __ns1__searchByParameterOperator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__isSessionValid(struct soap *soap, struct __ns1__isSessionValid *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__isSessionValid_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__isSessionValid(struct soap *soap, const struct __ns1__isSessionValid *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__isSessionValid(soap, &a->ns1__isSessionValid_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__isSessionValid(struct soap *soap, const char *tag, int id, const struct __ns1__isSessionValid *a, const char *type)
+{
+	if (soap_out_PointerTons1__isSessionValid(soap, "ns1:isSessionValid", -1, &a->ns1__isSessionValid_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__isSessionValid * SOAP_FMAC4 soap_in___ns1__isSessionValid(struct soap *soap, const char *tag, struct __ns1__isSessionValid *a, const char *type)
+{
+	size_t soap_flag_ns1__isSessionValid_ = 1;
+	short soap_flag;
+	a = (struct __ns1__isSessionValid *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__isSessionValid, sizeof(struct __ns1__isSessionValid), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__isSessionValid(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__isSessionValid_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__isSessionValid(soap, "ns1:isSessionValid", &a->ns1__isSessionValid_, "ns1:isSessionValid"))
+				{	soap_flag_ns1__isSessionValid_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__isSessionValid(struct soap *soap, const struct __ns1__isSessionValid *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__isSessionValid(soap, tag?tag:"-ns1:isSessionValid", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__isSessionValid * SOAP_FMAC4 soap_get___ns1__isSessionValid(struct soap *soap, struct __ns1__isSessionValid *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__isSessionValid(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__isSessionValid * SOAP_FMAC2 soap_instantiate___ns1__isSessionValid(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__isSessionValid(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__isSessionValid, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__isSessionValid);
+		if (size)
+			*size = sizeof(struct __ns1__isSessionValid);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__isSessionValid[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__isSessionValid);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__isSessionValid*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__isSessionValid(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__isSessionValid %p -> %p\n", q, p));
+	*(struct __ns1__isSessionValid*)p = *(struct __ns1__isSessionValid*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getFacilityUserByFederalId(struct soap *soap, struct __ns1__getFacilityUserByFederalId *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getFacilityUserByFederalId_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getFacilityUserByFederalId(struct soap *soap, const struct __ns1__getFacilityUserByFederalId *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getFacilityUserByFederalId(soap, &a->ns1__getFacilityUserByFederalId_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, int id, const struct __ns1__getFacilityUserByFederalId *a, const char *type)
+{
+	if (soap_out_PointerTons1__getFacilityUserByFederalId(soap, "ns1:getFacilityUserByFederalId", -1, &a->ns1__getFacilityUserByFederalId_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_in___ns1__getFacilityUserByFederalId(struct soap *soap, const char *tag, struct __ns1__getFacilityUserByFederalId *a, const char *type)
+{
+	size_t soap_flag_ns1__getFacilityUserByFederalId_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getFacilityUserByFederalId *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getFacilityUserByFederalId, sizeof(struct __ns1__getFacilityUserByFederalId), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getFacilityUserByFederalId(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getFacilityUserByFederalId_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getFacilityUserByFederalId(soap, "ns1:getFacilityUserByFederalId", &a->ns1__getFacilityUserByFederalId_, "ns1:getFacilityUserByFederalId"))
+				{	soap_flag_ns1__getFacilityUserByFederalId_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getFacilityUserByFederalId(struct soap *soap, const struct __ns1__getFacilityUserByFederalId *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getFacilityUserByFederalId(soap, tag?tag:"-ns1:getFacilityUserByFederalId", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getFacilityUserByFederalId * SOAP_FMAC4 soap_get___ns1__getFacilityUserByFederalId(struct soap *soap, struct __ns1__getFacilityUserByFederalId *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getFacilityUserByFederalId(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getFacilityUserByFederalId * SOAP_FMAC2 soap_instantiate___ns1__getFacilityUserByFederalId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getFacilityUserByFederalId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getFacilityUserByFederalId, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFederalId);
+		if (size)
+			*size = sizeof(struct __ns1__getFacilityUserByFederalId);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFederalId[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getFacilityUserByFederalId);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getFacilityUserByFederalId*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getFacilityUserByFederalId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getFacilityUserByFederalId %p -> %p\n", q, p));
+	*(struct __ns1__getFacilityUserByFederalId*)p = *(struct __ns1__getFacilityUserByFederalId*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getFacilityUserByFacilityUserId(struct soap *soap, struct __ns1__getFacilityUserByFacilityUserId *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getFacilityUserByFacilityUserId_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const struct __ns1__getFacilityUserByFacilityUserId *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getFacilityUserByFacilityUserId(soap, &a->ns1__getFacilityUserByFacilityUserId_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, int id, const struct __ns1__getFacilityUserByFacilityUserId *a, const char *type)
+{
+	if (soap_out_PointerTons1__getFacilityUserByFacilityUserId(soap, "ns1:getFacilityUserByFacilityUserId", -1, &a->ns1__getFacilityUserByFacilityUserId_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_in___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, struct __ns1__getFacilityUserByFacilityUserId *a, const char *type)
+{
+	size_t soap_flag_ns1__getFacilityUserByFacilityUserId_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getFacilityUserByFacilityUserId *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getFacilityUserByFacilityUserId, sizeof(struct __ns1__getFacilityUserByFacilityUserId), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getFacilityUserByFacilityUserId(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getFacilityUserByFacilityUserId_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getFacilityUserByFacilityUserId(soap, "ns1:getFacilityUserByFacilityUserId", &a->ns1__getFacilityUserByFacilityUserId_, "ns1:getFacilityUserByFacilityUserId"))
+				{	soap_flag_ns1__getFacilityUserByFacilityUserId_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getFacilityUserByFacilityUserId(struct soap *soap, const struct __ns1__getFacilityUserByFacilityUserId *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getFacilityUserByFacilityUserId(soap, tag?tag:"-ns1:getFacilityUserByFacilityUserId", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getFacilityUserByFacilityUserId * SOAP_FMAC4 soap_get___ns1__getFacilityUserByFacilityUserId(struct soap *soap, struct __ns1__getFacilityUserByFacilityUserId *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getFacilityUserByFacilityUserId(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getFacilityUserByFacilityUserId * SOAP_FMAC2 soap_instantiate___ns1__getFacilityUserByFacilityUserId(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getFacilityUserByFacilityUserId(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getFacilityUserByFacilityUserId, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFacilityUserId);
+		if (size)
+			*size = sizeof(struct __ns1__getFacilityUserByFacilityUserId);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getFacilityUserByFacilityUserId[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getFacilityUserByFacilityUserId);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getFacilityUserByFacilityUserId*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getFacilityUserByFacilityUserId(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getFacilityUserByFacilityUserId %p -> %p\n", q, p));
+	*(struct __ns1__getFacilityUserByFacilityUserId*)p = *(struct __ns1__getFacilityUserByFacilityUserId*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getICATAPIVersion(struct soap *soap, struct __ns1__getICATAPIVersion *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getICATAPIVersion_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getICATAPIVersion(struct soap *soap, const struct __ns1__getICATAPIVersion *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getICATAPIVersion(soap, &a->ns1__getICATAPIVersion_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getICATAPIVersion(struct soap *soap, const char *tag, int id, const struct __ns1__getICATAPIVersion *a, const char *type)
+{
+	if (soap_out_PointerTons1__getICATAPIVersion(soap, "ns1:getICATAPIVersion", -1, &a->ns1__getICATAPIVersion_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getICATAPIVersion * SOAP_FMAC4 soap_in___ns1__getICATAPIVersion(struct soap *soap, const char *tag, struct __ns1__getICATAPIVersion *a, const char *type)
+{
+	size_t soap_flag_ns1__getICATAPIVersion_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getICATAPIVersion *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getICATAPIVersion, sizeof(struct __ns1__getICATAPIVersion), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getICATAPIVersion(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getICATAPIVersion_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getICATAPIVersion(soap, "ns1:getICATAPIVersion", &a->ns1__getICATAPIVersion_, "ns1:getICATAPIVersion"))
+				{	soap_flag_ns1__getICATAPIVersion_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getICATAPIVersion(struct soap *soap, const struct __ns1__getICATAPIVersion *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getICATAPIVersion(soap, tag?tag:"-ns1:getICATAPIVersion", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getICATAPIVersion * SOAP_FMAC4 soap_get___ns1__getICATAPIVersion(struct soap *soap, struct __ns1__getICATAPIVersion *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getICATAPIVersion(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getICATAPIVersion * SOAP_FMAC2 soap_instantiate___ns1__getICATAPIVersion(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getICATAPIVersion(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getICATAPIVersion, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getICATAPIVersion);
+		if (size)
+			*size = sizeof(struct __ns1__getICATAPIVersion);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getICATAPIVersion[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getICATAPIVersion);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getICATAPIVersion*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getICATAPIVersion(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getICATAPIVersion %p -> %p\n", q, p));
+	*(struct __ns1__getICATAPIVersion*)p = *(struct __ns1__getICATAPIVersion*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__ingestMetadata(struct soap *soap, struct __ns1__ingestMetadata *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__ingestMetadata_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__ingestMetadata(struct soap *soap, const struct __ns1__ingestMetadata *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__ingestMetadata(soap, &a->ns1__ingestMetadata_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__ingestMetadata(struct soap *soap, const char *tag, int id, const struct __ns1__ingestMetadata *a, const char *type)
+{
+	if (soap_out_PointerTons1__ingestMetadata(soap, "ns1:ingestMetadata", -1, &a->ns1__ingestMetadata_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__ingestMetadata * SOAP_FMAC4 soap_in___ns1__ingestMetadata(struct soap *soap, const char *tag, struct __ns1__ingestMetadata *a, const char *type)
+{
+	size_t soap_flag_ns1__ingestMetadata_ = 1;
+	short soap_flag;
+	a = (struct __ns1__ingestMetadata *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__ingestMetadata, sizeof(struct __ns1__ingestMetadata), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__ingestMetadata(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__ingestMetadata_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__ingestMetadata(soap, "ns1:ingestMetadata", &a->ns1__ingestMetadata_, "ns1:ingestMetadata"))
+				{	soap_flag_ns1__ingestMetadata_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__ingestMetadata(struct soap *soap, const struct __ns1__ingestMetadata *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__ingestMetadata(soap, tag?tag:"-ns1:ingestMetadata", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__ingestMetadata * SOAP_FMAC4 soap_get___ns1__ingestMetadata(struct soap *soap, struct __ns1__ingestMetadata *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__ingestMetadata(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__ingestMetadata * SOAP_FMAC2 soap_instantiate___ns1__ingestMetadata(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__ingestMetadata(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__ingestMetadata, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__ingestMetadata);
+		if (size)
+			*size = sizeof(struct __ns1__ingestMetadata);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__ingestMetadata[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__ingestMetadata);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__ingestMetadata*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__ingestMetadata(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__ingestMetadata %p -> %p\n", q, p));
+	*(struct __ns1__ingestMetadata*)p = *(struct __ns1__ingestMetadata*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSetParameter(struct soap *soap, struct __ns1__removeDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataSetParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSetParameter(struct soap *soap, const struct __ns1__removeDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataSetParameter(soap, &a->ns1__removeDataSetParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSetParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeDataSetParameter(soap, "ns1:removeDataSetParameter", -1, &a->ns1__removeDataSetParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSetParameter * SOAP_FMAC4 soap_in___ns1__removeDataSetParameter(struct soap *soap, const char *tag, struct __ns1__removeDataSetParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataSetParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSetParameter, sizeof(struct __ns1__removeDataSetParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataSetParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataSetParameter(soap, "ns1:removeDataSetParameter", &a->ns1__removeDataSetParameter_, "ns1:removeDataSetParameter"))
+				{	soap_flag_ns1__removeDataSetParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSetParameter(struct soap *soap, const struct __ns1__removeDataSetParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataSetParameter(soap, tag?tag:"-ns1:removeDataSetParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSetParameter * SOAP_FMAC4 soap_get___ns1__removeDataSetParameter(struct soap *soap, struct __ns1__removeDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__removeDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameter);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataSetParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataSetParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSetParameter %p -> %p\n", q, p));
+	*(struct __ns1__removeDataSetParameter*)p = *(struct __ns1__removeDataSetParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSetParameterResponse(struct soap *soap, struct __ns1__removeDataSetParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataSetParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSetParameterResponse(struct soap *soap, const struct __ns1__removeDataSetParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataSetParameterResponse(soap, &a->ns1__removeDataSetParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSetParameterResponse *a, const char *type)
+{
+	if (a->ns1__removeDataSetParameterResponse_)
+		soap_element_result(soap, "ns1:removeDataSetParameterResponse");
+	if (soap_out_PointerTons1__removeDataSetParameterResponse(soap, "ns1:removeDataSetParameterResponse", -1, &a->ns1__removeDataSetParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_in___ns1__removeDataSetParameterResponse(struct soap *soap, const char *tag, struct __ns1__removeDataSetParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataSetParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataSetParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSetParameterResponse, sizeof(struct __ns1__removeDataSetParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataSetParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataSetParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataSetParameterResponse(soap, "ns1:removeDataSetParameterResponse", &a->ns1__removeDataSetParameterResponse_, "ns1:removeDataSetParameterResponse"))
+				{	soap_flag_ns1__removeDataSetParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeDataSetParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSetParameterResponse(struct soap *soap, const struct __ns1__removeDataSetParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataSetParameterResponse(soap, tag?tag:"-ns1:removeDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSetParameterResponse * SOAP_FMAC4 soap_get___ns1__removeDataSetParameterResponse(struct soap *soap, struct __ns1__removeDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataSetParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataSetParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataSetParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSetParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeDataSetParameterResponse*)p = *(struct __ns1__removeDataSetParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSet(struct soap *soap, struct __ns1__removeDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataSet_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSet(struct soap *soap, const struct __ns1__removeDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataSet(soap, &a->ns1__removeDataSet_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSet *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeDataSet(soap, "ns1:removeDataSet", -1, &a->ns1__removeDataSet_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSet * SOAP_FMAC4 soap_in___ns1__removeDataSet(struct soap *soap, const char *tag, struct __ns1__removeDataSet *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataSet_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSet, sizeof(struct __ns1__removeDataSet), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataSet(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataSet_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataSet(soap, "ns1:removeDataSet", &a->ns1__removeDataSet_, "ns1:removeDataSet"))
+				{	soap_flag_ns1__removeDataSet_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSet(struct soap *soap, const struct __ns1__removeDataSet *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataSet(soap, tag?tag:"-ns1:removeDataSet", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSet * SOAP_FMAC4 soap_get___ns1__removeDataSet(struct soap *soap, struct __ns1__removeDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataSet * SOAP_FMAC2 soap_instantiate___ns1__removeDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSet);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataSet);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataSet);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSet %p -> %p\n", q, p));
+	*(struct __ns1__removeDataSet*)p = *(struct __ns1__removeDataSet*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataSetResponse(struct soap *soap, struct __ns1__removeDataSetResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataSetResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataSetResponse(struct soap *soap, const struct __ns1__removeDataSetResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataSetResponse(soap, &a->ns1__removeDataSetResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataSetResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataSetResponse *a, const char *type)
+{
+	if (a->ns1__removeDataSetResponse_)
+		soap_element_result(soap, "ns1:removeDataSetResponse");
+	if (soap_out_PointerTons1__removeDataSetResponse(soap, "ns1:removeDataSetResponse", -1, &a->ns1__removeDataSetResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSetResponse * SOAP_FMAC4 soap_in___ns1__removeDataSetResponse(struct soap *soap, const char *tag, struct __ns1__removeDataSetResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataSetResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataSetResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataSetResponse, sizeof(struct __ns1__removeDataSetResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataSetResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataSetResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataSetResponse(soap, "ns1:removeDataSetResponse", &a->ns1__removeDataSetResponse_, "ns1:removeDataSetResponse"))
+				{	soap_flag_ns1__removeDataSetResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeDataSetResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataSetResponse(struct soap *soap, const struct __ns1__removeDataSetResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataSetResponse(soap, tag?tag:"-ns1:removeDataSetResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataSetResponse * SOAP_FMAC4 soap_get___ns1__removeDataSetResponse(struct soap *soap, struct __ns1__removeDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataSetResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataSetResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataSetResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataSetResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeDataSetResponse*)p = *(struct __ns1__removeDataSetResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataSetParameters(struct soap *soap, struct __ns1__addDataSetParameters *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addDataSetParameters_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataSetParameters(struct soap *soap, const struct __ns1__addDataSetParameters *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addDataSetParameters(soap, &a->ns1__addDataSetParameters_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataSetParameters(struct soap *soap, const char *tag, int id, const struct __ns1__addDataSetParameters *a, const char *type)
+{
+	if (soap_out_PointerTons1__addDataSetParameters(soap, "ns1:addDataSetParameters", -1, &a->ns1__addDataSetParameters_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataSetParameters * SOAP_FMAC4 soap_in___ns1__addDataSetParameters(struct soap *soap, const char *tag, struct __ns1__addDataSetParameters *a, const char *type)
+{
+	size_t soap_flag_ns1__addDataSetParameters_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addDataSetParameters *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataSetParameters, sizeof(struct __ns1__addDataSetParameters), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addDataSetParameters(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addDataSetParameters_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addDataSetParameters(soap, "ns1:addDataSetParameters", &a->ns1__addDataSetParameters_, "ns1:addDataSetParameters"))
+				{	soap_flag_ns1__addDataSetParameters_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataSetParameters(struct soap *soap, const struct __ns1__addDataSetParameters *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addDataSetParameters(soap, tag?tag:"-ns1:addDataSetParameters", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataSetParameters * SOAP_FMAC4 soap_get___ns1__addDataSetParameters(struct soap *soap, struct __ns1__addDataSetParameters *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addDataSetParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addDataSetParameters * SOAP_FMAC2 soap_instantiate___ns1__addDataSetParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataSetParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataSetParameters, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameters);
+		if (size)
+			*size = sizeof(struct __ns1__addDataSetParameters);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameters[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addDataSetParameters);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addDataSetParameters*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataSetParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataSetParameters %p -> %p\n", q, p));
+	*(struct __ns1__addDataSetParameters*)p = *(struct __ns1__addDataSetParameters*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataSetParameter(struct soap *soap, struct __ns1__addDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addDataSetParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataSetParameter(struct soap *soap, const struct __ns1__addDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addDataSetParameter(soap, &a->ns1__addDataSetParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__addDataSetParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__addDataSetParameter(soap, "ns1:addDataSetParameter", -1, &a->ns1__addDataSetParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataSetParameter * SOAP_FMAC4 soap_in___ns1__addDataSetParameter(struct soap *soap, const char *tag, struct __ns1__addDataSetParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__addDataSetParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataSetParameter, sizeof(struct __ns1__addDataSetParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addDataSetParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addDataSetParameter(soap, "ns1:addDataSetParameter", &a->ns1__addDataSetParameter_, "ns1:addDataSetParameter"))
+				{	soap_flag_ns1__addDataSetParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataSetParameter(struct soap *soap, const struct __ns1__addDataSetParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addDataSetParameter(soap, tag?tag:"-ns1:addDataSetParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataSetParameter * SOAP_FMAC4 soap_get___ns1__addDataSetParameter(struct soap *soap, struct __ns1__addDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__addDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameter);
+		if (size)
+			*size = sizeof(struct __ns1__addDataSetParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addDataSetParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataSetParameter %p -> %p\n", q, p));
+	*(struct __ns1__addDataSetParameter*)p = *(struct __ns1__addDataSetParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__setDataSetSample(struct soap *soap, struct __ns1__setDataSetSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__setDataSetSample_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__setDataSetSample(struct soap *soap, const struct __ns1__setDataSetSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__setDataSetSample(soap, &a->ns1__setDataSetSample_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__setDataSetSample(struct soap *soap, const char *tag, int id, const struct __ns1__setDataSetSample *a, const char *type)
+{
+	if (soap_out_PointerTons1__setDataSetSample(soap, "ns1:setDataSetSample", -1, &a->ns1__setDataSetSample_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__setDataSetSample * SOAP_FMAC4 soap_in___ns1__setDataSetSample(struct soap *soap, const char *tag, struct __ns1__setDataSetSample *a, const char *type)
+{
+	size_t soap_flag_ns1__setDataSetSample_ = 1;
+	short soap_flag;
+	a = (struct __ns1__setDataSetSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__setDataSetSample, sizeof(struct __ns1__setDataSetSample), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__setDataSetSample(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__setDataSetSample_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__setDataSetSample(soap, "ns1:setDataSetSample", &a->ns1__setDataSetSample_, "ns1:setDataSetSample"))
+				{	soap_flag_ns1__setDataSetSample_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__setDataSetSample(struct soap *soap, const struct __ns1__setDataSetSample *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__setDataSetSample(soap, tag?tag:"-ns1:setDataSetSample", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__setDataSetSample * SOAP_FMAC4 soap_get___ns1__setDataSetSample(struct soap *soap, struct __ns1__setDataSetSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__setDataSetSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__setDataSetSample * SOAP_FMAC2 soap_instantiate___ns1__setDataSetSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__setDataSetSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__setDataSetSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSample);
+		if (size)
+			*size = sizeof(struct __ns1__setDataSetSample);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__setDataSetSample);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__setDataSetSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__setDataSetSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__setDataSetSample %p -> %p\n", q, p));
+	*(struct __ns1__setDataSetSample*)p = *(struct __ns1__setDataSetSample*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__setDataSetSampleResponse(struct soap *soap, struct __ns1__setDataSetSampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__setDataSetSampleResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__setDataSetSampleResponse(struct soap *soap, const struct __ns1__setDataSetSampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__setDataSetSampleResponse(soap, &a->ns1__setDataSetSampleResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__setDataSetSampleResponse *a, const char *type)
+{
+	if (a->ns1__setDataSetSampleResponse_)
+		soap_element_result(soap, "ns1:setDataSetSampleResponse");
+	if (soap_out_PointerTons1__setDataSetSampleResponse(soap, "ns1:setDataSetSampleResponse", -1, &a->ns1__setDataSetSampleResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_in___ns1__setDataSetSampleResponse(struct soap *soap, const char *tag, struct __ns1__setDataSetSampleResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__setDataSetSampleResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__setDataSetSampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__setDataSetSampleResponse, sizeof(struct __ns1__setDataSetSampleResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__setDataSetSampleResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__setDataSetSampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__setDataSetSampleResponse(soap, "ns1:setDataSetSampleResponse", &a->ns1__setDataSetSampleResponse_, "ns1:setDataSetSampleResponse"))
+				{	soap_flag_ns1__setDataSetSampleResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:setDataSetSampleResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__setDataSetSampleResponse(struct soap *soap, const struct __ns1__setDataSetSampleResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__setDataSetSampleResponse(soap, tag?tag:"-ns1:setDataSetSampleResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__setDataSetSampleResponse * SOAP_FMAC4 soap_get___ns1__setDataSetSampleResponse(struct soap *soap, struct __ns1__setDataSetSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__setDataSetSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__setDataSetSampleResponse * SOAP_FMAC2 soap_instantiate___ns1__setDataSetSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__setDataSetSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__setDataSetSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSampleResponse);
+		if (size)
+			*size = sizeof(struct __ns1__setDataSetSampleResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__setDataSetSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__setDataSetSampleResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__setDataSetSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__setDataSetSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__setDataSetSampleResponse %p -> %p\n", q, p));
+	*(struct __ns1__setDataSetSampleResponse*)p = *(struct __ns1__setDataSetSampleResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSetParameter(struct soap *soap, struct __ns1__modifyDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataSetParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSetParameter(struct soap *soap, const struct __ns1__modifyDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataSetParameter(soap, &a->ns1__modifyDataSetParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSetParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyDataSetParameter(soap, "ns1:modifyDataSetParameter", -1, &a->ns1__modifyDataSetParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSetParameter * SOAP_FMAC4 soap_in___ns1__modifyDataSetParameter(struct soap *soap, const char *tag, struct __ns1__modifyDataSetParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataSetParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSetParameter, sizeof(struct __ns1__modifyDataSetParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataSetParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataSetParameter(soap, "ns1:modifyDataSetParameter", &a->ns1__modifyDataSetParameter_, "ns1:modifyDataSetParameter"))
+				{	soap_flag_ns1__modifyDataSetParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSetParameter(struct soap *soap, const struct __ns1__modifyDataSetParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataSetParameter(soap, tag?tag:"-ns1:modifyDataSetParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSetParameter * SOAP_FMAC4 soap_get___ns1__modifyDataSetParameter(struct soap *soap, struct __ns1__modifyDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameter);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataSetParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataSetParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSetParameter %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataSetParameter*)p = *(struct __ns1__modifyDataSetParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSetParameterResponse(struct soap *soap, struct __ns1__modifyDataSetParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataSetParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSetParameterResponse(struct soap *soap, const struct __ns1__modifyDataSetParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataSetParameterResponse(soap, &a->ns1__modifyDataSetParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSetParameterResponse *a, const char *type)
+{
+	if (a->ns1__modifyDataSetParameterResponse_)
+		soap_element_result(soap, "ns1:modifyDataSetParameterResponse");
+	if (soap_out_PointerTons1__modifyDataSetParameterResponse(soap, "ns1:modifyDataSetParameterResponse", -1, &a->ns1__modifyDataSetParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_in___ns1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataSetParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataSetParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataSetParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSetParameterResponse, sizeof(struct __ns1__modifyDataSetParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataSetParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataSetParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataSetParameterResponse(soap, "ns1:modifyDataSetParameterResponse", &a->ns1__modifyDataSetParameterResponse_, "ns1:modifyDataSetParameterResponse"))
+				{	soap_flag_ns1__modifyDataSetParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyDataSetParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSetParameterResponse(struct soap *soap, const struct __ns1__modifyDataSetParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataSetParameterResponse(soap, tag?tag:"-ns1:modifyDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSetParameterResponse * SOAP_FMAC4 soap_get___ns1__modifyDataSetParameterResponse(struct soap *soap, struct __ns1__modifyDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataSetParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataSetParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataSetParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSetParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataSetParameterResponse*)p = *(struct __ns1__modifyDataSetParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSet(struct soap *soap, struct __ns1__modifyDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataSet_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSet(struct soap *soap, const struct __ns1__modifyDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataSet(soap, &a->ns1__modifyDataSet_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSet *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyDataSet(soap, "ns1:modifyDataSet", -1, &a->ns1__modifyDataSet_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSet * SOAP_FMAC4 soap_in___ns1__modifyDataSet(struct soap *soap, const char *tag, struct __ns1__modifyDataSet *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataSet_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSet, sizeof(struct __ns1__modifyDataSet), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataSet(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataSet_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataSet(soap, "ns1:modifyDataSet", &a->ns1__modifyDataSet_, "ns1:modifyDataSet"))
+				{	soap_flag_ns1__modifyDataSet_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSet(struct soap *soap, const struct __ns1__modifyDataSet *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataSet(soap, tag?tag:"-ns1:modifyDataSet", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSet * SOAP_FMAC4 soap_get___ns1__modifyDataSet(struct soap *soap, struct __ns1__modifyDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataSet * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSet);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataSet);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataSet);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSet %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataSet*)p = *(struct __ns1__modifyDataSet*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataSetResponse(struct soap *soap, struct __ns1__modifyDataSetResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataSetResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataSetResponse(struct soap *soap, const struct __ns1__modifyDataSetResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataSetResponse(soap, &a->ns1__modifyDataSetResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataSetResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataSetResponse *a, const char *type)
+{
+	if (a->ns1__modifyDataSetResponse_)
+		soap_element_result(soap, "ns1:modifyDataSetResponse");
+	if (soap_out_PointerTons1__modifyDataSetResponse(soap, "ns1:modifyDataSetResponse", -1, &a->ns1__modifyDataSetResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSetResponse * SOAP_FMAC4 soap_in___ns1__modifyDataSetResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataSetResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataSetResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataSetResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataSetResponse, sizeof(struct __ns1__modifyDataSetResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataSetResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataSetResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataSetResponse(soap, "ns1:modifyDataSetResponse", &a->ns1__modifyDataSetResponse_, "ns1:modifyDataSetResponse"))
+				{	soap_flag_ns1__modifyDataSetResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyDataSetResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataSetResponse(struct soap *soap, const struct __ns1__modifyDataSetResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataSetResponse(soap, tag?tag:"-ns1:modifyDataSetResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataSetResponse * SOAP_FMAC4 soap_get___ns1__modifyDataSetResponse(struct soap *soap, struct __ns1__modifyDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataSetResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataSetResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataSetResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataSetResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataSetResponse*)p = *(struct __ns1__modifyDataSetResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSetParameter(struct soap *soap, struct __ns1__deleteDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataSetParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSetParameter(struct soap *soap, const struct __ns1__deleteDataSetParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataSetParameter(soap, &a->ns1__deleteDataSetParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSetParameter(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSetParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteDataSetParameter(soap, "ns1:deleteDataSetParameter", -1, &a->ns1__deleteDataSetParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSetParameter * SOAP_FMAC4 soap_in___ns1__deleteDataSetParameter(struct soap *soap, const char *tag, struct __ns1__deleteDataSetParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataSetParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataSetParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSetParameter, sizeof(struct __ns1__deleteDataSetParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataSetParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataSetParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataSetParameter(soap, "ns1:deleteDataSetParameter", &a->ns1__deleteDataSetParameter_, "ns1:deleteDataSetParameter"))
+				{	soap_flag_ns1__deleteDataSetParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSetParameter(struct soap *soap, const struct __ns1__deleteDataSetParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataSetParameter(soap, tag?tag:"-ns1:deleteDataSetParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSetParameter * SOAP_FMAC4 soap_get___ns1__deleteDataSetParameter(struct soap *soap, struct __ns1__deleteDataSetParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataSetParameter * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameter);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataSetParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataSetParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataSetParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSetParameter %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataSetParameter*)p = *(struct __ns1__deleteDataSetParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSetParameterResponse(struct soap *soap, struct __ns1__deleteDataSetParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataSetParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSetParameterResponse(struct soap *soap, const struct __ns1__deleteDataSetParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataSetParameterResponse(soap, &a->ns1__deleteDataSetParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSetParameterResponse *a, const char *type)
+{
+	if (a->ns1__deleteDataSetParameterResponse_)
+		soap_element_result(soap, "ns1:deleteDataSetParameterResponse");
+	if (soap_out_PointerTons1__deleteDataSetParameterResponse(soap, "ns1:deleteDataSetParameterResponse", -1, &a->ns1__deleteDataSetParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_in___ns1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataSetParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataSetParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataSetParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSetParameterResponse, sizeof(struct __ns1__deleteDataSetParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataSetParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataSetParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataSetParameterResponse(soap, "ns1:deleteDataSetParameterResponse", &a->ns1__deleteDataSetParameterResponse_, "ns1:deleteDataSetParameterResponse"))
+				{	soap_flag_ns1__deleteDataSetParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteDataSetParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSetParameterResponse(struct soap *soap, const struct __ns1__deleteDataSetParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataSetParameterResponse(soap, tag?tag:"-ns1:deleteDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSetParameterResponse * SOAP_FMAC4 soap_get___ns1__deleteDataSetParameterResponse(struct soap *soap, struct __ns1__deleteDataSetParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataSetParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSetParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSetParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSetParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataSetParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataSetParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataSetParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSetParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSetParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataSetParameterResponse*)p = *(struct __ns1__deleteDataSetParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSet(struct soap *soap, struct __ns1__deleteDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataSet_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSet(struct soap *soap, const struct __ns1__deleteDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataSet(soap, &a->ns1__deleteDataSet_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSet *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteDataSet(soap, "ns1:deleteDataSet", -1, &a->ns1__deleteDataSet_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSet * SOAP_FMAC4 soap_in___ns1__deleteDataSet(struct soap *soap, const char *tag, struct __ns1__deleteDataSet *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataSet_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSet, sizeof(struct __ns1__deleteDataSet), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataSet(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataSet_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataSet(soap, "ns1:deleteDataSet", &a->ns1__deleteDataSet_, "ns1:deleteDataSet"))
+				{	soap_flag_ns1__deleteDataSet_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSet(struct soap *soap, const struct __ns1__deleteDataSet *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataSet(soap, tag?tag:"-ns1:deleteDataSet", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSet * SOAP_FMAC4 soap_get___ns1__deleteDataSet(struct soap *soap, struct __ns1__deleteDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataSet * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSet);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataSet);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataSet);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSet %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataSet*)p = *(struct __ns1__deleteDataSet*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataSetResponse(struct soap *soap, struct __ns1__deleteDataSetResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataSetResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataSetResponse(struct soap *soap, const struct __ns1__deleteDataSetResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataSetResponse(soap, &a->ns1__deleteDataSetResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataSetResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataSetResponse *a, const char *type)
+{
+	if (a->ns1__deleteDataSetResponse_)
+		soap_element_result(soap, "ns1:deleteDataSetResponse");
+	if (soap_out_PointerTons1__deleteDataSetResponse(soap, "ns1:deleteDataSetResponse", -1, &a->ns1__deleteDataSetResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSetResponse * SOAP_FMAC4 soap_in___ns1__deleteDataSetResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataSetResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataSetResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataSetResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataSetResponse, sizeof(struct __ns1__deleteDataSetResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataSetResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataSetResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataSetResponse(soap, "ns1:deleteDataSetResponse", &a->ns1__deleteDataSetResponse_, "ns1:deleteDataSetResponse"))
+				{	soap_flag_ns1__deleteDataSetResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteDataSetResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataSetResponse(struct soap *soap, const struct __ns1__deleteDataSetResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataSetResponse(soap, tag?tag:"-ns1:deleteDataSetResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataSetResponse * SOAP_FMAC4 soap_get___ns1__deleteDataSetResponse(struct soap *soap, struct __ns1__deleteDataSetResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataSetResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataSetResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataSetResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataSetResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataSetResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataSetResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataSetResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataSetResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataSetResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataSetResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataSetResponse*)p = *(struct __ns1__deleteDataSetResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataSets(struct soap *soap, struct __ns1__createDataSets *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__createDataSets_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataSets(struct soap *soap, const struct __ns1__createDataSets *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__createDataSets(soap, &a->ns1__createDataSets_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataSets(struct soap *soap, const char *tag, int id, const struct __ns1__createDataSets *a, const char *type)
+{
+	if (soap_out_PointerTons1__createDataSets(soap, "ns1:createDataSets", -1, &a->ns1__createDataSets_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataSets * SOAP_FMAC4 soap_in___ns1__createDataSets(struct soap *soap, const char *tag, struct __ns1__createDataSets *a, const char *type)
+{
+	size_t soap_flag_ns1__createDataSets_ = 1;
+	short soap_flag;
+	a = (struct __ns1__createDataSets *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataSets, sizeof(struct __ns1__createDataSets), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__createDataSets(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__createDataSets_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__createDataSets(soap, "ns1:createDataSets", &a->ns1__createDataSets_, "ns1:createDataSets"))
+				{	soap_flag_ns1__createDataSets_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataSets(struct soap *soap, const struct __ns1__createDataSets *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__createDataSets(soap, tag?tag:"-ns1:createDataSets", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataSets * SOAP_FMAC4 soap_get___ns1__createDataSets(struct soap *soap, struct __ns1__createDataSets *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__createDataSets(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__createDataSets * SOAP_FMAC2 soap_instantiate___ns1__createDataSets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataSets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataSets, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSets);
+		if (size)
+			*size = sizeof(struct __ns1__createDataSets);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSets[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__createDataSets);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__createDataSets*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataSets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataSets %p -> %p\n", q, p));
+	*(struct __ns1__createDataSets*)p = *(struct __ns1__createDataSets*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataSet(struct soap *soap, struct __ns1__createDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__createDataSet_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataSet(struct soap *soap, const struct __ns1__createDataSet *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__createDataSet(soap, &a->ns1__createDataSet_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataSet(struct soap *soap, const char *tag, int id, const struct __ns1__createDataSet *a, const char *type)
+{
+	if (soap_out_PointerTons1__createDataSet(soap, "ns1:createDataSet", -1, &a->ns1__createDataSet_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataSet * SOAP_FMAC4 soap_in___ns1__createDataSet(struct soap *soap, const char *tag, struct __ns1__createDataSet *a, const char *type)
+{
+	size_t soap_flag_ns1__createDataSet_ = 1;
+	short soap_flag;
+	a = (struct __ns1__createDataSet *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataSet, sizeof(struct __ns1__createDataSet), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__createDataSet(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__createDataSet_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__createDataSet(soap, "ns1:createDataSet", &a->ns1__createDataSet_, "ns1:createDataSet"))
+				{	soap_flag_ns1__createDataSet_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataSet(struct soap *soap, const struct __ns1__createDataSet *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__createDataSet(soap, tag?tag:"-ns1:createDataSet", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataSet * SOAP_FMAC4 soap_get___ns1__createDataSet(struct soap *soap, struct __ns1__createDataSet *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__createDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__createDataSet * SOAP_FMAC2 soap_instantiate___ns1__createDataSet(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataSet(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataSet, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSet);
+		if (size)
+			*size = sizeof(struct __ns1__createDataSet);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataSet[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__createDataSet);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__createDataSet*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataSet(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataSet %p -> %p\n", q, p));
+	*(struct __ns1__createDataSet*)p = *(struct __ns1__createDataSet*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatasets(struct soap *soap, struct __ns1__getDatasets *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getDatasets_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatasets(struct soap *soap, const struct __ns1__getDatasets *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getDatasets(soap, &a->ns1__getDatasets_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatasets(struct soap *soap, const char *tag, int id, const struct __ns1__getDatasets *a, const char *type)
+{
+	if (soap_out_PointerTons1__getDatasets(soap, "ns1:getDatasets", -1, &a->ns1__getDatasets_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatasets * SOAP_FMAC4 soap_in___ns1__getDatasets(struct soap *soap, const char *tag, struct __ns1__getDatasets *a, const char *type)
+{
+	size_t soap_flag_ns1__getDatasets_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getDatasets *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatasets, sizeof(struct __ns1__getDatasets), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getDatasets(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getDatasets_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getDatasets(soap, "ns1:getDatasets", &a->ns1__getDatasets_, "ns1:getDatasets"))
+				{	soap_flag_ns1__getDatasets_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatasets(struct soap *soap, const struct __ns1__getDatasets *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getDatasets(soap, tag?tag:"-ns1:getDatasets", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatasets * SOAP_FMAC4 soap_get___ns1__getDatasets(struct soap *soap, struct __ns1__getDatasets *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getDatasets(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getDatasets * SOAP_FMAC2 soap_instantiate___ns1__getDatasets(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatasets(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatasets, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasets);
+		if (size)
+			*size = sizeof(struct __ns1__getDatasets);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasets[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getDatasets);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getDatasets*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatasets(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatasets %p -> %p\n", q, p));
+	*(struct __ns1__getDatasets*)p = *(struct __ns1__getDatasets*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listDatafileFormats(struct soap *soap, struct __ns1__listDatafileFormats *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listDatafileFormats_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listDatafileFormats(struct soap *soap, const struct __ns1__listDatafileFormats *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listDatafileFormats(soap, &a->ns1__listDatafileFormats_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listDatafileFormats(struct soap *soap, const char *tag, int id, const struct __ns1__listDatafileFormats *a, const char *type)
+{
+	if (soap_out_PointerTons1__listDatafileFormats(soap, "ns1:listDatafileFormats", -1, &a->ns1__listDatafileFormats_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listDatafileFormats * SOAP_FMAC4 soap_in___ns1__listDatafileFormats(struct soap *soap, const char *tag, struct __ns1__listDatafileFormats *a, const char *type)
+{
+	size_t soap_flag_ns1__listDatafileFormats_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listDatafileFormats *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listDatafileFormats, sizeof(struct __ns1__listDatafileFormats), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listDatafileFormats(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listDatafileFormats_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listDatafileFormats(soap, "ns1:listDatafileFormats", &a->ns1__listDatafileFormats_, "ns1:listDatafileFormats"))
+				{	soap_flag_ns1__listDatafileFormats_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listDatafileFormats(struct soap *soap, const struct __ns1__listDatafileFormats *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listDatafileFormats(soap, tag?tag:"-ns1:listDatafileFormats", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listDatafileFormats * SOAP_FMAC4 soap_get___ns1__listDatafileFormats(struct soap *soap, struct __ns1__listDatafileFormats *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listDatafileFormats(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listDatafileFormats * SOAP_FMAC2 soap_instantiate___ns1__listDatafileFormats(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listDatafileFormats(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listDatafileFormats, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatafileFormats);
+		if (size)
+			*size = sizeof(struct __ns1__listDatafileFormats);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatafileFormats[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listDatafileFormats);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listDatafileFormats*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listDatafileFormats(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listDatafileFormats %p -> %p\n", q, p));
+	*(struct __ns1__listDatafileFormats*)p = *(struct __ns1__listDatafileFormats*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByRunNumberPagination(struct soap *soap, struct __ns1__searchByRunNumberPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByRunNumberPagination_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByRunNumberPagination(struct soap *soap, const struct __ns1__searchByRunNumberPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByRunNumberPagination(soap, &a->ns1__searchByRunNumberPagination_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByRunNumberPagination *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByRunNumberPagination(soap, "ns1:searchByRunNumberPagination", -1, &a->ns1__searchByRunNumberPagination_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_in___ns1__searchByRunNumberPagination(struct soap *soap, const char *tag, struct __ns1__searchByRunNumberPagination *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByRunNumberPagination_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByRunNumberPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByRunNumberPagination, sizeof(struct __ns1__searchByRunNumberPagination), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByRunNumberPagination(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByRunNumberPagination_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByRunNumberPagination(soap, "ns1:searchByRunNumberPagination", &a->ns1__searchByRunNumberPagination_, "ns1:searchByRunNumberPagination"))
+				{	soap_flag_ns1__searchByRunNumberPagination_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByRunNumberPagination(struct soap *soap, const struct __ns1__searchByRunNumberPagination *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByRunNumberPagination(soap, tag?tag:"-ns1:searchByRunNumberPagination", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByRunNumberPagination * SOAP_FMAC4 soap_get___ns1__searchByRunNumberPagination(struct soap *soap, struct __ns1__searchByRunNumberPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByRunNumberPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByRunNumberPagination * SOAP_FMAC2 soap_instantiate___ns1__searchByRunNumberPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByRunNumberPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByRunNumberPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumberPagination);
+		if (size)
+			*size = sizeof(struct __ns1__searchByRunNumberPagination);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumberPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByRunNumberPagination);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByRunNumberPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByRunNumberPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByRunNumberPagination %p -> %p\n", q, p));
+	*(struct __ns1__searchByRunNumberPagination*)p = *(struct __ns1__searchByRunNumberPagination*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByRunNumber(struct soap *soap, struct __ns1__searchByRunNumber *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByRunNumber_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByRunNumber(struct soap *soap, const struct __ns1__searchByRunNumber *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByRunNumber(soap, &a->ns1__searchByRunNumber_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByRunNumber(struct soap *soap, const char *tag, int id, const struct __ns1__searchByRunNumber *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByRunNumber(soap, "ns1:searchByRunNumber", -1, &a->ns1__searchByRunNumber_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByRunNumber * SOAP_FMAC4 soap_in___ns1__searchByRunNumber(struct soap *soap, const char *tag, struct __ns1__searchByRunNumber *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByRunNumber_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByRunNumber *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByRunNumber, sizeof(struct __ns1__searchByRunNumber), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByRunNumber(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByRunNumber_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByRunNumber(soap, "ns1:searchByRunNumber", &a->ns1__searchByRunNumber_, "ns1:searchByRunNumber"))
+				{	soap_flag_ns1__searchByRunNumber_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByRunNumber(struct soap *soap, const struct __ns1__searchByRunNumber *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByRunNumber(soap, tag?tag:"-ns1:searchByRunNumber", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByRunNumber * SOAP_FMAC4 soap_get___ns1__searchByRunNumber(struct soap *soap, struct __ns1__searchByRunNumber *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByRunNumber(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByRunNumber * SOAP_FMAC2 soap_instantiate___ns1__searchByRunNumber(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByRunNumber(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByRunNumber, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumber);
+		if (size)
+			*size = sizeof(struct __ns1__searchByRunNumber);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByRunNumber[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByRunNumber);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByRunNumber*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByRunNumber(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByRunNumber %p -> %p\n", q, p));
+	*(struct __ns1__searchByRunNumber*)p = *(struct __ns1__searchByRunNumber*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listDatasetStatus(struct soap *soap, struct __ns1__listDatasetStatus *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listDatasetStatus_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listDatasetStatus(struct soap *soap, const struct __ns1__listDatasetStatus *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listDatasetStatus(soap, &a->ns1__listDatasetStatus_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listDatasetStatus(struct soap *soap, const char *tag, int id, const struct __ns1__listDatasetStatus *a, const char *type)
+{
+	if (soap_out_PointerTons1__listDatasetStatus(soap, "ns1:listDatasetStatus", -1, &a->ns1__listDatasetStatus_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listDatasetStatus * SOAP_FMAC4 soap_in___ns1__listDatasetStatus(struct soap *soap, const char *tag, struct __ns1__listDatasetStatus *a, const char *type)
+{
+	size_t soap_flag_ns1__listDatasetStatus_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listDatasetStatus *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listDatasetStatus, sizeof(struct __ns1__listDatasetStatus), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listDatasetStatus(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listDatasetStatus_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listDatasetStatus(soap, "ns1:listDatasetStatus", &a->ns1__listDatasetStatus_, "ns1:listDatasetStatus"))
+				{	soap_flag_ns1__listDatasetStatus_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listDatasetStatus(struct soap *soap, const struct __ns1__listDatasetStatus *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listDatasetStatus(soap, tag?tag:"-ns1:listDatasetStatus", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listDatasetStatus * SOAP_FMAC4 soap_get___ns1__listDatasetStatus(struct soap *soap, struct __ns1__listDatasetStatus *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listDatasetStatus(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listDatasetStatus * SOAP_FMAC2 soap_instantiate___ns1__listDatasetStatus(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listDatasetStatus(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listDatasetStatus, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetStatus);
+		if (size)
+			*size = sizeof(struct __ns1__listDatasetStatus);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetStatus[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listDatasetStatus);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listDatasetStatus*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listDatasetStatus(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listDatasetStatus %p -> %p\n", q, p));
+	*(struct __ns1__listDatasetStatus*)p = *(struct __ns1__listDatasetStatus*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listDatasetTypes(struct soap *soap, struct __ns1__listDatasetTypes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listDatasetTypes_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listDatasetTypes(struct soap *soap, const struct __ns1__listDatasetTypes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listDatasetTypes(soap, &a->ns1__listDatasetTypes_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listDatasetTypes(struct soap *soap, const char *tag, int id, const struct __ns1__listDatasetTypes *a, const char *type)
+{
+	if (soap_out_PointerTons1__listDatasetTypes(soap, "ns1:listDatasetTypes", -1, &a->ns1__listDatasetTypes_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listDatasetTypes * SOAP_FMAC4 soap_in___ns1__listDatasetTypes(struct soap *soap, const char *tag, struct __ns1__listDatasetTypes *a, const char *type)
+{
+	size_t soap_flag_ns1__listDatasetTypes_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listDatasetTypes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listDatasetTypes, sizeof(struct __ns1__listDatasetTypes), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listDatasetTypes(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listDatasetTypes_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listDatasetTypes(soap, "ns1:listDatasetTypes", &a->ns1__listDatasetTypes_, "ns1:listDatasetTypes"))
+				{	soap_flag_ns1__listDatasetTypes_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listDatasetTypes(struct soap *soap, const struct __ns1__listDatasetTypes *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listDatasetTypes(soap, tag?tag:"-ns1:listDatasetTypes", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listDatasetTypes * SOAP_FMAC4 soap_get___ns1__listDatasetTypes(struct soap *soap, struct __ns1__listDatasetTypes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listDatasetTypes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listDatasetTypes * SOAP_FMAC2 soap_instantiate___ns1__listDatasetTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listDatasetTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listDatasetTypes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetTypes);
+		if (size)
+			*size = sizeof(struct __ns1__listDatasetTypes);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listDatasetTypes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listDatasetTypes);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listDatasetTypes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listDatasetTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listDatasetTypes %p -> %p\n", q, p));
+	*(struct __ns1__listDatasetTypes*)p = *(struct __ns1__listDatasetTypes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchDatasetsBySample(struct soap *soap, struct __ns1__searchDatasetsBySample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchDatasetsBySample_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchDatasetsBySample(struct soap *soap, const struct __ns1__searchDatasetsBySample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchDatasetsBySample(soap, &a->ns1__searchDatasetsBySample_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchDatasetsBySample(struct soap *soap, const char *tag, int id, const struct __ns1__searchDatasetsBySample *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchDatasetsBySample(soap, "ns1:searchDatasetsBySample", -1, &a->ns1__searchDatasetsBySample_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatasetsBySample * SOAP_FMAC4 soap_in___ns1__searchDatasetsBySample(struct soap *soap, const char *tag, struct __ns1__searchDatasetsBySample *a, const char *type)
+{
+	size_t soap_flag_ns1__searchDatasetsBySample_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchDatasetsBySample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchDatasetsBySample, sizeof(struct __ns1__searchDatasetsBySample), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchDatasetsBySample(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchDatasetsBySample_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchDatasetsBySample(soap, "ns1:searchDatasetsBySample", &a->ns1__searchDatasetsBySample_, "ns1:searchDatasetsBySample"))
+				{	soap_flag_ns1__searchDatasetsBySample_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchDatasetsBySample(struct soap *soap, const struct __ns1__searchDatasetsBySample *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchDatasetsBySample(soap, tag?tag:"-ns1:searchDatasetsBySample", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchDatasetsBySample * SOAP_FMAC4 soap_get___ns1__searchDatasetsBySample(struct soap *soap, struct __ns1__searchDatasetsBySample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchDatasetsBySample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchDatasetsBySample * SOAP_FMAC2 soap_instantiate___ns1__searchDatasetsBySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchDatasetsBySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchDatasetsBySample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsBySample);
+		if (size)
+			*size = sizeof(struct __ns1__searchDatasetsBySample);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchDatasetsBySample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchDatasetsBySample);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchDatasetsBySample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchDatasetsBySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchDatasetsBySample %p -> %p\n", q, p));
+	*(struct __ns1__searchDatasetsBySample*)p = *(struct __ns1__searchDatasetsBySample*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchSamplesBySampleName(struct soap *soap, struct __ns1__searchSamplesBySampleName *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchSamplesBySampleName_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchSamplesBySampleName(struct soap *soap, const struct __ns1__searchSamplesBySampleName *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchSamplesBySampleName(soap, &a->ns1__searchSamplesBySampleName_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, int id, const struct __ns1__searchSamplesBySampleName *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchSamplesBySampleName(soap, "ns1:searchSamplesBySampleName", -1, &a->ns1__searchSamplesBySampleName_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_in___ns1__searchSamplesBySampleName(struct soap *soap, const char *tag, struct __ns1__searchSamplesBySampleName *a, const char *type)
+{
+	size_t soap_flag_ns1__searchSamplesBySampleName_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchSamplesBySampleName *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchSamplesBySampleName, sizeof(struct __ns1__searchSamplesBySampleName), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchSamplesBySampleName(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchSamplesBySampleName_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchSamplesBySampleName(soap, "ns1:searchSamplesBySampleName", &a->ns1__searchSamplesBySampleName_, "ns1:searchSamplesBySampleName"))
+				{	soap_flag_ns1__searchSamplesBySampleName_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchSamplesBySampleName(struct soap *soap, const struct __ns1__searchSamplesBySampleName *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchSamplesBySampleName(soap, tag?tag:"-ns1:searchSamplesBySampleName", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchSamplesBySampleName * SOAP_FMAC4 soap_get___ns1__searchSamplesBySampleName(struct soap *soap, struct __ns1__searchSamplesBySampleName *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchSamplesBySampleName(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchSamplesBySampleName * SOAP_FMAC2 soap_instantiate___ns1__searchSamplesBySampleName(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchSamplesBySampleName(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchSamplesBySampleName, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchSamplesBySampleName);
+		if (size)
+			*size = sizeof(struct __ns1__searchSamplesBySampleName);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchSamplesBySampleName[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchSamplesBySampleName);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchSamplesBySampleName*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchSamplesBySampleName(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchSamplesBySampleName %p -> %p\n", q, p));
+	*(struct __ns1__searchSamplesBySampleName*)p = *(struct __ns1__searchSamplesBySampleName*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listInvestigationTypes(struct soap *soap, struct __ns1__listInvestigationTypes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listInvestigationTypes_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listInvestigationTypes(struct soap *soap, const struct __ns1__listInvestigationTypes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listInvestigationTypes(soap, &a->ns1__listInvestigationTypes_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listInvestigationTypes(struct soap *soap, const char *tag, int id, const struct __ns1__listInvestigationTypes *a, const char *type)
+{
+	if (soap_out_PointerTons1__listInvestigationTypes(soap, "ns1:listInvestigationTypes", -1, &a->ns1__listInvestigationTypes_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listInvestigationTypes * SOAP_FMAC4 soap_in___ns1__listInvestigationTypes(struct soap *soap, const char *tag, struct __ns1__listInvestigationTypes *a, const char *type)
+{
+	size_t soap_flag_ns1__listInvestigationTypes_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listInvestigationTypes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listInvestigationTypes, sizeof(struct __ns1__listInvestigationTypes), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listInvestigationTypes(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listInvestigationTypes_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listInvestigationTypes(soap, "ns1:listInvestigationTypes", &a->ns1__listInvestigationTypes_, "ns1:listInvestigationTypes"))
+				{	soap_flag_ns1__listInvestigationTypes_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listInvestigationTypes(struct soap *soap, const struct __ns1__listInvestigationTypes *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listInvestigationTypes(soap, tag?tag:"-ns1:listInvestigationTypes", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listInvestigationTypes * SOAP_FMAC4 soap_get___ns1__listInvestigationTypes(struct soap *soap, struct __ns1__listInvestigationTypes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listInvestigationTypes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listInvestigationTypes * SOAP_FMAC2 soap_instantiate___ns1__listInvestigationTypes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listInvestigationTypes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listInvestigationTypes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInvestigationTypes);
+		if (size)
+			*size = sizeof(struct __ns1__listInvestigationTypes);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInvestigationTypes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listInvestigationTypes);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listInvestigationTypes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listInvestigationTypes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listInvestigationTypes %p -> %p\n", q, p));
+	*(struct __ns1__listInvestigationTypes*)p = *(struct __ns1__listInvestigationTypes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listFacilityCycles(struct soap *soap, struct __ns1__listFacilityCycles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listFacilityCycles_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listFacilityCycles(struct soap *soap, const struct __ns1__listFacilityCycles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listFacilityCycles(soap, &a->ns1__listFacilityCycles_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listFacilityCycles(struct soap *soap, const char *tag, int id, const struct __ns1__listFacilityCycles *a, const char *type)
+{
+	if (soap_out_PointerTons1__listFacilityCycles(soap, "ns1:listFacilityCycles", -1, &a->ns1__listFacilityCycles_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listFacilityCycles * SOAP_FMAC4 soap_in___ns1__listFacilityCycles(struct soap *soap, const char *tag, struct __ns1__listFacilityCycles *a, const char *type)
+{
+	size_t soap_flag_ns1__listFacilityCycles_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listFacilityCycles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listFacilityCycles, sizeof(struct __ns1__listFacilityCycles), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listFacilityCycles(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listFacilityCycles_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listFacilityCycles(soap, "ns1:listFacilityCycles", &a->ns1__listFacilityCycles_, "ns1:listFacilityCycles"))
+				{	soap_flag_ns1__listFacilityCycles_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listFacilityCycles(struct soap *soap, const struct __ns1__listFacilityCycles *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listFacilityCycles(soap, tag?tag:"-ns1:listFacilityCycles", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listFacilityCycles * SOAP_FMAC4 soap_get___ns1__listFacilityCycles(struct soap *soap, struct __ns1__listFacilityCycles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listFacilityCycles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listFacilityCycles * SOAP_FMAC2 soap_instantiate___ns1__listFacilityCycles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listFacilityCycles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listFacilityCycles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listFacilityCycles);
+		if (size)
+			*size = sizeof(struct __ns1__listFacilityCycles);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listFacilityCycles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listFacilityCycles);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listFacilityCycles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listFacilityCycles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listFacilityCycles %p -> %p\n", q, p));
+	*(struct __ns1__listFacilityCycles*)p = *(struct __ns1__listFacilityCycles*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listParameters(struct soap *soap, struct __ns1__listParameters *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listParameters_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listParameters(struct soap *soap, const struct __ns1__listParameters *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listParameters(soap, &a->ns1__listParameters_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listParameters(struct soap *soap, const char *tag, int id, const struct __ns1__listParameters *a, const char *type)
+{
+	if (soap_out_PointerTons1__listParameters(soap, "ns1:listParameters", -1, &a->ns1__listParameters_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listParameters * SOAP_FMAC4 soap_in___ns1__listParameters(struct soap *soap, const char *tag, struct __ns1__listParameters *a, const char *type)
+{
+	size_t soap_flag_ns1__listParameters_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listParameters *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listParameters, sizeof(struct __ns1__listParameters), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listParameters(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listParameters_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listParameters(soap, "ns1:listParameters", &a->ns1__listParameters_, "ns1:listParameters"))
+				{	soap_flag_ns1__listParameters_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listParameters(struct soap *soap, const struct __ns1__listParameters *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listParameters(soap, tag?tag:"-ns1:listParameters", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listParameters * SOAP_FMAC4 soap_get___ns1__listParameters(struct soap *soap, struct __ns1__listParameters *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listParameters * SOAP_FMAC2 soap_instantiate___ns1__listParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listParameters, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listParameters);
+		if (size)
+			*size = sizeof(struct __ns1__listParameters);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listParameters[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listParameters);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listParameters*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listParameters %p -> %p\n", q, p));
+	*(struct __ns1__listParameters*)p = *(struct __ns1__listParameters*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listRoles(struct soap *soap, struct __ns1__listRoles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listRoles_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listRoles(struct soap *soap, const struct __ns1__listRoles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listRoles(soap, &a->ns1__listRoles_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listRoles(struct soap *soap, const char *tag, int id, const struct __ns1__listRoles *a, const char *type)
+{
+	if (soap_out_PointerTons1__listRoles(soap, "ns1:listRoles", -1, &a->ns1__listRoles_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listRoles * SOAP_FMAC4 soap_in___ns1__listRoles(struct soap *soap, const char *tag, struct __ns1__listRoles *a, const char *type)
+{
+	size_t soap_flag_ns1__listRoles_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listRoles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listRoles, sizeof(struct __ns1__listRoles), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listRoles(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listRoles_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listRoles(soap, "ns1:listRoles", &a->ns1__listRoles_, "ns1:listRoles"))
+				{	soap_flag_ns1__listRoles_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listRoles(struct soap *soap, const struct __ns1__listRoles *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listRoles(soap, tag?tag:"-ns1:listRoles", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listRoles * SOAP_FMAC4 soap_get___ns1__listRoles(struct soap *soap, struct __ns1__listRoles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listRoles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listRoles * SOAP_FMAC2 soap_instantiate___ns1__listRoles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listRoles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listRoles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listRoles);
+		if (size)
+			*size = sizeof(struct __ns1__listRoles);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listRoles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listRoles);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listRoles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listRoles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listRoles %p -> %p\n", q, p));
+	*(struct __ns1__listRoles*)p = *(struct __ns1__listRoles*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__listInstruments(struct soap *soap, struct __ns1__listInstruments *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__listInstruments_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__listInstruments(struct soap *soap, const struct __ns1__listInstruments *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__listInstruments(soap, &a->ns1__listInstruments_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__listInstruments(struct soap *soap, const char *tag, int id, const struct __ns1__listInstruments *a, const char *type)
+{
+	if (soap_out_PointerTons1__listInstruments(soap, "ns1:listInstruments", -1, &a->ns1__listInstruments_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listInstruments * SOAP_FMAC4 soap_in___ns1__listInstruments(struct soap *soap, const char *tag, struct __ns1__listInstruments *a, const char *type)
+{
+	size_t soap_flag_ns1__listInstruments_ = 1;
+	short soap_flag;
+	a = (struct __ns1__listInstruments *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__listInstruments, sizeof(struct __ns1__listInstruments), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__listInstruments(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__listInstruments_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__listInstruments(soap, "ns1:listInstruments", &a->ns1__listInstruments_, "ns1:listInstruments"))
+				{	soap_flag_ns1__listInstruments_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__listInstruments(struct soap *soap, const struct __ns1__listInstruments *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__listInstruments(soap, tag?tag:"-ns1:listInstruments", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__listInstruments * SOAP_FMAC4 soap_get___ns1__listInstruments(struct soap *soap, struct __ns1__listInstruments *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__listInstruments(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__listInstruments * SOAP_FMAC2 soap_instantiate___ns1__listInstruments(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__listInstruments(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__listInstruments, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInstruments);
+		if (size)
+			*size = sizeof(struct __ns1__listInstruments);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__listInstruments[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__listInstruments);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__listInstruments*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__listInstruments(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__listInstruments %p -> %p\n", q, p));
+	*(struct __ns1__listInstruments*)p = *(struct __ns1__listInstruments*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserSurnamePagination(struct soap *soap, struct __ns1__searchByUserSurnamePagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByUserSurnamePagination_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserSurnamePagination(struct soap *soap, const struct __ns1__searchByUserSurnamePagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByUserSurnamePagination(soap, &a->ns1__searchByUserSurnamePagination_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserSurnamePagination *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByUserSurnamePagination(soap, "ns1:searchByUserSurnamePagination", -1, &a->ns1__searchByUserSurnamePagination_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_in___ns1__searchByUserSurnamePagination(struct soap *soap, const char *tag, struct __ns1__searchByUserSurnamePagination *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByUserSurnamePagination_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByUserSurnamePagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserSurnamePagination, sizeof(struct __ns1__searchByUserSurnamePagination), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByUserSurnamePagination(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByUserSurnamePagination_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByUserSurnamePagination(soap, "ns1:searchByUserSurnamePagination", &a->ns1__searchByUserSurnamePagination_, "ns1:searchByUserSurnamePagination"))
+				{	soap_flag_ns1__searchByUserSurnamePagination_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserSurnamePagination(struct soap *soap, const struct __ns1__searchByUserSurnamePagination *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByUserSurnamePagination(soap, tag?tag:"-ns1:searchByUserSurnamePagination", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserSurnamePagination * SOAP_FMAC4 soap_get___ns1__searchByUserSurnamePagination(struct soap *soap, struct __ns1__searchByUserSurnamePagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByUserSurnamePagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByUserSurnamePagination * SOAP_FMAC2 soap_instantiate___ns1__searchByUserSurnamePagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserSurnamePagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserSurnamePagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurnamePagination);
+		if (size)
+			*size = sizeof(struct __ns1__searchByUserSurnamePagination);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurnamePagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByUserSurnamePagination);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByUserSurnamePagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserSurnamePagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserSurnamePagination %p -> %p\n", q, p));
+	*(struct __ns1__searchByUserSurnamePagination*)p = *(struct __ns1__searchByUserSurnamePagination*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserSurname(struct soap *soap, struct __ns1__searchByUserSurname *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByUserSurname_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserSurname(struct soap *soap, const struct __ns1__searchByUserSurname *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByUserSurname(soap, &a->ns1__searchByUserSurname_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserSurname(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserSurname *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByUserSurname(soap, "ns1:searchByUserSurname", -1, &a->ns1__searchByUserSurname_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserSurname * SOAP_FMAC4 soap_in___ns1__searchByUserSurname(struct soap *soap, const char *tag, struct __ns1__searchByUserSurname *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByUserSurname_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByUserSurname *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserSurname, sizeof(struct __ns1__searchByUserSurname), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByUserSurname(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByUserSurname_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByUserSurname(soap, "ns1:searchByUserSurname", &a->ns1__searchByUserSurname_, "ns1:searchByUserSurname"))
+				{	soap_flag_ns1__searchByUserSurname_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserSurname(struct soap *soap, const struct __ns1__searchByUserSurname *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByUserSurname(soap, tag?tag:"-ns1:searchByUserSurname", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserSurname * SOAP_FMAC4 soap_get___ns1__searchByUserSurname(struct soap *soap, struct __ns1__searchByUserSurname *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByUserSurname(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByUserSurname * SOAP_FMAC2 soap_instantiate___ns1__searchByUserSurname(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserSurname(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserSurname, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurname);
+		if (size)
+			*size = sizeof(struct __ns1__searchByUserSurname);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserSurname[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByUserSurname);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByUserSurname*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserSurname(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserSurname %p -> %p\n", q, p));
+	*(struct __ns1__searchByUserSurname*)p = *(struct __ns1__searchByUserSurname*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserIDPagination(struct soap *soap, struct __ns1__searchByUserIDPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByUserIDPagination_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserIDPagination(struct soap *soap, const struct __ns1__searchByUserIDPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByUserIDPagination(soap, &a->ns1__searchByUserIDPagination_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserIDPagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserIDPagination *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByUserIDPagination(soap, "ns1:searchByUserIDPagination", -1, &a->ns1__searchByUserIDPagination_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserIDPagination * SOAP_FMAC4 soap_in___ns1__searchByUserIDPagination(struct soap *soap, const char *tag, struct __ns1__searchByUserIDPagination *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByUserIDPagination_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByUserIDPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserIDPagination, sizeof(struct __ns1__searchByUserIDPagination), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByUserIDPagination(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByUserIDPagination_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByUserIDPagination(soap, "ns1:searchByUserIDPagination", &a->ns1__searchByUserIDPagination_, "ns1:searchByUserIDPagination"))
+				{	soap_flag_ns1__searchByUserIDPagination_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserIDPagination(struct soap *soap, const struct __ns1__searchByUserIDPagination *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByUserIDPagination(soap, tag?tag:"-ns1:searchByUserIDPagination", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserIDPagination * SOAP_FMAC4 soap_get___ns1__searchByUserIDPagination(struct soap *soap, struct __ns1__searchByUserIDPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByUserIDPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByUserIDPagination * SOAP_FMAC2 soap_instantiate___ns1__searchByUserIDPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserIDPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserIDPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserIDPagination);
+		if (size)
+			*size = sizeof(struct __ns1__searchByUserIDPagination);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserIDPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByUserIDPagination);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByUserIDPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserIDPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserIDPagination %p -> %p\n", q, p));
+	*(struct __ns1__searchByUserIDPagination*)p = *(struct __ns1__searchByUserIDPagination*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByUserID(struct soap *soap, struct __ns1__searchByUserID *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByUserID_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByUserID(struct soap *soap, const struct __ns1__searchByUserID *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByUserID(soap, &a->ns1__searchByUserID_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByUserID(struct soap *soap, const char *tag, int id, const struct __ns1__searchByUserID *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByUserID(soap, "ns1:searchByUserID", -1, &a->ns1__searchByUserID_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserID * SOAP_FMAC4 soap_in___ns1__searchByUserID(struct soap *soap, const char *tag, struct __ns1__searchByUserID *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByUserID_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByUserID *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByUserID, sizeof(struct __ns1__searchByUserID), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByUserID(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByUserID_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByUserID(soap, "ns1:searchByUserID", &a->ns1__searchByUserID_, "ns1:searchByUserID"))
+				{	soap_flag_ns1__searchByUserID_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByUserID(struct soap *soap, const struct __ns1__searchByUserID *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByUserID(soap, tag?tag:"-ns1:searchByUserID", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByUserID * SOAP_FMAC4 soap_get___ns1__searchByUserID(struct soap *soap, struct __ns1__searchByUserID *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByUserID(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByUserID * SOAP_FMAC2 soap_instantiate___ns1__searchByUserID(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByUserID(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByUserID, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserID);
+		if (size)
+			*size = sizeof(struct __ns1__searchByUserID);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByUserID[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByUserID);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByUserID*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByUserID(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByUserID %p -> %p\n", q, p));
+	*(struct __ns1__searchByUserID*)p = *(struct __ns1__searchByUserID*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, struct __ns1__getMyInvestigationsIncludesPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getMyInvestigationsIncludesPagination_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const struct __ns1__getMyInvestigationsIncludesPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getMyInvestigationsIncludesPagination(soap, &a->ns1__getMyInvestigationsIncludesPagination_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, int id, const struct __ns1__getMyInvestigationsIncludesPagination *a, const char *type)
+{
+	if (soap_out_PointerTons1__getMyInvestigationsIncludesPagination(soap, "ns1:getMyInvestigationsIncludesPagination", -1, &a->ns1__getMyInvestigationsIncludesPagination_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_in___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, struct __ns1__getMyInvestigationsIncludesPagination *a, const char *type)
+{
+	size_t soap_flag_ns1__getMyInvestigationsIncludesPagination_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getMyInvestigationsIncludesPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination, sizeof(struct __ns1__getMyInvestigationsIncludesPagination), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getMyInvestigationsIncludesPagination(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getMyInvestigationsIncludesPagination_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getMyInvestigationsIncludesPagination(soap, "ns1:getMyInvestigationsIncludesPagination", &a->ns1__getMyInvestigationsIncludesPagination_, "ns1:getMyInvestigationsIncludesPagination"))
+				{	soap_flag_ns1__getMyInvestigationsIncludesPagination_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, const struct __ns1__getMyInvestigationsIncludesPagination *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getMyInvestigationsIncludesPagination(soap, tag?tag:"-ns1:getMyInvestigationsIncludesPagination", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC4 soap_get___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, struct __ns1__getMyInvestigationsIncludesPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getMyInvestigationsIncludesPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getMyInvestigationsIncludesPagination * SOAP_FMAC2 soap_instantiate___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getMyInvestigationsIncludesPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getMyInvestigationsIncludesPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludesPagination);
+		if (size)
+			*size = sizeof(struct __ns1__getMyInvestigationsIncludesPagination);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludesPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getMyInvestigationsIncludesPagination);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getMyInvestigationsIncludesPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getMyInvestigationsIncludesPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getMyInvestigationsIncludesPagination %p -> %p\n", q, p));
+	*(struct __ns1__getMyInvestigationsIncludesPagination*)p = *(struct __ns1__getMyInvestigationsIncludesPagination*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMyInvestigationsIncludes(struct soap *soap, struct __ns1__getMyInvestigationsIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getMyInvestigationsIncludes_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMyInvestigationsIncludes(struct soap *soap, const struct __ns1__getMyInvestigationsIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getMyInvestigationsIncludes(soap, &a->ns1__getMyInvestigationsIncludes_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getMyInvestigationsIncludes *a, const char *type)
+{
+	if (soap_out_PointerTons1__getMyInvestigationsIncludes(soap, "ns1:getMyInvestigationsIncludes", -1, &a->ns1__getMyInvestigationsIncludes_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_in___ns1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, struct __ns1__getMyInvestigationsIncludes *a, const char *type)
+{
+	size_t soap_flag_ns1__getMyInvestigationsIncludes_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getMyInvestigationsIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMyInvestigationsIncludes, sizeof(struct __ns1__getMyInvestigationsIncludes), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getMyInvestigationsIncludes(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getMyInvestigationsIncludes_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getMyInvestigationsIncludes(soap, "ns1:getMyInvestigationsIncludes", &a->ns1__getMyInvestigationsIncludes_, "ns1:getMyInvestigationsIncludes"))
+				{	soap_flag_ns1__getMyInvestigationsIncludes_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMyInvestigationsIncludes(struct soap *soap, const struct __ns1__getMyInvestigationsIncludes *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getMyInvestigationsIncludes(soap, tag?tag:"-ns1:getMyInvestigationsIncludes", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getMyInvestigationsIncludes * SOAP_FMAC4 soap_get___ns1__getMyInvestigationsIncludes(struct soap *soap, struct __ns1__getMyInvestigationsIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getMyInvestigationsIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getMyInvestigationsIncludes * SOAP_FMAC2 soap_instantiate___ns1__getMyInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getMyInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getMyInvestigationsIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludes);
+		if (size)
+			*size = sizeof(struct __ns1__getMyInvestigationsIncludes);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigationsIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getMyInvestigationsIncludes);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getMyInvestigationsIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getMyInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getMyInvestigationsIncludes %p -> %p\n", q, p));
+	*(struct __ns1__getMyInvestigationsIncludes*)p = *(struct __ns1__getMyInvestigationsIncludes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getMyInvestigations(struct soap *soap, struct __ns1__getMyInvestigations *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getMyInvestigations_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getMyInvestigations(struct soap *soap, const struct __ns1__getMyInvestigations *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getMyInvestigations(soap, &a->ns1__getMyInvestigations_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getMyInvestigations(struct soap *soap, const char *tag, int id, const struct __ns1__getMyInvestigations *a, const char *type)
+{
+	if (soap_out_PointerTons1__getMyInvestigations(soap, "ns1:getMyInvestigations", -1, &a->ns1__getMyInvestigations_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getMyInvestigations * SOAP_FMAC4 soap_in___ns1__getMyInvestigations(struct soap *soap, const char *tag, struct __ns1__getMyInvestigations *a, const char *type)
+{
+	size_t soap_flag_ns1__getMyInvestigations_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getMyInvestigations *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getMyInvestigations, sizeof(struct __ns1__getMyInvestigations), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getMyInvestigations(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getMyInvestigations_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getMyInvestigations(soap, "ns1:getMyInvestigations", &a->ns1__getMyInvestigations_, "ns1:getMyInvestigations"))
+				{	soap_flag_ns1__getMyInvestigations_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getMyInvestigations(struct soap *soap, const struct __ns1__getMyInvestigations *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getMyInvestigations(soap, tag?tag:"-ns1:getMyInvestigations", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getMyInvestigations * SOAP_FMAC4 soap_get___ns1__getMyInvestigations(struct soap *soap, struct __ns1__getMyInvestigations *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getMyInvestigations(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getMyInvestigations * SOAP_FMAC2 soap_instantiate___ns1__getMyInvestigations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getMyInvestigations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getMyInvestigations, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigations);
+		if (size)
+			*size = sizeof(struct __ns1__getMyInvestigations);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getMyInvestigations[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getMyInvestigations);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getMyInvestigations*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getMyInvestigations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getMyInvestigations %p -> %p\n", q, p));
+	*(struct __ns1__getMyInvestigations*)p = *(struct __ns1__getMyInvestigations*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByKeywordsAll(struct soap *soap, struct __ns1__searchByKeywordsAll *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByKeywordsAll_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByKeywordsAll(struct soap *soap, const struct __ns1__searchByKeywordsAll *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByKeywordsAll(soap, &a->ns1__searchByKeywordsAll_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByKeywordsAll(struct soap *soap, const char *tag, int id, const struct __ns1__searchByKeywordsAll *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByKeywordsAll(soap, "ns1:searchByKeywordsAll", -1, &a->ns1__searchByKeywordsAll_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByKeywordsAll * SOAP_FMAC4 soap_in___ns1__searchByKeywordsAll(struct soap *soap, const char *tag, struct __ns1__searchByKeywordsAll *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByKeywordsAll_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByKeywordsAll *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByKeywordsAll, sizeof(struct __ns1__searchByKeywordsAll), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByKeywordsAll(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByKeywordsAll_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByKeywordsAll(soap, "ns1:searchByKeywordsAll", &a->ns1__searchByKeywordsAll_, "ns1:searchByKeywordsAll"))
+				{	soap_flag_ns1__searchByKeywordsAll_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByKeywordsAll(struct soap *soap, const struct __ns1__searchByKeywordsAll *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByKeywordsAll(soap, tag?tag:"-ns1:searchByKeywordsAll", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByKeywordsAll * SOAP_FMAC4 soap_get___ns1__searchByKeywordsAll(struct soap *soap, struct __ns1__searchByKeywordsAll *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByKeywordsAll(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByKeywordsAll * SOAP_FMAC2 soap_instantiate___ns1__searchByKeywordsAll(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByKeywordsAll(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByKeywordsAll, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywordsAll);
+		if (size)
+			*size = sizeof(struct __ns1__searchByKeywordsAll);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywordsAll[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByKeywordsAll);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByKeywordsAll*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByKeywordsAll(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByKeywordsAll %p -> %p\n", q, p));
+	*(struct __ns1__searchByKeywordsAll*)p = *(struct __ns1__searchByKeywordsAll*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByKeywords(struct soap *soap, struct __ns1__searchByKeywords *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByKeywords_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByKeywords(struct soap *soap, const struct __ns1__searchByKeywords *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByKeywords(soap, &a->ns1__searchByKeywords_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByKeywords(struct soap *soap, const char *tag, int id, const struct __ns1__searchByKeywords *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByKeywords(soap, "ns1:searchByKeywords", -1, &a->ns1__searchByKeywords_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByKeywords * SOAP_FMAC4 soap_in___ns1__searchByKeywords(struct soap *soap, const char *tag, struct __ns1__searchByKeywords *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByKeywords_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByKeywords *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByKeywords, sizeof(struct __ns1__searchByKeywords), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByKeywords(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByKeywords_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByKeywords(soap, "ns1:searchByKeywords", &a->ns1__searchByKeywords_, "ns1:searchByKeywords"))
+				{	soap_flag_ns1__searchByKeywords_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByKeywords(struct soap *soap, const struct __ns1__searchByKeywords *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByKeywords(soap, tag?tag:"-ns1:searchByKeywords", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByKeywords * SOAP_FMAC4 soap_get___ns1__searchByKeywords(struct soap *soap, struct __ns1__searchByKeywords *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByKeywords(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByKeywords * SOAP_FMAC2 soap_instantiate___ns1__searchByKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByKeywords, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywords);
+		if (size)
+			*size = sizeof(struct __ns1__searchByKeywords);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByKeywords[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByKeywords);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByKeywords*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByKeywords %p -> %p\n", q, p));
+	*(struct __ns1__searchByKeywords*)p = *(struct __ns1__searchByKeywords*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByAdvancedPagination(struct soap *soap, struct __ns1__searchByAdvancedPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByAdvancedPagination_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByAdvancedPagination(struct soap *soap, const struct __ns1__searchByAdvancedPagination *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByAdvancedPagination(soap, &a->ns1__searchByAdvancedPagination_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, int id, const struct __ns1__searchByAdvancedPagination *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByAdvancedPagination(soap, "ns1:searchByAdvancedPagination", -1, &a->ns1__searchByAdvancedPagination_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_in___ns1__searchByAdvancedPagination(struct soap *soap, const char *tag, struct __ns1__searchByAdvancedPagination *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByAdvancedPagination_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByAdvancedPagination *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByAdvancedPagination, sizeof(struct __ns1__searchByAdvancedPagination), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByAdvancedPagination(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByAdvancedPagination_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByAdvancedPagination(soap, "ns1:searchByAdvancedPagination", &a->ns1__searchByAdvancedPagination_, "ns1:searchByAdvancedPagination"))
+				{	soap_flag_ns1__searchByAdvancedPagination_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByAdvancedPagination(struct soap *soap, const struct __ns1__searchByAdvancedPagination *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByAdvancedPagination(soap, tag?tag:"-ns1:searchByAdvancedPagination", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByAdvancedPagination * SOAP_FMAC4 soap_get___ns1__searchByAdvancedPagination(struct soap *soap, struct __ns1__searchByAdvancedPagination *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByAdvancedPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByAdvancedPagination * SOAP_FMAC2 soap_instantiate___ns1__searchByAdvancedPagination(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByAdvancedPagination(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByAdvancedPagination, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvancedPagination);
+		if (size)
+			*size = sizeof(struct __ns1__searchByAdvancedPagination);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvancedPagination[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByAdvancedPagination);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByAdvancedPagination*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByAdvancedPagination(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByAdvancedPagination %p -> %p\n", q, p));
+	*(struct __ns1__searchByAdvancedPagination*)p = *(struct __ns1__searchByAdvancedPagination*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__searchByAdvanced(struct soap *soap, struct __ns1__searchByAdvanced *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__searchByAdvanced_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__searchByAdvanced(struct soap *soap, const struct __ns1__searchByAdvanced *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__searchByAdvanced(soap, &a->ns1__searchByAdvanced_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__searchByAdvanced(struct soap *soap, const char *tag, int id, const struct __ns1__searchByAdvanced *a, const char *type)
+{
+	if (soap_out_PointerTons1__searchByAdvanced(soap, "ns1:searchByAdvanced", -1, &a->ns1__searchByAdvanced_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByAdvanced * SOAP_FMAC4 soap_in___ns1__searchByAdvanced(struct soap *soap, const char *tag, struct __ns1__searchByAdvanced *a, const char *type)
+{
+	size_t soap_flag_ns1__searchByAdvanced_ = 1;
+	short soap_flag;
+	a = (struct __ns1__searchByAdvanced *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__searchByAdvanced, sizeof(struct __ns1__searchByAdvanced), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__searchByAdvanced(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__searchByAdvanced_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__searchByAdvanced(soap, "ns1:searchByAdvanced", &a->ns1__searchByAdvanced_, "ns1:searchByAdvanced"))
+				{	soap_flag_ns1__searchByAdvanced_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__searchByAdvanced(struct soap *soap, const struct __ns1__searchByAdvanced *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__searchByAdvanced(soap, tag?tag:"-ns1:searchByAdvanced", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__searchByAdvanced * SOAP_FMAC4 soap_get___ns1__searchByAdvanced(struct soap *soap, struct __ns1__searchByAdvanced *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__searchByAdvanced(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__searchByAdvanced * SOAP_FMAC2 soap_instantiate___ns1__searchByAdvanced(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__searchByAdvanced(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__searchByAdvanced, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvanced);
+		if (size)
+			*size = sizeof(struct __ns1__searchByAdvanced);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__searchByAdvanced[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__searchByAdvanced);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__searchByAdvanced*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__searchByAdvanced(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__searchByAdvanced %p -> %p\n", q, p));
+	*(struct __ns1__searchByAdvanced*)p = *(struct __ns1__searchByAdvanced*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__checkDatasetDownloadAccess(struct soap *soap, struct __ns1__checkDatasetDownloadAccess *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__checkDatasetDownloadAccess_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__checkDatasetDownloadAccess(struct soap *soap, const struct __ns1__checkDatasetDownloadAccess *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__checkDatasetDownloadAccess(soap, &a->ns1__checkDatasetDownloadAccess_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, int id, const struct __ns1__checkDatasetDownloadAccess *a, const char *type)
+{
+	if (soap_out_PointerTons1__checkDatasetDownloadAccess(soap, "ns1:checkDatasetDownloadAccess", -1, &a->ns1__checkDatasetDownloadAccess_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_in___ns1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, struct __ns1__checkDatasetDownloadAccess *a, const char *type)
+{
+	size_t soap_flag_ns1__checkDatasetDownloadAccess_ = 1;
+	short soap_flag;
+	a = (struct __ns1__checkDatasetDownloadAccess *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__checkDatasetDownloadAccess, sizeof(struct __ns1__checkDatasetDownloadAccess), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__checkDatasetDownloadAccess(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__checkDatasetDownloadAccess_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__checkDatasetDownloadAccess(soap, "ns1:checkDatasetDownloadAccess", &a->ns1__checkDatasetDownloadAccess_, "ns1:checkDatasetDownloadAccess"))
+				{	soap_flag_ns1__checkDatasetDownloadAccess_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__checkDatasetDownloadAccess(struct soap *soap, const struct __ns1__checkDatasetDownloadAccess *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__checkDatasetDownloadAccess(soap, tag?tag:"-ns1:checkDatasetDownloadAccess", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__checkDatasetDownloadAccess * SOAP_FMAC4 soap_get___ns1__checkDatasetDownloadAccess(struct soap *soap, struct __ns1__checkDatasetDownloadAccess *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__checkDatasetDownloadAccess(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__checkDatasetDownloadAccess * SOAP_FMAC2 soap_instantiate___ns1__checkDatasetDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__checkDatasetDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__checkDatasetDownloadAccess, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatasetDownloadAccess);
+		if (size)
+			*size = sizeof(struct __ns1__checkDatasetDownloadAccess);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatasetDownloadAccess[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__checkDatasetDownloadAccess);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__checkDatasetDownloadAccess*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__checkDatasetDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__checkDatasetDownloadAccess %p -> %p\n", q, p));
+	*(struct __ns1__checkDatasetDownloadAccess*)p = *(struct __ns1__checkDatasetDownloadAccess*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__checkDatafileDownloadAccess(struct soap *soap, struct __ns1__checkDatafileDownloadAccess *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__checkDatafileDownloadAccess_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__checkDatafileDownloadAccess(struct soap *soap, const struct __ns1__checkDatafileDownloadAccess *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__checkDatafileDownloadAccess(soap, &a->ns1__checkDatafileDownloadAccess_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, int id, const struct __ns1__checkDatafileDownloadAccess *a, const char *type)
+{
+	if (soap_out_PointerTons1__checkDatafileDownloadAccess(soap, "ns1:checkDatafileDownloadAccess", -1, &a->ns1__checkDatafileDownloadAccess_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_in___ns1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, struct __ns1__checkDatafileDownloadAccess *a, const char *type)
+{
+	size_t soap_flag_ns1__checkDatafileDownloadAccess_ = 1;
+	short soap_flag;
+	a = (struct __ns1__checkDatafileDownloadAccess *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__checkDatafileDownloadAccess, sizeof(struct __ns1__checkDatafileDownloadAccess), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__checkDatafileDownloadAccess(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__checkDatafileDownloadAccess_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__checkDatafileDownloadAccess(soap, "ns1:checkDatafileDownloadAccess", &a->ns1__checkDatafileDownloadAccess_, "ns1:checkDatafileDownloadAccess"))
+				{	soap_flag_ns1__checkDatafileDownloadAccess_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__checkDatafileDownloadAccess(struct soap *soap, const struct __ns1__checkDatafileDownloadAccess *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__checkDatafileDownloadAccess(soap, tag?tag:"-ns1:checkDatafileDownloadAccess", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__checkDatafileDownloadAccess * SOAP_FMAC4 soap_get___ns1__checkDatafileDownloadAccess(struct soap *soap, struct __ns1__checkDatafileDownloadAccess *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__checkDatafileDownloadAccess(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__checkDatafileDownloadAccess * SOAP_FMAC2 soap_instantiate___ns1__checkDatafileDownloadAccess(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__checkDatafileDownloadAccess(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__checkDatafileDownloadAccess, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatafileDownloadAccess);
+		if (size)
+			*size = sizeof(struct __ns1__checkDatafileDownloadAccess);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__checkDatafileDownloadAccess[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__checkDatafileDownloadAccess);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__checkDatafileDownloadAccess*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__checkDatafileDownloadAccess(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__checkDatafileDownloadAccess %p -> %p\n", q, p));
+	*(struct __ns1__checkDatafileDownloadAccess*)p = *(struct __ns1__checkDatafileDownloadAccess*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadDataset(struct soap *soap, struct __ns1__downloadDataset *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__downloadDataset_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadDataset(struct soap *soap, const struct __ns1__downloadDataset *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__downloadDataset(soap, &a->ns1__downloadDataset_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadDataset(struct soap *soap, const char *tag, int id, const struct __ns1__downloadDataset *a, const char *type)
+{
+	if (soap_out_PointerTons1__downloadDataset(soap, "ns1:downloadDataset", -1, &a->ns1__downloadDataset_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__downloadDataset * SOAP_FMAC4 soap_in___ns1__downloadDataset(struct soap *soap, const char *tag, struct __ns1__downloadDataset *a, const char *type)
+{
+	size_t soap_flag_ns1__downloadDataset_ = 1;
+	short soap_flag;
+	a = (struct __ns1__downloadDataset *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadDataset, sizeof(struct __ns1__downloadDataset), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__downloadDataset(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__downloadDataset_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__downloadDataset(soap, "ns1:downloadDataset", &a->ns1__downloadDataset_, "ns1:downloadDataset"))
+				{	soap_flag_ns1__downloadDataset_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadDataset(struct soap *soap, const struct __ns1__downloadDataset *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__downloadDataset(soap, tag?tag:"-ns1:downloadDataset", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__downloadDataset * SOAP_FMAC4 soap_get___ns1__downloadDataset(struct soap *soap, struct __ns1__downloadDataset *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__downloadDataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__downloadDataset * SOAP_FMAC2 soap_instantiate___ns1__downloadDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__downloadDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__downloadDataset, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDataset);
+		if (size)
+			*size = sizeof(struct __ns1__downloadDataset);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDataset[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__downloadDataset);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__downloadDataset*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__downloadDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__downloadDataset %p -> %p\n", q, p));
+	*(struct __ns1__downloadDataset*)p = *(struct __ns1__downloadDataset*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadDatafiles(struct soap *soap, struct __ns1__downloadDatafiles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__downloadDatafiles_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadDatafiles(struct soap *soap, const struct __ns1__downloadDatafiles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__downloadDatafiles(soap, &a->ns1__downloadDatafiles_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadDatafiles(struct soap *soap, const char *tag, int id, const struct __ns1__downloadDatafiles *a, const char *type)
+{
+	if (soap_out_PointerTons1__downloadDatafiles(soap, "ns1:downloadDatafiles", -1, &a->ns1__downloadDatafiles_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__downloadDatafiles * SOAP_FMAC4 soap_in___ns1__downloadDatafiles(struct soap *soap, const char *tag, struct __ns1__downloadDatafiles *a, const char *type)
+{
+	size_t soap_flag_ns1__downloadDatafiles_ = 1;
+	short soap_flag;
+	a = (struct __ns1__downloadDatafiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadDatafiles, sizeof(struct __ns1__downloadDatafiles), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__downloadDatafiles(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__downloadDatafiles_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__downloadDatafiles(soap, "ns1:downloadDatafiles", &a->ns1__downloadDatafiles_, "ns1:downloadDatafiles"))
+				{	soap_flag_ns1__downloadDatafiles_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadDatafiles(struct soap *soap, const struct __ns1__downloadDatafiles *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__downloadDatafiles(soap, tag?tag:"-ns1:downloadDatafiles", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__downloadDatafiles * SOAP_FMAC4 soap_get___ns1__downloadDatafiles(struct soap *soap, struct __ns1__downloadDatafiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__downloadDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__downloadDatafiles * SOAP_FMAC2 soap_instantiate___ns1__downloadDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__downloadDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__downloadDatafiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafiles);
+		if (size)
+			*size = sizeof(struct __ns1__downloadDatafiles);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__downloadDatafiles);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__downloadDatafiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__downloadDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__downloadDatafiles %p -> %p\n", q, p));
+	*(struct __ns1__downloadDatafiles*)p = *(struct __ns1__downloadDatafiles*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__downloadDatafile(struct soap *soap, struct __ns1__downloadDatafile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__downloadDatafile_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__downloadDatafile(struct soap *soap, const struct __ns1__downloadDatafile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__downloadDatafile(soap, &a->ns1__downloadDatafile_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__downloadDatafile(struct soap *soap, const char *tag, int id, const struct __ns1__downloadDatafile *a, const char *type)
+{
+	if (soap_out_PointerTons1__downloadDatafile(soap, "ns1:downloadDatafile", -1, &a->ns1__downloadDatafile_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__downloadDatafile * SOAP_FMAC4 soap_in___ns1__downloadDatafile(struct soap *soap, const char *tag, struct __ns1__downloadDatafile *a, const char *type)
+{
+	size_t soap_flag_ns1__downloadDatafile_ = 1;
+	short soap_flag;
+	a = (struct __ns1__downloadDatafile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__downloadDatafile, sizeof(struct __ns1__downloadDatafile), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__downloadDatafile(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__downloadDatafile_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__downloadDatafile(soap, "ns1:downloadDatafile", &a->ns1__downloadDatafile_, "ns1:downloadDatafile"))
+				{	soap_flag_ns1__downloadDatafile_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__downloadDatafile(struct soap *soap, const struct __ns1__downloadDatafile *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__downloadDatafile(soap, tag?tag:"-ns1:downloadDatafile", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__downloadDatafile * SOAP_FMAC4 soap_get___ns1__downloadDatafile(struct soap *soap, struct __ns1__downloadDatafile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__downloadDatafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__downloadDatafile * SOAP_FMAC2 soap_instantiate___ns1__downloadDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__downloadDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__downloadDatafile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafile);
+		if (size)
+			*size = sizeof(struct __ns1__downloadDatafile);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__downloadDatafile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__downloadDatafile);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__downloadDatafile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__downloadDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__downloadDatafile %p -> %p\n", q, p));
+	*(struct __ns1__downloadDatafile*)p = *(struct __ns1__downloadDatafile*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAllKeywords(struct soap *soap, struct __ns1__getAllKeywords *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getAllKeywords_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAllKeywords(struct soap *soap, const struct __ns1__getAllKeywords *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getAllKeywords(soap, &a->ns1__getAllKeywords_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAllKeywords(struct soap *soap, const char *tag, int id, const struct __ns1__getAllKeywords *a, const char *type)
+{
+	if (soap_out_PointerTons1__getAllKeywords(soap, "ns1:getAllKeywords", -1, &a->ns1__getAllKeywords_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getAllKeywords * SOAP_FMAC4 soap_in___ns1__getAllKeywords(struct soap *soap, const char *tag, struct __ns1__getAllKeywords *a, const char *type)
+{
+	size_t soap_flag_ns1__getAllKeywords_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getAllKeywords *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAllKeywords, sizeof(struct __ns1__getAllKeywords), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getAllKeywords(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getAllKeywords_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getAllKeywords(soap, "ns1:getAllKeywords", &a->ns1__getAllKeywords_, "ns1:getAllKeywords"))
+				{	soap_flag_ns1__getAllKeywords_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAllKeywords(struct soap *soap, const struct __ns1__getAllKeywords *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getAllKeywords(soap, tag?tag:"-ns1:getAllKeywords", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getAllKeywords * SOAP_FMAC4 soap_get___ns1__getAllKeywords(struct soap *soap, struct __ns1__getAllKeywords *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getAllKeywords(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getAllKeywords * SOAP_FMAC2 soap_instantiate___ns1__getAllKeywords(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getAllKeywords(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getAllKeywords, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAllKeywords);
+		if (size)
+			*size = sizeof(struct __ns1__getAllKeywords);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAllKeywords[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getAllKeywords);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getAllKeywords*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getAllKeywords(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getAllKeywords %p -> %p\n", q, p));
+	*(struct __ns1__getAllKeywords*)p = *(struct __ns1__getAllKeywords*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUserType(struct soap *soap, struct __ns1__getKeywordsForUserType *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getKeywordsForUserType_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUserType(struct soap *soap, const struct __ns1__getKeywordsForUserType *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getKeywordsForUserType(soap, &a->ns1__getKeywordsForUserType_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUserType(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUserType *a, const char *type)
+{
+	if (soap_out_PointerTons1__getKeywordsForUserType(soap, "ns1:getKeywordsForUserType", -1, &a->ns1__getKeywordsForUserType_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUserType * SOAP_FMAC4 soap_in___ns1__getKeywordsForUserType(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUserType *a, const char *type)
+{
+	size_t soap_flag_ns1__getKeywordsForUserType_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getKeywordsForUserType *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUserType, sizeof(struct __ns1__getKeywordsForUserType), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getKeywordsForUserType(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getKeywordsForUserType_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getKeywordsForUserType(soap, "ns1:getKeywordsForUserType", &a->ns1__getKeywordsForUserType_, "ns1:getKeywordsForUserType"))
+				{	soap_flag_ns1__getKeywordsForUserType_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUserType(struct soap *soap, const struct __ns1__getKeywordsForUserType *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getKeywordsForUserType(soap, tag?tag:"-ns1:getKeywordsForUserType", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUserType * SOAP_FMAC4 soap_get___ns1__getKeywordsForUserType(struct soap *soap, struct __ns1__getKeywordsForUserType *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getKeywordsForUserType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getKeywordsForUserType * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUserType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUserType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUserType, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserType);
+		if (size)
+			*size = sizeof(struct __ns1__getKeywordsForUserType);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserType[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getKeywordsForUserType);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getKeywordsForUserType*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUserType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUserType %p -> %p\n", q, p));
+	*(struct __ns1__getKeywordsForUserType*)p = *(struct __ns1__getKeywordsForUserType*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUserMax(struct soap *soap, struct __ns1__getKeywordsForUserMax *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getKeywordsForUserMax_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUserMax(struct soap *soap, const struct __ns1__getKeywordsForUserMax *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getKeywordsForUserMax(soap, &a->ns1__getKeywordsForUserMax_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUserMax *a, const char *type)
+{
+	if (soap_out_PointerTons1__getKeywordsForUserMax(soap, "ns1:getKeywordsForUserMax", -1, &a->ns1__getKeywordsForUserMax_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_in___ns1__getKeywordsForUserMax(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUserMax *a, const char *type)
+{
+	size_t soap_flag_ns1__getKeywordsForUserMax_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getKeywordsForUserMax *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUserMax, sizeof(struct __ns1__getKeywordsForUserMax), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getKeywordsForUserMax(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getKeywordsForUserMax_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getKeywordsForUserMax(soap, "ns1:getKeywordsForUserMax", &a->ns1__getKeywordsForUserMax_, "ns1:getKeywordsForUserMax"))
+				{	soap_flag_ns1__getKeywordsForUserMax_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUserMax(struct soap *soap, const struct __ns1__getKeywordsForUserMax *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getKeywordsForUserMax(soap, tag?tag:"-ns1:getKeywordsForUserMax", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUserMax * SOAP_FMAC4 soap_get___ns1__getKeywordsForUserMax(struct soap *soap, struct __ns1__getKeywordsForUserMax *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getKeywordsForUserMax(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getKeywordsForUserMax * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUserMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUserMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUserMax, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserMax);
+		if (size)
+			*size = sizeof(struct __ns1__getKeywordsForUserMax);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserMax[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getKeywordsForUserMax);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getKeywordsForUserMax*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUserMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUserMax %p -> %p\n", q, p));
+	*(struct __ns1__getKeywordsForUserMax*)p = *(struct __ns1__getKeywordsForUserMax*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUserStartWithMax(struct soap *soap, struct __ns1__getKeywordsForUserStartWithMax *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getKeywordsForUserStartWithMax_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const struct __ns1__getKeywordsForUserStartWithMax *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getKeywordsForUserStartWithMax(soap, &a->ns1__getKeywordsForUserStartWithMax_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUserStartWithMax *a, const char *type)
+{
+	if (soap_out_PointerTons1__getKeywordsForUserStartWithMax(soap, "ns1:getKeywordsForUserStartWithMax", -1, &a->ns1__getKeywordsForUserStartWithMax_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_in___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUserStartWithMax *a, const char *type)
+{
+	size_t soap_flag_ns1__getKeywordsForUserStartWithMax_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getKeywordsForUserStartWithMax *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUserStartWithMax, sizeof(struct __ns1__getKeywordsForUserStartWithMax), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getKeywordsForUserStartWithMax(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getKeywordsForUserStartWithMax_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getKeywordsForUserStartWithMax(soap, "ns1:getKeywordsForUserStartWithMax", &a->ns1__getKeywordsForUserStartWithMax_, "ns1:getKeywordsForUserStartWithMax"))
+				{	soap_flag_ns1__getKeywordsForUserStartWithMax_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUserStartWithMax(struct soap *soap, const struct __ns1__getKeywordsForUserStartWithMax *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getKeywordsForUserStartWithMax(soap, tag?tag:"-ns1:getKeywordsForUserStartWithMax", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUserStartWithMax * SOAP_FMAC4 soap_get___ns1__getKeywordsForUserStartWithMax(struct soap *soap, struct __ns1__getKeywordsForUserStartWithMax *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getKeywordsForUserStartWithMax(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getKeywordsForUserStartWithMax * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUserStartWithMax(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUserStartWithMax(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUserStartWithMax, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserStartWithMax);
+		if (size)
+			*size = sizeof(struct __ns1__getKeywordsForUserStartWithMax);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUserStartWithMax[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getKeywordsForUserStartWithMax);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getKeywordsForUserStartWithMax*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUserStartWithMax(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUserStartWithMax %p -> %p\n", q, p));
+	*(struct __ns1__getKeywordsForUserStartWithMax*)p = *(struct __ns1__getKeywordsForUserStartWithMax*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getKeywordsForUser(struct soap *soap, struct __ns1__getKeywordsForUser *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getKeywordsForUser_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getKeywordsForUser(struct soap *soap, const struct __ns1__getKeywordsForUser *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getKeywordsForUser(soap, &a->ns1__getKeywordsForUser_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getKeywordsForUser(struct soap *soap, const char *tag, int id, const struct __ns1__getKeywordsForUser *a, const char *type)
+{
+	if (soap_out_PointerTons1__getKeywordsForUser(soap, "ns1:getKeywordsForUser", -1, &a->ns1__getKeywordsForUser_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUser * SOAP_FMAC4 soap_in___ns1__getKeywordsForUser(struct soap *soap, const char *tag, struct __ns1__getKeywordsForUser *a, const char *type)
+{
+	size_t soap_flag_ns1__getKeywordsForUser_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getKeywordsForUser *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getKeywordsForUser, sizeof(struct __ns1__getKeywordsForUser), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getKeywordsForUser(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getKeywordsForUser_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getKeywordsForUser(soap, "ns1:getKeywordsForUser", &a->ns1__getKeywordsForUser_, "ns1:getKeywordsForUser"))
+				{	soap_flag_ns1__getKeywordsForUser_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getKeywordsForUser(struct soap *soap, const struct __ns1__getKeywordsForUser *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getKeywordsForUser(soap, tag?tag:"-ns1:getKeywordsForUser", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getKeywordsForUser * SOAP_FMAC4 soap_get___ns1__getKeywordsForUser(struct soap *soap, struct __ns1__getKeywordsForUser *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getKeywordsForUser(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getKeywordsForUser * SOAP_FMAC2 soap_instantiate___ns1__getKeywordsForUser(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getKeywordsForUser(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getKeywordsForUser, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUser);
+		if (size)
+			*size = sizeof(struct __ns1__getKeywordsForUser);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getKeywordsForUser[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getKeywordsForUser);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getKeywordsForUser*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getKeywordsForUser(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getKeywordsForUser %p -> %p\n", q, p));
+	*(struct __ns1__getKeywordsForUser*)p = *(struct __ns1__getKeywordsForUser*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFileParameter(struct soap *soap, struct __ns1__deleteDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataFileParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFileParameter(struct soap *soap, const struct __ns1__deleteDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataFileParameter(soap, &a->ns1__deleteDataFileParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFileParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteDataFileParameter(soap, "ns1:deleteDataFileParameter", -1, &a->ns1__deleteDataFileParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFileParameter * SOAP_FMAC4 soap_in___ns1__deleteDataFileParameter(struct soap *soap, const char *tag, struct __ns1__deleteDataFileParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataFileParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFileParameter, sizeof(struct __ns1__deleteDataFileParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataFileParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataFileParameter(soap, "ns1:deleteDataFileParameter", &a->ns1__deleteDataFileParameter_, "ns1:deleteDataFileParameter"))
+				{	soap_flag_ns1__deleteDataFileParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFileParameter(struct soap *soap, const struct __ns1__deleteDataFileParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataFileParameter(soap, tag?tag:"-ns1:deleteDataFileParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFileParameter * SOAP_FMAC4 soap_get___ns1__deleteDataFileParameter(struct soap *soap, struct __ns1__deleteDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameter);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataFileParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataFileParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFileParameter %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataFileParameter*)p = *(struct __ns1__deleteDataFileParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFileParameterResponse(struct soap *soap, struct __ns1__deleteDataFileParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataFileParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFileParameterResponse(struct soap *soap, const struct __ns1__deleteDataFileParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataFileParameterResponse(soap, &a->ns1__deleteDataFileParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFileParameterResponse *a, const char *type)
+{
+	if (a->ns1__deleteDataFileParameterResponse_)
+		soap_element_result(soap, "ns1:deleteDataFileParameterResponse");
+	if (soap_out_PointerTons1__deleteDataFileParameterResponse(soap, "ns1:deleteDataFileParameterResponse", -1, &a->ns1__deleteDataFileParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_in___ns1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataFileParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataFileParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataFileParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFileParameterResponse, sizeof(struct __ns1__deleteDataFileParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataFileParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataFileParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataFileParameterResponse(soap, "ns1:deleteDataFileParameterResponse", &a->ns1__deleteDataFileParameterResponse_, "ns1:deleteDataFileParameterResponse"))
+				{	soap_flag_ns1__deleteDataFileParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteDataFileParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFileParameterResponse(struct soap *soap, const struct __ns1__deleteDataFileParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataFileParameterResponse(soap, tag?tag:"-ns1:deleteDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFileParameterResponse * SOAP_FMAC4 soap_get___ns1__deleteDataFileParameterResponse(struct soap *soap, struct __ns1__deleteDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataFileParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataFileParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataFileParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFileParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataFileParameterResponse*)p = *(struct __ns1__deleteDataFileParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFileParameter(struct soap *soap, struct __ns1__removeDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataFileParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFileParameter(struct soap *soap, const struct __ns1__removeDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataFileParameter(soap, &a->ns1__removeDataFileParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFileParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeDataFileParameter(soap, "ns1:removeDataFileParameter", -1, &a->ns1__removeDataFileParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFileParameter * SOAP_FMAC4 soap_in___ns1__removeDataFileParameter(struct soap *soap, const char *tag, struct __ns1__removeDataFileParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataFileParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFileParameter, sizeof(struct __ns1__removeDataFileParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataFileParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataFileParameter(soap, "ns1:removeDataFileParameter", &a->ns1__removeDataFileParameter_, "ns1:removeDataFileParameter"))
+				{	soap_flag_ns1__removeDataFileParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFileParameter(struct soap *soap, const struct __ns1__removeDataFileParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataFileParameter(soap, tag?tag:"-ns1:removeDataFileParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFileParameter * SOAP_FMAC4 soap_get___ns1__removeDataFileParameter(struct soap *soap, struct __ns1__removeDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__removeDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameter);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataFileParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataFileParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFileParameter %p -> %p\n", q, p));
+	*(struct __ns1__removeDataFileParameter*)p = *(struct __ns1__removeDataFileParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFileParameterResponse(struct soap *soap, struct __ns1__removeDataFileParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataFileParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFileParameterResponse(struct soap *soap, const struct __ns1__removeDataFileParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataFileParameterResponse(soap, &a->ns1__removeDataFileParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFileParameterResponse *a, const char *type)
+{
+	if (a->ns1__removeDataFileParameterResponse_)
+		soap_element_result(soap, "ns1:removeDataFileParameterResponse");
+	if (soap_out_PointerTons1__removeDataFileParameterResponse(soap, "ns1:removeDataFileParameterResponse", -1, &a->ns1__removeDataFileParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_in___ns1__removeDataFileParameterResponse(struct soap *soap, const char *tag, struct __ns1__removeDataFileParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataFileParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataFileParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFileParameterResponse, sizeof(struct __ns1__removeDataFileParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataFileParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataFileParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataFileParameterResponse(soap, "ns1:removeDataFileParameterResponse", &a->ns1__removeDataFileParameterResponse_, "ns1:removeDataFileParameterResponse"))
+				{	soap_flag_ns1__removeDataFileParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeDataFileParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFileParameterResponse(struct soap *soap, const struct __ns1__removeDataFileParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataFileParameterResponse(soap, tag?tag:"-ns1:removeDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFileParameterResponse * SOAP_FMAC4 soap_get___ns1__removeDataFileParameterResponse(struct soap *soap, struct __ns1__removeDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataFileParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataFileParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataFileParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFileParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeDataFileParameterResponse*)p = *(struct __ns1__removeDataFileParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFileParameter(struct soap *soap, struct __ns1__modifyDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataFileParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFileParameter(struct soap *soap, const struct __ns1__modifyDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataFileParameter(soap, &a->ns1__modifyDataFileParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFileParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyDataFileParameter(soap, "ns1:modifyDataFileParameter", -1, &a->ns1__modifyDataFileParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFileParameter * SOAP_FMAC4 soap_in___ns1__modifyDataFileParameter(struct soap *soap, const char *tag, struct __ns1__modifyDataFileParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataFileParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFileParameter, sizeof(struct __ns1__modifyDataFileParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataFileParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataFileParameter(soap, "ns1:modifyDataFileParameter", &a->ns1__modifyDataFileParameter_, "ns1:modifyDataFileParameter"))
+				{	soap_flag_ns1__modifyDataFileParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFileParameter(struct soap *soap, const struct __ns1__modifyDataFileParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataFileParameter(soap, tag?tag:"-ns1:modifyDataFileParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFileParameter * SOAP_FMAC4 soap_get___ns1__modifyDataFileParameter(struct soap *soap, struct __ns1__modifyDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameter);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataFileParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataFileParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFileParameter %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataFileParameter*)p = *(struct __ns1__modifyDataFileParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFileParameterResponse(struct soap *soap, struct __ns1__modifyDataFileParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataFileParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFileParameterResponse(struct soap *soap, const struct __ns1__modifyDataFileParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataFileParameterResponse(soap, &a->ns1__modifyDataFileParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFileParameterResponse *a, const char *type)
+{
+	if (a->ns1__modifyDataFileParameterResponse_)
+		soap_element_result(soap, "ns1:modifyDataFileParameterResponse");
+	if (soap_out_PointerTons1__modifyDataFileParameterResponse(soap, "ns1:modifyDataFileParameterResponse", -1, &a->ns1__modifyDataFileParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_in___ns1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataFileParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataFileParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataFileParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFileParameterResponse, sizeof(struct __ns1__modifyDataFileParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataFileParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataFileParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataFileParameterResponse(soap, "ns1:modifyDataFileParameterResponse", &a->ns1__modifyDataFileParameterResponse_, "ns1:modifyDataFileParameterResponse"))
+				{	soap_flag_ns1__modifyDataFileParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyDataFileParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFileParameterResponse(struct soap *soap, const struct __ns1__modifyDataFileParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataFileParameterResponse(soap, tag?tag:"-ns1:modifyDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFileParameterResponse * SOAP_FMAC4 soap_get___ns1__modifyDataFileParameterResponse(struct soap *soap, struct __ns1__modifyDataFileParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataFileParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFileParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFileParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFileParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataFileParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataFileParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataFileParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFileParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFileParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataFileParameterResponse*)p = *(struct __ns1__modifyDataFileParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataFileParameters(struct soap *soap, struct __ns1__addDataFileParameters *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addDataFileParameters_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataFileParameters(struct soap *soap, const struct __ns1__addDataFileParameters *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addDataFileParameters(soap, &a->ns1__addDataFileParameters_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataFileParameters(struct soap *soap, const char *tag, int id, const struct __ns1__addDataFileParameters *a, const char *type)
+{
+	if (soap_out_PointerTons1__addDataFileParameters(soap, "ns1:addDataFileParameters", -1, &a->ns1__addDataFileParameters_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataFileParameters * SOAP_FMAC4 soap_in___ns1__addDataFileParameters(struct soap *soap, const char *tag, struct __ns1__addDataFileParameters *a, const char *type)
+{
+	size_t soap_flag_ns1__addDataFileParameters_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addDataFileParameters *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataFileParameters, sizeof(struct __ns1__addDataFileParameters), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addDataFileParameters(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addDataFileParameters_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addDataFileParameters(soap, "ns1:addDataFileParameters", &a->ns1__addDataFileParameters_, "ns1:addDataFileParameters"))
+				{	soap_flag_ns1__addDataFileParameters_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataFileParameters(struct soap *soap, const struct __ns1__addDataFileParameters *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addDataFileParameters(soap, tag?tag:"-ns1:addDataFileParameters", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataFileParameters * SOAP_FMAC4 soap_get___ns1__addDataFileParameters(struct soap *soap, struct __ns1__addDataFileParameters *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addDataFileParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addDataFileParameters * SOAP_FMAC2 soap_instantiate___ns1__addDataFileParameters(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataFileParameters(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataFileParameters, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameters);
+		if (size)
+			*size = sizeof(struct __ns1__addDataFileParameters);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameters[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addDataFileParameters);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addDataFileParameters*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataFileParameters(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataFileParameters %p -> %p\n", q, p));
+	*(struct __ns1__addDataFileParameters*)p = *(struct __ns1__addDataFileParameters*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFile(struct soap *soap, struct __ns1__modifyDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataFile_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFile(struct soap *soap, const struct __ns1__modifyDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataFile(soap, &a->ns1__modifyDataFile_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFile *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyDataFile(soap, "ns1:modifyDataFile", -1, &a->ns1__modifyDataFile_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFile * SOAP_FMAC4 soap_in___ns1__modifyDataFile(struct soap *soap, const char *tag, struct __ns1__modifyDataFile *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataFile_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFile, sizeof(struct __ns1__modifyDataFile), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataFile(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataFile_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataFile(soap, "ns1:modifyDataFile", &a->ns1__modifyDataFile_, "ns1:modifyDataFile"))
+				{	soap_flag_ns1__modifyDataFile_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFile(struct soap *soap, const struct __ns1__modifyDataFile *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataFile(soap, tag?tag:"-ns1:modifyDataFile", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFile * SOAP_FMAC4 soap_get___ns1__modifyDataFile(struct soap *soap, struct __ns1__modifyDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataFile * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFile);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataFile);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataFile);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFile %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataFile*)p = *(struct __ns1__modifyDataFile*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyDataFileResponse(struct soap *soap, struct __ns1__modifyDataFileResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyDataFileResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyDataFileResponse(struct soap *soap, const struct __ns1__modifyDataFileResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyDataFileResponse(soap, &a->ns1__modifyDataFileResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyDataFileResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyDataFileResponse *a, const char *type)
+{
+	if (a->ns1__modifyDataFileResponse_)
+		soap_element_result(soap, "ns1:modifyDataFileResponse");
+	if (soap_out_PointerTons1__modifyDataFileResponse(soap, "ns1:modifyDataFileResponse", -1, &a->ns1__modifyDataFileResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFileResponse * SOAP_FMAC4 soap_in___ns1__modifyDataFileResponse(struct soap *soap, const char *tag, struct __ns1__modifyDataFileResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyDataFileResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyDataFileResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyDataFileResponse, sizeof(struct __ns1__modifyDataFileResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyDataFileResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyDataFileResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyDataFileResponse(soap, "ns1:modifyDataFileResponse", &a->ns1__modifyDataFileResponse_, "ns1:modifyDataFileResponse"))
+				{	soap_flag_ns1__modifyDataFileResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyDataFileResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyDataFileResponse(struct soap *soap, const struct __ns1__modifyDataFileResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyDataFileResponse(soap, tag?tag:"-ns1:modifyDataFileResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyDataFileResponse * SOAP_FMAC4 soap_get___ns1__modifyDataFileResponse(struct soap *soap, struct __ns1__modifyDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyDataFileResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyDataFileResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyDataFileResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyDataFileResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyDataFileResponse*)p = *(struct __ns1__modifyDataFileResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFile(struct soap *soap, struct __ns1__removeDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataFile_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFile(struct soap *soap, const struct __ns1__removeDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataFile(soap, &a->ns1__removeDataFile_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFile *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeDataFile(soap, "ns1:removeDataFile", -1, &a->ns1__removeDataFile_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFile * SOAP_FMAC4 soap_in___ns1__removeDataFile(struct soap *soap, const char *tag, struct __ns1__removeDataFile *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataFile_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFile, sizeof(struct __ns1__removeDataFile), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataFile(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataFile_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataFile(soap, "ns1:removeDataFile", &a->ns1__removeDataFile_, "ns1:removeDataFile"))
+				{	soap_flag_ns1__removeDataFile_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFile(struct soap *soap, const struct __ns1__removeDataFile *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataFile(soap, tag?tag:"-ns1:removeDataFile", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFile * SOAP_FMAC4 soap_get___ns1__removeDataFile(struct soap *soap, struct __ns1__removeDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataFile * SOAP_FMAC2 soap_instantiate___ns1__removeDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFile);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataFile);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataFile);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFile %p -> %p\n", q, p));
+	*(struct __ns1__removeDataFile*)p = *(struct __ns1__removeDataFile*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeDataFileResponse(struct soap *soap, struct __ns1__removeDataFileResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeDataFileResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeDataFileResponse(struct soap *soap, const struct __ns1__removeDataFileResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeDataFileResponse(soap, &a->ns1__removeDataFileResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeDataFileResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeDataFileResponse *a, const char *type)
+{
+	if (a->ns1__removeDataFileResponse_)
+		soap_element_result(soap, "ns1:removeDataFileResponse");
+	if (soap_out_PointerTons1__removeDataFileResponse(soap, "ns1:removeDataFileResponse", -1, &a->ns1__removeDataFileResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFileResponse * SOAP_FMAC4 soap_in___ns1__removeDataFileResponse(struct soap *soap, const char *tag, struct __ns1__removeDataFileResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeDataFileResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeDataFileResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeDataFileResponse, sizeof(struct __ns1__removeDataFileResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeDataFileResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeDataFileResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeDataFileResponse(soap, "ns1:removeDataFileResponse", &a->ns1__removeDataFileResponse_, "ns1:removeDataFileResponse"))
+				{	soap_flag_ns1__removeDataFileResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeDataFileResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeDataFileResponse(struct soap *soap, const struct __ns1__removeDataFileResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeDataFileResponse(soap, tag?tag:"-ns1:removeDataFileResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeDataFileResponse * SOAP_FMAC4 soap_get___ns1__removeDataFileResponse(struct soap *soap, struct __ns1__removeDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeDataFileResponse * SOAP_FMAC2 soap_instantiate___ns1__removeDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeDataFileResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeDataFileResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeDataFileResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeDataFileResponse*)p = *(struct __ns1__removeDataFileResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFile(struct soap *soap, struct __ns1__deleteDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataFile_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFile(struct soap *soap, const struct __ns1__deleteDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataFile(soap, &a->ns1__deleteDataFile_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFile *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteDataFile(soap, "ns1:deleteDataFile", -1, &a->ns1__deleteDataFile_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFile * SOAP_FMAC4 soap_in___ns1__deleteDataFile(struct soap *soap, const char *tag, struct __ns1__deleteDataFile *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataFile_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFile, sizeof(struct __ns1__deleteDataFile), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataFile(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataFile_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataFile(soap, "ns1:deleteDataFile", &a->ns1__deleteDataFile_, "ns1:deleteDataFile"))
+				{	soap_flag_ns1__deleteDataFile_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFile(struct soap *soap, const struct __ns1__deleteDataFile *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataFile(soap, tag?tag:"-ns1:deleteDataFile", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFile * SOAP_FMAC4 soap_get___ns1__deleteDataFile(struct soap *soap, struct __ns1__deleteDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataFile * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFile);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataFile);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataFile);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFile %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataFile*)p = *(struct __ns1__deleteDataFile*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteDataFileResponse(struct soap *soap, struct __ns1__deleteDataFileResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteDataFileResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteDataFileResponse(struct soap *soap, const struct __ns1__deleteDataFileResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteDataFileResponse(soap, &a->ns1__deleteDataFileResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteDataFileResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteDataFileResponse *a, const char *type)
+{
+	if (a->ns1__deleteDataFileResponse_)
+		soap_element_result(soap, "ns1:deleteDataFileResponse");
+	if (soap_out_PointerTons1__deleteDataFileResponse(soap, "ns1:deleteDataFileResponse", -1, &a->ns1__deleteDataFileResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFileResponse * SOAP_FMAC4 soap_in___ns1__deleteDataFileResponse(struct soap *soap, const char *tag, struct __ns1__deleteDataFileResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteDataFileResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteDataFileResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteDataFileResponse, sizeof(struct __ns1__deleteDataFileResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteDataFileResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteDataFileResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteDataFileResponse(soap, "ns1:deleteDataFileResponse", &a->ns1__deleteDataFileResponse_, "ns1:deleteDataFileResponse"))
+				{	soap_flag_ns1__deleteDataFileResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteDataFileResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteDataFileResponse(struct soap *soap, const struct __ns1__deleteDataFileResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteDataFileResponse(soap, tag?tag:"-ns1:deleteDataFileResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteDataFileResponse * SOAP_FMAC4 soap_get___ns1__deleteDataFileResponse(struct soap *soap, struct __ns1__deleteDataFileResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteDataFileResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteDataFileResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteDataFileResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteDataFileResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteDataFileResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteDataFileResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteDataFileResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteDataFileResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteDataFileResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteDataFileResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteDataFileResponse*)p = *(struct __ns1__deleteDataFileResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataFiles(struct soap *soap, struct __ns1__createDataFiles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__createDataFiles_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataFiles(struct soap *soap, const struct __ns1__createDataFiles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__createDataFiles(soap, &a->ns1__createDataFiles_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataFiles(struct soap *soap, const char *tag, int id, const struct __ns1__createDataFiles *a, const char *type)
+{
+	if (soap_out_PointerTons1__createDataFiles(soap, "ns1:createDataFiles", -1, &a->ns1__createDataFiles_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataFiles * SOAP_FMAC4 soap_in___ns1__createDataFiles(struct soap *soap, const char *tag, struct __ns1__createDataFiles *a, const char *type)
+{
+	size_t soap_flag_ns1__createDataFiles_ = 1;
+	short soap_flag;
+	a = (struct __ns1__createDataFiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataFiles, sizeof(struct __ns1__createDataFiles), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__createDataFiles(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__createDataFiles_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__createDataFiles(soap, "ns1:createDataFiles", &a->ns1__createDataFiles_, "ns1:createDataFiles"))
+				{	soap_flag_ns1__createDataFiles_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataFiles(struct soap *soap, const struct __ns1__createDataFiles *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__createDataFiles(soap, tag?tag:"-ns1:createDataFiles", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataFiles * SOAP_FMAC4 soap_get___ns1__createDataFiles(struct soap *soap, struct __ns1__createDataFiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__createDataFiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__createDataFiles * SOAP_FMAC2 soap_instantiate___ns1__createDataFiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataFiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataFiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFiles);
+		if (size)
+			*size = sizeof(struct __ns1__createDataFiles);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__createDataFiles);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__createDataFiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataFiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataFiles %p -> %p\n", q, p));
+	*(struct __ns1__createDataFiles*)p = *(struct __ns1__createDataFiles*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createDataFile(struct soap *soap, struct __ns1__createDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__createDataFile_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createDataFile(struct soap *soap, const struct __ns1__createDataFile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__createDataFile(soap, &a->ns1__createDataFile_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createDataFile(struct soap *soap, const char *tag, int id, const struct __ns1__createDataFile *a, const char *type)
+{
+	if (soap_out_PointerTons1__createDataFile(soap, "ns1:createDataFile", -1, &a->ns1__createDataFile_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataFile * SOAP_FMAC4 soap_in___ns1__createDataFile(struct soap *soap, const char *tag, struct __ns1__createDataFile *a, const char *type)
+{
+	size_t soap_flag_ns1__createDataFile_ = 1;
+	short soap_flag;
+	a = (struct __ns1__createDataFile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createDataFile, sizeof(struct __ns1__createDataFile), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__createDataFile(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__createDataFile_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__createDataFile(soap, "ns1:createDataFile", &a->ns1__createDataFile_, "ns1:createDataFile"))
+				{	soap_flag_ns1__createDataFile_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createDataFile(struct soap *soap, const struct __ns1__createDataFile *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__createDataFile(soap, tag?tag:"-ns1:createDataFile", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createDataFile * SOAP_FMAC4 soap_get___ns1__createDataFile(struct soap *soap, struct __ns1__createDataFile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__createDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__createDataFile * SOAP_FMAC2 soap_instantiate___ns1__createDataFile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createDataFile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createDataFile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFile);
+		if (size)
+			*size = sizeof(struct __ns1__createDataFile);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createDataFile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__createDataFile);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__createDataFile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createDataFile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createDataFile %p -> %p\n", q, p));
+	*(struct __ns1__createDataFile*)p = *(struct __ns1__createDataFile*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatafiles(struct soap *soap, struct __ns1__getDatafiles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getDatafiles_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatafiles(struct soap *soap, const struct __ns1__getDatafiles *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getDatafiles(soap, &a->ns1__getDatafiles_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatafiles(struct soap *soap, const char *tag, int id, const struct __ns1__getDatafiles *a, const char *type)
+{
+	if (soap_out_PointerTons1__getDatafiles(soap, "ns1:getDatafiles", -1, &a->ns1__getDatafiles_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatafiles * SOAP_FMAC4 soap_in___ns1__getDatafiles(struct soap *soap, const char *tag, struct __ns1__getDatafiles *a, const char *type)
+{
+	size_t soap_flag_ns1__getDatafiles_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getDatafiles *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatafiles, sizeof(struct __ns1__getDatafiles), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getDatafiles(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getDatafiles_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getDatafiles(soap, "ns1:getDatafiles", &a->ns1__getDatafiles_, "ns1:getDatafiles"))
+				{	soap_flag_ns1__getDatafiles_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatafiles(struct soap *soap, const struct __ns1__getDatafiles *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getDatafiles(soap, tag?tag:"-ns1:getDatafiles", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatafiles * SOAP_FMAC4 soap_get___ns1__getDatafiles(struct soap *soap, struct __ns1__getDatafiles *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getDatafiles * SOAP_FMAC2 soap_instantiate___ns1__getDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatafiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafiles);
+		if (size)
+			*size = sizeof(struct __ns1__getDatafiles);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafiles[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getDatafiles);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getDatafiles*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatafiles %p -> %p\n", q, p));
+	*(struct __ns1__getDatafiles*)p = *(struct __ns1__getDatafiles*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getUserDetails(struct soap *soap, struct __ns1__getUserDetails *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getUserDetails_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getUserDetails(struct soap *soap, const struct __ns1__getUserDetails *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getUserDetails(soap, &a->ns1__getUserDetails_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getUserDetails(struct soap *soap, const char *tag, int id, const struct __ns1__getUserDetails *a, const char *type)
+{
+	if (soap_out_PointerTons1__getUserDetails(soap, "ns1:getUserDetails", -1, &a->ns1__getUserDetails_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getUserDetails * SOAP_FMAC4 soap_in___ns1__getUserDetails(struct soap *soap, const char *tag, struct __ns1__getUserDetails *a, const char *type)
+{
+	size_t soap_flag_ns1__getUserDetails_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getUserDetails *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getUserDetails, sizeof(struct __ns1__getUserDetails), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getUserDetails(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getUserDetails_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getUserDetails(soap, "ns1:getUserDetails", &a->ns1__getUserDetails_, "ns1:getUserDetails"))
+				{	soap_flag_ns1__getUserDetails_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getUserDetails(struct soap *soap, const struct __ns1__getUserDetails *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getUserDetails(soap, tag?tag:"-ns1:getUserDetails", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getUserDetails * SOAP_FMAC4 soap_get___ns1__getUserDetails(struct soap *soap, struct __ns1__getUserDetails *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getUserDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getUserDetails * SOAP_FMAC2 soap_instantiate___ns1__getUserDetails(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getUserDetails(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getUserDetails, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getUserDetails);
+		if (size)
+			*size = sizeof(struct __ns1__getUserDetails);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getUserDetails[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getUserDetails);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getUserDetails*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getUserDetails(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getUserDetails %p -> %p\n", q, p));
+	*(struct __ns1__getUserDetails*)p = *(struct __ns1__getUserDetails*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__updateAuthorisation(struct soap *soap, struct __ns1__updateAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__updateAuthorisation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__updateAuthorisation(struct soap *soap, const struct __ns1__updateAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__updateAuthorisation(soap, &a->ns1__updateAuthorisation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__updateAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__updateAuthorisation *a, const char *type)
+{
+	if (soap_out_PointerTons1__updateAuthorisation(soap, "ns1:updateAuthorisation", -1, &a->ns1__updateAuthorisation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__updateAuthorisation * SOAP_FMAC4 soap_in___ns1__updateAuthorisation(struct soap *soap, const char *tag, struct __ns1__updateAuthorisation *a, const char *type)
+{
+	size_t soap_flag_ns1__updateAuthorisation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__updateAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__updateAuthorisation, sizeof(struct __ns1__updateAuthorisation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__updateAuthorisation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__updateAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__updateAuthorisation(soap, "ns1:updateAuthorisation", &a->ns1__updateAuthorisation_, "ns1:updateAuthorisation"))
+				{	soap_flag_ns1__updateAuthorisation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__updateAuthorisation(struct soap *soap, const struct __ns1__updateAuthorisation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__updateAuthorisation(soap, tag?tag:"-ns1:updateAuthorisation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__updateAuthorisation * SOAP_FMAC4 soap_get___ns1__updateAuthorisation(struct soap *soap, struct __ns1__updateAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__updateAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__updateAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__updateAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__updateAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__updateAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisation);
+		if (size)
+			*size = sizeof(struct __ns1__updateAuthorisation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__updateAuthorisation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__updateAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__updateAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__updateAuthorisation %p -> %p\n", q, p));
+	*(struct __ns1__updateAuthorisation*)p = *(struct __ns1__updateAuthorisation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__updateAuthorisationResponse(struct soap *soap, struct __ns1__updateAuthorisationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__updateAuthorisationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__updateAuthorisationResponse(struct soap *soap, const struct __ns1__updateAuthorisationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__updateAuthorisationResponse(soap, &a->ns1__updateAuthorisationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__updateAuthorisationResponse *a, const char *type)
+{
+	if (a->ns1__updateAuthorisationResponse_)
+		soap_element_result(soap, "ns1:updateAuthorisationResponse");
+	if (soap_out_PointerTons1__updateAuthorisationResponse(soap, "ns1:updateAuthorisationResponse", -1, &a->ns1__updateAuthorisationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_in___ns1__updateAuthorisationResponse(struct soap *soap, const char *tag, struct __ns1__updateAuthorisationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__updateAuthorisationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__updateAuthorisationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__updateAuthorisationResponse, sizeof(struct __ns1__updateAuthorisationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__updateAuthorisationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__updateAuthorisationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__updateAuthorisationResponse(soap, "ns1:updateAuthorisationResponse", &a->ns1__updateAuthorisationResponse_, "ns1:updateAuthorisationResponse"))
+				{	soap_flag_ns1__updateAuthorisationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:updateAuthorisationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__updateAuthorisationResponse(struct soap *soap, const struct __ns1__updateAuthorisationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__updateAuthorisationResponse(soap, tag?tag:"-ns1:updateAuthorisationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__updateAuthorisationResponse * SOAP_FMAC4 soap_get___ns1__updateAuthorisationResponse(struct soap *soap, struct __ns1__updateAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__updateAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__updateAuthorisationResponse * SOAP_FMAC2 soap_instantiate___ns1__updateAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__updateAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__updateAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__updateAuthorisationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__updateAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__updateAuthorisationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__updateAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__updateAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__updateAuthorisationResponse %p -> %p\n", q, p));
+	*(struct __ns1__updateAuthorisationResponse*)p = *(struct __ns1__updateAuthorisationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeAuthorisation(struct soap *soap, struct __ns1__removeAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeAuthorisation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeAuthorisation(struct soap *soap, const struct __ns1__removeAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeAuthorisation(soap, &a->ns1__removeAuthorisation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__removeAuthorisation *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeAuthorisation(soap, "ns1:removeAuthorisation", -1, &a->ns1__removeAuthorisation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeAuthorisation * SOAP_FMAC4 soap_in___ns1__removeAuthorisation(struct soap *soap, const char *tag, struct __ns1__removeAuthorisation *a, const char *type)
+{
+	size_t soap_flag_ns1__removeAuthorisation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeAuthorisation, sizeof(struct __ns1__removeAuthorisation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeAuthorisation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeAuthorisation(soap, "ns1:removeAuthorisation", &a->ns1__removeAuthorisation_, "ns1:removeAuthorisation"))
+				{	soap_flag_ns1__removeAuthorisation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeAuthorisation(struct soap *soap, const struct __ns1__removeAuthorisation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeAuthorisation(soap, tag?tag:"-ns1:removeAuthorisation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeAuthorisation * SOAP_FMAC4 soap_get___ns1__removeAuthorisation(struct soap *soap, struct __ns1__removeAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__removeAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisation);
+		if (size)
+			*size = sizeof(struct __ns1__removeAuthorisation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeAuthorisation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeAuthorisation %p -> %p\n", q, p));
+	*(struct __ns1__removeAuthorisation*)p = *(struct __ns1__removeAuthorisation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeAuthorisationResponse(struct soap *soap, struct __ns1__removeAuthorisationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeAuthorisationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeAuthorisationResponse(struct soap *soap, const struct __ns1__removeAuthorisationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeAuthorisationResponse(soap, &a->ns1__removeAuthorisationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeAuthorisationResponse *a, const char *type)
+{
+	if (a->ns1__removeAuthorisationResponse_)
+		soap_element_result(soap, "ns1:removeAuthorisationResponse");
+	if (soap_out_PointerTons1__removeAuthorisationResponse(soap, "ns1:removeAuthorisationResponse", -1, &a->ns1__removeAuthorisationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_in___ns1__removeAuthorisationResponse(struct soap *soap, const char *tag, struct __ns1__removeAuthorisationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeAuthorisationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeAuthorisationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeAuthorisationResponse, sizeof(struct __ns1__removeAuthorisationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeAuthorisationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeAuthorisationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeAuthorisationResponse(soap, "ns1:removeAuthorisationResponse", &a->ns1__removeAuthorisationResponse_, "ns1:removeAuthorisationResponse"))
+				{	soap_flag_ns1__removeAuthorisationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeAuthorisationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeAuthorisationResponse(struct soap *soap, const struct __ns1__removeAuthorisationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeAuthorisationResponse(soap, tag?tag:"-ns1:removeAuthorisationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeAuthorisationResponse * SOAP_FMAC4 soap_get___ns1__removeAuthorisationResponse(struct soap *soap, struct __ns1__removeAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeAuthorisationResponse * SOAP_FMAC2 soap_instantiate___ns1__removeAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeAuthorisationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeAuthorisationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeAuthorisationResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeAuthorisationResponse*)p = *(struct __ns1__removeAuthorisationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteAuthorisation(struct soap *soap, struct __ns1__deleteAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteAuthorisation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteAuthorisation(struct soap *soap, const struct __ns1__deleteAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteAuthorisation(soap, &a->ns1__deleteAuthorisation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__deleteAuthorisation *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteAuthorisation(soap, "ns1:deleteAuthorisation", -1, &a->ns1__deleteAuthorisation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteAuthorisation * SOAP_FMAC4 soap_in___ns1__deleteAuthorisation(struct soap *soap, const char *tag, struct __ns1__deleteAuthorisation *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteAuthorisation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteAuthorisation, sizeof(struct __ns1__deleteAuthorisation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteAuthorisation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteAuthorisation(soap, "ns1:deleteAuthorisation", &a->ns1__deleteAuthorisation_, "ns1:deleteAuthorisation"))
+				{	soap_flag_ns1__deleteAuthorisation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteAuthorisation(struct soap *soap, const struct __ns1__deleteAuthorisation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteAuthorisation(soap, tag?tag:"-ns1:deleteAuthorisation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteAuthorisation * SOAP_FMAC4 soap_get___ns1__deleteAuthorisation(struct soap *soap, struct __ns1__deleteAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__deleteAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisation);
+		if (size)
+			*size = sizeof(struct __ns1__deleteAuthorisation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteAuthorisation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteAuthorisation %p -> %p\n", q, p));
+	*(struct __ns1__deleteAuthorisation*)p = *(struct __ns1__deleteAuthorisation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteAuthorisationResponse(struct soap *soap, struct __ns1__deleteAuthorisationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteAuthorisationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteAuthorisationResponse(struct soap *soap, const struct __ns1__deleteAuthorisationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteAuthorisationResponse(soap, &a->ns1__deleteAuthorisationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteAuthorisationResponse *a, const char *type)
+{
+	if (a->ns1__deleteAuthorisationResponse_)
+		soap_element_result(soap, "ns1:deleteAuthorisationResponse");
+	if (soap_out_PointerTons1__deleteAuthorisationResponse(soap, "ns1:deleteAuthorisationResponse", -1, &a->ns1__deleteAuthorisationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_in___ns1__deleteAuthorisationResponse(struct soap *soap, const char *tag, struct __ns1__deleteAuthorisationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteAuthorisationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteAuthorisationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteAuthorisationResponse, sizeof(struct __ns1__deleteAuthorisationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteAuthorisationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteAuthorisationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteAuthorisationResponse(soap, "ns1:deleteAuthorisationResponse", &a->ns1__deleteAuthorisationResponse_, "ns1:deleteAuthorisationResponse"))
+				{	soap_flag_ns1__deleteAuthorisationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteAuthorisationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteAuthorisationResponse(struct soap *soap, const struct __ns1__deleteAuthorisationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteAuthorisationResponse(soap, tag?tag:"-ns1:deleteAuthorisationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteAuthorisationResponse * SOAP_FMAC4 soap_get___ns1__deleteAuthorisationResponse(struct soap *soap, struct __ns1__deleteAuthorisationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteAuthorisationResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteAuthorisationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteAuthorisationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteAuthorisationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteAuthorisationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteAuthorisationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteAuthorisationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteAuthorisationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteAuthorisationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteAuthorisationResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteAuthorisationResponse*)p = *(struct __ns1__deleteAuthorisationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addAuthorisation(struct soap *soap, struct __ns1__addAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addAuthorisation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addAuthorisation(struct soap *soap, const struct __ns1__addAuthorisation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addAuthorisation(soap, &a->ns1__addAuthorisation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addAuthorisation(struct soap *soap, const char *tag, int id, const struct __ns1__addAuthorisation *a, const char *type)
+{
+	if (soap_out_PointerTons1__addAuthorisation(soap, "ns1:addAuthorisation", -1, &a->ns1__addAuthorisation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addAuthorisation * SOAP_FMAC4 soap_in___ns1__addAuthorisation(struct soap *soap, const char *tag, struct __ns1__addAuthorisation *a, const char *type)
+{
+	size_t soap_flag_ns1__addAuthorisation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addAuthorisation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addAuthorisation, sizeof(struct __ns1__addAuthorisation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addAuthorisation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addAuthorisation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addAuthorisation(soap, "ns1:addAuthorisation", &a->ns1__addAuthorisation_, "ns1:addAuthorisation"))
+				{	soap_flag_ns1__addAuthorisation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addAuthorisation(struct soap *soap, const struct __ns1__addAuthorisation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addAuthorisation(soap, tag?tag:"-ns1:addAuthorisation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addAuthorisation * SOAP_FMAC4 soap_get___ns1__addAuthorisation(struct soap *soap, struct __ns1__addAuthorisation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addAuthorisation * SOAP_FMAC2 soap_instantiate___ns1__addAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addAuthorisation);
+		if (size)
+			*size = sizeof(struct __ns1__addAuthorisation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addAuthorisation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addAuthorisation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addAuthorisation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addAuthorisation %p -> %p\n", q, p));
+	*(struct __ns1__addAuthorisation*)p = *(struct __ns1__addAuthorisation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getAuthorisations(struct soap *soap, struct __ns1__getAuthorisations *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getAuthorisations_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getAuthorisations(struct soap *soap, const struct __ns1__getAuthorisations *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getAuthorisations(soap, &a->ns1__getAuthorisations_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getAuthorisations(struct soap *soap, const char *tag, int id, const struct __ns1__getAuthorisations *a, const char *type)
+{
+	if (soap_out_PointerTons1__getAuthorisations(soap, "ns1:getAuthorisations", -1, &a->ns1__getAuthorisations_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getAuthorisations * SOAP_FMAC4 soap_in___ns1__getAuthorisations(struct soap *soap, const char *tag, struct __ns1__getAuthorisations *a, const char *type)
+{
+	size_t soap_flag_ns1__getAuthorisations_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getAuthorisations *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getAuthorisations, sizeof(struct __ns1__getAuthorisations), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getAuthorisations(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getAuthorisations_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getAuthorisations(soap, "ns1:getAuthorisations", &a->ns1__getAuthorisations_, "ns1:getAuthorisations"))
+				{	soap_flag_ns1__getAuthorisations_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getAuthorisations(struct soap *soap, const struct __ns1__getAuthorisations *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getAuthorisations(soap, tag?tag:"-ns1:getAuthorisations", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getAuthorisations * SOAP_FMAC4 soap_get___ns1__getAuthorisations(struct soap *soap, struct __ns1__getAuthorisations *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getAuthorisations(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getAuthorisations * SOAP_FMAC2 soap_instantiate___ns1__getAuthorisations(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getAuthorisations(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getAuthorisations, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAuthorisations);
+		if (size)
+			*size = sizeof(struct __ns1__getAuthorisations);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getAuthorisations[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getAuthorisations);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getAuthorisations*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getAuthorisations(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getAuthorisations %p -> %p\n", q, p));
+	*(struct __ns1__getAuthorisations*)p = *(struct __ns1__getAuthorisations*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySampleParameter(struct soap *soap, struct __ns1__modifySampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifySampleParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySampleParameter(struct soap *soap, const struct __ns1__modifySampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifySampleParameter(soap, &a->ns1__modifySampleParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__modifySampleParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifySampleParameter(soap, "ns1:modifySampleParameter", -1, &a->ns1__modifySampleParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySampleParameter * SOAP_FMAC4 soap_in___ns1__modifySampleParameter(struct soap *soap, const char *tag, struct __ns1__modifySampleParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__modifySampleParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifySampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySampleParameter, sizeof(struct __ns1__modifySampleParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifySampleParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifySampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifySampleParameter(soap, "ns1:modifySampleParameter", &a->ns1__modifySampleParameter_, "ns1:modifySampleParameter"))
+				{	soap_flag_ns1__modifySampleParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySampleParameter(struct soap *soap, const struct __ns1__modifySampleParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifySampleParameter(soap, tag?tag:"-ns1:modifySampleParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySampleParameter * SOAP_FMAC4 soap_get___ns1__modifySampleParameter(struct soap *soap, struct __ns1__modifySampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifySampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifySampleParameter * SOAP_FMAC2 soap_instantiate___ns1__modifySampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameter);
+		if (size)
+			*size = sizeof(struct __ns1__modifySampleParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifySampleParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifySampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySampleParameter %p -> %p\n", q, p));
+	*(struct __ns1__modifySampleParameter*)p = *(struct __ns1__modifySampleParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySampleParameterResponse(struct soap *soap, struct __ns1__modifySampleParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifySampleParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySampleParameterResponse(struct soap *soap, const struct __ns1__modifySampleParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifySampleParameterResponse(soap, &a->ns1__modifySampleParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifySampleParameterResponse *a, const char *type)
+{
+	if (a->ns1__modifySampleParameterResponse_)
+		soap_element_result(soap, "ns1:modifySampleParameterResponse");
+	if (soap_out_PointerTons1__modifySampleParameterResponse(soap, "ns1:modifySampleParameterResponse", -1, &a->ns1__modifySampleParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_in___ns1__modifySampleParameterResponse(struct soap *soap, const char *tag, struct __ns1__modifySampleParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifySampleParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifySampleParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySampleParameterResponse, sizeof(struct __ns1__modifySampleParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifySampleParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifySampleParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifySampleParameterResponse(soap, "ns1:modifySampleParameterResponse", &a->ns1__modifySampleParameterResponse_, "ns1:modifySampleParameterResponse"))
+				{	soap_flag_ns1__modifySampleParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifySampleParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySampleParameterResponse(struct soap *soap, const struct __ns1__modifySampleParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifySampleParameterResponse(soap, tag?tag:"-ns1:modifySampleParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySampleParameterResponse * SOAP_FMAC4 soap_get___ns1__modifySampleParameterResponse(struct soap *soap, struct __ns1__modifySampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifySampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifySampleParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__modifySampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifySampleParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifySampleParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifySampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySampleParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifySampleParameterResponse*)p = *(struct __ns1__modifySampleParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSampleParameter(struct soap *soap, struct __ns1__deleteSampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteSampleParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSampleParameter(struct soap *soap, const struct __ns1__deleteSampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteSampleParameter(soap, &a->ns1__deleteSampleParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSampleParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteSampleParameter(soap, "ns1:deleteSampleParameter", -1, &a->ns1__deleteSampleParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSampleParameter * SOAP_FMAC4 soap_in___ns1__deleteSampleParameter(struct soap *soap, const char *tag, struct __ns1__deleteSampleParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteSampleParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteSampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSampleParameter, sizeof(struct __ns1__deleteSampleParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteSampleParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteSampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteSampleParameter(soap, "ns1:deleteSampleParameter", &a->ns1__deleteSampleParameter_, "ns1:deleteSampleParameter"))
+				{	soap_flag_ns1__deleteSampleParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSampleParameter(struct soap *soap, const struct __ns1__deleteSampleParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteSampleParameter(soap, tag?tag:"-ns1:deleteSampleParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSampleParameter * SOAP_FMAC4 soap_get___ns1__deleteSampleParameter(struct soap *soap, struct __ns1__deleteSampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteSampleParameter * SOAP_FMAC2 soap_instantiate___ns1__deleteSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameter);
+		if (size)
+			*size = sizeof(struct __ns1__deleteSampleParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteSampleParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteSampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSampleParameter %p -> %p\n", q, p));
+	*(struct __ns1__deleteSampleParameter*)p = *(struct __ns1__deleteSampleParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSampleParameterResponse(struct soap *soap, struct __ns1__deleteSampleParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteSampleParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSampleParameterResponse(struct soap *soap, const struct __ns1__deleteSampleParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteSampleParameterResponse(soap, &a->ns1__deleteSampleParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSampleParameterResponse *a, const char *type)
+{
+	if (a->ns1__deleteSampleParameterResponse_)
+		soap_element_result(soap, "ns1:deleteSampleParameterResponse");
+	if (soap_out_PointerTons1__deleteSampleParameterResponse(soap, "ns1:deleteSampleParameterResponse", -1, &a->ns1__deleteSampleParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_in___ns1__deleteSampleParameterResponse(struct soap *soap, const char *tag, struct __ns1__deleteSampleParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteSampleParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteSampleParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSampleParameterResponse, sizeof(struct __ns1__deleteSampleParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteSampleParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteSampleParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteSampleParameterResponse(soap, "ns1:deleteSampleParameterResponse", &a->ns1__deleteSampleParameterResponse_, "ns1:deleteSampleParameterResponse"))
+				{	soap_flag_ns1__deleteSampleParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteSampleParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSampleParameterResponse(struct soap *soap, const struct __ns1__deleteSampleParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteSampleParameterResponse(soap, tag?tag:"-ns1:deleteSampleParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSampleParameterResponse * SOAP_FMAC4 soap_get___ns1__deleteSampleParameterResponse(struct soap *soap, struct __ns1__deleteSampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteSampleParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteSampleParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteSampleParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteSampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSampleParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteSampleParameterResponse*)p = *(struct __ns1__deleteSampleParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSampleParameter(struct soap *soap, struct __ns1__removeSampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeSampleParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSampleParameter(struct soap *soap, const struct __ns1__removeSampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeSampleParameter(soap, &a->ns1__removeSampleParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__removeSampleParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeSampleParameter(soap, "ns1:removeSampleParameter", -1, &a->ns1__removeSampleParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSampleParameter * SOAP_FMAC4 soap_in___ns1__removeSampleParameter(struct soap *soap, const char *tag, struct __ns1__removeSampleParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__removeSampleParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeSampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSampleParameter, sizeof(struct __ns1__removeSampleParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeSampleParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeSampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeSampleParameter(soap, "ns1:removeSampleParameter", &a->ns1__removeSampleParameter_, "ns1:removeSampleParameter"))
+				{	soap_flag_ns1__removeSampleParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSampleParameter(struct soap *soap, const struct __ns1__removeSampleParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeSampleParameter(soap, tag?tag:"-ns1:removeSampleParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSampleParameter * SOAP_FMAC4 soap_get___ns1__removeSampleParameter(struct soap *soap, struct __ns1__removeSampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeSampleParameter * SOAP_FMAC2 soap_instantiate___ns1__removeSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameter);
+		if (size)
+			*size = sizeof(struct __ns1__removeSampleParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeSampleParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeSampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSampleParameter %p -> %p\n", q, p));
+	*(struct __ns1__removeSampleParameter*)p = *(struct __ns1__removeSampleParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSampleParameterResponse(struct soap *soap, struct __ns1__removeSampleParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeSampleParameterResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSampleParameterResponse(struct soap *soap, const struct __ns1__removeSampleParameterResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeSampleParameterResponse(soap, &a->ns1__removeSampleParameterResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeSampleParameterResponse *a, const char *type)
+{
+	if (a->ns1__removeSampleParameterResponse_)
+		soap_element_result(soap, "ns1:removeSampleParameterResponse");
+	if (soap_out_PointerTons1__removeSampleParameterResponse(soap, "ns1:removeSampleParameterResponse", -1, &a->ns1__removeSampleParameterResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_in___ns1__removeSampleParameterResponse(struct soap *soap, const char *tag, struct __ns1__removeSampleParameterResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeSampleParameterResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeSampleParameterResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSampleParameterResponse, sizeof(struct __ns1__removeSampleParameterResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeSampleParameterResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeSampleParameterResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeSampleParameterResponse(soap, "ns1:removeSampleParameterResponse", &a->ns1__removeSampleParameterResponse_, "ns1:removeSampleParameterResponse"))
+				{	soap_flag_ns1__removeSampleParameterResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeSampleParameterResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSampleParameterResponse(struct soap *soap, const struct __ns1__removeSampleParameterResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeSampleParameterResponse(soap, tag?tag:"-ns1:removeSampleParameterResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSampleParameterResponse * SOAP_FMAC4 soap_get___ns1__removeSampleParameterResponse(struct soap *soap, struct __ns1__removeSampleParameterResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeSampleParameterResponse * SOAP_FMAC2 soap_instantiate___ns1__removeSampleParameterResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSampleParameterResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSampleParameterResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameterResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeSampleParameterResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleParameterResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeSampleParameterResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeSampleParameterResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSampleParameterResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSampleParameterResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeSampleParameterResponse*)p = *(struct __ns1__removeSampleParameterResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySample(struct soap *soap, struct __ns1__modifySample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifySample_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySample(struct soap *soap, const struct __ns1__modifySample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifySample(soap, &a->ns1__modifySample_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySample(struct soap *soap, const char *tag, int id, const struct __ns1__modifySample *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifySample(soap, "ns1:modifySample", -1, &a->ns1__modifySample_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySample * SOAP_FMAC4 soap_in___ns1__modifySample(struct soap *soap, const char *tag, struct __ns1__modifySample *a, const char *type)
+{
+	size_t soap_flag_ns1__modifySample_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifySample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySample, sizeof(struct __ns1__modifySample), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifySample(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifySample_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifySample(soap, "ns1:modifySample", &a->ns1__modifySample_, "ns1:modifySample"))
+				{	soap_flag_ns1__modifySample_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySample(struct soap *soap, const struct __ns1__modifySample *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifySample(soap, tag?tag:"-ns1:modifySample", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySample * SOAP_FMAC4 soap_get___ns1__modifySample(struct soap *soap, struct __ns1__modifySample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifySample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifySample * SOAP_FMAC2 soap_instantiate___ns1__modifySample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySample);
+		if (size)
+			*size = sizeof(struct __ns1__modifySample);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifySample);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifySample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySample %p -> %p\n", q, p));
+	*(struct __ns1__modifySample*)p = *(struct __ns1__modifySample*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifySampleResponse(struct soap *soap, struct __ns1__modifySampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifySampleResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifySampleResponse(struct soap *soap, const struct __ns1__modifySampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifySampleResponse(soap, &a->ns1__modifySampleResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifySampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifySampleResponse *a, const char *type)
+{
+	if (a->ns1__modifySampleResponse_)
+		soap_element_result(soap, "ns1:modifySampleResponse");
+	if (soap_out_PointerTons1__modifySampleResponse(soap, "ns1:modifySampleResponse", -1, &a->ns1__modifySampleResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySampleResponse * SOAP_FMAC4 soap_in___ns1__modifySampleResponse(struct soap *soap, const char *tag, struct __ns1__modifySampleResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifySampleResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifySampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifySampleResponse, sizeof(struct __ns1__modifySampleResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifySampleResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifySampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifySampleResponse(soap, "ns1:modifySampleResponse", &a->ns1__modifySampleResponse_, "ns1:modifySampleResponse"))
+				{	soap_flag_ns1__modifySampleResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifySampleResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifySampleResponse(struct soap *soap, const struct __ns1__modifySampleResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifySampleResponse(soap, tag?tag:"-ns1:modifySampleResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifySampleResponse * SOAP_FMAC4 soap_get___ns1__modifySampleResponse(struct soap *soap, struct __ns1__modifySampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifySampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifySampleResponse * SOAP_FMAC2 soap_instantiate___ns1__modifySampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifySampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifySampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifySampleResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifySampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifySampleResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifySampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifySampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifySampleResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifySampleResponse*)p = *(struct __ns1__modifySampleResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSample(struct soap *soap, struct __ns1__deleteSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteSample_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSample(struct soap *soap, const struct __ns1__deleteSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteSample(soap, &a->ns1__deleteSample_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSample(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSample *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteSample(soap, "ns1:deleteSample", -1, &a->ns1__deleteSample_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSample * SOAP_FMAC4 soap_in___ns1__deleteSample(struct soap *soap, const char *tag, struct __ns1__deleteSample *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteSample_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSample, sizeof(struct __ns1__deleteSample), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteSample(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteSample_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteSample(soap, "ns1:deleteSample", &a->ns1__deleteSample_, "ns1:deleteSample"))
+				{	soap_flag_ns1__deleteSample_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSample(struct soap *soap, const struct __ns1__deleteSample *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteSample(soap, tag?tag:"-ns1:deleteSample", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSample * SOAP_FMAC4 soap_get___ns1__deleteSample(struct soap *soap, struct __ns1__deleteSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteSample * SOAP_FMAC2 soap_instantiate___ns1__deleteSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSample);
+		if (size)
+			*size = sizeof(struct __ns1__deleteSample);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteSample);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSample %p -> %p\n", q, p));
+	*(struct __ns1__deleteSample*)p = *(struct __ns1__deleteSample*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteSampleResponse(struct soap *soap, struct __ns1__deleteSampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteSampleResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteSampleResponse(struct soap *soap, const struct __ns1__deleteSampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteSampleResponse(soap, &a->ns1__deleteSampleResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteSampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteSampleResponse *a, const char *type)
+{
+	if (a->ns1__deleteSampleResponse_)
+		soap_element_result(soap, "ns1:deleteSampleResponse");
+	if (soap_out_PointerTons1__deleteSampleResponse(soap, "ns1:deleteSampleResponse", -1, &a->ns1__deleteSampleResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSampleResponse * SOAP_FMAC4 soap_in___ns1__deleteSampleResponse(struct soap *soap, const char *tag, struct __ns1__deleteSampleResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteSampleResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteSampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteSampleResponse, sizeof(struct __ns1__deleteSampleResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteSampleResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteSampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteSampleResponse(soap, "ns1:deleteSampleResponse", &a->ns1__deleteSampleResponse_, "ns1:deleteSampleResponse"))
+				{	soap_flag_ns1__deleteSampleResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteSampleResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteSampleResponse(struct soap *soap, const struct __ns1__deleteSampleResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteSampleResponse(soap, tag?tag:"-ns1:deleteSampleResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteSampleResponse * SOAP_FMAC4 soap_get___ns1__deleteSampleResponse(struct soap *soap, struct __ns1__deleteSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteSampleResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteSampleResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteSampleResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteSampleResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteSampleResponse*)p = *(struct __ns1__deleteSampleResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSample(struct soap *soap, struct __ns1__removeSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeSample_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSample(struct soap *soap, const struct __ns1__removeSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeSample(soap, &a->ns1__removeSample_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSample(struct soap *soap, const char *tag, int id, const struct __ns1__removeSample *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeSample(soap, "ns1:removeSample", -1, &a->ns1__removeSample_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSample * SOAP_FMAC4 soap_in___ns1__removeSample(struct soap *soap, const char *tag, struct __ns1__removeSample *a, const char *type)
+{
+	size_t soap_flag_ns1__removeSample_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSample, sizeof(struct __ns1__removeSample), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeSample(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeSample_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeSample(soap, "ns1:removeSample", &a->ns1__removeSample_, "ns1:removeSample"))
+				{	soap_flag_ns1__removeSample_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSample(struct soap *soap, const struct __ns1__removeSample *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeSample(soap, tag?tag:"-ns1:removeSample", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSample * SOAP_FMAC4 soap_get___ns1__removeSample(struct soap *soap, struct __ns1__removeSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeSample * SOAP_FMAC2 soap_instantiate___ns1__removeSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSample);
+		if (size)
+			*size = sizeof(struct __ns1__removeSample);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeSample);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSample %p -> %p\n", q, p));
+	*(struct __ns1__removeSample*)p = *(struct __ns1__removeSample*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeSampleResponse(struct soap *soap, struct __ns1__removeSampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeSampleResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeSampleResponse(struct soap *soap, const struct __ns1__removeSampleResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeSampleResponse(soap, &a->ns1__removeSampleResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeSampleResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeSampleResponse *a, const char *type)
+{
+	if (a->ns1__removeSampleResponse_)
+		soap_element_result(soap, "ns1:removeSampleResponse");
+	if (soap_out_PointerTons1__removeSampleResponse(soap, "ns1:removeSampleResponse", -1, &a->ns1__removeSampleResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSampleResponse * SOAP_FMAC4 soap_in___ns1__removeSampleResponse(struct soap *soap, const char *tag, struct __ns1__removeSampleResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeSampleResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeSampleResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeSampleResponse, sizeof(struct __ns1__removeSampleResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeSampleResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeSampleResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeSampleResponse(soap, "ns1:removeSampleResponse", &a->ns1__removeSampleResponse_, "ns1:removeSampleResponse"))
+				{	soap_flag_ns1__removeSampleResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeSampleResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeSampleResponse(struct soap *soap, const struct __ns1__removeSampleResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeSampleResponse(soap, tag?tag:"-ns1:removeSampleResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeSampleResponse * SOAP_FMAC4 soap_get___ns1__removeSampleResponse(struct soap *soap, struct __ns1__removeSampleResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeSampleResponse * SOAP_FMAC2 soap_instantiate___ns1__removeSampleResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeSampleResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeSampleResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeSampleResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeSampleResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeSampleResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeSampleResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeSampleResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeSampleResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeSampleResponse*)p = *(struct __ns1__removeSampleResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigator(struct soap *soap, struct __ns1__deleteInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteInvestigator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigator(struct soap *soap, const struct __ns1__deleteInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteInvestigator(soap, &a->ns1__deleteInvestigator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigator *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteInvestigator(soap, "ns1:deleteInvestigator", -1, &a->ns1__deleteInvestigator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigator * SOAP_FMAC4 soap_in___ns1__deleteInvestigator(struct soap *soap, const char *tag, struct __ns1__deleteInvestigator *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteInvestigator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigator, sizeof(struct __ns1__deleteInvestigator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteInvestigator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteInvestigator(soap, "ns1:deleteInvestigator", &a->ns1__deleteInvestigator_, "ns1:deleteInvestigator"))
+				{	soap_flag_ns1__deleteInvestigator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigator(struct soap *soap, const struct __ns1__deleteInvestigator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteInvestigator(soap, tag?tag:"-ns1:deleteInvestigator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigator * SOAP_FMAC4 soap_get___ns1__deleteInvestigator(struct soap *soap, struct __ns1__deleteInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteInvestigator * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigator);
+		if (size)
+			*size = sizeof(struct __ns1__deleteInvestigator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteInvestigator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigator %p -> %p\n", q, p));
+	*(struct __ns1__deleteInvestigator*)p = *(struct __ns1__deleteInvestigator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigatorResponse(struct soap *soap, struct __ns1__deleteInvestigatorResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteInvestigatorResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigatorResponse(struct soap *soap, const struct __ns1__deleteInvestigatorResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteInvestigatorResponse(soap, &a->ns1__deleteInvestigatorResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigatorResponse *a, const char *type)
+{
+	if (a->ns1__deleteInvestigatorResponse_)
+		soap_element_result(soap, "ns1:deleteInvestigatorResponse");
+	if (soap_out_PointerTons1__deleteInvestigatorResponse(soap, "ns1:deleteInvestigatorResponse", -1, &a->ns1__deleteInvestigatorResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_in___ns1__deleteInvestigatorResponse(struct soap *soap, const char *tag, struct __ns1__deleteInvestigatorResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteInvestigatorResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteInvestigatorResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigatorResponse, sizeof(struct __ns1__deleteInvestigatorResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteInvestigatorResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteInvestigatorResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteInvestigatorResponse(soap, "ns1:deleteInvestigatorResponse", &a->ns1__deleteInvestigatorResponse_, "ns1:deleteInvestigatorResponse"))
+				{	soap_flag_ns1__deleteInvestigatorResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteInvestigatorResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigatorResponse(struct soap *soap, const struct __ns1__deleteInvestigatorResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteInvestigatorResponse(soap, tag?tag:"-ns1:deleteInvestigatorResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigatorResponse * SOAP_FMAC4 soap_get___ns1__deleteInvestigatorResponse(struct soap *soap, struct __ns1__deleteInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteInvestigatorResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigatorResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteInvestigatorResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteInvestigatorResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigatorResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteInvestigatorResponse*)p = *(struct __ns1__deleteInvestigatorResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigator(struct soap *soap, struct __ns1__modifyInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyInvestigator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigator(struct soap *soap, const struct __ns1__modifyInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyInvestigator(soap, &a->ns1__modifyInvestigator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigator *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyInvestigator(soap, "ns1:modifyInvestigator", -1, &a->ns1__modifyInvestigator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigator * SOAP_FMAC4 soap_in___ns1__modifyInvestigator(struct soap *soap, const char *tag, struct __ns1__modifyInvestigator *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyInvestigator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigator, sizeof(struct __ns1__modifyInvestigator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyInvestigator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyInvestigator(soap, "ns1:modifyInvestigator", &a->ns1__modifyInvestigator_, "ns1:modifyInvestigator"))
+				{	soap_flag_ns1__modifyInvestigator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigator(struct soap *soap, const struct __ns1__modifyInvestigator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyInvestigator(soap, tag?tag:"-ns1:modifyInvestigator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigator * SOAP_FMAC4 soap_get___ns1__modifyInvestigator(struct soap *soap, struct __ns1__modifyInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyInvestigator * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigator);
+		if (size)
+			*size = sizeof(struct __ns1__modifyInvestigator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyInvestigator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigator %p -> %p\n", q, p));
+	*(struct __ns1__modifyInvestigator*)p = *(struct __ns1__modifyInvestigator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigatorResponse(struct soap *soap, struct __ns1__modifyInvestigatorResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyInvestigatorResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigatorResponse(struct soap *soap, const struct __ns1__modifyInvestigatorResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyInvestigatorResponse(soap, &a->ns1__modifyInvestigatorResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigatorResponse *a, const char *type)
+{
+	if (a->ns1__modifyInvestigatorResponse_)
+		soap_element_result(soap, "ns1:modifyInvestigatorResponse");
+	if (soap_out_PointerTons1__modifyInvestigatorResponse(soap, "ns1:modifyInvestigatorResponse", -1, &a->ns1__modifyInvestigatorResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_in___ns1__modifyInvestigatorResponse(struct soap *soap, const char *tag, struct __ns1__modifyInvestigatorResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyInvestigatorResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyInvestigatorResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigatorResponse, sizeof(struct __ns1__modifyInvestigatorResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyInvestigatorResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyInvestigatorResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyInvestigatorResponse(soap, "ns1:modifyInvestigatorResponse", &a->ns1__modifyInvestigatorResponse_, "ns1:modifyInvestigatorResponse"))
+				{	soap_flag_ns1__modifyInvestigatorResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyInvestigatorResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigatorResponse(struct soap *soap, const struct __ns1__modifyInvestigatorResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyInvestigatorResponse(soap, tag?tag:"-ns1:modifyInvestigatorResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigatorResponse * SOAP_FMAC4 soap_get___ns1__modifyInvestigatorResponse(struct soap *soap, struct __ns1__modifyInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyInvestigatorResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigatorResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyInvestigatorResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyInvestigatorResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigatorResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyInvestigatorResponse*)p = *(struct __ns1__modifyInvestigatorResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigator(struct soap *soap, struct __ns1__removeInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeInvestigator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigator(struct soap *soap, const struct __ns1__removeInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeInvestigator(soap, &a->ns1__removeInvestigator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigator *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeInvestigator(soap, "ns1:removeInvestigator", -1, &a->ns1__removeInvestigator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigator * SOAP_FMAC4 soap_in___ns1__removeInvestigator(struct soap *soap, const char *tag, struct __ns1__removeInvestigator *a, const char *type)
+{
+	size_t soap_flag_ns1__removeInvestigator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigator, sizeof(struct __ns1__removeInvestigator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeInvestigator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeInvestigator(soap, "ns1:removeInvestigator", &a->ns1__removeInvestigator_, "ns1:removeInvestigator"))
+				{	soap_flag_ns1__removeInvestigator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigator(struct soap *soap, const struct __ns1__removeInvestigator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeInvestigator(soap, tag?tag:"-ns1:removeInvestigator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigator * SOAP_FMAC4 soap_get___ns1__removeInvestigator(struct soap *soap, struct __ns1__removeInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeInvestigator * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigator);
+		if (size)
+			*size = sizeof(struct __ns1__removeInvestigator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeInvestigator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigator %p -> %p\n", q, p));
+	*(struct __ns1__removeInvestigator*)p = *(struct __ns1__removeInvestigator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigatorResponse(struct soap *soap, struct __ns1__removeInvestigatorResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeInvestigatorResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigatorResponse(struct soap *soap, const struct __ns1__removeInvestigatorResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeInvestigatorResponse(soap, &a->ns1__removeInvestigatorResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigatorResponse *a, const char *type)
+{
+	if (a->ns1__removeInvestigatorResponse_)
+		soap_element_result(soap, "ns1:removeInvestigatorResponse");
+	if (soap_out_PointerTons1__removeInvestigatorResponse(soap, "ns1:removeInvestigatorResponse", -1, &a->ns1__removeInvestigatorResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_in___ns1__removeInvestigatorResponse(struct soap *soap, const char *tag, struct __ns1__removeInvestigatorResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeInvestigatorResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeInvestigatorResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigatorResponse, sizeof(struct __ns1__removeInvestigatorResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeInvestigatorResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeInvestigatorResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeInvestigatorResponse(soap, "ns1:removeInvestigatorResponse", &a->ns1__removeInvestigatorResponse_, "ns1:removeInvestigatorResponse"))
+				{	soap_flag_ns1__removeInvestigatorResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeInvestigatorResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigatorResponse(struct soap *soap, const struct __ns1__removeInvestigatorResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeInvestigatorResponse(soap, tag?tag:"-ns1:removeInvestigatorResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigatorResponse * SOAP_FMAC4 soap_get___ns1__removeInvestigatorResponse(struct soap *soap, struct __ns1__removeInvestigatorResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeInvestigatorResponse * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigatorResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigatorResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigatorResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigatorResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeInvestigatorResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigatorResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeInvestigatorResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeInvestigatorResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigatorResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigatorResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeInvestigatorResponse*)p = *(struct __ns1__removeInvestigatorResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyPublication(struct soap *soap, struct __ns1__modifyPublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyPublication_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyPublication(struct soap *soap, const struct __ns1__modifyPublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyPublication(soap, &a->ns1__modifyPublication_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyPublication(struct soap *soap, const char *tag, int id, const struct __ns1__modifyPublication *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyPublication(soap, "ns1:modifyPublication", -1, &a->ns1__modifyPublication_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyPublication * SOAP_FMAC4 soap_in___ns1__modifyPublication(struct soap *soap, const char *tag, struct __ns1__modifyPublication *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyPublication_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyPublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyPublication, sizeof(struct __ns1__modifyPublication), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyPublication(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyPublication_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyPublication(soap, "ns1:modifyPublication", &a->ns1__modifyPublication_, "ns1:modifyPublication"))
+				{	soap_flag_ns1__modifyPublication_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyPublication(struct soap *soap, const struct __ns1__modifyPublication *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyPublication(soap, tag?tag:"-ns1:modifyPublication", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyPublication * SOAP_FMAC4 soap_get___ns1__modifyPublication(struct soap *soap, struct __ns1__modifyPublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyPublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyPublication * SOAP_FMAC2 soap_instantiate___ns1__modifyPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyPublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublication);
+		if (size)
+			*size = sizeof(struct __ns1__modifyPublication);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyPublication);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyPublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyPublication %p -> %p\n", q, p));
+	*(struct __ns1__modifyPublication*)p = *(struct __ns1__modifyPublication*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyPublicationResponse(struct soap *soap, struct __ns1__modifyPublicationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyPublicationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyPublicationResponse(struct soap *soap, const struct __ns1__modifyPublicationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyPublicationResponse(soap, &a->ns1__modifyPublicationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyPublicationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyPublicationResponse *a, const char *type)
+{
+	if (a->ns1__modifyPublicationResponse_)
+		soap_element_result(soap, "ns1:modifyPublicationResponse");
+	if (soap_out_PointerTons1__modifyPublicationResponse(soap, "ns1:modifyPublicationResponse", -1, &a->ns1__modifyPublicationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyPublicationResponse * SOAP_FMAC4 soap_in___ns1__modifyPublicationResponse(struct soap *soap, const char *tag, struct __ns1__modifyPublicationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyPublicationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyPublicationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyPublicationResponse, sizeof(struct __ns1__modifyPublicationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyPublicationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyPublicationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyPublicationResponse(soap, "ns1:modifyPublicationResponse", &a->ns1__modifyPublicationResponse_, "ns1:modifyPublicationResponse"))
+				{	soap_flag_ns1__modifyPublicationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyPublicationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyPublicationResponse(struct soap *soap, const struct __ns1__modifyPublicationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyPublicationResponse(soap, tag?tag:"-ns1:modifyPublicationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyPublicationResponse * SOAP_FMAC4 soap_get___ns1__modifyPublicationResponse(struct soap *soap, struct __ns1__modifyPublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyPublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyPublicationResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyPublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyPublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyPublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublicationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyPublicationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyPublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyPublicationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyPublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyPublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyPublicationResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyPublicationResponse*)p = *(struct __ns1__modifyPublicationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deletePublication(struct soap *soap, struct __ns1__deletePublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deletePublication_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deletePublication(struct soap *soap, const struct __ns1__deletePublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deletePublication(soap, &a->ns1__deletePublication_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deletePublication(struct soap *soap, const char *tag, int id, const struct __ns1__deletePublication *a, const char *type)
+{
+	if (soap_out_PointerTons1__deletePublication(soap, "ns1:deletePublication", -1, &a->ns1__deletePublication_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deletePublication * SOAP_FMAC4 soap_in___ns1__deletePublication(struct soap *soap, const char *tag, struct __ns1__deletePublication *a, const char *type)
+{
+	size_t soap_flag_ns1__deletePublication_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deletePublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deletePublication, sizeof(struct __ns1__deletePublication), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deletePublication(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deletePublication_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deletePublication(soap, "ns1:deletePublication", &a->ns1__deletePublication_, "ns1:deletePublication"))
+				{	soap_flag_ns1__deletePublication_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deletePublication(struct soap *soap, const struct __ns1__deletePublication *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deletePublication(soap, tag?tag:"-ns1:deletePublication", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deletePublication * SOAP_FMAC4 soap_get___ns1__deletePublication(struct soap *soap, struct __ns1__deletePublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deletePublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deletePublication * SOAP_FMAC2 soap_instantiate___ns1__deletePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deletePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deletePublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublication);
+		if (size)
+			*size = sizeof(struct __ns1__deletePublication);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deletePublication);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deletePublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deletePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deletePublication %p -> %p\n", q, p));
+	*(struct __ns1__deletePublication*)p = *(struct __ns1__deletePublication*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deletePublicationResponse(struct soap *soap, struct __ns1__deletePublicationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deletePublicationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deletePublicationResponse(struct soap *soap, const struct __ns1__deletePublicationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deletePublicationResponse(soap, &a->ns1__deletePublicationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deletePublicationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deletePublicationResponse *a, const char *type)
+{
+	if (a->ns1__deletePublicationResponse_)
+		soap_element_result(soap, "ns1:deletePublicationResponse");
+	if (soap_out_PointerTons1__deletePublicationResponse(soap, "ns1:deletePublicationResponse", -1, &a->ns1__deletePublicationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deletePublicationResponse * SOAP_FMAC4 soap_in___ns1__deletePublicationResponse(struct soap *soap, const char *tag, struct __ns1__deletePublicationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deletePublicationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deletePublicationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deletePublicationResponse, sizeof(struct __ns1__deletePublicationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deletePublicationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deletePublicationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deletePublicationResponse(soap, "ns1:deletePublicationResponse", &a->ns1__deletePublicationResponse_, "ns1:deletePublicationResponse"))
+				{	soap_flag_ns1__deletePublicationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deletePublicationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deletePublicationResponse(struct soap *soap, const struct __ns1__deletePublicationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deletePublicationResponse(soap, tag?tag:"-ns1:deletePublicationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deletePublicationResponse * SOAP_FMAC4 soap_get___ns1__deletePublicationResponse(struct soap *soap, struct __ns1__deletePublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deletePublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deletePublicationResponse * SOAP_FMAC2 soap_instantiate___ns1__deletePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deletePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deletePublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublicationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deletePublicationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deletePublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deletePublicationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deletePublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deletePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deletePublicationResponse %p -> %p\n", q, p));
+	*(struct __ns1__deletePublicationResponse*)p = *(struct __ns1__deletePublicationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removePublication(struct soap *soap, struct __ns1__removePublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removePublication_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removePublication(struct soap *soap, const struct __ns1__removePublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removePublication(soap, &a->ns1__removePublication_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removePublication(struct soap *soap, const char *tag, int id, const struct __ns1__removePublication *a, const char *type)
+{
+	if (soap_out_PointerTons1__removePublication(soap, "ns1:removePublication", -1, &a->ns1__removePublication_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removePublication * SOAP_FMAC4 soap_in___ns1__removePublication(struct soap *soap, const char *tag, struct __ns1__removePublication *a, const char *type)
+{
+	size_t soap_flag_ns1__removePublication_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removePublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removePublication, sizeof(struct __ns1__removePublication), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removePublication(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removePublication_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removePublication(soap, "ns1:removePublication", &a->ns1__removePublication_, "ns1:removePublication"))
+				{	soap_flag_ns1__removePublication_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removePublication(struct soap *soap, const struct __ns1__removePublication *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removePublication(soap, tag?tag:"-ns1:removePublication", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removePublication * SOAP_FMAC4 soap_get___ns1__removePublication(struct soap *soap, struct __ns1__removePublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removePublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removePublication * SOAP_FMAC2 soap_instantiate___ns1__removePublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removePublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removePublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublication);
+		if (size)
+			*size = sizeof(struct __ns1__removePublication);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removePublication);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removePublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removePublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removePublication %p -> %p\n", q, p));
+	*(struct __ns1__removePublication*)p = *(struct __ns1__removePublication*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removePublicationResponse(struct soap *soap, struct __ns1__removePublicationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removePublicationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removePublicationResponse(struct soap *soap, const struct __ns1__removePublicationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removePublicationResponse(soap, &a->ns1__removePublicationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removePublicationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removePublicationResponse *a, const char *type)
+{
+	if (a->ns1__removePublicationResponse_)
+		soap_element_result(soap, "ns1:removePublicationResponse");
+	if (soap_out_PointerTons1__removePublicationResponse(soap, "ns1:removePublicationResponse", -1, &a->ns1__removePublicationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removePublicationResponse * SOAP_FMAC4 soap_in___ns1__removePublicationResponse(struct soap *soap, const char *tag, struct __ns1__removePublicationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removePublicationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removePublicationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removePublicationResponse, sizeof(struct __ns1__removePublicationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removePublicationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removePublicationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removePublicationResponse(soap, "ns1:removePublicationResponse", &a->ns1__removePublicationResponse_, "ns1:removePublicationResponse"))
+				{	soap_flag_ns1__removePublicationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removePublicationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removePublicationResponse(struct soap *soap, const struct __ns1__removePublicationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removePublicationResponse(soap, tag?tag:"-ns1:removePublicationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removePublicationResponse * SOAP_FMAC4 soap_get___ns1__removePublicationResponse(struct soap *soap, struct __ns1__removePublicationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removePublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removePublicationResponse * SOAP_FMAC2 soap_instantiate___ns1__removePublicationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removePublicationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removePublicationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublicationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removePublicationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removePublicationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removePublicationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removePublicationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removePublicationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removePublicationResponse %p -> %p\n", q, p));
+	*(struct __ns1__removePublicationResponse*)p = *(struct __ns1__removePublicationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteKeyword(struct soap *soap, struct __ns1__deleteKeyword *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteKeyword_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteKeyword(struct soap *soap, const struct __ns1__deleteKeyword *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteKeyword(soap, &a->ns1__deleteKeyword_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteKeyword(struct soap *soap, const char *tag, int id, const struct __ns1__deleteKeyword *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteKeyword(soap, "ns1:deleteKeyword", -1, &a->ns1__deleteKeyword_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteKeyword * SOAP_FMAC4 soap_in___ns1__deleteKeyword(struct soap *soap, const char *tag, struct __ns1__deleteKeyword *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteKeyword_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteKeyword *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteKeyword, sizeof(struct __ns1__deleteKeyword), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteKeyword(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteKeyword_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteKeyword(soap, "ns1:deleteKeyword", &a->ns1__deleteKeyword_, "ns1:deleteKeyword"))
+				{	soap_flag_ns1__deleteKeyword_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteKeyword(struct soap *soap, const struct __ns1__deleteKeyword *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteKeyword(soap, tag?tag:"-ns1:deleteKeyword", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteKeyword * SOAP_FMAC4 soap_get___ns1__deleteKeyword(struct soap *soap, struct __ns1__deleteKeyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteKeyword * SOAP_FMAC2 soap_instantiate___ns1__deleteKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteKeyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeyword);
+		if (size)
+			*size = sizeof(struct __ns1__deleteKeyword);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteKeyword);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteKeyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteKeyword %p -> %p\n", q, p));
+	*(struct __ns1__deleteKeyword*)p = *(struct __ns1__deleteKeyword*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteKeywordResponse(struct soap *soap, struct __ns1__deleteKeywordResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteKeywordResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteKeywordResponse(struct soap *soap, const struct __ns1__deleteKeywordResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteKeywordResponse(soap, &a->ns1__deleteKeywordResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteKeywordResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteKeywordResponse *a, const char *type)
+{
+	if (a->ns1__deleteKeywordResponse_)
+		soap_element_result(soap, "ns1:deleteKeywordResponse");
+	if (soap_out_PointerTons1__deleteKeywordResponse(soap, "ns1:deleteKeywordResponse", -1, &a->ns1__deleteKeywordResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteKeywordResponse * SOAP_FMAC4 soap_in___ns1__deleteKeywordResponse(struct soap *soap, const char *tag, struct __ns1__deleteKeywordResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteKeywordResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteKeywordResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteKeywordResponse, sizeof(struct __ns1__deleteKeywordResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteKeywordResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteKeywordResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteKeywordResponse(soap, "ns1:deleteKeywordResponse", &a->ns1__deleteKeywordResponse_, "ns1:deleteKeywordResponse"))
+				{	soap_flag_ns1__deleteKeywordResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteKeywordResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteKeywordResponse(struct soap *soap, const struct __ns1__deleteKeywordResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteKeywordResponse(soap, tag?tag:"-ns1:deleteKeywordResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteKeywordResponse * SOAP_FMAC4 soap_get___ns1__deleteKeywordResponse(struct soap *soap, struct __ns1__deleteKeywordResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteKeywordResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteKeywordResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeywordResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteKeywordResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteKeywordResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteKeywordResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteKeywordResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteKeywordResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteKeywordResponse*)p = *(struct __ns1__deleteKeywordResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeKeyword(struct soap *soap, struct __ns1__removeKeyword *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeKeyword_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeKeyword(struct soap *soap, const struct __ns1__removeKeyword *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeKeyword(soap, &a->ns1__removeKeyword_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeKeyword(struct soap *soap, const char *tag, int id, const struct __ns1__removeKeyword *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeKeyword(soap, "ns1:removeKeyword", -1, &a->ns1__removeKeyword_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeKeyword * SOAP_FMAC4 soap_in___ns1__removeKeyword(struct soap *soap, const char *tag, struct __ns1__removeKeyword *a, const char *type)
+{
+	size_t soap_flag_ns1__removeKeyword_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeKeyword *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeKeyword, sizeof(struct __ns1__removeKeyword), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeKeyword(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeKeyword_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeKeyword(soap, "ns1:removeKeyword", &a->ns1__removeKeyword_, "ns1:removeKeyword"))
+				{	soap_flag_ns1__removeKeyword_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeKeyword(struct soap *soap, const struct __ns1__removeKeyword *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeKeyword(soap, tag?tag:"-ns1:removeKeyword", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeKeyword * SOAP_FMAC4 soap_get___ns1__removeKeyword(struct soap *soap, struct __ns1__removeKeyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeKeyword * SOAP_FMAC2 soap_instantiate___ns1__removeKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeKeyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeyword);
+		if (size)
+			*size = sizeof(struct __ns1__removeKeyword);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeKeyword);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeKeyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeKeyword %p -> %p\n", q, p));
+	*(struct __ns1__removeKeyword*)p = *(struct __ns1__removeKeyword*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeKeywordResponse(struct soap *soap, struct __ns1__removeKeywordResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeKeywordResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeKeywordResponse(struct soap *soap, const struct __ns1__removeKeywordResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeKeywordResponse(soap, &a->ns1__removeKeywordResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeKeywordResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeKeywordResponse *a, const char *type)
+{
+	if (a->ns1__removeKeywordResponse_)
+		soap_element_result(soap, "ns1:removeKeywordResponse");
+	if (soap_out_PointerTons1__removeKeywordResponse(soap, "ns1:removeKeywordResponse", -1, &a->ns1__removeKeywordResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeKeywordResponse * SOAP_FMAC4 soap_in___ns1__removeKeywordResponse(struct soap *soap, const char *tag, struct __ns1__removeKeywordResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeKeywordResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeKeywordResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeKeywordResponse, sizeof(struct __ns1__removeKeywordResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeKeywordResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeKeywordResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeKeywordResponse(soap, "ns1:removeKeywordResponse", &a->ns1__removeKeywordResponse_, "ns1:removeKeywordResponse"))
+				{	soap_flag_ns1__removeKeywordResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeKeywordResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeKeywordResponse(struct soap *soap, const struct __ns1__removeKeywordResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeKeywordResponse(soap, tag?tag:"-ns1:removeKeywordResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeKeywordResponse * SOAP_FMAC4 soap_get___ns1__removeKeywordResponse(struct soap *soap, struct __ns1__removeKeywordResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeKeywordResponse * SOAP_FMAC2 soap_instantiate___ns1__removeKeywordResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeKeywordResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeKeywordResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeywordResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeKeywordResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeKeywordResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeKeywordResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeKeywordResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeKeywordResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeKeywordResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeKeywordResponse*)p = *(struct __ns1__removeKeywordResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigation(struct soap *soap, struct __ns1__modifyInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyInvestigation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigation(struct soap *soap, const struct __ns1__modifyInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyInvestigation(soap, &a->ns1__modifyInvestigation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigation *a, const char *type)
+{
+	if (soap_out_PointerTons1__modifyInvestigation(soap, "ns1:modifyInvestigation", -1, &a->ns1__modifyInvestigation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigation * SOAP_FMAC4 soap_in___ns1__modifyInvestigation(struct soap *soap, const char *tag, struct __ns1__modifyInvestigation *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyInvestigation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigation, sizeof(struct __ns1__modifyInvestigation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyInvestigation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyInvestigation(soap, "ns1:modifyInvestigation", &a->ns1__modifyInvestigation_, "ns1:modifyInvestigation"))
+				{	soap_flag_ns1__modifyInvestigation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigation(struct soap *soap, const struct __ns1__modifyInvestigation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyInvestigation(soap, tag?tag:"-ns1:modifyInvestigation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigation * SOAP_FMAC4 soap_get___ns1__modifyInvestigation(struct soap *soap, struct __ns1__modifyInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyInvestigation * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigation);
+		if (size)
+			*size = sizeof(struct __ns1__modifyInvestigation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyInvestigation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigation %p -> %p\n", q, p));
+	*(struct __ns1__modifyInvestigation*)p = *(struct __ns1__modifyInvestigation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__modifyInvestigationResponse(struct soap *soap, struct __ns1__modifyInvestigationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__modifyInvestigationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__modifyInvestigationResponse(struct soap *soap, const struct __ns1__modifyInvestigationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__modifyInvestigationResponse(soap, &a->ns1__modifyInvestigationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__modifyInvestigationResponse *a, const char *type)
+{
+	if (a->ns1__modifyInvestigationResponse_)
+		soap_element_result(soap, "ns1:modifyInvestigationResponse");
+	if (soap_out_PointerTons1__modifyInvestigationResponse(soap, "ns1:modifyInvestigationResponse", -1, &a->ns1__modifyInvestigationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_in___ns1__modifyInvestigationResponse(struct soap *soap, const char *tag, struct __ns1__modifyInvestigationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__modifyInvestigationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__modifyInvestigationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__modifyInvestigationResponse, sizeof(struct __ns1__modifyInvestigationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__modifyInvestigationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__modifyInvestigationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__modifyInvestigationResponse(soap, "ns1:modifyInvestigationResponse", &a->ns1__modifyInvestigationResponse_, "ns1:modifyInvestigationResponse"))
+				{	soap_flag_ns1__modifyInvestigationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:modifyInvestigationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__modifyInvestigationResponse(struct soap *soap, const struct __ns1__modifyInvestigationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__modifyInvestigationResponse(soap, tag?tag:"-ns1:modifyInvestigationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__modifyInvestigationResponse * SOAP_FMAC4 soap_get___ns1__modifyInvestigationResponse(struct soap *soap, struct __ns1__modifyInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__modifyInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__modifyInvestigationResponse * SOAP_FMAC2 soap_instantiate___ns1__modifyInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__modifyInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__modifyInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__modifyInvestigationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__modifyInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__modifyInvestigationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__modifyInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__modifyInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__modifyInvestigationResponse %p -> %p\n", q, p));
+	*(struct __ns1__modifyInvestigationResponse*)p = *(struct __ns1__modifyInvestigationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigation(struct soap *soap, struct __ns1__deleteInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteInvestigation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigation(struct soap *soap, const struct __ns1__deleteInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteInvestigation(soap, &a->ns1__deleteInvestigation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigation *a, const char *type)
+{
+	if (soap_out_PointerTons1__deleteInvestigation(soap, "ns1:deleteInvestigation", -1, &a->ns1__deleteInvestigation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigation * SOAP_FMAC4 soap_in___ns1__deleteInvestigation(struct soap *soap, const char *tag, struct __ns1__deleteInvestigation *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteInvestigation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigation, sizeof(struct __ns1__deleteInvestigation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteInvestigation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteInvestigation(soap, "ns1:deleteInvestigation", &a->ns1__deleteInvestigation_, "ns1:deleteInvestigation"))
+				{	soap_flag_ns1__deleteInvestigation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigation(struct soap *soap, const struct __ns1__deleteInvestigation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteInvestigation(soap, tag?tag:"-ns1:deleteInvestigation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigation * SOAP_FMAC4 soap_get___ns1__deleteInvestigation(struct soap *soap, struct __ns1__deleteInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteInvestigation * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigation);
+		if (size)
+			*size = sizeof(struct __ns1__deleteInvestigation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteInvestigation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigation %p -> %p\n", q, p));
+	*(struct __ns1__deleteInvestigation*)p = *(struct __ns1__deleteInvestigation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__deleteInvestigationResponse(struct soap *soap, struct __ns1__deleteInvestigationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__deleteInvestigationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__deleteInvestigationResponse(struct soap *soap, const struct __ns1__deleteInvestigationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__deleteInvestigationResponse(soap, &a->ns1__deleteInvestigationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__deleteInvestigationResponse *a, const char *type)
+{
+	if (a->ns1__deleteInvestigationResponse_)
+		soap_element_result(soap, "ns1:deleteInvestigationResponse");
+	if (soap_out_PointerTons1__deleteInvestigationResponse(soap, "ns1:deleteInvestigationResponse", -1, &a->ns1__deleteInvestigationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_in___ns1__deleteInvestigationResponse(struct soap *soap, const char *tag, struct __ns1__deleteInvestigationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__deleteInvestigationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__deleteInvestigationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__deleteInvestigationResponse, sizeof(struct __ns1__deleteInvestigationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__deleteInvestigationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__deleteInvestigationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__deleteInvestigationResponse(soap, "ns1:deleteInvestigationResponse", &a->ns1__deleteInvestigationResponse_, "ns1:deleteInvestigationResponse"))
+				{	soap_flag_ns1__deleteInvestigationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:deleteInvestigationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__deleteInvestigationResponse(struct soap *soap, const struct __ns1__deleteInvestigationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__deleteInvestigationResponse(soap, tag?tag:"-ns1:deleteInvestigationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__deleteInvestigationResponse * SOAP_FMAC4 soap_get___ns1__deleteInvestigationResponse(struct soap *soap, struct __ns1__deleteInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__deleteInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__deleteInvestigationResponse * SOAP_FMAC2 soap_instantiate___ns1__deleteInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__deleteInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__deleteInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__deleteInvestigationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__deleteInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__deleteInvestigationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__deleteInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__deleteInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__deleteInvestigationResponse %p -> %p\n", q, p));
+	*(struct __ns1__deleteInvestigationResponse*)p = *(struct __ns1__deleteInvestigationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigation(struct soap *soap, struct __ns1__removeInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeInvestigation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigation(struct soap *soap, const struct __ns1__removeInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeInvestigation(soap, &a->ns1__removeInvestigation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigation *a, const char *type)
+{
+	if (soap_out_PointerTons1__removeInvestigation(soap, "ns1:removeInvestigation", -1, &a->ns1__removeInvestigation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigation * SOAP_FMAC4 soap_in___ns1__removeInvestigation(struct soap *soap, const char *tag, struct __ns1__removeInvestigation *a, const char *type)
+{
+	size_t soap_flag_ns1__removeInvestigation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigation, sizeof(struct __ns1__removeInvestigation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeInvestigation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeInvestigation(soap, "ns1:removeInvestigation", &a->ns1__removeInvestigation_, "ns1:removeInvestigation"))
+				{	soap_flag_ns1__removeInvestigation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigation(struct soap *soap, const struct __ns1__removeInvestigation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeInvestigation(soap, tag?tag:"-ns1:removeInvestigation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigation * SOAP_FMAC4 soap_get___ns1__removeInvestigation(struct soap *soap, struct __ns1__removeInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeInvestigation * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigation);
+		if (size)
+			*size = sizeof(struct __ns1__removeInvestigation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeInvestigation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigation %p -> %p\n", q, p));
+	*(struct __ns1__removeInvestigation*)p = *(struct __ns1__removeInvestigation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__removeInvestigationResponse(struct soap *soap, struct __ns1__removeInvestigationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__removeInvestigationResponse_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__removeInvestigationResponse(struct soap *soap, const struct __ns1__removeInvestigationResponse *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__removeInvestigationResponse(soap, &a->ns1__removeInvestigationResponse_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__removeInvestigationResponse(struct soap *soap, const char *tag, int id, const struct __ns1__removeInvestigationResponse *a, const char *type)
+{
+	if (a->ns1__removeInvestigationResponse_)
+		soap_element_result(soap, "ns1:removeInvestigationResponse");
+	if (soap_out_PointerTons1__removeInvestigationResponse(soap, "ns1:removeInvestigationResponse", -1, &a->ns1__removeInvestigationResponse_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigationResponse * SOAP_FMAC4 soap_in___ns1__removeInvestigationResponse(struct soap *soap, const char *tag, struct __ns1__removeInvestigationResponse *a, const char *type)
+{
+	size_t soap_flag_ns1__removeInvestigationResponse_ = 1;
+	short soap_flag;
+	a = (struct __ns1__removeInvestigationResponse *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__removeInvestigationResponse, sizeof(struct __ns1__removeInvestigationResponse), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__removeInvestigationResponse(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__removeInvestigationResponse_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__removeInvestigationResponse(soap, "ns1:removeInvestigationResponse", &a->ns1__removeInvestigationResponse_, "ns1:removeInvestigationResponse"))
+				{	soap_flag_ns1__removeInvestigationResponse_--;
+					continue;
+				}
+			soap_check_result(soap, "ns1:removeInvestigationResponse");
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__removeInvestigationResponse(struct soap *soap, const struct __ns1__removeInvestigationResponse *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__removeInvestigationResponse(soap, tag?tag:"-ns1:removeInvestigationResponse", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__removeInvestigationResponse * SOAP_FMAC4 soap_get___ns1__removeInvestigationResponse(struct soap *soap, struct __ns1__removeInvestigationResponse *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__removeInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__removeInvestigationResponse * SOAP_FMAC2 soap_instantiate___ns1__removeInvestigationResponse(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__removeInvestigationResponse(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__removeInvestigationResponse, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigationResponse);
+		if (size)
+			*size = sizeof(struct __ns1__removeInvestigationResponse);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__removeInvestigationResponse[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__removeInvestigationResponse);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__removeInvestigationResponse*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__removeInvestigationResponse(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__removeInvestigationResponse %p -> %p\n", q, p));
+	*(struct __ns1__removeInvestigationResponse*)p = *(struct __ns1__removeInvestigationResponse*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__createInvestigation(struct soap *soap, struct __ns1__createInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__createInvestigation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__createInvestigation(struct soap *soap, const struct __ns1__createInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__createInvestigation(soap, &a->ns1__createInvestigation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__createInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__createInvestigation *a, const char *type)
+{
+	if (soap_out_PointerTons1__createInvestigation(soap, "ns1:createInvestigation", -1, &a->ns1__createInvestigation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createInvestigation * SOAP_FMAC4 soap_in___ns1__createInvestigation(struct soap *soap, const char *tag, struct __ns1__createInvestigation *a, const char *type)
+{
+	size_t soap_flag_ns1__createInvestigation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__createInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__createInvestigation, sizeof(struct __ns1__createInvestigation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__createInvestigation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__createInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__createInvestigation(soap, "ns1:createInvestigation", &a->ns1__createInvestigation_, "ns1:createInvestigation"))
+				{	soap_flag_ns1__createInvestigation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__createInvestigation(struct soap *soap, const struct __ns1__createInvestigation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__createInvestigation(soap, tag?tag:"-ns1:createInvestigation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__createInvestigation * SOAP_FMAC4 soap_get___ns1__createInvestigation(struct soap *soap, struct __ns1__createInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__createInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__createInvestigation * SOAP_FMAC2 soap_instantiate___ns1__createInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__createInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__createInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createInvestigation);
+		if (size)
+			*size = sizeof(struct __ns1__createInvestigation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__createInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__createInvestigation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__createInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__createInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__createInvestigation %p -> %p\n", q, p));
+	*(struct __ns1__createInvestigation*)p = *(struct __ns1__createInvestigation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInvestigationsIncludes(struct soap *soap, struct __ns1__getInvestigationsIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getInvestigationsIncludes_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInvestigationsIncludes(struct soap *soap, const struct __ns1__getInvestigationsIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getInvestigationsIncludes(soap, &a->ns1__getInvestigationsIncludes_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getInvestigationsIncludes *a, const char *type)
+{
+	if (soap_out_PointerTons1__getInvestigationsIncludes(soap, "ns1:getInvestigationsIncludes", -1, &a->ns1__getInvestigationsIncludes_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_in___ns1__getInvestigationsIncludes(struct soap *soap, const char *tag, struct __ns1__getInvestigationsIncludes *a, const char *type)
+{
+	size_t soap_flag_ns1__getInvestigationsIncludes_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getInvestigationsIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInvestigationsIncludes, sizeof(struct __ns1__getInvestigationsIncludes), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getInvestigationsIncludes(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getInvestigationsIncludes_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getInvestigationsIncludes(soap, "ns1:getInvestigationsIncludes", &a->ns1__getInvestigationsIncludes_, "ns1:getInvestigationsIncludes"))
+				{	soap_flag_ns1__getInvestigationsIncludes_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInvestigationsIncludes(struct soap *soap, const struct __ns1__getInvestigationsIncludes *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getInvestigationsIncludes(soap, tag?tag:"-ns1:getInvestigationsIncludes", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getInvestigationsIncludes * SOAP_FMAC4 soap_get___ns1__getInvestigationsIncludes(struct soap *soap, struct __ns1__getInvestigationsIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getInvestigationsIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getInvestigationsIncludes * SOAP_FMAC2 soap_instantiate___ns1__getInvestigationsIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getInvestigationsIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getInvestigationsIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationsIncludes);
+		if (size)
+			*size = sizeof(struct __ns1__getInvestigationsIncludes);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationsIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getInvestigationsIncludes);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getInvestigationsIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getInvestigationsIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getInvestigationsIncludes %p -> %p\n", q, p));
+	*(struct __ns1__getInvestigationsIncludes*)p = *(struct __ns1__getInvestigationsIncludes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addDataFileParameter(struct soap *soap, struct __ns1__addDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addDataFileParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addDataFileParameter(struct soap *soap, const struct __ns1__addDataFileParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addDataFileParameter(soap, &a->ns1__addDataFileParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addDataFileParameter(struct soap *soap, const char *tag, int id, const struct __ns1__addDataFileParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__addDataFileParameter(soap, "ns1:addDataFileParameter", -1, &a->ns1__addDataFileParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataFileParameter * SOAP_FMAC4 soap_in___ns1__addDataFileParameter(struct soap *soap, const char *tag, struct __ns1__addDataFileParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__addDataFileParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addDataFileParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addDataFileParameter, sizeof(struct __ns1__addDataFileParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addDataFileParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addDataFileParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addDataFileParameter(soap, "ns1:addDataFileParameter", &a->ns1__addDataFileParameter_, "ns1:addDataFileParameter"))
+				{	soap_flag_ns1__addDataFileParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addDataFileParameter(struct soap *soap, const struct __ns1__addDataFileParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addDataFileParameter(soap, tag?tag:"-ns1:addDataFileParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addDataFileParameter * SOAP_FMAC4 soap_get___ns1__addDataFileParameter(struct soap *soap, struct __ns1__addDataFileParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addDataFileParameter * SOAP_FMAC2 soap_instantiate___ns1__addDataFileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addDataFileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addDataFileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameter);
+		if (size)
+			*size = sizeof(struct __ns1__addDataFileParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addDataFileParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addDataFileParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addDataFileParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addDataFileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addDataFileParameter %p -> %p\n", q, p));
+	*(struct __ns1__addDataFileParameter*)p = *(struct __ns1__addDataFileParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatafile(struct soap *soap, struct __ns1__getDatafile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getDatafile_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatafile(struct soap *soap, const struct __ns1__getDatafile *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getDatafile(soap, &a->ns1__getDatafile_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatafile(struct soap *soap, const char *tag, int id, const struct __ns1__getDatafile *a, const char *type)
+{
+	if (soap_out_PointerTons1__getDatafile(soap, "ns1:getDatafile", -1, &a->ns1__getDatafile_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatafile * SOAP_FMAC4 soap_in___ns1__getDatafile(struct soap *soap, const char *tag, struct __ns1__getDatafile *a, const char *type)
+{
+	size_t soap_flag_ns1__getDatafile_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getDatafile *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatafile, sizeof(struct __ns1__getDatafile), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getDatafile(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getDatafile_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getDatafile(soap, "ns1:getDatafile", &a->ns1__getDatafile_, "ns1:getDatafile"))
+				{	soap_flag_ns1__getDatafile_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatafile(struct soap *soap, const struct __ns1__getDatafile *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getDatafile(soap, tag?tag:"-ns1:getDatafile", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatafile * SOAP_FMAC4 soap_get___ns1__getDatafile(struct soap *soap, struct __ns1__getDatafile *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getDatafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getDatafile * SOAP_FMAC2 soap_instantiate___ns1__getDatafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatafile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafile);
+		if (size)
+			*size = sizeof(struct __ns1__getDatafile);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatafile[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getDatafile);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getDatafile*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatafile %p -> %p\n", q, p));
+	*(struct __ns1__getDatafile*)p = *(struct __ns1__getDatafile*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDatasetIncludes(struct soap *soap, struct __ns1__getDatasetIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getDatasetIncludes_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDatasetIncludes(struct soap *soap, const struct __ns1__getDatasetIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getDatasetIncludes(soap, &a->ns1__getDatasetIncludes_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDatasetIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getDatasetIncludes *a, const char *type)
+{
+	if (soap_out_PointerTons1__getDatasetIncludes(soap, "ns1:getDatasetIncludes", -1, &a->ns1__getDatasetIncludes_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatasetIncludes * SOAP_FMAC4 soap_in___ns1__getDatasetIncludes(struct soap *soap, const char *tag, struct __ns1__getDatasetIncludes *a, const char *type)
+{
+	size_t soap_flag_ns1__getDatasetIncludes_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getDatasetIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDatasetIncludes, sizeof(struct __ns1__getDatasetIncludes), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getDatasetIncludes(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getDatasetIncludes_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getDatasetIncludes(soap, "ns1:getDatasetIncludes", &a->ns1__getDatasetIncludes_, "ns1:getDatasetIncludes"))
+				{	soap_flag_ns1__getDatasetIncludes_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDatasetIncludes(struct soap *soap, const struct __ns1__getDatasetIncludes *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getDatasetIncludes(soap, tag?tag:"-ns1:getDatasetIncludes", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDatasetIncludes * SOAP_FMAC4 soap_get___ns1__getDatasetIncludes(struct soap *soap, struct __ns1__getDatasetIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getDatasetIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getDatasetIncludes * SOAP_FMAC2 soap_instantiate___ns1__getDatasetIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDatasetIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDatasetIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasetIncludes);
+		if (size)
+			*size = sizeof(struct __ns1__getDatasetIncludes);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDatasetIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getDatasetIncludes);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getDatasetIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDatasetIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDatasetIncludes %p -> %p\n", q, p));
+	*(struct __ns1__getDatasetIncludes*)p = *(struct __ns1__getDatasetIncludes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getDataset(struct soap *soap, struct __ns1__getDataset *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getDataset_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getDataset(struct soap *soap, const struct __ns1__getDataset *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getDataset(soap, &a->ns1__getDataset_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getDataset(struct soap *soap, const char *tag, int id, const struct __ns1__getDataset *a, const char *type)
+{
+	if (soap_out_PointerTons1__getDataset(soap, "ns1:getDataset", -1, &a->ns1__getDataset_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDataset * SOAP_FMAC4 soap_in___ns1__getDataset(struct soap *soap, const char *tag, struct __ns1__getDataset *a, const char *type)
+{
+	size_t soap_flag_ns1__getDataset_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getDataset *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getDataset, sizeof(struct __ns1__getDataset), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getDataset(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getDataset_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getDataset(soap, "ns1:getDataset", &a->ns1__getDataset_, "ns1:getDataset"))
+				{	soap_flag_ns1__getDataset_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getDataset(struct soap *soap, const struct __ns1__getDataset *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getDataset(soap, tag?tag:"-ns1:getDataset", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getDataset * SOAP_FMAC4 soap_get___ns1__getDataset(struct soap *soap, struct __ns1__getDataset *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getDataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getDataset * SOAP_FMAC2 soap_instantiate___ns1__getDataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getDataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getDataset, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDataset);
+		if (size)
+			*size = sizeof(struct __ns1__getDataset);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getDataset[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getDataset);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getDataset*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getDataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getDataset %p -> %p\n", q, p));
+	*(struct __ns1__getDataset*)p = *(struct __ns1__getDataset*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInvestigationIncludes(struct soap *soap, struct __ns1__getInvestigationIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getInvestigationIncludes_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInvestigationIncludes(struct soap *soap, const struct __ns1__getInvestigationIncludes *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getInvestigationIncludes(soap, &a->ns1__getInvestigationIncludes_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInvestigationIncludes(struct soap *soap, const char *tag, int id, const struct __ns1__getInvestigationIncludes *a, const char *type)
+{
+	if (soap_out_PointerTons1__getInvestigationIncludes(soap, "ns1:getInvestigationIncludes", -1, &a->ns1__getInvestigationIncludes_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getInvestigationIncludes * SOAP_FMAC4 soap_in___ns1__getInvestigationIncludes(struct soap *soap, const char *tag, struct __ns1__getInvestigationIncludes *a, const char *type)
+{
+	size_t soap_flag_ns1__getInvestigationIncludes_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getInvestigationIncludes *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInvestigationIncludes, sizeof(struct __ns1__getInvestigationIncludes), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getInvestigationIncludes(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getInvestigationIncludes_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getInvestigationIncludes(soap, "ns1:getInvestigationIncludes", &a->ns1__getInvestigationIncludes_, "ns1:getInvestigationIncludes"))
+				{	soap_flag_ns1__getInvestigationIncludes_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInvestigationIncludes(struct soap *soap, const struct __ns1__getInvestigationIncludes *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getInvestigationIncludes(soap, tag?tag:"-ns1:getInvestigationIncludes", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getInvestigationIncludes * SOAP_FMAC4 soap_get___ns1__getInvestigationIncludes(struct soap *soap, struct __ns1__getInvestigationIncludes *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getInvestigationIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getInvestigationIncludes * SOAP_FMAC2 soap_instantiate___ns1__getInvestigationIncludes(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getInvestigationIncludes(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getInvestigationIncludes, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationIncludes);
+		if (size)
+			*size = sizeof(struct __ns1__getInvestigationIncludes);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigationIncludes[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getInvestigationIncludes);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getInvestigationIncludes*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getInvestigationIncludes(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getInvestigationIncludes %p -> %p\n", q, p));
+	*(struct __ns1__getInvestigationIncludes*)p = *(struct __ns1__getInvestigationIncludes*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__getInvestigation(struct soap *soap, struct __ns1__getInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__getInvestigation_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__getInvestigation(struct soap *soap, const struct __ns1__getInvestigation *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__getInvestigation(soap, &a->ns1__getInvestigation_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__getInvestigation(struct soap *soap, const char *tag, int id, const struct __ns1__getInvestigation *a, const char *type)
+{
+	if (soap_out_PointerTons1__getInvestigation(soap, "ns1:getInvestigation", -1, &a->ns1__getInvestigation_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getInvestigation * SOAP_FMAC4 soap_in___ns1__getInvestigation(struct soap *soap, const char *tag, struct __ns1__getInvestigation *a, const char *type)
+{
+	size_t soap_flag_ns1__getInvestigation_ = 1;
+	short soap_flag;
+	a = (struct __ns1__getInvestigation *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__getInvestigation, sizeof(struct __ns1__getInvestigation), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__getInvestigation(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__getInvestigation_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__getInvestigation(soap, "ns1:getInvestigation", &a->ns1__getInvestigation_, "ns1:getInvestigation"))
+				{	soap_flag_ns1__getInvestigation_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__getInvestigation(struct soap *soap, const struct __ns1__getInvestigation *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__getInvestigation(soap, tag?tag:"-ns1:getInvestigation", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__getInvestigation * SOAP_FMAC4 soap_get___ns1__getInvestigation(struct soap *soap, struct __ns1__getInvestigation *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__getInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__getInvestigation * SOAP_FMAC2 soap_instantiate___ns1__getInvestigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__getInvestigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__getInvestigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigation);
+		if (size)
+			*size = sizeof(struct __ns1__getInvestigation);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__getInvestigation[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__getInvestigation);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__getInvestigation*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__getInvestigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__getInvestigation %p -> %p\n", q, p));
+	*(struct __ns1__getInvestigation*)p = *(struct __ns1__getInvestigation*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addInvestigator(struct soap *soap, struct __ns1__addInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addInvestigator_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addInvestigator(struct soap *soap, const struct __ns1__addInvestigator *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addInvestigator(soap, &a->ns1__addInvestigator_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addInvestigator(struct soap *soap, const char *tag, int id, const struct __ns1__addInvestigator *a, const char *type)
+{
+	if (soap_out_PointerTons1__addInvestigator(soap, "ns1:addInvestigator", -1, &a->ns1__addInvestigator_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addInvestigator * SOAP_FMAC4 soap_in___ns1__addInvestigator(struct soap *soap, const char *tag, struct __ns1__addInvestigator *a, const char *type)
+{
+	size_t soap_flag_ns1__addInvestigator_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addInvestigator *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addInvestigator, sizeof(struct __ns1__addInvestigator), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addInvestigator(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addInvestigator_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addInvestigator(soap, "ns1:addInvestigator", &a->ns1__addInvestigator_, "ns1:addInvestigator"))
+				{	soap_flag_ns1__addInvestigator_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addInvestigator(struct soap *soap, const struct __ns1__addInvestigator *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addInvestigator(soap, tag?tag:"-ns1:addInvestigator", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addInvestigator * SOAP_FMAC4 soap_get___ns1__addInvestigator(struct soap *soap, struct __ns1__addInvestigator *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addInvestigator * SOAP_FMAC2 soap_instantiate___ns1__addInvestigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addInvestigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addInvestigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addInvestigator);
+		if (size)
+			*size = sizeof(struct __ns1__addInvestigator);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addInvestigator[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addInvestigator);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addInvestigator*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addInvestigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addInvestigator %p -> %p\n", q, p));
+	*(struct __ns1__addInvestigator*)p = *(struct __ns1__addInvestigator*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addKeyword(struct soap *soap, struct __ns1__addKeyword *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addKeyword_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addKeyword(struct soap *soap, const struct __ns1__addKeyword *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addKeyword(soap, &a->ns1__addKeyword_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addKeyword(struct soap *soap, const char *tag, int id, const struct __ns1__addKeyword *a, const char *type)
+{
+	if (soap_out_PointerTons1__addKeyword(soap, "ns1:addKeyword", -1, &a->ns1__addKeyword_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addKeyword * SOAP_FMAC4 soap_in___ns1__addKeyword(struct soap *soap, const char *tag, struct __ns1__addKeyword *a, const char *type)
+{
+	size_t soap_flag_ns1__addKeyword_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addKeyword *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addKeyword, sizeof(struct __ns1__addKeyword), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addKeyword(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addKeyword_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addKeyword(soap, "ns1:addKeyword", &a->ns1__addKeyword_, "ns1:addKeyword"))
+				{	soap_flag_ns1__addKeyword_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addKeyword(struct soap *soap, const struct __ns1__addKeyword *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addKeyword(soap, tag?tag:"-ns1:addKeyword", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addKeyword * SOAP_FMAC4 soap_get___ns1__addKeyword(struct soap *soap, struct __ns1__addKeyword *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addKeyword * SOAP_FMAC2 soap_instantiate___ns1__addKeyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addKeyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addKeyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addKeyword);
+		if (size)
+			*size = sizeof(struct __ns1__addKeyword);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addKeyword[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addKeyword);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addKeyword*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addKeyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addKeyword %p -> %p\n", q, p));
+	*(struct __ns1__addKeyword*)p = *(struct __ns1__addKeyword*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addPublication(struct soap *soap, struct __ns1__addPublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addPublication_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addPublication(struct soap *soap, const struct __ns1__addPublication *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addPublication(soap, &a->ns1__addPublication_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addPublication(struct soap *soap, const char *tag, int id, const struct __ns1__addPublication *a, const char *type)
+{
+	if (soap_out_PointerTons1__addPublication(soap, "ns1:addPublication", -1, &a->ns1__addPublication_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addPublication * SOAP_FMAC4 soap_in___ns1__addPublication(struct soap *soap, const char *tag, struct __ns1__addPublication *a, const char *type)
+{
+	size_t soap_flag_ns1__addPublication_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addPublication *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addPublication, sizeof(struct __ns1__addPublication), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addPublication(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addPublication_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addPublication(soap, "ns1:addPublication", &a->ns1__addPublication_, "ns1:addPublication"))
+				{	soap_flag_ns1__addPublication_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addPublication(struct soap *soap, const struct __ns1__addPublication *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addPublication(soap, tag?tag:"-ns1:addPublication", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addPublication * SOAP_FMAC4 soap_get___ns1__addPublication(struct soap *soap, struct __ns1__addPublication *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addPublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addPublication * SOAP_FMAC2 soap_instantiate___ns1__addPublication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addPublication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addPublication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addPublication);
+		if (size)
+			*size = sizeof(struct __ns1__addPublication);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addPublication[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addPublication);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addPublication*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addPublication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addPublication %p -> %p\n", q, p));
+	*(struct __ns1__addPublication*)p = *(struct __ns1__addPublication*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addSampleParameter(struct soap *soap, struct __ns1__addSampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addSampleParameter_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addSampleParameter(struct soap *soap, const struct __ns1__addSampleParameter *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addSampleParameter(soap, &a->ns1__addSampleParameter_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addSampleParameter(struct soap *soap, const char *tag, int id, const struct __ns1__addSampleParameter *a, const char *type)
+{
+	if (soap_out_PointerTons1__addSampleParameter(soap, "ns1:addSampleParameter", -1, &a->ns1__addSampleParameter_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addSampleParameter * SOAP_FMAC4 soap_in___ns1__addSampleParameter(struct soap *soap, const char *tag, struct __ns1__addSampleParameter *a, const char *type)
+{
+	size_t soap_flag_ns1__addSampleParameter_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addSampleParameter *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addSampleParameter, sizeof(struct __ns1__addSampleParameter), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addSampleParameter(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addSampleParameter_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addSampleParameter(soap, "ns1:addSampleParameter", &a->ns1__addSampleParameter_, "ns1:addSampleParameter"))
+				{	soap_flag_ns1__addSampleParameter_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addSampleParameter(struct soap *soap, const struct __ns1__addSampleParameter *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addSampleParameter(soap, tag?tag:"-ns1:addSampleParameter", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addSampleParameter * SOAP_FMAC4 soap_get___ns1__addSampleParameter(struct soap *soap, struct __ns1__addSampleParameter *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addSampleParameter * SOAP_FMAC2 soap_instantiate___ns1__addSampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addSampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addSampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSampleParameter);
+		if (size)
+			*size = sizeof(struct __ns1__addSampleParameter);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSampleParameter[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addSampleParameter);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addSampleParameter*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addSampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addSampleParameter %p -> %p\n", q, p));
+	*(struct __ns1__addSampleParameter*)p = *(struct __ns1__addSampleParameter*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__logout(struct soap *soap, struct __ns1__logout *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__logout_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__logout(struct soap *soap, const struct __ns1__logout *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__logout(soap, &a->ns1__logout_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__logout(struct soap *soap, const char *tag, int id, const struct __ns1__logout *a, const char *type)
+{
+	if (soap_out_PointerTons1__logout(soap, "ns1:logout", -1, &a->ns1__logout_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__logout * SOAP_FMAC4 soap_in___ns1__logout(struct soap *soap, const char *tag, struct __ns1__logout *a, const char *type)
+{
+	size_t soap_flag_ns1__logout_ = 1;
+	short soap_flag;
+	a = (struct __ns1__logout *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__logout, sizeof(struct __ns1__logout), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__logout(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__logout_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__logout(soap, "ns1:logout", &a->ns1__logout_, "ns1:logout"))
+				{	soap_flag_ns1__logout_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__logout(struct soap *soap, const struct __ns1__logout *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__logout(soap, tag?tag:"-ns1:logout", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__logout * SOAP_FMAC4 soap_get___ns1__logout(struct soap *soap, struct __ns1__logout *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__logout(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__logout * SOAP_FMAC2 soap_instantiate___ns1__logout(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__logout(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__logout, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__logout);
+		if (size)
+			*size = sizeof(struct __ns1__logout);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__logout[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__logout);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__logout*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__logout(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__logout %p -> %p\n", q, p));
+	*(struct __ns1__logout*)p = *(struct __ns1__logout*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__addSample(struct soap *soap, struct __ns1__addSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__addSample_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__addSample(struct soap *soap, const struct __ns1__addSample *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__addSample(soap, &a->ns1__addSample_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__addSample(struct soap *soap, const char *tag, int id, const struct __ns1__addSample *a, const char *type)
+{
+	if (soap_out_PointerTons1__addSample(soap, "ns1:addSample", -1, &a->ns1__addSample_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addSample * SOAP_FMAC4 soap_in___ns1__addSample(struct soap *soap, const char *tag, struct __ns1__addSample *a, const char *type)
+{
+	size_t soap_flag_ns1__addSample_ = 1;
+	short soap_flag;
+	a = (struct __ns1__addSample *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__addSample, sizeof(struct __ns1__addSample), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__addSample(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__addSample_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__addSample(soap, "ns1:addSample", &a->ns1__addSample_, "ns1:addSample"))
+				{	soap_flag_ns1__addSample_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__addSample(struct soap *soap, const struct __ns1__addSample *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__addSample(soap, tag?tag:"-ns1:addSample", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__addSample * SOAP_FMAC4 soap_get___ns1__addSample(struct soap *soap, struct __ns1__addSample *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__addSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__addSample * SOAP_FMAC2 soap_instantiate___ns1__addSample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__addSample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__addSample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSample);
+		if (size)
+			*size = sizeof(struct __ns1__addSample);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__addSample[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__addSample);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__addSample*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__addSample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__addSample %p -> %p\n", q, p));
+	*(struct __ns1__addSample*)p = *(struct __ns1__addSample*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__loginLifetime(struct soap *soap, struct __ns1__loginLifetime *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__loginLifetime_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__loginLifetime(struct soap *soap, const struct __ns1__loginLifetime *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__loginLifetime(soap, &a->ns1__loginLifetime_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__loginLifetime(struct soap *soap, const char *tag, int id, const struct __ns1__loginLifetime *a, const char *type)
+{
+	if (soap_out_PointerTons1__loginLifetime(soap, "ns1:loginLifetime", -1, &a->ns1__loginLifetime_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__loginLifetime * SOAP_FMAC4 soap_in___ns1__loginLifetime(struct soap *soap, const char *tag, struct __ns1__loginLifetime *a, const char *type)
+{
+	size_t soap_flag_ns1__loginLifetime_ = 1;
+	short soap_flag;
+	a = (struct __ns1__loginLifetime *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__loginLifetime, sizeof(struct __ns1__loginLifetime), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__loginLifetime(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__loginLifetime_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__loginLifetime(soap, "ns1:loginLifetime", &a->ns1__loginLifetime_, "ns1:loginLifetime"))
+				{	soap_flag_ns1__loginLifetime_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__loginLifetime(struct soap *soap, const struct __ns1__loginLifetime *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__loginLifetime(soap, tag?tag:"-ns1:loginLifetime", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__loginLifetime * SOAP_FMAC4 soap_get___ns1__loginLifetime(struct soap *soap, struct __ns1__loginLifetime *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__loginLifetime(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__loginLifetime * SOAP_FMAC2 soap_instantiate___ns1__loginLifetime(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__loginLifetime(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__loginLifetime, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__loginLifetime);
+		if (size)
+			*size = sizeof(struct __ns1__loginLifetime);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__loginLifetime[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__loginLifetime);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__loginLifetime*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__loginLifetime(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__loginLifetime %p -> %p\n", q, p));
+	*(struct __ns1__loginLifetime*)p = *(struct __ns1__loginLifetime*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default___ns1__login(struct soap *soap, struct __ns1__login *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__login_ = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize___ns1__login(struct soap *soap, const struct __ns1__login *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__login(soap, &a->ns1__login_);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out___ns1__login(struct soap *soap, const char *tag, int id, const struct __ns1__login *a, const char *type)
+{
+	if (soap_out_PointerTons1__login(soap, "ns1:login", -1, &a->ns1__login_, ""))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__login * SOAP_FMAC4 soap_in___ns1__login(struct soap *soap, const char *tag, struct __ns1__login *a, const char *type)
+{
+	size_t soap_flag_ns1__login_ = 1;
+	short soap_flag;
+	a = (struct __ns1__login *)soap_id_enter(soap, "", a, SOAP_TYPE___ns1__login, sizeof(struct __ns1__login), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default___ns1__login(soap, a);
+		for (soap_flag = 0;; soap_flag = 1)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__login_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__login(soap, "ns1:login", &a->ns1__login_, "ns1:login"))
+				{	soap_flag_ns1__login_--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				if (soap_flag)
+				{	soap->error = SOAP_OK;
+					break;
+				}
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put___ns1__login(struct soap *soap, const struct __ns1__login *a, const char *tag, const char *type)
+{
+	register int id = 0;
+	if (soap_out___ns1__login(soap, tag?tag:"-ns1:login", id, a, type))
+		return soap->error;
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 struct __ns1__login * SOAP_FMAC4 soap_get___ns1__login(struct soap *soap, struct __ns1__login *p, const char *tag, const char *type)
+{
+	if ((p = soap_in___ns1__login(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct __ns1__login * SOAP_FMAC2 soap_instantiate___ns1__login(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate___ns1__login(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE___ns1__login, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__login);
+		if (size)
+			*size = sizeof(struct __ns1__login);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct __ns1__login[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct __ns1__login);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct __ns1__login*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy___ns1__login(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct __ns1__login %p -> %p\n", q, p));
+	*(struct __ns1__login*)p = *(struct __ns1__login*)q;
+}
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	a->ns1__ICATAPIException_ = NULL;
+	a->ns1__InsufficientPrivilegesException_ = NULL;
+	a->ns1__NoSuchObjectFoundException_ = NULL;
+	a->ns1__NoSuchUserException_ = NULL;
+	a->ns1__ParameterSearchException_ = NULL;
+	a->ns1__SessionException_ = NULL;
+	a->ns1__ValidationException_ = NULL;
+	a->__type = 0;
+	a->fault = NULL;
+	a->__any = NULL;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a)
+{
+	(void)soap; (void)a; /* appease -Wall -Werror */
+	soap_serialize_PointerTons1__ICATAPIException(soap, &a->ns1__ICATAPIException_);
+	soap_serialize_PointerTons1__InsufficientPrivilegesException(soap, &a->ns1__InsufficientPrivilegesException_);
+	soap_serialize_PointerTons1__NoSuchObjectFoundException(soap, &a->ns1__NoSuchObjectFoundException_);
+	soap_serialize_PointerTons1__NoSuchUserException(soap, &a->ns1__NoSuchUserException_);
+	soap_serialize_PointerTons1__ParameterSearchException(soap, &a->ns1__ParameterSearchException_);
+	soap_serialize_PointerTons1__SessionException(soap, &a->ns1__SessionException_);
+	soap_serialize_PointerTons1__ValidationException(soap, &a->ns1__ValidationException_);
+	soap_markelement(soap, a->fault, a->__type);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_SOAP_ENV__Detail(struct soap *soap, const char *tag, int id, const struct SOAP_ENV__Detail *a, const char *type)
+{
+	if (soap_element_begin_out(soap, tag, soap_embedded_id(soap, id, a, SOAP_TYPE_SOAP_ENV__Detail), type))
+		return soap->error;
+	if (soap_out_PointerTons1__ICATAPIException(soap, "ns1:ICATAPIException", -1, &a->ns1__ICATAPIException_, ""))
+		return soap->error;
+	if (soap_out_PointerTons1__InsufficientPrivilegesException(soap, "ns1:InsufficientPrivilegesException", -1, &a->ns1__InsufficientPrivilegesException_, ""))
+		return soap->error;
+	if (soap_out_PointerTons1__NoSuchObjectFoundException(soap, "ns1:NoSuchObjectFoundException", -1, &a->ns1__NoSuchObjectFoundException_, ""))
+		return soap->error;
+	if (soap_out_PointerTons1__NoSuchUserException(soap, "ns1:NoSuchUserException", -1, &a->ns1__NoSuchUserException_, ""))
+		return soap->error;
+	if (soap_out_PointerTons1__ParameterSearchException(soap, "ns1:ParameterSearchException", -1, &a->ns1__ParameterSearchException_, ""))
+		return soap->error;
+	if (soap_out_PointerTons1__SessionException(soap, "ns1:SessionException", -1, &a->ns1__SessionException_, ""))
+		return soap->error;
+	if (soap_out_PointerTons1__ValidationException(soap, "ns1:ValidationException", -1, &a->ns1__ValidationException_, ""))
+		return soap->error;
+	if (soap_putelement(soap, a->fault, "fault", -1, a->__type))
+		return soap->error;
+	soap_outliteral(soap, "-any", &a->__any, NULL);
+	return soap_element_end_out(soap, tag);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_in_SOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail *a, const char *type)
+{
+	size_t soap_flag_ns1__ICATAPIException_ = 1;
+	size_t soap_flag_ns1__InsufficientPrivilegesException_ = 1;
+	size_t soap_flag_ns1__NoSuchObjectFoundException_ = 1;
+	size_t soap_flag_ns1__NoSuchUserException_ = 1;
+	size_t soap_flag_ns1__ParameterSearchException_ = 1;
+	size_t soap_flag_ns1__SessionException_ = 1;
+	size_t soap_flag_ns1__ValidationException_ = 1;
+	size_t soap_flag_fault = 1;
+	size_t soap_flag___any = 1;
+	if (soap_element_begin_in(soap, tag, 0, type))
+		return NULL;
+	a = (struct SOAP_ENV__Detail *)soap_id_enter(soap, soap->id, a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0, NULL, NULL, NULL);
+	if (!a)
+		return NULL;
+	soap_default_SOAP_ENV__Detail(soap, a);
+	if (soap->body && !*soap->href)
+	{
+		for (;;)
+		{	soap->error = SOAP_TAG_MISMATCH;
+			if (soap_flag_ns1__ICATAPIException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__ICATAPIException(soap, "ns1:ICATAPIException", &a->ns1__ICATAPIException_, "ns1:ICATAPIException"))
+				{	soap_flag_ns1__ICATAPIException_--;
+					continue;
+				}
+			if (soap_flag_ns1__InsufficientPrivilegesException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__InsufficientPrivilegesException(soap, "ns1:InsufficientPrivilegesException", &a->ns1__InsufficientPrivilegesException_, "ns1:InsufficientPrivilegesException"))
+				{	soap_flag_ns1__InsufficientPrivilegesException_--;
+					continue;
+				}
+			if (soap_flag_ns1__NoSuchObjectFoundException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__NoSuchObjectFoundException(soap, "ns1:NoSuchObjectFoundException", &a->ns1__NoSuchObjectFoundException_, "ns1:NoSuchObjectFoundException"))
+				{	soap_flag_ns1__NoSuchObjectFoundException_--;
+					continue;
+				}
+			if (soap_flag_ns1__NoSuchUserException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__NoSuchUserException(soap, "ns1:NoSuchUserException", &a->ns1__NoSuchUserException_, "ns1:NoSuchUserException"))
+				{	soap_flag_ns1__NoSuchUserException_--;
+					continue;
+				}
+			if (soap_flag_ns1__ParameterSearchException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__ParameterSearchException(soap, "ns1:ParameterSearchException", &a->ns1__ParameterSearchException_, "ns1:ParameterSearchException"))
+				{	soap_flag_ns1__ParameterSearchException_--;
+					continue;
+				}
+			if (soap_flag_ns1__SessionException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__SessionException(soap, "ns1:SessionException", &a->ns1__SessionException_, "ns1:SessionException"))
+				{	soap_flag_ns1__SessionException_--;
+					continue;
+				}
+			if (soap_flag_ns1__ValidationException_ && soap->error == SOAP_TAG_MISMATCH)
+				if (soap_in_PointerTons1__ValidationException(soap, "ns1:ValidationException", &a->ns1__ValidationException_, "ns1:ValidationException"))
+				{	soap_flag_ns1__ValidationException_--;
+					continue;
+				}
+			if (soap_flag_fault && soap->error == SOAP_TAG_MISMATCH)
+				if ((a->fault = soap_getelement(soap, &a->__type)))
+				{	soap_flag_fault = 0;
+					continue;
+				}
+			if (soap_flag___any && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+				if (soap_inliteral(soap, "-any", &a->__any))
+				{	soap_flag___any--;
+					continue;
+				}
+			if (soap->error == SOAP_TAG_MISMATCH)
+				soap->error = soap_ignore_element(soap);
+			if (soap->error == SOAP_NO_TAG)
+				break;
+			if (soap->error)
+				return NULL;
+		}
+		if (soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Detail *)soap_id_forward(soap, soap->href, (void*)a, 0, SOAP_TYPE_SOAP_ENV__Detail, 0, sizeof(struct SOAP_ENV__Detail), 0, NULL);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	if ((soap->mode & SOAP_XML_STRICT) && (soap_flag_fault > 1))
+	{	soap->error = SOAP_OCCURS;
+		return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_SOAP_ENV__Detail(struct soap *soap, const struct SOAP_ENV__Detail *a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_SOAP_ENV__Detail);
+	if (soap_out_SOAP_ENV__Detail(soap, tag?tag:"SOAP-ENV:Detail", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Detail * SOAP_FMAC4 soap_get_SOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *p, const char *tag, const char *type)
+{
+	if ((p = soap_in_SOAP_ENV__Detail(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC1 struct SOAP_ENV__Detail * SOAP_FMAC2 soap_instantiate_SOAP_ENV__Detail(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_SOAP_ENV__Detail(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_SOAP_ENV__Detail, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Detail);
+		if (size)
+			*size = sizeof(struct SOAP_ENV__Detail);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(struct SOAP_ENV__Detail[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(struct SOAP_ENV__Detail);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (struct SOAP_ENV__Detail*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_SOAP_ENV__Detail(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying struct SOAP_ENV__Detail %p -> %p\n", q, p));
+	*(struct SOAP_ENV__Detail*)p = *(struct SOAP_ENV__Detail*)q;
+}
+
+#endif
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Reason))
+		soap_serialize_SOAP_ENV__Reason(soap, *a);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Reason *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Reason);
+	if (id < 0)
+		return soap->error;
+	return soap_out_SOAP_ENV__Reason(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Reason(struct soap *soap, const char *tag, struct SOAP_ENV__Reason **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (struct SOAP_ENV__Reason **)soap_malloc(soap, sizeof(struct SOAP_ENV__Reason *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_SOAP_ENV__Reason(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Reason **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Reason, sizeof(struct SOAP_ENV__Reason), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Reason);
+	if (soap_out_PointerToSOAP_ENV__Reason(soap, tag?tag:"SOAP-ENV:Reason", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Reason ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Reason(struct soap *soap, struct SOAP_ENV__Reason **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerToSOAP_ENV__Reason(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+#endif
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Detail))
+		soap_serialize_SOAP_ENV__Detail(soap, *a);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Detail *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Detail);
+	if (id < 0)
+		return soap->error;
+	return soap_out_SOAP_ENV__Detail(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Detail(struct soap *soap, const char *tag, struct SOAP_ENV__Detail **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (struct SOAP_ENV__Detail **)soap_malloc(soap, sizeof(struct SOAP_ENV__Detail *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_SOAP_ENV__Detail(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Detail **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Detail, sizeof(struct SOAP_ENV__Detail), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Detail);
+	if (soap_out_PointerToSOAP_ENV__Detail(soap, tag?tag:"SOAP-ENV:Detail", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Detail ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Detail(struct soap *soap, struct SOAP_ENV__Detail **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerToSOAP_ENV__Detail(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+#endif
+
+#ifndef WITH_NOGLOBAL
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_SOAP_ENV__Code))
+		soap_serialize_SOAP_ENV__Code(soap, *a);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, int id, struct SOAP_ENV__Code *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_SOAP_ENV__Code);
+	if (id < 0)
+		return soap->error;
+	return soap_out_SOAP_ENV__Code(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_in_PointerToSOAP_ENV__Code(struct soap *soap, const char *tag, struct SOAP_ENV__Code **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (struct SOAP_ENV__Code **)soap_malloc(soap, sizeof(struct SOAP_ENV__Code *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_SOAP_ENV__Code(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (struct SOAP_ENV__Code **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_SOAP_ENV__Code, sizeof(struct SOAP_ENV__Code), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToSOAP_ENV__Code);
+	if (soap_out_PointerToSOAP_ENV__Code(soap, tag?tag:"SOAP-ENV:Code", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 struct SOAP_ENV__Code ** SOAP_FMAC4 soap_get_PointerToSOAP_ENV__Code(struct soap *soap, struct SOAP_ENV__Code **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerToSOAP_ENV__Code(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+#endif
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparatorsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatafilesByParameterComparatorsResponse **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparatorsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatafilesByParameterComparatorsResponse *)soap_instantiate_ns1__searchDatafilesByParameterComparatorsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatafilesByParameterComparatorsResponse ** p = (ns1__searchDatafilesByParameterComparatorsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorsResponse);
+	if (soap_out_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparatorsResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparatorsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparators *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparators);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparators ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparators **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatafilesByParameterComparators **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparators *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatafilesByParameterComparators *)soap_instantiate_ns1__searchDatafilesByParameterComparators(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatafilesByParameterComparators ** p = (ns1__searchDatafilesByParameterComparators **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, sizeof(ns1__searchDatafilesByParameterComparators), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparators);
+	if (soap_out_PointerTons1__searchDatafilesByParameterComparators(soap, tag?tag:"ns1:searchDatafilesByParameterComparators", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparators ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparators(struct soap *soap, ns1__searchDatafilesByParameterComparators **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatafilesByParameterComparatorResponse **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatafilesByParameterComparatorResponse *)soap_instantiate_ns1__searchDatafilesByParameterComparatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatafilesByParameterComparatorResponse ** p = (ns1__searchDatafilesByParameterComparatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, sizeof(ns1__searchDatafilesByParameterComparatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparatorResponse);
+	if (soap_out_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, tag?tag:"ns1:searchDatafilesByParameterComparatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparatorResponse(struct soap *soap, ns1__searchDatafilesByParameterComparatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, int id, ns1__searchDatafilesByParameterComparator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatafilesByParameterComparator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparator ** SOAP_FMAC4 soap_in_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatafilesByParameterComparator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatafilesByParameterComparator **)soap_malloc(soap, sizeof(ns1__searchDatafilesByParameterComparator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatafilesByParameterComparator *)soap_instantiate_ns1__searchDatafilesByParameterComparator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatafilesByParameterComparator ** p = (ns1__searchDatafilesByParameterComparator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, sizeof(ns1__searchDatafilesByParameterComparator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatafilesByParameterComparator);
+	if (soap_out_PointerTons1__searchDatafilesByParameterComparator(soap, tag?tag:"ns1:searchDatafilesByParameterComparator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatafilesByParameterComparator ** SOAP_FMAC4 soap_get_PointerTons1__searchDatafilesByParameterComparator(struct soap *soap, ns1__searchDatafilesByParameterComparator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatafilesByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparatorsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatasetsByParameterComparatorsResponse **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparatorsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatasetsByParameterComparatorsResponse *)soap_instantiate_ns1__searchDatasetsByParameterComparatorsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatasetsByParameterComparatorsResponse ** p = (ns1__searchDatasetsByParameterComparatorsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorsResponse);
+	if (soap_out_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparatorsResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparatorsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparators *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparators);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparators ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparators **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatasetsByParameterComparators **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparators *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatasetsByParameterComparators *)soap_instantiate_ns1__searchDatasetsByParameterComparators(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatasetsByParameterComparators ** p = (ns1__searchDatasetsByParameterComparators **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, sizeof(ns1__searchDatasetsByParameterComparators), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparators);
+	if (soap_out_PointerTons1__searchDatasetsByParameterComparators(soap, tag?tag:"ns1:searchDatasetsByParameterComparators", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparators ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparators(struct soap *soap, ns1__searchDatasetsByParameterComparators **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatasetsByParameterComparatorResponse **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatasetsByParameterComparatorResponse *)soap_instantiate_ns1__searchDatasetsByParameterComparatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatasetsByParameterComparatorResponse ** p = (ns1__searchDatasetsByParameterComparatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, sizeof(ns1__searchDatasetsByParameterComparatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparatorResponse);
+	if (soap_out_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, tag?tag:"ns1:searchDatasetsByParameterComparatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparatorResponse(struct soap *soap, ns1__searchDatasetsByParameterComparatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, int id, ns1__searchDatasetsByParameterComparator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsByParameterComparator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparator ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, const char *tag, ns1__searchDatasetsByParameterComparator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatasetsByParameterComparator **)soap_malloc(soap, sizeof(ns1__searchDatasetsByParameterComparator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatasetsByParameterComparator *)soap_instantiate_ns1__searchDatasetsByParameterComparator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatasetsByParameterComparator ** p = (ns1__searchDatasetsByParameterComparator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, sizeof(ns1__searchDatasetsByParameterComparator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsByParameterComparator);
+	if (soap_out_PointerTons1__searchDatasetsByParameterComparator(soap, tag?tag:"ns1:searchDatasetsByParameterComparator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsByParameterComparator ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsByParameterComparator(struct soap *soap, ns1__searchDatasetsByParameterComparator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatasetsByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparatorsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparatorsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByParameterComparatorsResponse **)soap_malloc(soap, sizeof(ns1__searchByParameterComparatorsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByParameterComparatorsResponse *)soap_instantiate_ns1__searchByParameterComparatorsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByParameterComparatorsResponse ** p = (ns1__searchByParameterComparatorsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, sizeof(ns1__searchByParameterComparatorsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparatorsResponse);
+	if (soap_out_PointerTons1__searchByParameterComparatorsResponse(soap, tag?tag:"ns1:searchByParameterComparatorsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparatorsResponse(struct soap *soap, ns1__searchByParameterComparatorsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByParameterComparatorsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparators))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparators(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparators *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparators);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparators ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparators(struct soap *soap, const char *tag, ns1__searchByParameterComparators **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByParameterComparators **)soap_malloc(soap, sizeof(ns1__searchByParameterComparators *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByParameterComparators *)soap_instantiate_ns1__searchByParameterComparators(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByParameterComparators ** p = (ns1__searchByParameterComparators **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparators, sizeof(ns1__searchByParameterComparators), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparators);
+	if (soap_out_PointerTons1__searchByParameterComparators(soap, tag?tag:"ns1:searchByParameterComparators", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparators ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparators(struct soap *soap, ns1__searchByParameterComparators **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByParameterComparators(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterComparatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByParameterComparatorResponse **)soap_malloc(soap, sizeof(ns1__searchByParameterComparatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByParameterComparatorResponse *)soap_instantiate_ns1__searchByParameterComparatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByParameterComparatorResponse ** p = (ns1__searchByParameterComparatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorResponse, sizeof(ns1__searchByParameterComparatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparatorResponse);
+	if (soap_out_PointerTons1__searchByParameterComparatorResponse(soap, tag?tag:"ns1:searchByParameterComparatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparatorResponse(struct soap *soap, ns1__searchByParameterComparatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByParameterComparatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterComparator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterComparator(struct soap *soap, const char *tag, int id, ns1__searchByParameterComparator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterComparator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparator ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterComparator(struct soap *soap, const char *tag, ns1__searchByParameterComparator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByParameterComparator **)soap_malloc(soap, sizeof(ns1__searchByParameterComparator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByParameterComparator *)soap_instantiate_ns1__searchByParameterComparator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByParameterComparator ** p = (ns1__searchByParameterComparator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparator, sizeof(ns1__searchByParameterComparator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterComparator);
+	if (soap_out_PointerTons1__searchByParameterComparator(soap, tag?tag:"ns1:searchByParameterComparator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByParameterComparator ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterComparator(struct soap *soap, ns1__searchByParameterComparator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByParameterComparator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterOperatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, int id, ns1__searchByParameterOperatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterOperatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, const char *tag, ns1__searchByParameterOperatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByParameterOperatorResponse **)soap_malloc(soap, sizeof(ns1__searchByParameterOperatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByParameterOperatorResponse *)soap_instantiate_ns1__searchByParameterOperatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByParameterOperatorResponse ** p = (ns1__searchByParameterOperatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperatorResponse, sizeof(ns1__searchByParameterOperatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterOperatorResponse);
+	if (soap_out_PointerTons1__searchByParameterOperatorResponse(soap, tag?tag:"ns1:searchByParameterOperatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterOperatorResponse(struct soap *soap, ns1__searchByParameterOperatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByParameterOperatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByParameterOperator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByParameterOperator(struct soap *soap, const char *tag, int id, ns1__searchByParameterOperator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByParameterOperator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperator ** SOAP_FMAC4 soap_in_PointerTons1__searchByParameterOperator(struct soap *soap, const char *tag, ns1__searchByParameterOperator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByParameterOperator **)soap_malloc(soap, sizeof(ns1__searchByParameterOperator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByParameterOperator *)soap_instantiate_ns1__searchByParameterOperator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByParameterOperator ** p = (ns1__searchByParameterOperator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperator, sizeof(ns1__searchByParameterOperator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByParameterOperator);
+	if (soap_out_PointerTons1__searchByParameterOperator(soap, tag?tag:"ns1:searchByParameterOperator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByParameterOperator ** SOAP_FMAC4 soap_get_PointerTons1__searchByParameterOperator(struct soap *soap, ns1__searchByParameterOperator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByParameterOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__isSessionValidResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__isSessionValidResponse(struct soap *soap, const char *tag, int id, ns1__isSessionValidResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__isSessionValidResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__isSessionValidResponse ** SOAP_FMAC4 soap_in_PointerTons1__isSessionValidResponse(struct soap *soap, const char *tag, ns1__isSessionValidResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__isSessionValidResponse **)soap_malloc(soap, sizeof(ns1__isSessionValidResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__isSessionValidResponse *)soap_instantiate_ns1__isSessionValidResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__isSessionValidResponse ** p = (ns1__isSessionValidResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValidResponse, sizeof(ns1__isSessionValidResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__isSessionValidResponse);
+	if (soap_out_PointerTons1__isSessionValidResponse(soap, tag?tag:"ns1:isSessionValidResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__isSessionValidResponse ** SOAP_FMAC4 soap_get_PointerTons1__isSessionValidResponse(struct soap *soap, ns1__isSessionValidResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__isSessionValidResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__isSessionValid(struct soap *soap, ns1__isSessionValid *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__isSessionValid))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__isSessionValid(struct soap *soap, const char *tag, int id, ns1__isSessionValid *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__isSessionValid);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__isSessionValid ** SOAP_FMAC4 soap_in_PointerTons1__isSessionValid(struct soap *soap, const char *tag, ns1__isSessionValid **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__isSessionValid **)soap_malloc(soap, sizeof(ns1__isSessionValid *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__isSessionValid *)soap_instantiate_ns1__isSessionValid(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__isSessionValid ** p = (ns1__isSessionValid **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValid, sizeof(ns1__isSessionValid), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__isSessionValid(struct soap *soap, ns1__isSessionValid *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__isSessionValid);
+	if (soap_out_PointerTons1__isSessionValid(soap, tag?tag:"ns1:isSessionValid", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__isSessionValid ** SOAP_FMAC4 soap_get_PointerTons1__isSessionValid(struct soap *soap, ns1__isSessionValid **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__isSessionValid(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFederalIdResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalIdResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getFacilityUserByFederalIdResponse **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFederalIdResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getFacilityUserByFederalIdResponse *)soap_instantiate_ns1__getFacilityUserByFederalIdResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getFacilityUserByFederalIdResponse ** p = (ns1__getFacilityUserByFederalIdResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, sizeof(ns1__getFacilityUserByFederalIdResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFederalIdResponse);
+	if (soap_out_PointerTons1__getFacilityUserByFederalIdResponse(soap, tag?tag:"ns1:getFacilityUserByFederalIdResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalIdResponse ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFederalIdResponse(struct soap *soap, ns1__getFacilityUserByFederalIdResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getFacilityUserByFederalIdResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFederalId))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFederalId(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFederalId *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFederalId);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalId ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFederalId(struct soap *soap, const char *tag, ns1__getFacilityUserByFederalId **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getFacilityUserByFederalId **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFederalId *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getFacilityUserByFederalId *)soap_instantiate_ns1__getFacilityUserByFederalId(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getFacilityUserByFederalId ** p = (ns1__getFacilityUserByFederalId **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalId, sizeof(ns1__getFacilityUserByFederalId), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFederalId);
+	if (soap_out_PointerTons1__getFacilityUserByFederalId(soap, tag?tag:"ns1:getFacilityUserByFederalId", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFederalId ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFederalId(struct soap *soap, ns1__getFacilityUserByFederalId **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getFacilityUserByFederalId(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFacilityUserIdResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserIdResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getFacilityUserByFacilityUserIdResponse **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFacilityUserIdResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getFacilityUserByFacilityUserIdResponse *)soap_instantiate_ns1__getFacilityUserByFacilityUserIdResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getFacilityUserByFacilityUserIdResponse ** p = (ns1__getFacilityUserByFacilityUserIdResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserIdResponse);
+	if (soap_out_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, tag?tag:"ns1:getFacilityUserByFacilityUserIdResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserIdResponse ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFacilityUserIdResponse(struct soap *soap, ns1__getFacilityUserByFacilityUserIdResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getFacilityUserByFacilityUserIdResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, int id, ns1__getFacilityUserByFacilityUserId *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId ** SOAP_FMAC4 soap_in_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, const char *tag, ns1__getFacilityUserByFacilityUserId **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getFacilityUserByFacilityUserId **)soap_malloc(soap, sizeof(ns1__getFacilityUserByFacilityUserId *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getFacilityUserByFacilityUserId *)soap_instantiate_ns1__getFacilityUserByFacilityUserId(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getFacilityUserByFacilityUserId ** p = (ns1__getFacilityUserByFacilityUserId **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, sizeof(ns1__getFacilityUserByFacilityUserId), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getFacilityUserByFacilityUserId);
+	if (soap_out_PointerTons1__getFacilityUserByFacilityUserId(soap, tag?tag:"ns1:getFacilityUserByFacilityUserId", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getFacilityUserByFacilityUserId ** SOAP_FMAC4 soap_get_PointerTons1__getFacilityUserByFacilityUserId(struct soap *soap, ns1__getFacilityUserByFacilityUserId **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getFacilityUserByFacilityUserId(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getICATAPIVersionResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getICATAPIVersionResponse(struct soap *soap, const char *tag, int id, ns1__getICATAPIVersionResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getICATAPIVersionResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersionResponse ** SOAP_FMAC4 soap_in_PointerTons1__getICATAPIVersionResponse(struct soap *soap, const char *tag, ns1__getICATAPIVersionResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getICATAPIVersionResponse **)soap_malloc(soap, sizeof(ns1__getICATAPIVersionResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getICATAPIVersionResponse *)soap_instantiate_ns1__getICATAPIVersionResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getICATAPIVersionResponse ** p = (ns1__getICATAPIVersionResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersionResponse, sizeof(ns1__getICATAPIVersionResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getICATAPIVersionResponse);
+	if (soap_out_PointerTons1__getICATAPIVersionResponse(soap, tag?tag:"ns1:getICATAPIVersionResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersionResponse ** SOAP_FMAC4 soap_get_PointerTons1__getICATAPIVersionResponse(struct soap *soap, ns1__getICATAPIVersionResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getICATAPIVersionResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getICATAPIVersion))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getICATAPIVersion(struct soap *soap, const char *tag, int id, ns1__getICATAPIVersion *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getICATAPIVersion);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersion ** SOAP_FMAC4 soap_in_PointerTons1__getICATAPIVersion(struct soap *soap, const char *tag, ns1__getICATAPIVersion **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getICATAPIVersion **)soap_malloc(soap, sizeof(ns1__getICATAPIVersion *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getICATAPIVersion *)soap_instantiate_ns1__getICATAPIVersion(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getICATAPIVersion ** p = (ns1__getICATAPIVersion **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersion, sizeof(ns1__getICATAPIVersion), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getICATAPIVersion);
+	if (soap_out_PointerTons1__getICATAPIVersion(soap, tag?tag:"ns1:getICATAPIVersion", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getICATAPIVersion ** SOAP_FMAC4 soap_get_PointerTons1__getICATAPIVersion(struct soap *soap, ns1__getICATAPIVersion **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getICATAPIVersion(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ingestMetadataResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ingestMetadataResponse(struct soap *soap, const char *tag, int id, ns1__ingestMetadataResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ingestMetadataResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__ingestMetadataResponse ** SOAP_FMAC4 soap_in_PointerTons1__ingestMetadataResponse(struct soap *soap, const char *tag, ns1__ingestMetadataResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__ingestMetadataResponse **)soap_malloc(soap, sizeof(ns1__ingestMetadataResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__ingestMetadataResponse *)soap_instantiate_ns1__ingestMetadataResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__ingestMetadataResponse ** p = (ns1__ingestMetadataResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadataResponse, sizeof(ns1__ingestMetadataResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ingestMetadataResponse);
+	if (soap_out_PointerTons1__ingestMetadataResponse(soap, tag?tag:"ns1:ingestMetadataResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__ingestMetadataResponse ** SOAP_FMAC4 soap_get_PointerTons1__ingestMetadataResponse(struct soap *soap, ns1__ingestMetadataResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__ingestMetadataResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ingestMetadata(struct soap *soap, ns1__ingestMetadata *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ingestMetadata))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ingestMetadata(struct soap *soap, const char *tag, int id, ns1__ingestMetadata *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ingestMetadata);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__ingestMetadata ** SOAP_FMAC4 soap_in_PointerTons1__ingestMetadata(struct soap *soap, const char *tag, ns1__ingestMetadata **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__ingestMetadata **)soap_malloc(soap, sizeof(ns1__ingestMetadata *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__ingestMetadata *)soap_instantiate_ns1__ingestMetadata(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__ingestMetadata ** p = (ns1__ingestMetadata **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadata, sizeof(ns1__ingestMetadata), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ingestMetadata(struct soap *soap, ns1__ingestMetadata *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ingestMetadata);
+	if (soap_out_PointerTons1__ingestMetadata(soap, tag?tag:"ns1:ingestMetadata", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__ingestMetadata ** SOAP_FMAC4 soap_get_PointerTons1__ingestMetadata(struct soap *soap, ns1__ingestMetadata **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__ingestMetadata(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSetParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__removeDataSetParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSetParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSetParameterResponse(struct soap *soap, const char *tag, ns1__removeDataSetParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__removeDataSetParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataSetParameterResponse *)soap_instantiate_ns1__removeDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataSetParameterResponse ** p = (ns1__removeDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameterResponse, sizeof(ns1__removeDataSetParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSetParameterResponse);
+	if (soap_out_PointerTons1__removeDataSetParameterResponse(soap, tag?tag:"ns1:removeDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSetParameterResponse(struct soap *soap, ns1__removeDataSetParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSetParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSetParameter(struct soap *soap, const char *tag, int id, ns1__removeDataSetParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSetParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSetParameter(struct soap *soap, const char *tag, ns1__removeDataSetParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataSetParameter **)soap_malloc(soap, sizeof(ns1__removeDataSetParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataSetParameter *)soap_instantiate_ns1__removeDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataSetParameter ** p = (ns1__removeDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameter, sizeof(ns1__removeDataSetParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSetParameter);
+	if (soap_out_PointerTons1__removeDataSetParameter(soap, tag?tag:"ns1:removeDataSetParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSetParameter(struct soap *soap, ns1__removeDataSetParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSetResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSetResponse(struct soap *soap, const char *tag, int id, ns1__removeDataSetResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSetResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSetResponse(struct soap *soap, const char *tag, ns1__removeDataSetResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataSetResponse **)soap_malloc(soap, sizeof(ns1__removeDataSetResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataSetResponse *)soap_instantiate_ns1__removeDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataSetResponse ** p = (ns1__removeDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetResponse, sizeof(ns1__removeDataSetResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSetResponse);
+	if (soap_out_PointerTons1__removeDataSetResponse(soap, tag?tag:"ns1:removeDataSetResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSetResponse(struct soap *soap, ns1__removeDataSetResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataSet(struct soap *soap, ns1__removeDataSet *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataSet))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataSet(struct soap *soap, const char *tag, int id, ns1__removeDataSet *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataSet);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataSet ** SOAP_FMAC4 soap_in_PointerTons1__removeDataSet(struct soap *soap, const char *tag, ns1__removeDataSet **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataSet **)soap_malloc(soap, sizeof(ns1__removeDataSet *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataSet *)soap_instantiate_ns1__removeDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataSet ** p = (ns1__removeDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSet, sizeof(ns1__removeDataSet), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataSet(struct soap *soap, ns1__removeDataSet *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataSet);
+	if (soap_out_PointerTons1__removeDataSet(soap, tag?tag:"ns1:removeDataSet", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataSet ** SOAP_FMAC4 soap_get_PointerTons1__removeDataSet(struct soap *soap, ns1__removeDataSet **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParametersResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParametersResponse(struct soap *soap, const char *tag, int id, ns1__addDataSetParametersResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParametersResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParametersResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParametersResponse(struct soap *soap, const char *tag, ns1__addDataSetParametersResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataSetParametersResponse **)soap_malloc(soap, sizeof(ns1__addDataSetParametersResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataSetParametersResponse *)soap_instantiate_ns1__addDataSetParametersResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataSetParametersResponse ** p = (ns1__addDataSetParametersResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParametersResponse, sizeof(ns1__addDataSetParametersResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParametersResponse);
+	if (soap_out_PointerTons1__addDataSetParametersResponse(soap, tag?tag:"ns1:addDataSetParametersResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataSetParametersResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParametersResponse(struct soap *soap, ns1__addDataSetParametersResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataSetParametersResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParameters))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParameters(struct soap *soap, const char *tag, int id, ns1__addDataSetParameters *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParameters);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameters ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParameters(struct soap *soap, const char *tag, ns1__addDataSetParameters **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataSetParameters **)soap_malloc(soap, sizeof(ns1__addDataSetParameters *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataSetParameters *)soap_instantiate_ns1__addDataSetParameters(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataSetParameters ** p = (ns1__addDataSetParameters **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameters, sizeof(ns1__addDataSetParameters), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParameters);
+	if (soap_out_PointerTons1__addDataSetParameters(soap, tag?tag:"ns1:addDataSetParameters", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameters ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParameters(struct soap *soap, ns1__addDataSetParameters **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataSetParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__addDataSetParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParameterResponse(struct soap *soap, const char *tag, ns1__addDataSetParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__addDataSetParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataSetParameterResponse *)soap_instantiate_ns1__addDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataSetParameterResponse ** p = (ns1__addDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameterResponse, sizeof(ns1__addDataSetParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParameterResponse);
+	if (soap_out_PointerTons1__addDataSetParameterResponse(soap, tag?tag:"ns1:addDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParameterResponse(struct soap *soap, ns1__addDataSetParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataSetParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataSetParameter(struct soap *soap, const char *tag, int id, ns1__addDataSetParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataSetParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__addDataSetParameter(struct soap *soap, const char *tag, ns1__addDataSetParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataSetParameter **)soap_malloc(soap, sizeof(ns1__addDataSetParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataSetParameter *)soap_instantiate_ns1__addDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataSetParameter ** p = (ns1__addDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameter, sizeof(ns1__addDataSetParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataSetParameter);
+	if (soap_out_PointerTons1__addDataSetParameter(soap, tag?tag:"ns1:addDataSetParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__addDataSetParameter(struct soap *soap, ns1__addDataSetParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__setDataSetSampleResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__setDataSetSampleResponse(struct soap *soap, const char *tag, int id, ns1__setDataSetSampleResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__setDataSetSampleResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__setDataSetSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__setDataSetSampleResponse(struct soap *soap, const char *tag, ns1__setDataSetSampleResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__setDataSetSampleResponse **)soap_malloc(soap, sizeof(ns1__setDataSetSampleResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__setDataSetSampleResponse *)soap_instantiate_ns1__setDataSetSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__setDataSetSampleResponse ** p = (ns1__setDataSetSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSampleResponse, sizeof(ns1__setDataSetSampleResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__setDataSetSampleResponse);
+	if (soap_out_PointerTons1__setDataSetSampleResponse(soap, tag?tag:"ns1:setDataSetSampleResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__setDataSetSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__setDataSetSampleResponse(struct soap *soap, ns1__setDataSetSampleResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__setDataSetSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__setDataSetSample(struct soap *soap, ns1__setDataSetSample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__setDataSetSample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__setDataSetSample(struct soap *soap, const char *tag, int id, ns1__setDataSetSample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__setDataSetSample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__setDataSetSample ** SOAP_FMAC4 soap_in_PointerTons1__setDataSetSample(struct soap *soap, const char *tag, ns1__setDataSetSample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__setDataSetSample **)soap_malloc(soap, sizeof(ns1__setDataSetSample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__setDataSetSample *)soap_instantiate_ns1__setDataSetSample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__setDataSetSample ** p = (ns1__setDataSetSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSample, sizeof(ns1__setDataSetSample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__setDataSetSample(struct soap *soap, ns1__setDataSetSample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__setDataSetSample);
+	if (soap_out_PointerTons1__setDataSetSample(soap, tag?tag:"ns1:setDataSetSample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__setDataSetSample ** SOAP_FMAC4 soap_get_PointerTons1__setDataSetSample(struct soap *soap, ns1__setDataSetSample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__setDataSetSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSetParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataSetParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSetParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataSetParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__modifyDataSetParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataSetParameterResponse *)soap_instantiate_ns1__modifyDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataSetParameterResponse ** p = (ns1__modifyDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameterResponse, sizeof(ns1__modifyDataSetParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSetParameterResponse);
+	if (soap_out_PointerTons1__modifyDataSetParameterResponse(soap, tag?tag:"ns1:modifyDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSetParameterResponse(struct soap *soap, ns1__modifyDataSetParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSetParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSetParameter(struct soap *soap, const char *tag, int id, ns1__modifyDataSetParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSetParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSetParameter(struct soap *soap, const char *tag, ns1__modifyDataSetParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataSetParameter **)soap_malloc(soap, sizeof(ns1__modifyDataSetParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataSetParameter *)soap_instantiate_ns1__modifyDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataSetParameter ** p = (ns1__modifyDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameter, sizeof(ns1__modifyDataSetParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSetParameter);
+	if (soap_out_PointerTons1__modifyDataSetParameter(soap, tag?tag:"ns1:modifyDataSetParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSetParameter(struct soap *soap, ns1__modifyDataSetParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSetResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSetResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataSetResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSetResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSetResponse(struct soap *soap, const char *tag, ns1__modifyDataSetResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataSetResponse **)soap_malloc(soap, sizeof(ns1__modifyDataSetResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataSetResponse *)soap_instantiate_ns1__modifyDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataSetResponse ** p = (ns1__modifyDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetResponse, sizeof(ns1__modifyDataSetResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSetResponse);
+	if (soap_out_PointerTons1__modifyDataSetResponse(soap, tag?tag:"ns1:modifyDataSetResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSetResponse(struct soap *soap, ns1__modifyDataSetResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataSet(struct soap *soap, ns1__modifyDataSet *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataSet))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataSet(struct soap *soap, const char *tag, int id, ns1__modifyDataSet *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataSet);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataSet ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataSet(struct soap *soap, const char *tag, ns1__modifyDataSet **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataSet **)soap_malloc(soap, sizeof(ns1__modifyDataSet *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataSet *)soap_instantiate_ns1__modifyDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataSet ** p = (ns1__modifyDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSet, sizeof(ns1__modifyDataSet), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataSet(struct soap *soap, ns1__modifyDataSet *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataSet);
+	if (soap_out_PointerTons1__modifyDataSet(soap, tag?tag:"ns1:modifyDataSet", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataSet ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataSet(struct soap *soap, ns1__modifyDataSet **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSetParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataSetParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSetParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataSetParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataSetParameterResponse **)soap_malloc(soap, sizeof(ns1__deleteDataSetParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataSetParameterResponse *)soap_instantiate_ns1__deleteDataSetParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataSetParameterResponse ** p = (ns1__deleteDataSetParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameterResponse, sizeof(ns1__deleteDataSetParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSetParameterResponse);
+	if (soap_out_PointerTons1__deleteDataSetParameterResponse(soap, tag?tag:"ns1:deleteDataSetParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSetParameterResponse(struct soap *soap, ns1__deleteDataSetParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataSetParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSetParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSetParameter(struct soap *soap, const char *tag, int id, ns1__deleteDataSetParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSetParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameter ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSetParameter(struct soap *soap, const char *tag, ns1__deleteDataSetParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataSetParameter **)soap_malloc(soap, sizeof(ns1__deleteDataSetParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataSetParameter *)soap_instantiate_ns1__deleteDataSetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataSetParameter ** p = (ns1__deleteDataSetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameter, sizeof(ns1__deleteDataSetParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSetParameter);
+	if (soap_out_PointerTons1__deleteDataSetParameter(soap, tag?tag:"ns1:deleteDataSetParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetParameter ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSetParameter(struct soap *soap, ns1__deleteDataSetParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataSetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSetResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSetResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataSetResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSetResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSetResponse(struct soap *soap, const char *tag, ns1__deleteDataSetResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataSetResponse **)soap_malloc(soap, sizeof(ns1__deleteDataSetResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataSetResponse *)soap_instantiate_ns1__deleteDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataSetResponse ** p = (ns1__deleteDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetResponse, sizeof(ns1__deleteDataSetResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSetResponse);
+	if (soap_out_PointerTons1__deleteDataSetResponse(soap, tag?tag:"ns1:deleteDataSetResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSetResponse(struct soap *soap, ns1__deleteDataSetResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataSet(struct soap *soap, ns1__deleteDataSet *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataSet))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataSet(struct soap *soap, const char *tag, int id, ns1__deleteDataSet *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataSet);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataSet ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataSet(struct soap *soap, const char *tag, ns1__deleteDataSet **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataSet **)soap_malloc(soap, sizeof(ns1__deleteDataSet *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataSet *)soap_instantiate_ns1__deleteDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataSet ** p = (ns1__deleteDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSet, sizeof(ns1__deleteDataSet), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataSet(struct soap *soap, ns1__deleteDataSet *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataSet);
+	if (soap_out_PointerTons1__deleteDataSet(soap, tag?tag:"ns1:deleteDataSet", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataSet ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataSet(struct soap *soap, ns1__deleteDataSet **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSetsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSetsResponse(struct soap *soap, const char *tag, int id, ns1__createDataSetsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSetsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataSetsResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataSetsResponse(struct soap *soap, const char *tag, ns1__createDataSetsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataSetsResponse **)soap_malloc(soap, sizeof(ns1__createDataSetsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataSetsResponse *)soap_instantiate_ns1__createDataSetsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataSetsResponse ** p = (ns1__createDataSetsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetsResponse, sizeof(ns1__createDataSetsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSetsResponse);
+	if (soap_out_PointerTons1__createDataSetsResponse(soap, tag?tag:"ns1:createDataSetsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataSetsResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataSetsResponse(struct soap *soap, ns1__createDataSetsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataSetsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSets(struct soap *soap, ns1__createDataSets *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSets))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSets(struct soap *soap, const char *tag, int id, ns1__createDataSets *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSets);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataSets ** SOAP_FMAC4 soap_in_PointerTons1__createDataSets(struct soap *soap, const char *tag, ns1__createDataSets **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataSets **)soap_malloc(soap, sizeof(ns1__createDataSets *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataSets *)soap_instantiate_ns1__createDataSets(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataSets ** p = (ns1__createDataSets **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSets, sizeof(ns1__createDataSets), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSets(struct soap *soap, ns1__createDataSets *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSets);
+	if (soap_out_PointerTons1__createDataSets(soap, tag?tag:"ns1:createDataSets", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataSets ** SOAP_FMAC4 soap_get_PointerTons1__createDataSets(struct soap *soap, ns1__createDataSets **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataSets(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSetResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSetResponse(struct soap *soap, const char *tag, int id, ns1__createDataSetResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSetResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataSetResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataSetResponse(struct soap *soap, const char *tag, ns1__createDataSetResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataSetResponse **)soap_malloc(soap, sizeof(ns1__createDataSetResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataSetResponse *)soap_instantiate_ns1__createDataSetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataSetResponse ** p = (ns1__createDataSetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetResponse, sizeof(ns1__createDataSetResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSetResponse);
+	if (soap_out_PointerTons1__createDataSetResponse(soap, tag?tag:"ns1:createDataSetResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataSetResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataSetResponse(struct soap *soap, ns1__createDataSetResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataSetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataSet(struct soap *soap, ns1__createDataSet *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataSet))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataSet(struct soap *soap, const char *tag, int id, ns1__createDataSet *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataSet);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataSet ** SOAP_FMAC4 soap_in_PointerTons1__createDataSet(struct soap *soap, const char *tag, ns1__createDataSet **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataSet **)soap_malloc(soap, sizeof(ns1__createDataSet *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataSet *)soap_instantiate_ns1__createDataSet(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataSet ** p = (ns1__createDataSet **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSet, sizeof(ns1__createDataSet), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataSet(struct soap *soap, ns1__createDataSet *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataSet);
+	if (soap_out_PointerTons1__createDataSet(soap, tag?tag:"ns1:createDataSet", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataSet ** SOAP_FMAC4 soap_get_PointerTons1__createDataSet(struct soap *soap, ns1__createDataSet **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataSet(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetsResponse(struct soap *soap, const char *tag, int id, ns1__getDatasetsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetsResponse(struct soap *soap, const char *tag, ns1__getDatasetsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatasetsResponse **)soap_malloc(soap, sizeof(ns1__getDatasetsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatasetsResponse *)soap_instantiate_ns1__getDatasetsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatasetsResponse ** p = (ns1__getDatasetsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetsResponse, sizeof(ns1__getDatasetsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetsResponse);
+	if (soap_out_PointerTons1__getDatasetsResponse(soap, tag?tag:"ns1:getDatasetsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatasetsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetsResponse(struct soap *soap, ns1__getDatasetsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatasetsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasets(struct soap *soap, ns1__getDatasets *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasets))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasets(struct soap *soap, const char *tag, int id, ns1__getDatasets *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasets);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatasets ** SOAP_FMAC4 soap_in_PointerTons1__getDatasets(struct soap *soap, const char *tag, ns1__getDatasets **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatasets **)soap_malloc(soap, sizeof(ns1__getDatasets *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatasets *)soap_instantiate_ns1__getDatasets(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatasets ** p = (ns1__getDatasets **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasets, sizeof(ns1__getDatasets), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasets(struct soap *soap, ns1__getDatasets *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasets);
+	if (soap_out_PointerTons1__getDatasets(soap, tag?tag:"ns1:getDatasets", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatasets ** SOAP_FMAC4 soap_get_PointerTons1__getDatasets(struct soap *soap, ns1__getDatasets **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatasets(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatafileFormatsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatafileFormatsResponse(struct soap *soap, const char *tag, int id, ns1__listDatafileFormatsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatafileFormatsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormatsResponse ** SOAP_FMAC4 soap_in_PointerTons1__listDatafileFormatsResponse(struct soap *soap, const char *tag, ns1__listDatafileFormatsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listDatafileFormatsResponse **)soap_malloc(soap, sizeof(ns1__listDatafileFormatsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listDatafileFormatsResponse *)soap_instantiate_ns1__listDatafileFormatsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listDatafileFormatsResponse ** p = (ns1__listDatafileFormatsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormatsResponse, sizeof(ns1__listDatafileFormatsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatafileFormatsResponse);
+	if (soap_out_PointerTons1__listDatafileFormatsResponse(soap, tag?tag:"ns1:listDatafileFormatsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormatsResponse ** SOAP_FMAC4 soap_get_PointerTons1__listDatafileFormatsResponse(struct soap *soap, ns1__listDatafileFormatsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listDatafileFormatsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatafileFormats))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatafileFormats(struct soap *soap, const char *tag, int id, ns1__listDatafileFormats *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatafileFormats);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormats ** SOAP_FMAC4 soap_in_PointerTons1__listDatafileFormats(struct soap *soap, const char *tag, ns1__listDatafileFormats **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listDatafileFormats **)soap_malloc(soap, sizeof(ns1__listDatafileFormats *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listDatafileFormats *)soap_instantiate_ns1__listDatafileFormats(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listDatafileFormats ** p = (ns1__listDatafileFormats **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormats, sizeof(ns1__listDatafileFormats), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatafileFormats);
+	if (soap_out_PointerTons1__listDatafileFormats(soap, tag?tag:"ns1:listDatafileFormats", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listDatafileFormats ** SOAP_FMAC4 soap_get_PointerTons1__listDatafileFormats(struct soap *soap, ns1__listDatafileFormats **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listDatafileFormats(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByRunNumberPaginationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberPaginationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByRunNumberPaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByRunNumberPaginationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByRunNumberPaginationResponse *)soap_instantiate_ns1__searchByRunNumberPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByRunNumberPaginationResponse ** p = (ns1__searchByRunNumberPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, sizeof(ns1__searchByRunNumberPaginationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumberPaginationResponse);
+	if (soap_out_PointerTons1__searchByRunNumberPaginationResponse(soap, tag?tag:"ns1:searchByRunNumberPaginationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumberPaginationResponse(struct soap *soap, ns1__searchByRunNumberPaginationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByRunNumberPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumberPagination))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumberPagination(struct soap *soap, const char *tag, int id, ns1__searchByRunNumberPagination *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumberPagination);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumberPagination(struct soap *soap, const char *tag, ns1__searchByRunNumberPagination **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByRunNumberPagination **)soap_malloc(soap, sizeof(ns1__searchByRunNumberPagination *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByRunNumberPagination *)soap_instantiate_ns1__searchByRunNumberPagination(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByRunNumberPagination ** p = (ns1__searchByRunNumberPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPagination, sizeof(ns1__searchByRunNumberPagination), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumberPagination);
+	if (soap_out_PointerTons1__searchByRunNumberPagination(soap, tag?tag:"ns1:searchByRunNumberPagination", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberPagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumberPagination(struct soap *soap, ns1__searchByRunNumberPagination **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByRunNumberPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumberResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumberResponse(struct soap *soap, const char *tag, int id, ns1__searchByRunNumberResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumberResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumberResponse(struct soap *soap, const char *tag, ns1__searchByRunNumberResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByRunNumberResponse **)soap_malloc(soap, sizeof(ns1__searchByRunNumberResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByRunNumberResponse *)soap_instantiate_ns1__searchByRunNumberResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByRunNumberResponse ** p = (ns1__searchByRunNumberResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberResponse, sizeof(ns1__searchByRunNumberResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumberResponse);
+	if (soap_out_PointerTons1__searchByRunNumberResponse(soap, tag?tag:"ns1:searchByRunNumberResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumberResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumberResponse(struct soap *soap, ns1__searchByRunNumberResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByRunNumberResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByRunNumber))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByRunNumber(struct soap *soap, const char *tag, int id, ns1__searchByRunNumber *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByRunNumber);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumber ** SOAP_FMAC4 soap_in_PointerTons1__searchByRunNumber(struct soap *soap, const char *tag, ns1__searchByRunNumber **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByRunNumber **)soap_malloc(soap, sizeof(ns1__searchByRunNumber *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByRunNumber *)soap_instantiate_ns1__searchByRunNumber(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByRunNumber ** p = (ns1__searchByRunNumber **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumber, sizeof(ns1__searchByRunNumber), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByRunNumber);
+	if (soap_out_PointerTons1__searchByRunNumber(soap, tag?tag:"ns1:searchByRunNumber", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByRunNumber ** SOAP_FMAC4 soap_get_PointerTons1__searchByRunNumber(struct soap *soap, ns1__searchByRunNumber **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByRunNumber(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetStatusResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetStatusResponse(struct soap *soap, const char *tag, int id, ns1__listDatasetStatusResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetStatusResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatusResponse ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetStatusResponse(struct soap *soap, const char *tag, ns1__listDatasetStatusResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listDatasetStatusResponse **)soap_malloc(soap, sizeof(ns1__listDatasetStatusResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listDatasetStatusResponse *)soap_instantiate_ns1__listDatasetStatusResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listDatasetStatusResponse ** p = (ns1__listDatasetStatusResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatusResponse, sizeof(ns1__listDatasetStatusResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetStatusResponse);
+	if (soap_out_PointerTons1__listDatasetStatusResponse(soap, tag?tag:"ns1:listDatasetStatusResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatusResponse ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetStatusResponse(struct soap *soap, ns1__listDatasetStatusResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listDatasetStatusResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetStatus))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetStatus(struct soap *soap, const char *tag, int id, ns1__listDatasetStatus *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetStatus);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatus ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetStatus(struct soap *soap, const char *tag, ns1__listDatasetStatus **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listDatasetStatus **)soap_malloc(soap, sizeof(ns1__listDatasetStatus *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listDatasetStatus *)soap_instantiate_ns1__listDatasetStatus(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listDatasetStatus ** p = (ns1__listDatasetStatus **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatus, sizeof(ns1__listDatasetStatus), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetStatus);
+	if (soap_out_PointerTons1__listDatasetStatus(soap, tag?tag:"ns1:listDatasetStatus", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listDatasetStatus ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetStatus(struct soap *soap, ns1__listDatasetStatus **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listDatasetStatus(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetTypesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetTypesResponse(struct soap *soap, const char *tag, int id, ns1__listDatasetTypesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetTypesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetTypesResponse(struct soap *soap, const char *tag, ns1__listDatasetTypesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listDatasetTypesResponse **)soap_malloc(soap, sizeof(ns1__listDatasetTypesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listDatasetTypesResponse *)soap_instantiate_ns1__listDatasetTypesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listDatasetTypesResponse ** p = (ns1__listDatasetTypesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypesResponse, sizeof(ns1__listDatasetTypesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetTypesResponse);
+	if (soap_out_PointerTons1__listDatasetTypesResponse(soap, tag?tag:"ns1:listDatasetTypesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetTypesResponse(struct soap *soap, ns1__listDatasetTypesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listDatasetTypesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listDatasetTypes))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listDatasetTypes(struct soap *soap, const char *tag, int id, ns1__listDatasetTypes *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listDatasetTypes);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypes ** SOAP_FMAC4 soap_in_PointerTons1__listDatasetTypes(struct soap *soap, const char *tag, ns1__listDatasetTypes **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listDatasetTypes **)soap_malloc(soap, sizeof(ns1__listDatasetTypes *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listDatasetTypes *)soap_instantiate_ns1__listDatasetTypes(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listDatasetTypes ** p = (ns1__listDatasetTypes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypes, sizeof(ns1__listDatasetTypes), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listDatasetTypes);
+	if (soap_out_PointerTons1__listDatasetTypes(soap, tag?tag:"ns1:listDatasetTypes", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listDatasetTypes ** SOAP_FMAC4 soap_get_PointerTons1__listDatasetTypes(struct soap *soap, ns1__listDatasetTypes **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listDatasetTypes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, int id, ns1__searchDatasetsBySampleResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsBySampleResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, const char *tag, ns1__searchDatasetsBySampleResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatasetsBySampleResponse **)soap_malloc(soap, sizeof(ns1__searchDatasetsBySampleResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatasetsBySampleResponse *)soap_instantiate_ns1__searchDatasetsBySampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatasetsBySampleResponse ** p = (ns1__searchDatasetsBySampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, sizeof(ns1__searchDatasetsBySampleResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsBySampleResponse);
+	if (soap_out_PointerTons1__searchDatasetsBySampleResponse(soap, tag?tag:"ns1:searchDatasetsBySampleResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsBySampleResponse(struct soap *soap, ns1__searchDatasetsBySampleResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatasetsBySampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchDatasetsBySample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchDatasetsBySample(struct soap *soap, const char *tag, int id, ns1__searchDatasetsBySample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchDatasetsBySample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySample ** SOAP_FMAC4 soap_in_PointerTons1__searchDatasetsBySample(struct soap *soap, const char *tag, ns1__searchDatasetsBySample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchDatasetsBySample **)soap_malloc(soap, sizeof(ns1__searchDatasetsBySample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchDatasetsBySample *)soap_instantiate_ns1__searchDatasetsBySample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchDatasetsBySample ** p = (ns1__searchDatasetsBySample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySample, sizeof(ns1__searchDatasetsBySample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchDatasetsBySample);
+	if (soap_out_PointerTons1__searchDatasetsBySample(soap, tag?tag:"ns1:searchDatasetsBySample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchDatasetsBySample ** SOAP_FMAC4 soap_get_PointerTons1__searchDatasetsBySample(struct soap *soap, ns1__searchDatasetsBySample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchDatasetsBySample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, int id, ns1__searchSamplesBySampleNameResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, const char *tag, ns1__searchSamplesBySampleNameResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchSamplesBySampleNameResponse **)soap_malloc(soap, sizeof(ns1__searchSamplesBySampleNameResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchSamplesBySampleNameResponse *)soap_instantiate_ns1__searchSamplesBySampleNameResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchSamplesBySampleNameResponse ** p = (ns1__searchSamplesBySampleNameResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, sizeof(ns1__searchSamplesBySampleNameResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchSamplesBySampleNameResponse);
+	if (soap_out_PointerTons1__searchSamplesBySampleNameResponse(soap, tag?tag:"ns1:searchSamplesBySampleNameResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleNameResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchSamplesBySampleNameResponse(struct soap *soap, ns1__searchSamplesBySampleNameResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchSamplesBySampleNameResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchSamplesBySampleName))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchSamplesBySampleName(struct soap *soap, const char *tag, int id, ns1__searchSamplesBySampleName *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchSamplesBySampleName);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleName ** SOAP_FMAC4 soap_in_PointerTons1__searchSamplesBySampleName(struct soap *soap, const char *tag, ns1__searchSamplesBySampleName **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchSamplesBySampleName **)soap_malloc(soap, sizeof(ns1__searchSamplesBySampleName *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchSamplesBySampleName *)soap_instantiate_ns1__searchSamplesBySampleName(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchSamplesBySampleName ** p = (ns1__searchSamplesBySampleName **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleName, sizeof(ns1__searchSamplesBySampleName), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchSamplesBySampleName);
+	if (soap_out_PointerTons1__searchSamplesBySampleName(soap, tag?tag:"ns1:searchSamplesBySampleName", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchSamplesBySampleName ** SOAP_FMAC4 soap_get_PointerTons1__searchSamplesBySampleName(struct soap *soap, ns1__searchSamplesBySampleName **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchSamplesBySampleName(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInvestigationTypesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInvestigationTypesResponse(struct soap *soap, const char *tag, int id, ns1__listInvestigationTypesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInvestigationTypesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listInvestigationTypesResponse(struct soap *soap, const char *tag, ns1__listInvestigationTypesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listInvestigationTypesResponse **)soap_malloc(soap, sizeof(ns1__listInvestigationTypesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listInvestigationTypesResponse *)soap_instantiate_ns1__listInvestigationTypesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listInvestigationTypesResponse ** p = (ns1__listInvestigationTypesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypesResponse, sizeof(ns1__listInvestigationTypesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInvestigationTypesResponse);
+	if (soap_out_PointerTons1__listInvestigationTypesResponse(soap, tag?tag:"ns1:listInvestigationTypesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listInvestigationTypesResponse(struct soap *soap, ns1__listInvestigationTypesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listInvestigationTypesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInvestigationTypes))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInvestigationTypes(struct soap *soap, const char *tag, int id, ns1__listInvestigationTypes *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInvestigationTypes);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypes ** SOAP_FMAC4 soap_in_PointerTons1__listInvestigationTypes(struct soap *soap, const char *tag, ns1__listInvestigationTypes **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listInvestigationTypes **)soap_malloc(soap, sizeof(ns1__listInvestigationTypes *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listInvestigationTypes *)soap_instantiate_ns1__listInvestigationTypes(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listInvestigationTypes ** p = (ns1__listInvestigationTypes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypes, sizeof(ns1__listInvestigationTypes), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInvestigationTypes);
+	if (soap_out_PointerTons1__listInvestigationTypes(soap, tag?tag:"ns1:listInvestigationTypes", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listInvestigationTypes ** SOAP_FMAC4 soap_get_PointerTons1__listInvestigationTypes(struct soap *soap, ns1__listInvestigationTypes **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listInvestigationTypes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listFacilityCyclesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listFacilityCyclesResponse(struct soap *soap, const char *tag, int id, ns1__listFacilityCyclesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listFacilityCyclesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listFacilityCyclesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listFacilityCyclesResponse(struct soap *soap, const char *tag, ns1__listFacilityCyclesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listFacilityCyclesResponse **)soap_malloc(soap, sizeof(ns1__listFacilityCyclesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listFacilityCyclesResponse *)soap_instantiate_ns1__listFacilityCyclesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listFacilityCyclesResponse ** p = (ns1__listFacilityCyclesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCyclesResponse, sizeof(ns1__listFacilityCyclesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listFacilityCyclesResponse);
+	if (soap_out_PointerTons1__listFacilityCyclesResponse(soap, tag?tag:"ns1:listFacilityCyclesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listFacilityCyclesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listFacilityCyclesResponse(struct soap *soap, ns1__listFacilityCyclesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listFacilityCyclesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listFacilityCycles))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listFacilityCycles(struct soap *soap, const char *tag, int id, ns1__listFacilityCycles *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listFacilityCycles);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listFacilityCycles ** SOAP_FMAC4 soap_in_PointerTons1__listFacilityCycles(struct soap *soap, const char *tag, ns1__listFacilityCycles **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listFacilityCycles **)soap_malloc(soap, sizeof(ns1__listFacilityCycles *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listFacilityCycles *)soap_instantiate_ns1__listFacilityCycles(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listFacilityCycles ** p = (ns1__listFacilityCycles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCycles, sizeof(ns1__listFacilityCycles), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listFacilityCycles);
+	if (soap_out_PointerTons1__listFacilityCycles(soap, tag?tag:"ns1:listFacilityCycles", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listFacilityCycles ** SOAP_FMAC4 soap_get_PointerTons1__listFacilityCycles(struct soap *soap, ns1__listFacilityCycles **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listFacilityCycles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listParametersResponse(struct soap *soap, ns1__listParametersResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listParametersResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listParametersResponse(struct soap *soap, const char *tag, int id, ns1__listParametersResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listParametersResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listParametersResponse ** SOAP_FMAC4 soap_in_PointerTons1__listParametersResponse(struct soap *soap, const char *tag, ns1__listParametersResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listParametersResponse **)soap_malloc(soap, sizeof(ns1__listParametersResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listParametersResponse *)soap_instantiate_ns1__listParametersResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listParametersResponse ** p = (ns1__listParametersResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParametersResponse, sizeof(ns1__listParametersResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listParametersResponse(struct soap *soap, ns1__listParametersResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listParametersResponse);
+	if (soap_out_PointerTons1__listParametersResponse(soap, tag?tag:"ns1:listParametersResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listParametersResponse ** SOAP_FMAC4 soap_get_PointerTons1__listParametersResponse(struct soap *soap, ns1__listParametersResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listParametersResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listParameters(struct soap *soap, ns1__listParameters *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listParameters))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listParameters(struct soap *soap, const char *tag, int id, ns1__listParameters *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listParameters);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listParameters ** SOAP_FMAC4 soap_in_PointerTons1__listParameters(struct soap *soap, const char *tag, ns1__listParameters **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listParameters **)soap_malloc(soap, sizeof(ns1__listParameters *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listParameters *)soap_instantiate_ns1__listParameters(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listParameters ** p = (ns1__listParameters **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParameters, sizeof(ns1__listParameters), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listParameters(struct soap *soap, ns1__listParameters *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listParameters);
+	if (soap_out_PointerTons1__listParameters(soap, tag?tag:"ns1:listParameters", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listParameters ** SOAP_FMAC4 soap_get_PointerTons1__listParameters(struct soap *soap, ns1__listParameters **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listRolesResponse(struct soap *soap, ns1__listRolesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listRolesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listRolesResponse(struct soap *soap, const char *tag, int id, ns1__listRolesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listRolesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listRolesResponse ** SOAP_FMAC4 soap_in_PointerTons1__listRolesResponse(struct soap *soap, const char *tag, ns1__listRolesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listRolesResponse **)soap_malloc(soap, sizeof(ns1__listRolesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listRolesResponse *)soap_instantiate_ns1__listRolesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listRolesResponse ** p = (ns1__listRolesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRolesResponse, sizeof(ns1__listRolesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listRolesResponse(struct soap *soap, ns1__listRolesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listRolesResponse);
+	if (soap_out_PointerTons1__listRolesResponse(soap, tag?tag:"ns1:listRolesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listRolesResponse ** SOAP_FMAC4 soap_get_PointerTons1__listRolesResponse(struct soap *soap, ns1__listRolesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listRolesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listRoles(struct soap *soap, ns1__listRoles *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listRoles))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listRoles(struct soap *soap, const char *tag, int id, ns1__listRoles *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listRoles);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listRoles ** SOAP_FMAC4 soap_in_PointerTons1__listRoles(struct soap *soap, const char *tag, ns1__listRoles **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listRoles **)soap_malloc(soap, sizeof(ns1__listRoles *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listRoles *)soap_instantiate_ns1__listRoles(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listRoles ** p = (ns1__listRoles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRoles, sizeof(ns1__listRoles), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listRoles(struct soap *soap, ns1__listRoles *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listRoles);
+	if (soap_out_PointerTons1__listRoles(soap, tag?tag:"ns1:listRoles", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listRoles ** SOAP_FMAC4 soap_get_PointerTons1__listRoles(struct soap *soap, ns1__listRoles **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listRoles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInstrumentsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInstrumentsResponse(struct soap *soap, const char *tag, int id, ns1__listInstrumentsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInstrumentsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listInstrumentsResponse ** SOAP_FMAC4 soap_in_PointerTons1__listInstrumentsResponse(struct soap *soap, const char *tag, ns1__listInstrumentsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listInstrumentsResponse **)soap_malloc(soap, sizeof(ns1__listInstrumentsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listInstrumentsResponse *)soap_instantiate_ns1__listInstrumentsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listInstrumentsResponse ** p = (ns1__listInstrumentsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstrumentsResponse, sizeof(ns1__listInstrumentsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInstrumentsResponse);
+	if (soap_out_PointerTons1__listInstrumentsResponse(soap, tag?tag:"ns1:listInstrumentsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listInstrumentsResponse ** SOAP_FMAC4 soap_get_PointerTons1__listInstrumentsResponse(struct soap *soap, ns1__listInstrumentsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listInstrumentsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__listInstruments(struct soap *soap, ns1__listInstruments *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__listInstruments))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__listInstruments(struct soap *soap, const char *tag, int id, ns1__listInstruments *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__listInstruments);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__listInstruments ** SOAP_FMAC4 soap_in_PointerTons1__listInstruments(struct soap *soap, const char *tag, ns1__listInstruments **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__listInstruments **)soap_malloc(soap, sizeof(ns1__listInstruments *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__listInstruments *)soap_instantiate_ns1__listInstruments(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__listInstruments ** p = (ns1__listInstruments **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstruments, sizeof(ns1__listInstruments), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__listInstruments(struct soap *soap, ns1__listInstruments *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__listInstruments);
+	if (soap_out_PointerTons1__listInstruments(soap, tag?tag:"ns1:listInstruments", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__listInstruments ** SOAP_FMAC4 soap_get_PointerTons1__listInstruments(struct soap *soap, ns1__listInstruments **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__listInstruments(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserSurnamePaginationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnamePaginationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserSurnamePaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByUserSurnamePaginationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserSurnamePaginationResponse *)soap_instantiate_ns1__searchByUserSurnamePaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserSurnamePaginationResponse ** p = (ns1__searchByUserSurnamePaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, sizeof(ns1__searchByUserSurnamePaginationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurnamePaginationResponse);
+	if (soap_out_PointerTons1__searchByUserSurnamePaginationResponse(soap, tag?tag:"ns1:searchByUserSurnamePaginationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurnamePaginationResponse(struct soap *soap, ns1__searchByUserSurnamePaginationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserSurnamePaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurnamePagination))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurnamePagination(struct soap *soap, const char *tag, int id, ns1__searchByUserSurnamePagination *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurnamePagination);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurnamePagination(struct soap *soap, const char *tag, ns1__searchByUserSurnamePagination **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserSurnamePagination **)soap_malloc(soap, sizeof(ns1__searchByUserSurnamePagination *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserSurnamePagination *)soap_instantiate_ns1__searchByUserSurnamePagination(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserSurnamePagination ** p = (ns1__searchByUserSurnamePagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePagination, sizeof(ns1__searchByUserSurnamePagination), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurnamePagination);
+	if (soap_out_PointerTons1__searchByUserSurnamePagination(soap, tag?tag:"ns1:searchByUserSurnamePagination", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnamePagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurnamePagination(struct soap *soap, ns1__searchByUserSurnamePagination **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserSurnamePagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurnameResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurnameResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserSurnameResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurnameResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnameResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurnameResponse(struct soap *soap, const char *tag, ns1__searchByUserSurnameResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserSurnameResponse **)soap_malloc(soap, sizeof(ns1__searchByUserSurnameResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserSurnameResponse *)soap_instantiate_ns1__searchByUserSurnameResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserSurnameResponse ** p = (ns1__searchByUserSurnameResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnameResponse, sizeof(ns1__searchByUserSurnameResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurnameResponse);
+	if (soap_out_PointerTons1__searchByUserSurnameResponse(soap, tag?tag:"ns1:searchByUserSurnameResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurnameResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurnameResponse(struct soap *soap, ns1__searchByUserSurnameResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserSurnameResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserSurname))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserSurname(struct soap *soap, const char *tag, int id, ns1__searchByUserSurname *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserSurname);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurname ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserSurname(struct soap *soap, const char *tag, ns1__searchByUserSurname **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserSurname **)soap_malloc(soap, sizeof(ns1__searchByUserSurname *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserSurname *)soap_instantiate_ns1__searchByUserSurname(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserSurname ** p = (ns1__searchByUserSurname **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurname, sizeof(ns1__searchByUserSurname), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserSurname);
+	if (soap_out_PointerTons1__searchByUserSurname(soap, tag?tag:"ns1:searchByUserSurname", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserSurname ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserSurname(struct soap *soap, ns1__searchByUserSurname **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserSurname(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserIDPaginationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserIDPaginationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, const char *tag, ns1__searchByUserIDPaginationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserIDPaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByUserIDPaginationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserIDPaginationResponse *)soap_instantiate_ns1__searchByUserIDPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserIDPaginationResponse ** p = (ns1__searchByUserIDPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, sizeof(ns1__searchByUserIDPaginationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserIDPaginationResponse);
+	if (soap_out_PointerTons1__searchByUserIDPaginationResponse(soap, tag?tag:"ns1:searchByUserIDPaginationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserIDPaginationResponse(struct soap *soap, ns1__searchByUserIDPaginationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserIDPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserIDPagination))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserIDPagination(struct soap *soap, const char *tag, int id, ns1__searchByUserIDPagination *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserIDPagination);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserIDPagination(struct soap *soap, const char *tag, ns1__searchByUserIDPagination **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserIDPagination **)soap_malloc(soap, sizeof(ns1__searchByUserIDPagination *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserIDPagination *)soap_instantiate_ns1__searchByUserIDPagination(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserIDPagination ** p = (ns1__searchByUserIDPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPagination, sizeof(ns1__searchByUserIDPagination), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserIDPagination);
+	if (soap_out_PointerTons1__searchByUserIDPagination(soap, tag?tag:"ns1:searchByUserIDPagination", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDPagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserIDPagination(struct soap *soap, ns1__searchByUserIDPagination **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserIDPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserIDResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserIDResponse(struct soap *soap, const char *tag, int id, ns1__searchByUserIDResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserIDResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserIDResponse(struct soap *soap, const char *tag, ns1__searchByUserIDResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserIDResponse **)soap_malloc(soap, sizeof(ns1__searchByUserIDResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserIDResponse *)soap_instantiate_ns1__searchByUserIDResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserIDResponse ** p = (ns1__searchByUserIDResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDResponse, sizeof(ns1__searchByUserIDResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserIDResponse);
+	if (soap_out_PointerTons1__searchByUserIDResponse(soap, tag?tag:"ns1:searchByUserIDResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserIDResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserIDResponse(struct soap *soap, ns1__searchByUserIDResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserIDResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByUserID(struct soap *soap, ns1__searchByUserID *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByUserID))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByUserID(struct soap *soap, const char *tag, int id, ns1__searchByUserID *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByUserID);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByUserID ** SOAP_FMAC4 soap_in_PointerTons1__searchByUserID(struct soap *soap, const char *tag, ns1__searchByUserID **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByUserID **)soap_malloc(soap, sizeof(ns1__searchByUserID *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByUserID *)soap_instantiate_ns1__searchByUserID(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByUserID ** p = (ns1__searchByUserID **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserID, sizeof(ns1__searchByUserID), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByUserID(struct soap *soap, ns1__searchByUserID *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByUserID);
+	if (soap_out_PointerTons1__searchByUserID(soap, tag?tag:"ns1:searchByUserID", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByUserID ** SOAP_FMAC4 soap_get_PointerTons1__searchByUserID(struct soap *soap, ns1__searchByUserID **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByUserID(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludesPaginationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPaginationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getMyInvestigationsIncludesPaginationResponse **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getMyInvestigationsIncludesPaginationResponse *)soap_instantiate_ns1__getMyInvestigationsIncludesPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getMyInvestigationsIncludesPaginationResponse ** p = (ns1__getMyInvestigationsIncludesPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPaginationResponse);
+	if (soap_out_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, tag?tag:"ns1:getMyInvestigationsIncludesPaginationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludesPaginationResponse(struct soap *soap, ns1__getMyInvestigationsIncludesPaginationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludesPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludesPagination *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesPagination **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getMyInvestigationsIncludesPagination **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludesPagination *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getMyInvestigationsIncludesPagination *)soap_instantiate_ns1__getMyInvestigationsIncludesPagination(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getMyInvestigationsIncludesPagination ** p = (ns1__getMyInvestigationsIncludesPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, sizeof(ns1__getMyInvestigationsIncludesPagination), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesPagination);
+	if (soap_out_PointerTons1__getMyInvestigationsIncludesPagination(soap, tag?tag:"ns1:getMyInvestigationsIncludesPagination", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesPagination ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludesPagination(struct soap *soap, ns1__getMyInvestigationsIncludesPagination **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludesPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getMyInvestigationsIncludesResponse **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getMyInvestigationsIncludesResponse *)soap_instantiate_ns1__getMyInvestigationsIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getMyInvestigationsIncludesResponse ** p = (ns1__getMyInvestigationsIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, sizeof(ns1__getMyInvestigationsIncludesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludesResponse);
+	if (soap_out_PointerTons1__getMyInvestigationsIncludesResponse(soap, tag?tag:"ns1:getMyInvestigationsIncludesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludesResponse(struct soap *soap, ns1__getMyInvestigationsIncludesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsIncludes))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsIncludes *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsIncludes);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getMyInvestigationsIncludes **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getMyInvestigationsIncludes **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsIncludes *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getMyInvestigationsIncludes *)soap_instantiate_ns1__getMyInvestigationsIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getMyInvestigationsIncludes ** p = (ns1__getMyInvestigationsIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludes, sizeof(ns1__getMyInvestigationsIncludes), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsIncludes);
+	if (soap_out_PointerTons1__getMyInvestigationsIncludes(soap, tag?tag:"ns1:getMyInvestigationsIncludes", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsIncludes(struct soap *soap, ns1__getMyInvestigationsIncludes **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getMyInvestigationsIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigationsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigationsResponse(struct soap *soap, const char *tag, int id, ns1__getMyInvestigationsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigationsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigationsResponse(struct soap *soap, const char *tag, ns1__getMyInvestigationsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getMyInvestigationsResponse **)soap_malloc(soap, sizeof(ns1__getMyInvestigationsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getMyInvestigationsResponse *)soap_instantiate_ns1__getMyInvestigationsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getMyInvestigationsResponse ** p = (ns1__getMyInvestigationsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsResponse, sizeof(ns1__getMyInvestigationsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigationsResponse);
+	if (soap_out_PointerTons1__getMyInvestigationsResponse(soap, tag?tag:"ns1:getMyInvestigationsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigationsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigationsResponse(struct soap *soap, ns1__getMyInvestigationsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getMyInvestigationsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getMyInvestigations))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getMyInvestigations(struct soap *soap, const char *tag, int id, ns1__getMyInvestigations *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getMyInvestigations);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigations ** SOAP_FMAC4 soap_in_PointerTons1__getMyInvestigations(struct soap *soap, const char *tag, ns1__getMyInvestigations **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getMyInvestigations **)soap_malloc(soap, sizeof(ns1__getMyInvestigations *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getMyInvestigations *)soap_instantiate_ns1__getMyInvestigations(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getMyInvestigations ** p = (ns1__getMyInvestigations **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigations, sizeof(ns1__getMyInvestigations), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getMyInvestigations);
+	if (soap_out_PointerTons1__getMyInvestigations(soap, tag?tag:"ns1:getMyInvestigations", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getMyInvestigations ** SOAP_FMAC4 soap_get_PointerTons1__getMyInvestigations(struct soap *soap, ns1__getMyInvestigations **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getMyInvestigations(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywordsAllResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, int id, ns1__searchByKeywordsAllResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywordsAllResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAllResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsAllResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByKeywordsAllResponse **)soap_malloc(soap, sizeof(ns1__searchByKeywordsAllResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByKeywordsAllResponse *)soap_instantiate_ns1__searchByKeywordsAllResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByKeywordsAllResponse ** p = (ns1__searchByKeywordsAllResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAllResponse, sizeof(ns1__searchByKeywordsAllResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywordsAllResponse);
+	if (soap_out_PointerTons1__searchByKeywordsAllResponse(soap, tag?tag:"ns1:searchByKeywordsAllResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAllResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywordsAllResponse(struct soap *soap, ns1__searchByKeywordsAllResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByKeywordsAllResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywordsAll))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywordsAll(struct soap *soap, const char *tag, int id, ns1__searchByKeywordsAll *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywordsAll);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAll ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywordsAll(struct soap *soap, const char *tag, ns1__searchByKeywordsAll **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByKeywordsAll **)soap_malloc(soap, sizeof(ns1__searchByKeywordsAll *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByKeywordsAll *)soap_instantiate_ns1__searchByKeywordsAll(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByKeywordsAll ** p = (ns1__searchByKeywordsAll **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAll, sizeof(ns1__searchByKeywordsAll), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywordsAll);
+	if (soap_out_PointerTons1__searchByKeywordsAll(soap, tag?tag:"ns1:searchByKeywordsAll", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsAll ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywordsAll(struct soap *soap, ns1__searchByKeywordsAll **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByKeywordsAll(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywordsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywordsResponse(struct soap *soap, const char *tag, int id, ns1__searchByKeywordsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywordsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywordsResponse(struct soap *soap, const char *tag, ns1__searchByKeywordsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByKeywordsResponse **)soap_malloc(soap, sizeof(ns1__searchByKeywordsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByKeywordsResponse *)soap_instantiate_ns1__searchByKeywordsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByKeywordsResponse ** p = (ns1__searchByKeywordsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsResponse, sizeof(ns1__searchByKeywordsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywordsResponse);
+	if (soap_out_PointerTons1__searchByKeywordsResponse(soap, tag?tag:"ns1:searchByKeywordsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByKeywordsResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywordsResponse(struct soap *soap, ns1__searchByKeywordsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByKeywordsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByKeywords(struct soap *soap, ns1__searchByKeywords *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByKeywords))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByKeywords(struct soap *soap, const char *tag, int id, ns1__searchByKeywords *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByKeywords);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByKeywords ** SOAP_FMAC4 soap_in_PointerTons1__searchByKeywords(struct soap *soap, const char *tag, ns1__searchByKeywords **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByKeywords **)soap_malloc(soap, sizeof(ns1__searchByKeywords *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByKeywords *)soap_instantiate_ns1__searchByKeywords(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByKeywords ** p = (ns1__searchByKeywords **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywords, sizeof(ns1__searchByKeywords), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByKeywords(struct soap *soap, ns1__searchByKeywords *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByKeywords);
+	if (soap_out_PointerTons1__searchByKeywords(soap, tag?tag:"ns1:searchByKeywords", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByKeywords ** SOAP_FMAC4 soap_get_PointerTons1__searchByKeywords(struct soap *soap, ns1__searchByKeywords **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByKeywords(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, int id, ns1__searchByAdvancedPaginationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedPaginationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByAdvancedPaginationResponse **)soap_malloc(soap, sizeof(ns1__searchByAdvancedPaginationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByAdvancedPaginationResponse *)soap_instantiate_ns1__searchByAdvancedPaginationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByAdvancedPaginationResponse ** p = (ns1__searchByAdvancedPaginationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, sizeof(ns1__searchByAdvancedPaginationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvancedPaginationResponse);
+	if (soap_out_PointerTons1__searchByAdvancedPaginationResponse(soap, tag?tag:"ns1:searchByAdvancedPaginationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPaginationResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvancedPaginationResponse(struct soap *soap, ns1__searchByAdvancedPaginationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByAdvancedPaginationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvancedPagination))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvancedPagination(struct soap *soap, const char *tag, int id, ns1__searchByAdvancedPagination *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvancedPagination);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPagination ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvancedPagination(struct soap *soap, const char *tag, ns1__searchByAdvancedPagination **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByAdvancedPagination **)soap_malloc(soap, sizeof(ns1__searchByAdvancedPagination *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByAdvancedPagination *)soap_instantiate_ns1__searchByAdvancedPagination(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByAdvancedPagination ** p = (ns1__searchByAdvancedPagination **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPagination, sizeof(ns1__searchByAdvancedPagination), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvancedPagination);
+	if (soap_out_PointerTons1__searchByAdvancedPagination(soap, tag?tag:"ns1:searchByAdvancedPagination", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedPagination ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvancedPagination(struct soap *soap, ns1__searchByAdvancedPagination **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByAdvancedPagination(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvancedResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvancedResponse(struct soap *soap, const char *tag, int id, ns1__searchByAdvancedResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvancedResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedResponse ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvancedResponse(struct soap *soap, const char *tag, ns1__searchByAdvancedResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByAdvancedResponse **)soap_malloc(soap, sizeof(ns1__searchByAdvancedResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByAdvancedResponse *)soap_instantiate_ns1__searchByAdvancedResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByAdvancedResponse ** p = (ns1__searchByAdvancedResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedResponse, sizeof(ns1__searchByAdvancedResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvancedResponse);
+	if (soap_out_PointerTons1__searchByAdvancedResponse(soap, tag?tag:"ns1:searchByAdvancedResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByAdvancedResponse ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvancedResponse(struct soap *soap, ns1__searchByAdvancedResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByAdvancedResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__searchByAdvanced))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__searchByAdvanced(struct soap *soap, const char *tag, int id, ns1__searchByAdvanced *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__searchByAdvanced);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__searchByAdvanced ** SOAP_FMAC4 soap_in_PointerTons1__searchByAdvanced(struct soap *soap, const char *tag, ns1__searchByAdvanced **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__searchByAdvanced **)soap_malloc(soap, sizeof(ns1__searchByAdvanced *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__searchByAdvanced *)soap_instantiate_ns1__searchByAdvanced(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__searchByAdvanced ** p = (ns1__searchByAdvanced **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvanced, sizeof(ns1__searchByAdvanced), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__searchByAdvanced);
+	if (soap_out_PointerTons1__searchByAdvanced(soap, tag?tag:"ns1:searchByAdvanced", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__searchByAdvanced ** SOAP_FMAC4 soap_get_PointerTons1__searchByAdvanced(struct soap *soap, ns1__searchByAdvanced **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__searchByAdvanced(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, int id, ns1__checkDatasetDownloadAccessResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse ** SOAP_FMAC4 soap_in_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccessResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__checkDatasetDownloadAccessResponse **)soap_malloc(soap, sizeof(ns1__checkDatasetDownloadAccessResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__checkDatasetDownloadAccessResponse *)soap_instantiate_ns1__checkDatasetDownloadAccessResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__checkDatasetDownloadAccessResponse ** p = (ns1__checkDatasetDownloadAccessResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, sizeof(ns1__checkDatasetDownloadAccessResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatasetDownloadAccessResponse);
+	if (soap_out_PointerTons1__checkDatasetDownloadAccessResponse(soap, tag?tag:"ns1:checkDatasetDownloadAccessResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccessResponse ** SOAP_FMAC4 soap_get_PointerTons1__checkDatasetDownloadAccessResponse(struct soap *soap, ns1__checkDatasetDownloadAccessResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__checkDatasetDownloadAccessResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatasetDownloadAccess))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, int id, ns1__checkDatasetDownloadAccess *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatasetDownloadAccess);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccess ** SOAP_FMAC4 soap_in_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatasetDownloadAccess **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__checkDatasetDownloadAccess **)soap_malloc(soap, sizeof(ns1__checkDatasetDownloadAccess *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__checkDatasetDownloadAccess *)soap_instantiate_ns1__checkDatasetDownloadAccess(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__checkDatasetDownloadAccess ** p = (ns1__checkDatasetDownloadAccess **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccess, sizeof(ns1__checkDatasetDownloadAccess), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatasetDownloadAccess);
+	if (soap_out_PointerTons1__checkDatasetDownloadAccess(soap, tag?tag:"ns1:checkDatasetDownloadAccess", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__checkDatasetDownloadAccess ** SOAP_FMAC4 soap_get_PointerTons1__checkDatasetDownloadAccess(struct soap *soap, ns1__checkDatasetDownloadAccess **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__checkDatasetDownloadAccess(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, int id, ns1__checkDatafileDownloadAccessResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse ** SOAP_FMAC4 soap_in_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccessResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__checkDatafileDownloadAccessResponse **)soap_malloc(soap, sizeof(ns1__checkDatafileDownloadAccessResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__checkDatafileDownloadAccessResponse *)soap_instantiate_ns1__checkDatafileDownloadAccessResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__checkDatafileDownloadAccessResponse ** p = (ns1__checkDatafileDownloadAccessResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, sizeof(ns1__checkDatafileDownloadAccessResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatafileDownloadAccessResponse);
+	if (soap_out_PointerTons1__checkDatafileDownloadAccessResponse(soap, tag?tag:"ns1:checkDatafileDownloadAccessResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccessResponse ** SOAP_FMAC4 soap_get_PointerTons1__checkDatafileDownloadAccessResponse(struct soap *soap, ns1__checkDatafileDownloadAccessResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__checkDatafileDownloadAccessResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__checkDatafileDownloadAccess))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, int id, ns1__checkDatafileDownloadAccess *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__checkDatafileDownloadAccess);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccess ** SOAP_FMAC4 soap_in_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, const char *tag, ns1__checkDatafileDownloadAccess **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__checkDatafileDownloadAccess **)soap_malloc(soap, sizeof(ns1__checkDatafileDownloadAccess *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__checkDatafileDownloadAccess *)soap_instantiate_ns1__checkDatafileDownloadAccess(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__checkDatafileDownloadAccess ** p = (ns1__checkDatafileDownloadAccess **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccess, sizeof(ns1__checkDatafileDownloadAccess), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__checkDatafileDownloadAccess);
+	if (soap_out_PointerTons1__checkDatafileDownloadAccess(soap, tag?tag:"ns1:checkDatafileDownloadAccess", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__checkDatafileDownloadAccess ** SOAP_FMAC4 soap_get_PointerTons1__checkDatafileDownloadAccess(struct soap *soap, ns1__checkDatafileDownloadAccess **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__checkDatafileDownloadAccess(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatasetResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatasetResponse(struct soap *soap, const char *tag, int id, ns1__downloadDatasetResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatasetResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatasetResponse ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatasetResponse(struct soap *soap, const char *tag, ns1__downloadDatasetResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadDatasetResponse **)soap_malloc(soap, sizeof(ns1__downloadDatasetResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadDatasetResponse *)soap_instantiate_ns1__downloadDatasetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadDatasetResponse ** p = (ns1__downloadDatasetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatasetResponse, sizeof(ns1__downloadDatasetResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatasetResponse);
+	if (soap_out_PointerTons1__downloadDatasetResponse(soap, tag?tag:"ns1:downloadDatasetResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadDatasetResponse ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatasetResponse(struct soap *soap, ns1__downloadDatasetResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadDatasetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDataset(struct soap *soap, ns1__downloadDataset *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDataset))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDataset(struct soap *soap, const char *tag, int id, ns1__downloadDataset *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDataset);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadDataset ** SOAP_FMAC4 soap_in_PointerTons1__downloadDataset(struct soap *soap, const char *tag, ns1__downloadDataset **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadDataset **)soap_malloc(soap, sizeof(ns1__downloadDataset *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadDataset *)soap_instantiate_ns1__downloadDataset(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadDataset ** p = (ns1__downloadDataset **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDataset, sizeof(ns1__downloadDataset), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDataset(struct soap *soap, ns1__downloadDataset *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDataset);
+	if (soap_out_PointerTons1__downloadDataset(soap, tag?tag:"ns1:downloadDataset", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadDataset ** SOAP_FMAC4 soap_get_PointerTons1__downloadDataset(struct soap *soap, ns1__downloadDataset **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadDataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafilesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafilesResponse(struct soap *soap, const char *tag, int id, ns1__downloadDatafilesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafilesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafilesResponse ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafilesResponse(struct soap *soap, const char *tag, ns1__downloadDatafilesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadDatafilesResponse **)soap_malloc(soap, sizeof(ns1__downloadDatafilesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadDatafilesResponse *)soap_instantiate_ns1__downloadDatafilesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadDatafilesResponse ** p = (ns1__downloadDatafilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafilesResponse, sizeof(ns1__downloadDatafilesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafilesResponse);
+	if (soap_out_PointerTons1__downloadDatafilesResponse(soap, tag?tag:"ns1:downloadDatafilesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadDatafilesResponse ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafilesResponse(struct soap *soap, ns1__downloadDatafilesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadDatafilesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafiles))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafiles(struct soap *soap, const char *tag, int id, ns1__downloadDatafiles *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafiles);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafiles ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafiles(struct soap *soap, const char *tag, ns1__downloadDatafiles **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadDatafiles **)soap_malloc(soap, sizeof(ns1__downloadDatafiles *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadDatafiles *)soap_instantiate_ns1__downloadDatafiles(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadDatafiles ** p = (ns1__downloadDatafiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafiles, sizeof(ns1__downloadDatafiles), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafiles);
+	if (soap_out_PointerTons1__downloadDatafiles(soap, tag?tag:"ns1:downloadDatafiles", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadDatafiles ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafiles(struct soap *soap, ns1__downloadDatafiles **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafileResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafileResponse(struct soap *soap, const char *tag, int id, ns1__downloadDatafileResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafileResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafileResponse ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafileResponse(struct soap *soap, const char *tag, ns1__downloadDatafileResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadDatafileResponse **)soap_malloc(soap, sizeof(ns1__downloadDatafileResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadDatafileResponse *)soap_instantiate_ns1__downloadDatafileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadDatafileResponse ** p = (ns1__downloadDatafileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafileResponse, sizeof(ns1__downloadDatafileResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafileResponse);
+	if (soap_out_PointerTons1__downloadDatafileResponse(soap, tag?tag:"ns1:downloadDatafileResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadDatafileResponse ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafileResponse(struct soap *soap, ns1__downloadDatafileResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadDatafileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadDatafile(struct soap *soap, ns1__downloadDatafile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadDatafile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadDatafile(struct soap *soap, const char *tag, int id, ns1__downloadDatafile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadDatafile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadDatafile ** SOAP_FMAC4 soap_in_PointerTons1__downloadDatafile(struct soap *soap, const char *tag, ns1__downloadDatafile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadDatafile **)soap_malloc(soap, sizeof(ns1__downloadDatafile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadDatafile *)soap_instantiate_ns1__downloadDatafile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadDatafile ** p = (ns1__downloadDatafile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafile, sizeof(ns1__downloadDatafile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadDatafile(struct soap *soap, ns1__downloadDatafile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadDatafile);
+	if (soap_out_PointerTons1__downloadDatafile(soap, tag?tag:"ns1:downloadDatafile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadDatafile ** SOAP_FMAC4 soap_get_PointerTons1__downloadDatafile(struct soap *soap, ns1__downloadDatafile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadDatafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAllKeywordsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAllKeywordsResponse(struct soap *soap, const char *tag, int id, ns1__getAllKeywordsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAllKeywordsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getAllKeywordsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getAllKeywordsResponse(struct soap *soap, const char *tag, ns1__getAllKeywordsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getAllKeywordsResponse **)soap_malloc(soap, sizeof(ns1__getAllKeywordsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getAllKeywordsResponse *)soap_instantiate_ns1__getAllKeywordsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getAllKeywordsResponse ** p = (ns1__getAllKeywordsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywordsResponse, sizeof(ns1__getAllKeywordsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAllKeywordsResponse);
+	if (soap_out_PointerTons1__getAllKeywordsResponse(soap, tag?tag:"ns1:getAllKeywordsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getAllKeywordsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getAllKeywordsResponse(struct soap *soap, ns1__getAllKeywordsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getAllKeywordsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAllKeywords(struct soap *soap, ns1__getAllKeywords *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAllKeywords))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAllKeywords(struct soap *soap, const char *tag, int id, ns1__getAllKeywords *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAllKeywords);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getAllKeywords ** SOAP_FMAC4 soap_in_PointerTons1__getAllKeywords(struct soap *soap, const char *tag, ns1__getAllKeywords **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getAllKeywords **)soap_malloc(soap, sizeof(ns1__getAllKeywords *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getAllKeywords *)soap_instantiate_ns1__getAllKeywords(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getAllKeywords ** p = (ns1__getAllKeywords **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywords, sizeof(ns1__getAllKeywords), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAllKeywords(struct soap *soap, ns1__getAllKeywords *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAllKeywords);
+	if (soap_out_PointerTons1__getAllKeywords(soap, tag?tag:"ns1:getAllKeywords", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getAllKeywords ** SOAP_FMAC4 soap_get_PointerTons1__getAllKeywords(struct soap *soap, ns1__getAllKeywords **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getAllKeywords(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserTypeResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserTypeResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserTypeResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserTypeResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserTypeResponse *)soap_instantiate_ns1__getKeywordsForUserTypeResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserTypeResponse ** p = (ns1__getKeywordsForUserTypeResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, sizeof(ns1__getKeywordsForUserTypeResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserTypeResponse);
+	if (soap_out_PointerTons1__getKeywordsForUserTypeResponse(soap, tag?tag:"ns1:getKeywordsForUserTypeResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserTypeResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserTypeResponse(struct soap *soap, ns1__getKeywordsForUserTypeResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserTypeResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserType))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserType(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserType *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserType);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserType ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserType(struct soap *soap, const char *tag, ns1__getKeywordsForUserType **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserType **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserType *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserType *)soap_instantiate_ns1__getKeywordsForUserType(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserType ** p = (ns1__getKeywordsForUserType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserType, sizeof(ns1__getKeywordsForUserType), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserType);
+	if (soap_out_PointerTons1__getKeywordsForUserType(soap, tag?tag:"ns1:getKeywordsForUserType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserType ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserType(struct soap *soap, ns1__getKeywordsForUserType **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserMaxResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserMaxResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserMaxResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserMaxResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserMaxResponse *)soap_instantiate_ns1__getKeywordsForUserMaxResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserMaxResponse ** p = (ns1__getKeywordsForUserMaxResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, sizeof(ns1__getKeywordsForUserMaxResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserMaxResponse);
+	if (soap_out_PointerTons1__getKeywordsForUserMaxResponse(soap, tag?tag:"ns1:getKeywordsForUserMaxResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMaxResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserMaxResponse(struct soap *soap, ns1__getKeywordsForUserMaxResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserMaxResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserMax))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserMax(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserMax *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserMax);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMax ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserMax **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserMax **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserMax *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserMax *)soap_instantiate_ns1__getKeywordsForUserMax(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserMax ** p = (ns1__getKeywordsForUserMax **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMax, sizeof(ns1__getKeywordsForUserMax), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserMax);
+	if (soap_out_PointerTons1__getKeywordsForUserMax(soap, tag?tag:"ns1:getKeywordsForUserMax", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserMax ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserMax(struct soap *soap, ns1__getKeywordsForUserMax **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserMax(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserStartWithMaxResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMaxResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserStartWithMaxResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserStartWithMaxResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserStartWithMaxResponse *)soap_instantiate_ns1__getKeywordsForUserStartWithMaxResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserStartWithMaxResponse ** p = (ns1__getKeywordsForUserStartWithMaxResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMaxResponse);
+	if (soap_out_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, tag?tag:"ns1:getKeywordsForUserStartWithMaxResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMaxResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserStartWithMaxResponse(struct soap *soap, ns1__getKeywordsForUserStartWithMaxResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserStartWithMaxResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserStartWithMax *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, const char *tag, ns1__getKeywordsForUserStartWithMax **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserStartWithMax **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserStartWithMax *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserStartWithMax *)soap_instantiate_ns1__getKeywordsForUserStartWithMax(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserStartWithMax ** p = (ns1__getKeywordsForUserStartWithMax **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, sizeof(ns1__getKeywordsForUserStartWithMax), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserStartWithMax);
+	if (soap_out_PointerTons1__getKeywordsForUserStartWithMax(soap, tag?tag:"ns1:getKeywordsForUserStartWithMax", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserStartWithMax ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserStartWithMax(struct soap *soap, ns1__getKeywordsForUserStartWithMax **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserStartWithMax(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUserResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUserResponse(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUserResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUserResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserResponse ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUserResponse(struct soap *soap, const char *tag, ns1__getKeywordsForUserResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUserResponse **)soap_malloc(soap, sizeof(ns1__getKeywordsForUserResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUserResponse *)soap_instantiate_ns1__getKeywordsForUserResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUserResponse ** p = (ns1__getKeywordsForUserResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserResponse, sizeof(ns1__getKeywordsForUserResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUserResponse);
+	if (soap_out_PointerTons1__getKeywordsForUserResponse(soap, tag?tag:"ns1:getKeywordsForUserResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUserResponse ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUserResponse(struct soap *soap, ns1__getKeywordsForUserResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUserResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getKeywordsForUser))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getKeywordsForUser(struct soap *soap, const char *tag, int id, ns1__getKeywordsForUser *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getKeywordsForUser);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUser ** SOAP_FMAC4 soap_in_PointerTons1__getKeywordsForUser(struct soap *soap, const char *tag, ns1__getKeywordsForUser **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getKeywordsForUser **)soap_malloc(soap, sizeof(ns1__getKeywordsForUser *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getKeywordsForUser *)soap_instantiate_ns1__getKeywordsForUser(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getKeywordsForUser ** p = (ns1__getKeywordsForUser **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUser, sizeof(ns1__getKeywordsForUser), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getKeywordsForUser);
+	if (soap_out_PointerTons1__getKeywordsForUser(soap, tag?tag:"ns1:getKeywordsForUser", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getKeywordsForUser ** SOAP_FMAC4 soap_get_PointerTons1__getKeywordsForUser(struct soap *soap, ns1__getKeywordsForUser **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getKeywordsForUser(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFileParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataFileParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFileParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, const char *tag, ns1__deleteDataFileParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__deleteDataFileParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataFileParameterResponse *)soap_instantiate_ns1__deleteDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataFileParameterResponse ** p = (ns1__deleteDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameterResponse, sizeof(ns1__deleteDataFileParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFileParameterResponse);
+	if (soap_out_PointerTons1__deleteDataFileParameterResponse(soap, tag?tag:"ns1:deleteDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFileParameterResponse(struct soap *soap, ns1__deleteDataFileParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFileParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFileParameter(struct soap *soap, const char *tag, int id, ns1__deleteDataFileParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFileParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFileParameter(struct soap *soap, const char *tag, ns1__deleteDataFileParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataFileParameter **)soap_malloc(soap, sizeof(ns1__deleteDataFileParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataFileParameter *)soap_instantiate_ns1__deleteDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataFileParameter ** p = (ns1__deleteDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameter, sizeof(ns1__deleteDataFileParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFileParameter);
+	if (soap_out_PointerTons1__deleteDataFileParameter(soap, tag?tag:"ns1:deleteDataFileParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFileParameter(struct soap *soap, ns1__deleteDataFileParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFileParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__removeDataFileParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFileParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFileParameterResponse(struct soap *soap, const char *tag, ns1__removeDataFileParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__removeDataFileParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataFileParameterResponse *)soap_instantiate_ns1__removeDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataFileParameterResponse ** p = (ns1__removeDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameterResponse, sizeof(ns1__removeDataFileParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFileParameterResponse);
+	if (soap_out_PointerTons1__removeDataFileParameterResponse(soap, tag?tag:"ns1:removeDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFileParameterResponse(struct soap *soap, ns1__removeDataFileParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFileParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFileParameter(struct soap *soap, const char *tag, int id, ns1__removeDataFileParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFileParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFileParameter(struct soap *soap, const char *tag, ns1__removeDataFileParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataFileParameter **)soap_malloc(soap, sizeof(ns1__removeDataFileParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataFileParameter *)soap_instantiate_ns1__removeDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataFileParameter ** p = (ns1__removeDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameter, sizeof(ns1__removeDataFileParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFileParameter);
+	if (soap_out_PointerTons1__removeDataFileParameter(soap, tag?tag:"ns1:removeDataFileParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFileParameter(struct soap *soap, ns1__removeDataFileParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFileParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataFileParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFileParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, const char *tag, ns1__modifyDataFileParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__modifyDataFileParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataFileParameterResponse *)soap_instantiate_ns1__modifyDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataFileParameterResponse ** p = (ns1__modifyDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameterResponse, sizeof(ns1__modifyDataFileParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFileParameterResponse);
+	if (soap_out_PointerTons1__modifyDataFileParameterResponse(soap, tag?tag:"ns1:modifyDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFileParameterResponse(struct soap *soap, ns1__modifyDataFileParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFileParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFileParameter(struct soap *soap, const char *tag, int id, ns1__modifyDataFileParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFileParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFileParameter(struct soap *soap, const char *tag, ns1__modifyDataFileParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataFileParameter **)soap_malloc(soap, sizeof(ns1__modifyDataFileParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataFileParameter *)soap_instantiate_ns1__modifyDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataFileParameter ** p = (ns1__modifyDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameter, sizeof(ns1__modifyDataFileParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFileParameter);
+	if (soap_out_PointerTons1__modifyDataFileParameter(soap, tag?tag:"ns1:modifyDataFileParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFileParameter(struct soap *soap, ns1__modifyDataFileParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParametersResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParametersResponse(struct soap *soap, const char *tag, int id, ns1__addDataFileParametersResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParametersResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParametersResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParametersResponse(struct soap *soap, const char *tag, ns1__addDataFileParametersResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataFileParametersResponse **)soap_malloc(soap, sizeof(ns1__addDataFileParametersResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataFileParametersResponse *)soap_instantiate_ns1__addDataFileParametersResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataFileParametersResponse ** p = (ns1__addDataFileParametersResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParametersResponse, sizeof(ns1__addDataFileParametersResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParametersResponse);
+	if (soap_out_PointerTons1__addDataFileParametersResponse(soap, tag?tag:"ns1:addDataFileParametersResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataFileParametersResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParametersResponse(struct soap *soap, ns1__addDataFileParametersResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataFileParametersResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParameters))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParameters(struct soap *soap, const char *tag, int id, ns1__addDataFileParameters *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParameters);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameters ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParameters(struct soap *soap, const char *tag, ns1__addDataFileParameters **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataFileParameters **)soap_malloc(soap, sizeof(ns1__addDataFileParameters *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataFileParameters *)soap_instantiate_ns1__addDataFileParameters(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataFileParameters ** p = (ns1__addDataFileParameters **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameters, sizeof(ns1__addDataFileParameters), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParameters);
+	if (soap_out_PointerTons1__addDataFileParameters(soap, tag?tag:"ns1:addDataFileParameters", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameters ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParameters(struct soap *soap, ns1__addDataFileParameters **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataFileParameters(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFileResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFileResponse(struct soap *soap, const char *tag, int id, ns1__modifyDataFileResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFileResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFileResponse(struct soap *soap, const char *tag, ns1__modifyDataFileResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataFileResponse **)soap_malloc(soap, sizeof(ns1__modifyDataFileResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataFileResponse *)soap_instantiate_ns1__modifyDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataFileResponse ** p = (ns1__modifyDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileResponse, sizeof(ns1__modifyDataFileResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFileResponse);
+	if (soap_out_PointerTons1__modifyDataFileResponse(soap, tag?tag:"ns1:modifyDataFileResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFileResponse(struct soap *soap, ns1__modifyDataFileResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyDataFile(struct soap *soap, ns1__modifyDataFile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyDataFile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyDataFile(struct soap *soap, const char *tag, int id, ns1__modifyDataFile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyDataFile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyDataFile ** SOAP_FMAC4 soap_in_PointerTons1__modifyDataFile(struct soap *soap, const char *tag, ns1__modifyDataFile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyDataFile **)soap_malloc(soap, sizeof(ns1__modifyDataFile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyDataFile *)soap_instantiate_ns1__modifyDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyDataFile ** p = (ns1__modifyDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFile, sizeof(ns1__modifyDataFile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyDataFile(struct soap *soap, ns1__modifyDataFile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyDataFile);
+	if (soap_out_PointerTons1__modifyDataFile(soap, tag?tag:"ns1:modifyDataFile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyDataFile ** SOAP_FMAC4 soap_get_PointerTons1__modifyDataFile(struct soap *soap, ns1__modifyDataFile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFileResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFileResponse(struct soap *soap, const char *tag, int id, ns1__removeDataFileResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFileResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFileResponse(struct soap *soap, const char *tag, ns1__removeDataFileResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataFileResponse **)soap_malloc(soap, sizeof(ns1__removeDataFileResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataFileResponse *)soap_instantiate_ns1__removeDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataFileResponse ** p = (ns1__removeDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileResponse, sizeof(ns1__removeDataFileResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFileResponse);
+	if (soap_out_PointerTons1__removeDataFileResponse(soap, tag?tag:"ns1:removeDataFileResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFileResponse(struct soap *soap, ns1__removeDataFileResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeDataFile(struct soap *soap, ns1__removeDataFile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeDataFile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeDataFile(struct soap *soap, const char *tag, int id, ns1__removeDataFile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeDataFile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeDataFile ** SOAP_FMAC4 soap_in_PointerTons1__removeDataFile(struct soap *soap, const char *tag, ns1__removeDataFile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeDataFile **)soap_malloc(soap, sizeof(ns1__removeDataFile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeDataFile *)soap_instantiate_ns1__removeDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeDataFile ** p = (ns1__removeDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFile, sizeof(ns1__removeDataFile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeDataFile(struct soap *soap, ns1__removeDataFile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeDataFile);
+	if (soap_out_PointerTons1__removeDataFile(soap, tag?tag:"ns1:removeDataFile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeDataFile ** SOAP_FMAC4 soap_get_PointerTons1__removeDataFile(struct soap *soap, ns1__removeDataFile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFileResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFileResponse(struct soap *soap, const char *tag, int id, ns1__deleteDataFileResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFileResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFileResponse(struct soap *soap, const char *tag, ns1__deleteDataFileResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataFileResponse **)soap_malloc(soap, sizeof(ns1__deleteDataFileResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataFileResponse *)soap_instantiate_ns1__deleteDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataFileResponse ** p = (ns1__deleteDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileResponse, sizeof(ns1__deleteDataFileResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFileResponse);
+	if (soap_out_PointerTons1__deleteDataFileResponse(soap, tag?tag:"ns1:deleteDataFileResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFileResponse(struct soap *soap, ns1__deleteDataFileResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteDataFile(struct soap *soap, ns1__deleteDataFile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteDataFile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteDataFile(struct soap *soap, const char *tag, int id, ns1__deleteDataFile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteDataFile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteDataFile ** SOAP_FMAC4 soap_in_PointerTons1__deleteDataFile(struct soap *soap, const char *tag, ns1__deleteDataFile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteDataFile **)soap_malloc(soap, sizeof(ns1__deleteDataFile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteDataFile *)soap_instantiate_ns1__deleteDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteDataFile ** p = (ns1__deleteDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFile, sizeof(ns1__deleteDataFile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteDataFile(struct soap *soap, ns1__deleteDataFile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteDataFile);
+	if (soap_out_PointerTons1__deleteDataFile(soap, tag?tag:"ns1:deleteDataFile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteDataFile ** SOAP_FMAC4 soap_get_PointerTons1__deleteDataFile(struct soap *soap, ns1__deleteDataFile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFilesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFilesResponse(struct soap *soap, const char *tag, int id, ns1__createDataFilesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFilesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataFilesResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataFilesResponse(struct soap *soap, const char *tag, ns1__createDataFilesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataFilesResponse **)soap_malloc(soap, sizeof(ns1__createDataFilesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataFilesResponse *)soap_instantiate_ns1__createDataFilesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataFilesResponse ** p = (ns1__createDataFilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFilesResponse, sizeof(ns1__createDataFilesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFilesResponse);
+	if (soap_out_PointerTons1__createDataFilesResponse(soap, tag?tag:"ns1:createDataFilesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataFilesResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataFilesResponse(struct soap *soap, ns1__createDataFilesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataFilesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFiles(struct soap *soap, ns1__createDataFiles *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFiles))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFiles(struct soap *soap, const char *tag, int id, ns1__createDataFiles *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFiles);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataFiles ** SOAP_FMAC4 soap_in_PointerTons1__createDataFiles(struct soap *soap, const char *tag, ns1__createDataFiles **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataFiles **)soap_malloc(soap, sizeof(ns1__createDataFiles *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataFiles *)soap_instantiate_ns1__createDataFiles(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataFiles ** p = (ns1__createDataFiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFiles, sizeof(ns1__createDataFiles), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFiles(struct soap *soap, ns1__createDataFiles *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFiles);
+	if (soap_out_PointerTons1__createDataFiles(soap, tag?tag:"ns1:createDataFiles", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataFiles ** SOAP_FMAC4 soap_get_PointerTons1__createDataFiles(struct soap *soap, ns1__createDataFiles **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataFiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFileResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFileResponse(struct soap *soap, const char *tag, int id, ns1__createDataFileResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFileResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataFileResponse ** SOAP_FMAC4 soap_in_PointerTons1__createDataFileResponse(struct soap *soap, const char *tag, ns1__createDataFileResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataFileResponse **)soap_malloc(soap, sizeof(ns1__createDataFileResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataFileResponse *)soap_instantiate_ns1__createDataFileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataFileResponse ** p = (ns1__createDataFileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFileResponse, sizeof(ns1__createDataFileResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFileResponse);
+	if (soap_out_PointerTons1__createDataFileResponse(soap, tag?tag:"ns1:createDataFileResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataFileResponse ** SOAP_FMAC4 soap_get_PointerTons1__createDataFileResponse(struct soap *soap, ns1__createDataFileResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataFileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createDataFile(struct soap *soap, ns1__createDataFile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createDataFile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createDataFile(struct soap *soap, const char *tag, int id, ns1__createDataFile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createDataFile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createDataFile ** SOAP_FMAC4 soap_in_PointerTons1__createDataFile(struct soap *soap, const char *tag, ns1__createDataFile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createDataFile **)soap_malloc(soap, sizeof(ns1__createDataFile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createDataFile *)soap_instantiate_ns1__createDataFile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createDataFile ** p = (ns1__createDataFile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFile, sizeof(ns1__createDataFile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createDataFile(struct soap *soap, ns1__createDataFile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createDataFile);
+	if (soap_out_PointerTons1__createDataFile(soap, tag?tag:"ns1:createDataFile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createDataFile ** SOAP_FMAC4 soap_get_PointerTons1__createDataFile(struct soap *soap, ns1__createDataFile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createDataFile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafilesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafilesResponse(struct soap *soap, const char *tag, int id, ns1__getDatafilesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafilesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatafilesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatafilesResponse(struct soap *soap, const char *tag, ns1__getDatafilesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatafilesResponse **)soap_malloc(soap, sizeof(ns1__getDatafilesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatafilesResponse *)soap_instantiate_ns1__getDatafilesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatafilesResponse ** p = (ns1__getDatafilesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafilesResponse, sizeof(ns1__getDatafilesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafilesResponse);
+	if (soap_out_PointerTons1__getDatafilesResponse(soap, tag?tag:"ns1:getDatafilesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatafilesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatafilesResponse(struct soap *soap, ns1__getDatafilesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatafilesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafiles(struct soap *soap, ns1__getDatafiles *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafiles))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafiles(struct soap *soap, const char *tag, int id, ns1__getDatafiles *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafiles);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatafiles ** SOAP_FMAC4 soap_in_PointerTons1__getDatafiles(struct soap *soap, const char *tag, ns1__getDatafiles **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatafiles **)soap_malloc(soap, sizeof(ns1__getDatafiles *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatafiles *)soap_instantiate_ns1__getDatafiles(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatafiles ** p = (ns1__getDatafiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafiles, sizeof(ns1__getDatafiles), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafiles(struct soap *soap, ns1__getDatafiles *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafiles);
+	if (soap_out_PointerTons1__getDatafiles(soap, tag?tag:"ns1:getDatafiles", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatafiles ** SOAP_FMAC4 soap_get_PointerTons1__getDatafiles(struct soap *soap, ns1__getDatafiles **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getUserDetailsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getUserDetailsResponse(struct soap *soap, const char *tag, int id, ns1__getUserDetailsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getUserDetailsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getUserDetailsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getUserDetailsResponse(struct soap *soap, const char *tag, ns1__getUserDetailsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getUserDetailsResponse **)soap_malloc(soap, sizeof(ns1__getUserDetailsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getUserDetailsResponse *)soap_instantiate_ns1__getUserDetailsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getUserDetailsResponse ** p = (ns1__getUserDetailsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetailsResponse, sizeof(ns1__getUserDetailsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getUserDetailsResponse);
+	if (soap_out_PointerTons1__getUserDetailsResponse(soap, tag?tag:"ns1:getUserDetailsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getUserDetailsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getUserDetailsResponse(struct soap *soap, ns1__getUserDetailsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getUserDetailsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getUserDetails(struct soap *soap, ns1__getUserDetails *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getUserDetails))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getUserDetails(struct soap *soap, const char *tag, int id, ns1__getUserDetails *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getUserDetails);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getUserDetails ** SOAP_FMAC4 soap_in_PointerTons1__getUserDetails(struct soap *soap, const char *tag, ns1__getUserDetails **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getUserDetails **)soap_malloc(soap, sizeof(ns1__getUserDetails *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getUserDetails *)soap_instantiate_ns1__getUserDetails(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getUserDetails ** p = (ns1__getUserDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetails, sizeof(ns1__getUserDetails), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getUserDetails(struct soap *soap, ns1__getUserDetails *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getUserDetails);
+	if (soap_out_PointerTons1__getUserDetails(soap, tag?tag:"ns1:getUserDetails", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getUserDetails ** SOAP_FMAC4 soap_get_PointerTons1__getUserDetails(struct soap *soap, ns1__getUserDetails **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getUserDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__updateAuthorisationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__updateAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__updateAuthorisationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__updateAuthorisationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__updateAuthorisationResponse(struct soap *soap, const char *tag, ns1__updateAuthorisationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__updateAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__updateAuthorisationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__updateAuthorisationResponse *)soap_instantiate_ns1__updateAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__updateAuthorisationResponse ** p = (ns1__updateAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisationResponse, sizeof(ns1__updateAuthorisationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__updateAuthorisationResponse);
+	if (soap_out_PointerTons1__updateAuthorisationResponse(soap, tag?tag:"ns1:updateAuthorisationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__updateAuthorisationResponse(struct soap *soap, ns1__updateAuthorisationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__updateAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__updateAuthorisation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__updateAuthorisation(struct soap *soap, const char *tag, int id, ns1__updateAuthorisation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__updateAuthorisation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__updateAuthorisation(struct soap *soap, const char *tag, ns1__updateAuthorisation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__updateAuthorisation **)soap_malloc(soap, sizeof(ns1__updateAuthorisation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__updateAuthorisation *)soap_instantiate_ns1__updateAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__updateAuthorisation ** p = (ns1__updateAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisation, sizeof(ns1__updateAuthorisation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__updateAuthorisation);
+	if (soap_out_PointerTons1__updateAuthorisation(soap, tag?tag:"ns1:updateAuthorisation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__updateAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__updateAuthorisation(struct soap *soap, ns1__updateAuthorisation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__updateAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeAuthorisationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__removeAuthorisationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeAuthorisationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeAuthorisationResponse(struct soap *soap, const char *tag, ns1__removeAuthorisationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__removeAuthorisationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeAuthorisationResponse *)soap_instantiate_ns1__removeAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeAuthorisationResponse ** p = (ns1__removeAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisationResponse, sizeof(ns1__removeAuthorisationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeAuthorisationResponse);
+	if (soap_out_PointerTons1__removeAuthorisationResponse(soap, tag?tag:"ns1:removeAuthorisationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeAuthorisationResponse(struct soap *soap, ns1__removeAuthorisationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeAuthorisation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeAuthorisation(struct soap *soap, const char *tag, int id, ns1__removeAuthorisation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeAuthorisation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__removeAuthorisation(struct soap *soap, const char *tag, ns1__removeAuthorisation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeAuthorisation **)soap_malloc(soap, sizeof(ns1__removeAuthorisation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeAuthorisation *)soap_instantiate_ns1__removeAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeAuthorisation ** p = (ns1__removeAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisation, sizeof(ns1__removeAuthorisation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeAuthorisation);
+	if (soap_out_PointerTons1__removeAuthorisation(soap, tag?tag:"ns1:removeAuthorisation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__removeAuthorisation(struct soap *soap, ns1__removeAuthorisation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteAuthorisationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__deleteAuthorisationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteAuthorisationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteAuthorisationResponse(struct soap *soap, const char *tag, ns1__deleteAuthorisationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__deleteAuthorisationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteAuthorisationResponse *)soap_instantiate_ns1__deleteAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteAuthorisationResponse ** p = (ns1__deleteAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisationResponse, sizeof(ns1__deleteAuthorisationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteAuthorisationResponse);
+	if (soap_out_PointerTons1__deleteAuthorisationResponse(soap, tag?tag:"ns1:deleteAuthorisationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteAuthorisationResponse(struct soap *soap, ns1__deleteAuthorisationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteAuthorisation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteAuthorisation(struct soap *soap, const char *tag, int id, ns1__deleteAuthorisation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteAuthorisation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__deleteAuthorisation(struct soap *soap, const char *tag, ns1__deleteAuthorisation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteAuthorisation **)soap_malloc(soap, sizeof(ns1__deleteAuthorisation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteAuthorisation *)soap_instantiate_ns1__deleteAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteAuthorisation ** p = (ns1__deleteAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisation, sizeof(ns1__deleteAuthorisation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteAuthorisation);
+	if (soap_out_PointerTons1__deleteAuthorisation(soap, tag?tag:"ns1:deleteAuthorisation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__deleteAuthorisation(struct soap *soap, ns1__deleteAuthorisation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addAuthorisationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addAuthorisationResponse(struct soap *soap, const char *tag, int id, ns1__addAuthorisationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addAuthorisationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addAuthorisationResponse ** SOAP_FMAC4 soap_in_PointerTons1__addAuthorisationResponse(struct soap *soap, const char *tag, ns1__addAuthorisationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addAuthorisationResponse **)soap_malloc(soap, sizeof(ns1__addAuthorisationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addAuthorisationResponse *)soap_instantiate_ns1__addAuthorisationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addAuthorisationResponse ** p = (ns1__addAuthorisationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisationResponse, sizeof(ns1__addAuthorisationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addAuthorisationResponse);
+	if (soap_out_PointerTons1__addAuthorisationResponse(soap, tag?tag:"ns1:addAuthorisationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addAuthorisationResponse ** SOAP_FMAC4 soap_get_PointerTons1__addAuthorisationResponse(struct soap *soap, ns1__addAuthorisationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addAuthorisationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addAuthorisation(struct soap *soap, ns1__addAuthorisation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addAuthorisation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addAuthorisation(struct soap *soap, const char *tag, int id, ns1__addAuthorisation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addAuthorisation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__addAuthorisation(struct soap *soap, const char *tag, ns1__addAuthorisation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addAuthorisation **)soap_malloc(soap, sizeof(ns1__addAuthorisation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addAuthorisation *)soap_instantiate_ns1__addAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addAuthorisation ** p = (ns1__addAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisation, sizeof(ns1__addAuthorisation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addAuthorisation(struct soap *soap, ns1__addAuthorisation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addAuthorisation);
+	if (soap_out_PointerTons1__addAuthorisation(soap, tag?tag:"ns1:addAuthorisation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__addAuthorisation(struct soap *soap, ns1__addAuthorisation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAuthorisationsResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAuthorisationsResponse(struct soap *soap, const char *tag, int id, ns1__getAuthorisationsResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAuthorisationsResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getAuthorisationsResponse ** SOAP_FMAC4 soap_in_PointerTons1__getAuthorisationsResponse(struct soap *soap, const char *tag, ns1__getAuthorisationsResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getAuthorisationsResponse **)soap_malloc(soap, sizeof(ns1__getAuthorisationsResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getAuthorisationsResponse *)soap_instantiate_ns1__getAuthorisationsResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getAuthorisationsResponse ** p = (ns1__getAuthorisationsResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisationsResponse, sizeof(ns1__getAuthorisationsResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAuthorisationsResponse);
+	if (soap_out_PointerTons1__getAuthorisationsResponse(soap, tag?tag:"ns1:getAuthorisationsResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getAuthorisationsResponse ** SOAP_FMAC4 soap_get_PointerTons1__getAuthorisationsResponse(struct soap *soap, ns1__getAuthorisationsResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getAuthorisationsResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getAuthorisations(struct soap *soap, ns1__getAuthorisations *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getAuthorisations))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getAuthorisations(struct soap *soap, const char *tag, int id, ns1__getAuthorisations *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getAuthorisations);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getAuthorisations ** SOAP_FMAC4 soap_in_PointerTons1__getAuthorisations(struct soap *soap, const char *tag, ns1__getAuthorisations **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getAuthorisations **)soap_malloc(soap, sizeof(ns1__getAuthorisations *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getAuthorisations *)soap_instantiate_ns1__getAuthorisations(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getAuthorisations ** p = (ns1__getAuthorisations **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisations, sizeof(ns1__getAuthorisations), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getAuthorisations(struct soap *soap, ns1__getAuthorisations *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getAuthorisations);
+	if (soap_out_PointerTons1__getAuthorisations(soap, tag?tag:"ns1:getAuthorisations", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getAuthorisations ** SOAP_FMAC4 soap_get_PointerTons1__getAuthorisations(struct soap *soap, ns1__getAuthorisations **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getAuthorisations(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySampleParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__modifySampleParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySampleParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifySampleParameterResponse(struct soap *soap, const char *tag, ns1__modifySampleParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifySampleParameterResponse **)soap_malloc(soap, sizeof(ns1__modifySampleParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifySampleParameterResponse *)soap_instantiate_ns1__modifySampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifySampleParameterResponse ** p = (ns1__modifySampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameterResponse, sizeof(ns1__modifySampleParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySampleParameterResponse);
+	if (soap_out_PointerTons1__modifySampleParameterResponse(soap, tag?tag:"ns1:modifySampleParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifySampleParameterResponse(struct soap *soap, ns1__modifySampleParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifySampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySampleParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySampleParameter(struct soap *soap, const char *tag, int id, ns1__modifySampleParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySampleParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__modifySampleParameter(struct soap *soap, const char *tag, ns1__modifySampleParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifySampleParameter **)soap_malloc(soap, sizeof(ns1__modifySampleParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifySampleParameter *)soap_instantiate_ns1__modifySampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifySampleParameter ** p = (ns1__modifySampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameter, sizeof(ns1__modifySampleParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySampleParameter);
+	if (soap_out_PointerTons1__modifySampleParameter(soap, tag?tag:"ns1:modifySampleParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifySampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__modifySampleParameter(struct soap *soap, ns1__modifySampleParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifySampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSampleParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__deleteSampleParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSampleParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteSampleParameterResponse(struct soap *soap, const char *tag, ns1__deleteSampleParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteSampleParameterResponse **)soap_malloc(soap, sizeof(ns1__deleteSampleParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteSampleParameterResponse *)soap_instantiate_ns1__deleteSampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteSampleParameterResponse ** p = (ns1__deleteSampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameterResponse, sizeof(ns1__deleteSampleParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSampleParameterResponse);
+	if (soap_out_PointerTons1__deleteSampleParameterResponse(soap, tag?tag:"ns1:deleteSampleParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteSampleParameterResponse(struct soap *soap, ns1__deleteSampleParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSampleParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSampleParameter(struct soap *soap, const char *tag, int id, ns1__deleteSampleParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSampleParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__deleteSampleParameter(struct soap *soap, const char *tag, ns1__deleteSampleParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteSampleParameter **)soap_malloc(soap, sizeof(ns1__deleteSampleParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteSampleParameter *)soap_instantiate_ns1__deleteSampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteSampleParameter ** p = (ns1__deleteSampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameter, sizeof(ns1__deleteSampleParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSampleParameter);
+	if (soap_out_PointerTons1__deleteSampleParameter(soap, tag?tag:"ns1:deleteSampleParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteSampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__deleteSampleParameter(struct soap *soap, ns1__deleteSampleParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSampleParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__removeSampleParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSampleParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeSampleParameterResponse(struct soap *soap, const char *tag, ns1__removeSampleParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeSampleParameterResponse **)soap_malloc(soap, sizeof(ns1__removeSampleParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeSampleParameterResponse *)soap_instantiate_ns1__removeSampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeSampleParameterResponse ** p = (ns1__removeSampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameterResponse, sizeof(ns1__removeSampleParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSampleParameterResponse);
+	if (soap_out_PointerTons1__removeSampleParameterResponse(soap, tag?tag:"ns1:removeSampleParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeSampleParameterResponse(struct soap *soap, ns1__removeSampleParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSampleParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSampleParameter(struct soap *soap, const char *tag, int id, ns1__removeSampleParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSampleParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__removeSampleParameter(struct soap *soap, const char *tag, ns1__removeSampleParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeSampleParameter **)soap_malloc(soap, sizeof(ns1__removeSampleParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeSampleParameter *)soap_instantiate_ns1__removeSampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeSampleParameter ** p = (ns1__removeSampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameter, sizeof(ns1__removeSampleParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSampleParameter);
+	if (soap_out_PointerTons1__removeSampleParameter(soap, tag?tag:"ns1:removeSampleParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeSampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__removeSampleParameter(struct soap *soap, ns1__removeSampleParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySampleResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySampleResponse(struct soap *soap, const char *tag, int id, ns1__modifySampleResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySampleResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifySampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifySampleResponse(struct soap *soap, const char *tag, ns1__modifySampleResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifySampleResponse **)soap_malloc(soap, sizeof(ns1__modifySampleResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifySampleResponse *)soap_instantiate_ns1__modifySampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifySampleResponse ** p = (ns1__modifySampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleResponse, sizeof(ns1__modifySampleResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySampleResponse);
+	if (soap_out_PointerTons1__modifySampleResponse(soap, tag?tag:"ns1:modifySampleResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifySampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifySampleResponse(struct soap *soap, ns1__modifySampleResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifySampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifySample(struct soap *soap, ns1__modifySample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifySample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifySample(struct soap *soap, const char *tag, int id, ns1__modifySample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifySample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifySample ** SOAP_FMAC4 soap_in_PointerTons1__modifySample(struct soap *soap, const char *tag, ns1__modifySample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifySample **)soap_malloc(soap, sizeof(ns1__modifySample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifySample *)soap_instantiate_ns1__modifySample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifySample ** p = (ns1__modifySample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySample, sizeof(ns1__modifySample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifySample(struct soap *soap, ns1__modifySample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifySample);
+	if (soap_out_PointerTons1__modifySample(soap, tag?tag:"ns1:modifySample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifySample ** SOAP_FMAC4 soap_get_PointerTons1__modifySample(struct soap *soap, ns1__modifySample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifySample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSampleResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSampleResponse(struct soap *soap, const char *tag, int id, ns1__deleteSampleResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSampleResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteSampleResponse(struct soap *soap, const char *tag, ns1__deleteSampleResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteSampleResponse **)soap_malloc(soap, sizeof(ns1__deleteSampleResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteSampleResponse *)soap_instantiate_ns1__deleteSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteSampleResponse ** p = (ns1__deleteSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleResponse, sizeof(ns1__deleteSampleResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSampleResponse);
+	if (soap_out_PointerTons1__deleteSampleResponse(soap, tag?tag:"ns1:deleteSampleResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteSampleResponse(struct soap *soap, ns1__deleteSampleResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteSample(struct soap *soap, ns1__deleteSample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteSample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteSample(struct soap *soap, const char *tag, int id, ns1__deleteSample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteSample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteSample ** SOAP_FMAC4 soap_in_PointerTons1__deleteSample(struct soap *soap, const char *tag, ns1__deleteSample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteSample **)soap_malloc(soap, sizeof(ns1__deleteSample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteSample *)soap_instantiate_ns1__deleteSample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteSample ** p = (ns1__deleteSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSample, sizeof(ns1__deleteSample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteSample(struct soap *soap, ns1__deleteSample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteSample);
+	if (soap_out_PointerTons1__deleteSample(soap, tag?tag:"ns1:deleteSample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteSample ** SOAP_FMAC4 soap_get_PointerTons1__deleteSample(struct soap *soap, ns1__deleteSample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSampleResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSampleResponse(struct soap *soap, const char *tag, int id, ns1__removeSampleResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSampleResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeSampleResponse(struct soap *soap, const char *tag, ns1__removeSampleResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeSampleResponse **)soap_malloc(soap, sizeof(ns1__removeSampleResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeSampleResponse *)soap_instantiate_ns1__removeSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeSampleResponse ** p = (ns1__removeSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleResponse, sizeof(ns1__removeSampleResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSampleResponse);
+	if (soap_out_PointerTons1__removeSampleResponse(soap, tag?tag:"ns1:removeSampleResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeSampleResponse(struct soap *soap, ns1__removeSampleResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeSample(struct soap *soap, ns1__removeSample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeSample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeSample(struct soap *soap, const char *tag, int id, ns1__removeSample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeSample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeSample ** SOAP_FMAC4 soap_in_PointerTons1__removeSample(struct soap *soap, const char *tag, ns1__removeSample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeSample **)soap_malloc(soap, sizeof(ns1__removeSample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeSample *)soap_instantiate_ns1__removeSample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeSample ** p = (ns1__removeSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSample, sizeof(ns1__removeSample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeSample(struct soap *soap, ns1__removeSample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeSample);
+	if (soap_out_PointerTons1__removeSample(soap, tag?tag:"ns1:removeSample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeSample ** SOAP_FMAC4 soap_get_PointerTons1__removeSample(struct soap *soap, ns1__removeSample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__deleteInvestigatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigatorResponse(struct soap *soap, const char *tag, ns1__deleteInvestigatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__deleteInvestigatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteInvestigatorResponse *)soap_instantiate_ns1__deleteInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteInvestigatorResponse ** p = (ns1__deleteInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigatorResponse, sizeof(ns1__deleteInvestigatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigatorResponse);
+	if (soap_out_PointerTons1__deleteInvestigatorResponse(soap, tag?tag:"ns1:deleteInvestigatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigatorResponse(struct soap *soap, ns1__deleteInvestigatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigator(struct soap *soap, const char *tag, int id, ns1__deleteInvestigator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigator(struct soap *soap, const char *tag, ns1__deleteInvestigator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteInvestigator **)soap_malloc(soap, sizeof(ns1__deleteInvestigator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteInvestigator *)soap_instantiate_ns1__deleteInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteInvestigator ** p = (ns1__deleteInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigator, sizeof(ns1__deleteInvestigator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigator);
+	if (soap_out_PointerTons1__deleteInvestigator(soap, tag?tag:"ns1:deleteInvestigator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigator(struct soap *soap, ns1__deleteInvestigator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__modifyInvestigatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigatorResponse(struct soap *soap, const char *tag, ns1__modifyInvestigatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__modifyInvestigatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyInvestigatorResponse *)soap_instantiate_ns1__modifyInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyInvestigatorResponse ** p = (ns1__modifyInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigatorResponse, sizeof(ns1__modifyInvestigatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigatorResponse);
+	if (soap_out_PointerTons1__modifyInvestigatorResponse(soap, tag?tag:"ns1:modifyInvestigatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigatorResponse(struct soap *soap, ns1__modifyInvestigatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigator(struct soap *soap, const char *tag, int id, ns1__modifyInvestigator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigator(struct soap *soap, const char *tag, ns1__modifyInvestigator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyInvestigator **)soap_malloc(soap, sizeof(ns1__modifyInvestigator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyInvestigator *)soap_instantiate_ns1__modifyInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyInvestigator ** p = (ns1__modifyInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigator, sizeof(ns1__modifyInvestigator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigator);
+	if (soap_out_PointerTons1__modifyInvestigator(soap, tag?tag:"ns1:modifyInvestigator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigator(struct soap *soap, ns1__modifyInvestigator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__removeInvestigatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigatorResponse(struct soap *soap, const char *tag, ns1__removeInvestigatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__removeInvestigatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeInvestigatorResponse *)soap_instantiate_ns1__removeInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeInvestigatorResponse ** p = (ns1__removeInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigatorResponse, sizeof(ns1__removeInvestigatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigatorResponse);
+	if (soap_out_PointerTons1__removeInvestigatorResponse(soap, tag?tag:"ns1:removeInvestigatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigatorResponse(struct soap *soap, ns1__removeInvestigatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigator(struct soap *soap, ns1__removeInvestigator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigator(struct soap *soap, const char *tag, int id, ns1__removeInvestigator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigator(struct soap *soap, const char *tag, ns1__removeInvestigator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeInvestigator **)soap_malloc(soap, sizeof(ns1__removeInvestigator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeInvestigator *)soap_instantiate_ns1__removeInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeInvestigator ** p = (ns1__removeInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigator, sizeof(ns1__removeInvestigator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigator(struct soap *soap, ns1__removeInvestigator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigator);
+	if (soap_out_PointerTons1__removeInvestigator(soap, tag?tag:"ns1:removeInvestigator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigator(struct soap *soap, ns1__removeInvestigator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyPublicationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyPublicationResponse(struct soap *soap, const char *tag, int id, ns1__modifyPublicationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyPublicationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyPublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyPublicationResponse(struct soap *soap, const char *tag, ns1__modifyPublicationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyPublicationResponse **)soap_malloc(soap, sizeof(ns1__modifyPublicationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyPublicationResponse *)soap_instantiate_ns1__modifyPublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyPublicationResponse ** p = (ns1__modifyPublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublicationResponse, sizeof(ns1__modifyPublicationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyPublicationResponse);
+	if (soap_out_PointerTons1__modifyPublicationResponse(soap, tag?tag:"ns1:modifyPublicationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyPublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyPublicationResponse(struct soap *soap, ns1__modifyPublicationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyPublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyPublication(struct soap *soap, ns1__modifyPublication *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyPublication))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyPublication(struct soap *soap, const char *tag, int id, ns1__modifyPublication *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyPublication);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyPublication ** SOAP_FMAC4 soap_in_PointerTons1__modifyPublication(struct soap *soap, const char *tag, ns1__modifyPublication **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyPublication **)soap_malloc(soap, sizeof(ns1__modifyPublication *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyPublication *)soap_instantiate_ns1__modifyPublication(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyPublication ** p = (ns1__modifyPublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublication, sizeof(ns1__modifyPublication), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyPublication(struct soap *soap, ns1__modifyPublication *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyPublication);
+	if (soap_out_PointerTons1__modifyPublication(soap, tag?tag:"ns1:modifyPublication", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyPublication ** SOAP_FMAC4 soap_get_PointerTons1__modifyPublication(struct soap *soap, ns1__modifyPublication **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyPublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deletePublicationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deletePublicationResponse(struct soap *soap, const char *tag, int id, ns1__deletePublicationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deletePublicationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deletePublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__deletePublicationResponse(struct soap *soap, const char *tag, ns1__deletePublicationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deletePublicationResponse **)soap_malloc(soap, sizeof(ns1__deletePublicationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deletePublicationResponse *)soap_instantiate_ns1__deletePublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deletePublicationResponse ** p = (ns1__deletePublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublicationResponse, sizeof(ns1__deletePublicationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deletePublicationResponse);
+	if (soap_out_PointerTons1__deletePublicationResponse(soap, tag?tag:"ns1:deletePublicationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deletePublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__deletePublicationResponse(struct soap *soap, ns1__deletePublicationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deletePublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deletePublication(struct soap *soap, ns1__deletePublication *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deletePublication))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deletePublication(struct soap *soap, const char *tag, int id, ns1__deletePublication *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deletePublication);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deletePublication ** SOAP_FMAC4 soap_in_PointerTons1__deletePublication(struct soap *soap, const char *tag, ns1__deletePublication **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deletePublication **)soap_malloc(soap, sizeof(ns1__deletePublication *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deletePublication *)soap_instantiate_ns1__deletePublication(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deletePublication ** p = (ns1__deletePublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublication, sizeof(ns1__deletePublication), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deletePublication(struct soap *soap, ns1__deletePublication *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deletePublication);
+	if (soap_out_PointerTons1__deletePublication(soap, tag?tag:"ns1:deletePublication", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deletePublication ** SOAP_FMAC4 soap_get_PointerTons1__deletePublication(struct soap *soap, ns1__deletePublication **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deletePublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removePublicationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removePublicationResponse(struct soap *soap, const char *tag, int id, ns1__removePublicationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removePublicationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removePublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__removePublicationResponse(struct soap *soap, const char *tag, ns1__removePublicationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removePublicationResponse **)soap_malloc(soap, sizeof(ns1__removePublicationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removePublicationResponse *)soap_instantiate_ns1__removePublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removePublicationResponse ** p = (ns1__removePublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublicationResponse, sizeof(ns1__removePublicationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removePublicationResponse);
+	if (soap_out_PointerTons1__removePublicationResponse(soap, tag?tag:"ns1:removePublicationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removePublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__removePublicationResponse(struct soap *soap, ns1__removePublicationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removePublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removePublication(struct soap *soap, ns1__removePublication *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removePublication))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removePublication(struct soap *soap, const char *tag, int id, ns1__removePublication *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removePublication);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removePublication ** SOAP_FMAC4 soap_in_PointerTons1__removePublication(struct soap *soap, const char *tag, ns1__removePublication **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removePublication **)soap_malloc(soap, sizeof(ns1__removePublication *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removePublication *)soap_instantiate_ns1__removePublication(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removePublication ** p = (ns1__removePublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublication, sizeof(ns1__removePublication), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removePublication(struct soap *soap, ns1__removePublication *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removePublication);
+	if (soap_out_PointerTons1__removePublication(soap, tag?tag:"ns1:removePublication", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removePublication ** SOAP_FMAC4 soap_get_PointerTons1__removePublication(struct soap *soap, ns1__removePublication **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removePublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteKeywordResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteKeywordResponse(struct soap *soap, const char *tag, int id, ns1__deleteKeywordResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteKeywordResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteKeywordResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteKeywordResponse(struct soap *soap, const char *tag, ns1__deleteKeywordResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteKeywordResponse **)soap_malloc(soap, sizeof(ns1__deleteKeywordResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteKeywordResponse *)soap_instantiate_ns1__deleteKeywordResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteKeywordResponse ** p = (ns1__deleteKeywordResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeywordResponse, sizeof(ns1__deleteKeywordResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteKeywordResponse);
+	if (soap_out_PointerTons1__deleteKeywordResponse(soap, tag?tag:"ns1:deleteKeywordResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteKeywordResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteKeywordResponse(struct soap *soap, ns1__deleteKeywordResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteKeyword(struct soap *soap, ns1__deleteKeyword *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteKeyword))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteKeyword(struct soap *soap, const char *tag, int id, ns1__deleteKeyword *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteKeyword);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteKeyword ** SOAP_FMAC4 soap_in_PointerTons1__deleteKeyword(struct soap *soap, const char *tag, ns1__deleteKeyword **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteKeyword **)soap_malloc(soap, sizeof(ns1__deleteKeyword *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteKeyword *)soap_instantiate_ns1__deleteKeyword(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteKeyword ** p = (ns1__deleteKeyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeyword, sizeof(ns1__deleteKeyword), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteKeyword(struct soap *soap, ns1__deleteKeyword *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteKeyword);
+	if (soap_out_PointerTons1__deleteKeyword(soap, tag?tag:"ns1:deleteKeyword", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteKeyword ** SOAP_FMAC4 soap_get_PointerTons1__deleteKeyword(struct soap *soap, ns1__deleteKeyword **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeKeywordResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeKeywordResponse(struct soap *soap, const char *tag, int id, ns1__removeKeywordResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeKeywordResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeKeywordResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeKeywordResponse(struct soap *soap, const char *tag, ns1__removeKeywordResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeKeywordResponse **)soap_malloc(soap, sizeof(ns1__removeKeywordResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeKeywordResponse *)soap_instantiate_ns1__removeKeywordResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeKeywordResponse ** p = (ns1__removeKeywordResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeywordResponse, sizeof(ns1__removeKeywordResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeKeywordResponse);
+	if (soap_out_PointerTons1__removeKeywordResponse(soap, tag?tag:"ns1:removeKeywordResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeKeywordResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeKeywordResponse(struct soap *soap, ns1__removeKeywordResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeKeyword(struct soap *soap, ns1__removeKeyword *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeKeyword))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeKeyword(struct soap *soap, const char *tag, int id, ns1__removeKeyword *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeKeyword);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeKeyword ** SOAP_FMAC4 soap_in_PointerTons1__removeKeyword(struct soap *soap, const char *tag, ns1__removeKeyword **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeKeyword **)soap_malloc(soap, sizeof(ns1__removeKeyword *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeKeyword *)soap_instantiate_ns1__removeKeyword(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeKeyword ** p = (ns1__removeKeyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeyword, sizeof(ns1__removeKeyword), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeKeyword(struct soap *soap, ns1__removeKeyword *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeKeyword);
+	if (soap_out_PointerTons1__removeKeyword(soap, tag?tag:"ns1:removeKeyword", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeKeyword ** SOAP_FMAC4 soap_get_PointerTons1__removeKeyword(struct soap *soap, ns1__removeKeyword **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__modifyInvestigationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigationResponse(struct soap *soap, const char *tag, ns1__modifyInvestigationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyInvestigationResponse **)soap_malloc(soap, sizeof(ns1__modifyInvestigationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyInvestigationResponse *)soap_instantiate_ns1__modifyInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyInvestigationResponse ** p = (ns1__modifyInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigationResponse, sizeof(ns1__modifyInvestigationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigationResponse);
+	if (soap_out_PointerTons1__modifyInvestigationResponse(soap, tag?tag:"ns1:modifyInvestigationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigationResponse(struct soap *soap, ns1__modifyInvestigationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__modifyInvestigation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__modifyInvestigation(struct soap *soap, const char *tag, int id, ns1__modifyInvestigation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__modifyInvestigation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__modifyInvestigation(struct soap *soap, const char *tag, ns1__modifyInvestigation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__modifyInvestigation **)soap_malloc(soap, sizeof(ns1__modifyInvestigation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__modifyInvestigation *)soap_instantiate_ns1__modifyInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__modifyInvestigation ** p = (ns1__modifyInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigation, sizeof(ns1__modifyInvestigation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__modifyInvestigation);
+	if (soap_out_PointerTons1__modifyInvestigation(soap, tag?tag:"ns1:modifyInvestigation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__modifyInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__modifyInvestigation(struct soap *soap, ns1__modifyInvestigation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__modifyInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__deleteInvestigationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigationResponse(struct soap *soap, const char *tag, ns1__deleteInvestigationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteInvestigationResponse **)soap_malloc(soap, sizeof(ns1__deleteInvestigationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteInvestigationResponse *)soap_instantiate_ns1__deleteInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteInvestigationResponse ** p = (ns1__deleteInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigationResponse, sizeof(ns1__deleteInvestigationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigationResponse);
+	if (soap_out_PointerTons1__deleteInvestigationResponse(soap, tag?tag:"ns1:deleteInvestigationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigationResponse(struct soap *soap, ns1__deleteInvestigationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__deleteInvestigation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__deleteInvestigation(struct soap *soap, const char *tag, int id, ns1__deleteInvestigation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__deleteInvestigation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__deleteInvestigation(struct soap *soap, const char *tag, ns1__deleteInvestigation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__deleteInvestigation **)soap_malloc(soap, sizeof(ns1__deleteInvestigation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__deleteInvestigation *)soap_instantiate_ns1__deleteInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__deleteInvestigation ** p = (ns1__deleteInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigation, sizeof(ns1__deleteInvestigation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__deleteInvestigation);
+	if (soap_out_PointerTons1__deleteInvestigation(soap, tag?tag:"ns1:deleteInvestigation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__deleteInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__deleteInvestigation(struct soap *soap, ns1__deleteInvestigation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__deleteInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__removeInvestigationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigationResponse(struct soap *soap, const char *tag, ns1__removeInvestigationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeInvestigationResponse **)soap_malloc(soap, sizeof(ns1__removeInvestigationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeInvestigationResponse *)soap_instantiate_ns1__removeInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeInvestigationResponse ** p = (ns1__removeInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigationResponse, sizeof(ns1__removeInvestigationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigationResponse);
+	if (soap_out_PointerTons1__removeInvestigationResponse(soap, tag?tag:"ns1:removeInvestigationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigationResponse(struct soap *soap, ns1__removeInvestigationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__removeInvestigation(struct soap *soap, ns1__removeInvestigation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__removeInvestigation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__removeInvestigation(struct soap *soap, const char *tag, int id, ns1__removeInvestigation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__removeInvestigation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__removeInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__removeInvestigation(struct soap *soap, const char *tag, ns1__removeInvestigation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__removeInvestigation **)soap_malloc(soap, sizeof(ns1__removeInvestigation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__removeInvestigation *)soap_instantiate_ns1__removeInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__removeInvestigation ** p = (ns1__removeInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigation, sizeof(ns1__removeInvestigation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__removeInvestigation(struct soap *soap, ns1__removeInvestigation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__removeInvestigation);
+	if (soap_out_PointerTons1__removeInvestigation(soap, tag?tag:"ns1:removeInvestigation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__removeInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__removeInvestigation(struct soap *soap, ns1__removeInvestigation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__removeInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createInvestigationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__createInvestigationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createInvestigationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__createInvestigationResponse(struct soap *soap, const char *tag, ns1__createInvestigationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createInvestigationResponse **)soap_malloc(soap, sizeof(ns1__createInvestigationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createInvestigationResponse *)soap_instantiate_ns1__createInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createInvestigationResponse ** p = (ns1__createInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigationResponse, sizeof(ns1__createInvestigationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createInvestigationResponse);
+	if (soap_out_PointerTons1__createInvestigationResponse(soap, tag?tag:"ns1:createInvestigationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__createInvestigationResponse(struct soap *soap, ns1__createInvestigationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__createInvestigation(struct soap *soap, ns1__createInvestigation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__createInvestigation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__createInvestigation(struct soap *soap, const char *tag, int id, ns1__createInvestigation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__createInvestigation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__createInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__createInvestigation(struct soap *soap, const char *tag, ns1__createInvestigation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__createInvestigation **)soap_malloc(soap, sizeof(ns1__createInvestigation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__createInvestigation *)soap_instantiate_ns1__createInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__createInvestigation ** p = (ns1__createInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigation, sizeof(ns1__createInvestigation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__createInvestigation(struct soap *soap, ns1__createInvestigation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__createInvestigation);
+	if (soap_out_PointerTons1__createInvestigation(soap, tag?tag:"ns1:createInvestigation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__createInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__createInvestigation(struct soap *soap, ns1__createInvestigation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__createInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getInvestigationsIncludesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationsIncludesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationsIncludesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getInvestigationsIncludesResponse **)soap_malloc(soap, sizeof(ns1__getInvestigationsIncludesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getInvestigationsIncludesResponse *)soap_instantiate_ns1__getInvestigationsIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getInvestigationsIncludesResponse ** p = (ns1__getInvestigationsIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, sizeof(ns1__getInvestigationsIncludesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationsIncludesResponse);
+	if (soap_out_PointerTons1__getInvestigationsIncludesResponse(soap, tag?tag:"ns1:getInvestigationsIncludesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationsIncludesResponse(struct soap *soap, ns1__getInvestigationsIncludesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getInvestigationsIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationsIncludes))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationsIncludes(struct soap *soap, const char *tag, int id, ns1__getInvestigationsIncludes *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationsIncludes);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationsIncludes(struct soap *soap, const char *tag, ns1__getInvestigationsIncludes **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getInvestigationsIncludes **)soap_malloc(soap, sizeof(ns1__getInvestigationsIncludes *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getInvestigationsIncludes *)soap_instantiate_ns1__getInvestigationsIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getInvestigationsIncludes ** p = (ns1__getInvestigationsIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludes, sizeof(ns1__getInvestigationsIncludes), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationsIncludes);
+	if (soap_out_PointerTons1__getInvestigationsIncludes(soap, tag?tag:"ns1:getInvestigationsIncludes", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getInvestigationsIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationsIncludes(struct soap *soap, ns1__getInvestigationsIncludes **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getInvestigationsIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParameterResponse(struct soap *soap, const char *tag, int id, ns1__addDataFileParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParameterResponse(struct soap *soap, const char *tag, ns1__addDataFileParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataFileParameterResponse **)soap_malloc(soap, sizeof(ns1__addDataFileParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataFileParameterResponse *)soap_instantiate_ns1__addDataFileParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataFileParameterResponse ** p = (ns1__addDataFileParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameterResponse, sizeof(ns1__addDataFileParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParameterResponse);
+	if (soap_out_PointerTons1__addDataFileParameterResponse(soap, tag?tag:"ns1:addDataFileParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParameterResponse(struct soap *soap, ns1__addDataFileParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataFileParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addDataFileParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addDataFileParameter(struct soap *soap, const char *tag, int id, ns1__addDataFileParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addDataFileParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameter ** SOAP_FMAC4 soap_in_PointerTons1__addDataFileParameter(struct soap *soap, const char *tag, ns1__addDataFileParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addDataFileParameter **)soap_malloc(soap, sizeof(ns1__addDataFileParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addDataFileParameter *)soap_instantiate_ns1__addDataFileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addDataFileParameter ** p = (ns1__addDataFileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameter, sizeof(ns1__addDataFileParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addDataFileParameter);
+	if (soap_out_PointerTons1__addDataFileParameter(soap, tag?tag:"ns1:addDataFileParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addDataFileParameter ** SOAP_FMAC4 soap_get_PointerTons1__addDataFileParameter(struct soap *soap, ns1__addDataFileParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addDataFileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafileResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafileResponse(struct soap *soap, const char *tag, int id, ns1__getDatafileResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafileResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatafileResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatafileResponse(struct soap *soap, const char *tag, ns1__getDatafileResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatafileResponse **)soap_malloc(soap, sizeof(ns1__getDatafileResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatafileResponse *)soap_instantiate_ns1__getDatafileResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatafileResponse ** p = (ns1__getDatafileResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafileResponse, sizeof(ns1__getDatafileResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafileResponse);
+	if (soap_out_PointerTons1__getDatafileResponse(soap, tag?tag:"ns1:getDatafileResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatafileResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatafileResponse(struct soap *soap, ns1__getDatafileResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatafileResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatafile(struct soap *soap, ns1__getDatafile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatafile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatafile(struct soap *soap, const char *tag, int id, ns1__getDatafile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatafile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatafile ** SOAP_FMAC4 soap_in_PointerTons1__getDatafile(struct soap *soap, const char *tag, ns1__getDatafile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatafile **)soap_malloc(soap, sizeof(ns1__getDatafile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatafile *)soap_instantiate_ns1__getDatafile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatafile ** p = (ns1__getDatafile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafile, sizeof(ns1__getDatafile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatafile(struct soap *soap, ns1__getDatafile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatafile);
+	if (soap_out_PointerTons1__getDatafile(soap, tag?tag:"ns1:getDatafile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatafile ** SOAP_FMAC4 soap_get_PointerTons1__getDatafile(struct soap *soap, ns1__getDatafile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetIncludesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getDatasetIncludesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetIncludesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetIncludesResponse(struct soap *soap, const char *tag, ns1__getDatasetIncludesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatasetIncludesResponse **)soap_malloc(soap, sizeof(ns1__getDatasetIncludesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatasetIncludesResponse *)soap_instantiate_ns1__getDatasetIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatasetIncludesResponse ** p = (ns1__getDatasetIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludesResponse, sizeof(ns1__getDatasetIncludesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetIncludesResponse);
+	if (soap_out_PointerTons1__getDatasetIncludesResponse(soap, tag?tag:"ns1:getDatasetIncludesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetIncludesResponse(struct soap *soap, ns1__getDatasetIncludesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatasetIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetIncludes))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetIncludes(struct soap *soap, const char *tag, int id, ns1__getDatasetIncludes *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetIncludes);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetIncludes(struct soap *soap, const char *tag, ns1__getDatasetIncludes **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatasetIncludes **)soap_malloc(soap, sizeof(ns1__getDatasetIncludes *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatasetIncludes *)soap_instantiate_ns1__getDatasetIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatasetIncludes ** p = (ns1__getDatasetIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludes, sizeof(ns1__getDatasetIncludes), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetIncludes);
+	if (soap_out_PointerTons1__getDatasetIncludes(soap, tag?tag:"ns1:getDatasetIncludes", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatasetIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetIncludes(struct soap *soap, ns1__getDatasetIncludes **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatasetIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDatasetResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDatasetResponse(struct soap *soap, const char *tag, int id, ns1__getDatasetResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDatasetResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDatasetResponse ** SOAP_FMAC4 soap_in_PointerTons1__getDatasetResponse(struct soap *soap, const char *tag, ns1__getDatasetResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDatasetResponse **)soap_malloc(soap, sizeof(ns1__getDatasetResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDatasetResponse *)soap_instantiate_ns1__getDatasetResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDatasetResponse ** p = (ns1__getDatasetResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetResponse, sizeof(ns1__getDatasetResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDatasetResponse);
+	if (soap_out_PointerTons1__getDatasetResponse(soap, tag?tag:"ns1:getDatasetResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDatasetResponse ** SOAP_FMAC4 soap_get_PointerTons1__getDatasetResponse(struct soap *soap, ns1__getDatasetResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDatasetResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getDataset(struct soap *soap, ns1__getDataset *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getDataset))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getDataset(struct soap *soap, const char *tag, int id, ns1__getDataset *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getDataset);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getDataset ** SOAP_FMAC4 soap_in_PointerTons1__getDataset(struct soap *soap, const char *tag, ns1__getDataset **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getDataset **)soap_malloc(soap, sizeof(ns1__getDataset *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getDataset *)soap_instantiate_ns1__getDataset(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getDataset ** p = (ns1__getDataset **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDataset, sizeof(ns1__getDataset), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getDataset(struct soap *soap, ns1__getDataset *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getDataset);
+	if (soap_out_PointerTons1__getDataset(soap, tag?tag:"ns1:getDataset", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getDataset ** SOAP_FMAC4 soap_get_PointerTons1__getDataset(struct soap *soap, ns1__getDataset **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getDataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationIncludesResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, int id, ns1__getInvestigationIncludesResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationIncludesResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludesResponse ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, const char *tag, ns1__getInvestigationIncludesResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getInvestigationIncludesResponse **)soap_malloc(soap, sizeof(ns1__getInvestigationIncludesResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getInvestigationIncludesResponse *)soap_instantiate_ns1__getInvestigationIncludesResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getInvestigationIncludesResponse ** p = (ns1__getInvestigationIncludesResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludesResponse, sizeof(ns1__getInvestigationIncludesResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationIncludesResponse);
+	if (soap_out_PointerTons1__getInvestigationIncludesResponse(soap, tag?tag:"ns1:getInvestigationIncludesResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludesResponse ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationIncludesResponse(struct soap *soap, ns1__getInvestigationIncludesResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getInvestigationIncludesResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationIncludes))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationIncludes(struct soap *soap, const char *tag, int id, ns1__getInvestigationIncludes *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationIncludes);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludes ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationIncludes(struct soap *soap, const char *tag, ns1__getInvestigationIncludes **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getInvestigationIncludes **)soap_malloc(soap, sizeof(ns1__getInvestigationIncludes *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getInvestigationIncludes *)soap_instantiate_ns1__getInvestigationIncludes(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getInvestigationIncludes ** p = (ns1__getInvestigationIncludes **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludes, sizeof(ns1__getInvestigationIncludes), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationIncludes);
+	if (soap_out_PointerTons1__getInvestigationIncludes(soap, tag?tag:"ns1:getInvestigationIncludes", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getInvestigationIncludes ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationIncludes(struct soap *soap, ns1__getInvestigationIncludes **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getInvestigationIncludes(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigationResponse(struct soap *soap, const char *tag, int id, ns1__getInvestigationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigationResponse ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigationResponse(struct soap *soap, const char *tag, ns1__getInvestigationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getInvestigationResponse **)soap_malloc(soap, sizeof(ns1__getInvestigationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getInvestigationResponse *)soap_instantiate_ns1__getInvestigationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getInvestigationResponse ** p = (ns1__getInvestigationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationResponse, sizeof(ns1__getInvestigationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigationResponse);
+	if (soap_out_PointerTons1__getInvestigationResponse(soap, tag?tag:"ns1:getInvestigationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getInvestigationResponse ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigationResponse(struct soap *soap, ns1__getInvestigationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getInvestigationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__getInvestigation(struct soap *soap, ns1__getInvestigation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__getInvestigation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__getInvestigation(struct soap *soap, const char *tag, int id, ns1__getInvestigation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__getInvestigation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__getInvestigation ** SOAP_FMAC4 soap_in_PointerTons1__getInvestigation(struct soap *soap, const char *tag, ns1__getInvestigation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__getInvestigation **)soap_malloc(soap, sizeof(ns1__getInvestigation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__getInvestigation *)soap_instantiate_ns1__getInvestigation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__getInvestigation ** p = (ns1__getInvestigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigation, sizeof(ns1__getInvestigation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__getInvestigation(struct soap *soap, ns1__getInvestigation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__getInvestigation);
+	if (soap_out_PointerTons1__getInvestigation(soap, tag?tag:"ns1:getInvestigation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__getInvestigation ** SOAP_FMAC4 soap_get_PointerTons1__getInvestigation(struct soap *soap, ns1__getInvestigation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__getInvestigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addInvestigatorResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addInvestigatorResponse(struct soap *soap, const char *tag, int id, ns1__addInvestigatorResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addInvestigatorResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addInvestigatorResponse ** SOAP_FMAC4 soap_in_PointerTons1__addInvestigatorResponse(struct soap *soap, const char *tag, ns1__addInvestigatorResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addInvestigatorResponse **)soap_malloc(soap, sizeof(ns1__addInvestigatorResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addInvestigatorResponse *)soap_instantiate_ns1__addInvestigatorResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addInvestigatorResponse ** p = (ns1__addInvestigatorResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigatorResponse, sizeof(ns1__addInvestigatorResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addInvestigatorResponse);
+	if (soap_out_PointerTons1__addInvestigatorResponse(soap, tag?tag:"ns1:addInvestigatorResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addInvestigatorResponse ** SOAP_FMAC4 soap_get_PointerTons1__addInvestigatorResponse(struct soap *soap, ns1__addInvestigatorResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addInvestigatorResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addInvestigator(struct soap *soap, ns1__addInvestigator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addInvestigator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addInvestigator(struct soap *soap, const char *tag, int id, ns1__addInvestigator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addInvestigator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addInvestigator ** SOAP_FMAC4 soap_in_PointerTons1__addInvestigator(struct soap *soap, const char *tag, ns1__addInvestigator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addInvestigator **)soap_malloc(soap, sizeof(ns1__addInvestigator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addInvestigator *)soap_instantiate_ns1__addInvestigator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addInvestigator ** p = (ns1__addInvestigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigator, sizeof(ns1__addInvestigator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addInvestigator(struct soap *soap, ns1__addInvestigator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addInvestigator);
+	if (soap_out_PointerTons1__addInvestigator(soap, tag?tag:"ns1:addInvestigator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addInvestigator ** SOAP_FMAC4 soap_get_PointerTons1__addInvestigator(struct soap *soap, ns1__addInvestigator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addInvestigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addKeywordResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addKeywordResponse(struct soap *soap, const char *tag, int id, ns1__addKeywordResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addKeywordResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addKeywordResponse ** SOAP_FMAC4 soap_in_PointerTons1__addKeywordResponse(struct soap *soap, const char *tag, ns1__addKeywordResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addKeywordResponse **)soap_malloc(soap, sizeof(ns1__addKeywordResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addKeywordResponse *)soap_instantiate_ns1__addKeywordResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addKeywordResponse ** p = (ns1__addKeywordResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeywordResponse, sizeof(ns1__addKeywordResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addKeywordResponse);
+	if (soap_out_PointerTons1__addKeywordResponse(soap, tag?tag:"ns1:addKeywordResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addKeywordResponse ** SOAP_FMAC4 soap_get_PointerTons1__addKeywordResponse(struct soap *soap, ns1__addKeywordResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addKeywordResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addKeyword(struct soap *soap, ns1__addKeyword *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addKeyword))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addKeyword(struct soap *soap, const char *tag, int id, ns1__addKeyword *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addKeyword);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addKeyword ** SOAP_FMAC4 soap_in_PointerTons1__addKeyword(struct soap *soap, const char *tag, ns1__addKeyword **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addKeyword **)soap_malloc(soap, sizeof(ns1__addKeyword *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addKeyword *)soap_instantiate_ns1__addKeyword(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addKeyword ** p = (ns1__addKeyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeyword, sizeof(ns1__addKeyword), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addKeyword(struct soap *soap, ns1__addKeyword *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addKeyword);
+	if (soap_out_PointerTons1__addKeyword(soap, tag?tag:"ns1:addKeyword", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addKeyword ** SOAP_FMAC4 soap_get_PointerTons1__addKeyword(struct soap *soap, ns1__addKeyword **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addKeyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addPublicationResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addPublicationResponse(struct soap *soap, const char *tag, int id, ns1__addPublicationResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addPublicationResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addPublicationResponse ** SOAP_FMAC4 soap_in_PointerTons1__addPublicationResponse(struct soap *soap, const char *tag, ns1__addPublicationResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addPublicationResponse **)soap_malloc(soap, sizeof(ns1__addPublicationResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addPublicationResponse *)soap_instantiate_ns1__addPublicationResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addPublicationResponse ** p = (ns1__addPublicationResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublicationResponse, sizeof(ns1__addPublicationResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addPublicationResponse);
+	if (soap_out_PointerTons1__addPublicationResponse(soap, tag?tag:"ns1:addPublicationResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addPublicationResponse ** SOAP_FMAC4 soap_get_PointerTons1__addPublicationResponse(struct soap *soap, ns1__addPublicationResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addPublicationResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addPublication(struct soap *soap, ns1__addPublication *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addPublication))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addPublication(struct soap *soap, const char *tag, int id, ns1__addPublication *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addPublication);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addPublication ** SOAP_FMAC4 soap_in_PointerTons1__addPublication(struct soap *soap, const char *tag, ns1__addPublication **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addPublication **)soap_malloc(soap, sizeof(ns1__addPublication *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addPublication *)soap_instantiate_ns1__addPublication(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addPublication ** p = (ns1__addPublication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublication, sizeof(ns1__addPublication), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addPublication(struct soap *soap, ns1__addPublication *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addPublication);
+	if (soap_out_PointerTons1__addPublication(soap, tag?tag:"ns1:addPublication", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addPublication ** SOAP_FMAC4 soap_get_PointerTons1__addPublication(struct soap *soap, ns1__addPublication **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addPublication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSampleParameterResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSampleParameterResponse(struct soap *soap, const char *tag, int id, ns1__addSampleParameterResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSampleParameterResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addSampleParameterResponse ** SOAP_FMAC4 soap_in_PointerTons1__addSampleParameterResponse(struct soap *soap, const char *tag, ns1__addSampleParameterResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addSampleParameterResponse **)soap_malloc(soap, sizeof(ns1__addSampleParameterResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addSampleParameterResponse *)soap_instantiate_ns1__addSampleParameterResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addSampleParameterResponse ** p = (ns1__addSampleParameterResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameterResponse, sizeof(ns1__addSampleParameterResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSampleParameterResponse);
+	if (soap_out_PointerTons1__addSampleParameterResponse(soap, tag?tag:"ns1:addSampleParameterResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addSampleParameterResponse ** SOAP_FMAC4 soap_get_PointerTons1__addSampleParameterResponse(struct soap *soap, ns1__addSampleParameterResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addSampleParameterResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSampleParameter(struct soap *soap, ns1__addSampleParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSampleParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSampleParameter(struct soap *soap, const char *tag, int id, ns1__addSampleParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSampleParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addSampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__addSampleParameter(struct soap *soap, const char *tag, ns1__addSampleParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addSampleParameter **)soap_malloc(soap, sizeof(ns1__addSampleParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addSampleParameter *)soap_instantiate_ns1__addSampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addSampleParameter ** p = (ns1__addSampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameter, sizeof(ns1__addSampleParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSampleParameter(struct soap *soap, ns1__addSampleParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSampleParameter);
+	if (soap_out_PointerTons1__addSampleParameter(soap, tag?tag:"ns1:addSampleParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addSampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__addSampleParameter(struct soap *soap, ns1__addSampleParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addSampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__logoutResponse(struct soap *soap, ns1__logoutResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__logoutResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__logoutResponse(struct soap *soap, const char *tag, int id, ns1__logoutResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__logoutResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__logoutResponse ** SOAP_FMAC4 soap_in_PointerTons1__logoutResponse(struct soap *soap, const char *tag, ns1__logoutResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__logoutResponse **)soap_malloc(soap, sizeof(ns1__logoutResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__logoutResponse *)soap_instantiate_ns1__logoutResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__logoutResponse ** p = (ns1__logoutResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logoutResponse, sizeof(ns1__logoutResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__logoutResponse(struct soap *soap, ns1__logoutResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__logoutResponse);
+	if (soap_out_PointerTons1__logoutResponse(soap, tag?tag:"ns1:logoutResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__logoutResponse ** SOAP_FMAC4 soap_get_PointerTons1__logoutResponse(struct soap *soap, ns1__logoutResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__logoutResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__logout(struct soap *soap, ns1__logout *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__logout))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__logout(struct soap *soap, const char *tag, int id, ns1__logout *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__logout);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__logout ** SOAP_FMAC4 soap_in_PointerTons1__logout(struct soap *soap, const char *tag, ns1__logout **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__logout **)soap_malloc(soap, sizeof(ns1__logout *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__logout *)soap_instantiate_ns1__logout(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__logout ** p = (ns1__logout **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logout, sizeof(ns1__logout), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__logout(struct soap *soap, ns1__logout *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__logout);
+	if (soap_out_PointerTons1__logout(soap, tag?tag:"ns1:logout", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__logout ** SOAP_FMAC4 soap_get_PointerTons1__logout(struct soap *soap, ns1__logout **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__logout(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSampleResponse(struct soap *soap, ns1__addSampleResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSampleResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSampleResponse(struct soap *soap, const char *tag, int id, ns1__addSampleResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSampleResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addSampleResponse ** SOAP_FMAC4 soap_in_PointerTons1__addSampleResponse(struct soap *soap, const char *tag, ns1__addSampleResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addSampleResponse **)soap_malloc(soap, sizeof(ns1__addSampleResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addSampleResponse *)soap_instantiate_ns1__addSampleResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addSampleResponse ** p = (ns1__addSampleResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleResponse, sizeof(ns1__addSampleResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSampleResponse(struct soap *soap, ns1__addSampleResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSampleResponse);
+	if (soap_out_PointerTons1__addSampleResponse(soap, tag?tag:"ns1:addSampleResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addSampleResponse ** SOAP_FMAC4 soap_get_PointerTons1__addSampleResponse(struct soap *soap, ns1__addSampleResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addSampleResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__addSample(struct soap *soap, ns1__addSample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__addSample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__addSample(struct soap *soap, const char *tag, int id, ns1__addSample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__addSample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__addSample ** SOAP_FMAC4 soap_in_PointerTons1__addSample(struct soap *soap, const char *tag, ns1__addSample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__addSample **)soap_malloc(soap, sizeof(ns1__addSample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__addSample *)soap_instantiate_ns1__addSample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__addSample ** p = (ns1__addSample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSample, sizeof(ns1__addSample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__addSample(struct soap *soap, ns1__addSample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__addSample);
+	if (soap_out_PointerTons1__addSample(soap, tag?tag:"ns1:addSample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__addSample ** SOAP_FMAC4 soap_get_PointerTons1__addSample(struct soap *soap, ns1__addSample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__addSample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__loginLifetimeResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__loginLifetimeResponse(struct soap *soap, const char *tag, int id, ns1__loginLifetimeResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__loginLifetimeResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__loginLifetimeResponse ** SOAP_FMAC4 soap_in_PointerTons1__loginLifetimeResponse(struct soap *soap, const char *tag, ns1__loginLifetimeResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__loginLifetimeResponse **)soap_malloc(soap, sizeof(ns1__loginLifetimeResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__loginLifetimeResponse *)soap_instantiate_ns1__loginLifetimeResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__loginLifetimeResponse ** p = (ns1__loginLifetimeResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetimeResponse, sizeof(ns1__loginLifetimeResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__loginLifetimeResponse);
+	if (soap_out_PointerTons1__loginLifetimeResponse(soap, tag?tag:"ns1:loginLifetimeResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__loginLifetimeResponse ** SOAP_FMAC4 soap_get_PointerTons1__loginLifetimeResponse(struct soap *soap, ns1__loginLifetimeResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__loginLifetimeResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__loginLifetime(struct soap *soap, ns1__loginLifetime *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__loginLifetime))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__loginLifetime(struct soap *soap, const char *tag, int id, ns1__loginLifetime *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__loginLifetime);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__loginLifetime ** SOAP_FMAC4 soap_in_PointerTons1__loginLifetime(struct soap *soap, const char *tag, ns1__loginLifetime **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__loginLifetime **)soap_malloc(soap, sizeof(ns1__loginLifetime *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__loginLifetime *)soap_instantiate_ns1__loginLifetime(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__loginLifetime ** p = (ns1__loginLifetime **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetime, sizeof(ns1__loginLifetime), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__loginLifetime(struct soap *soap, ns1__loginLifetime *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__loginLifetime);
+	if (soap_out_PointerTons1__loginLifetime(soap, tag?tag:"ns1:loginLifetime", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__loginLifetime ** SOAP_FMAC4 soap_get_PointerTons1__loginLifetime(struct soap *soap, ns1__loginLifetime **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__loginLifetime(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__loginResponse(struct soap *soap, ns1__loginResponse *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__loginResponse))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__loginResponse(struct soap *soap, const char *tag, int id, ns1__loginResponse *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__loginResponse);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__loginResponse ** SOAP_FMAC4 soap_in_PointerTons1__loginResponse(struct soap *soap, const char *tag, ns1__loginResponse **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__loginResponse **)soap_malloc(soap, sizeof(ns1__loginResponse *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__loginResponse *)soap_instantiate_ns1__loginResponse(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__loginResponse ** p = (ns1__loginResponse **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginResponse, sizeof(ns1__loginResponse), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__loginResponse(struct soap *soap, ns1__loginResponse *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__loginResponse);
+	if (soap_out_PointerTons1__loginResponse(soap, tag?tag:"ns1:loginResponse", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__loginResponse ** SOAP_FMAC4 soap_get_PointerTons1__loginResponse(struct soap *soap, ns1__loginResponse **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__loginResponse(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__login(struct soap *soap, ns1__login *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__login))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__login(struct soap *soap, const char *tag, int id, ns1__login *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__login);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__login ** SOAP_FMAC4 soap_in_PointerTons1__login(struct soap *soap, const char *tag, ns1__login **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__login **)soap_malloc(soap, sizeof(ns1__login *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__login *)soap_instantiate_ns1__login(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__login ** p = (ns1__login **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__login, sizeof(ns1__login), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__login(struct soap *soap, ns1__login *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__login);
+	if (soap_out_PointerTons1__login(soap, tag?tag:"ns1:login", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__login ** SOAP_FMAC4 soap_get_PointerTons1__login(struct soap *soap, ns1__login **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__login(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ValidationException(struct soap *soap, ns1__ValidationException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ValidationException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ValidationException(struct soap *soap, const char *tag, int id, ns1__ValidationException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ValidationException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__ValidationException ** SOAP_FMAC4 soap_in_PointerTons1__ValidationException(struct soap *soap, const char *tag, ns1__ValidationException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__ValidationException **)soap_malloc(soap, sizeof(ns1__ValidationException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__ValidationException *)soap_instantiate_ns1__ValidationException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__ValidationException ** p = (ns1__ValidationException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ValidationException, sizeof(ns1__ValidationException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ValidationException(struct soap *soap, ns1__ValidationException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ValidationException);
+	if (soap_out_PointerTons1__ValidationException(soap, tag?tag:"ns1:ValidationException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__ValidationException ** SOAP_FMAC4 soap_get_PointerTons1__ValidationException(struct soap *soap, ns1__ValidationException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__ValidationException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__SessionException(struct soap *soap, ns1__SessionException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__SessionException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__SessionException(struct soap *soap, const char *tag, int id, ns1__SessionException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__SessionException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__SessionException ** SOAP_FMAC4 soap_in_PointerTons1__SessionException(struct soap *soap, const char *tag, ns1__SessionException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__SessionException **)soap_malloc(soap, sizeof(ns1__SessionException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__SessionException *)soap_instantiate_ns1__SessionException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__SessionException ** p = (ns1__SessionException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__SessionException, sizeof(ns1__SessionException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__SessionException(struct soap *soap, ns1__SessionException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__SessionException);
+	if (soap_out_PointerTons1__SessionException(soap, tag?tag:"ns1:SessionException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__SessionException ** SOAP_FMAC4 soap_get_PointerTons1__SessionException(struct soap *soap, ns1__SessionException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__SessionException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ParameterSearchException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ParameterSearchException(struct soap *soap, const char *tag, int id, ns1__ParameterSearchException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ParameterSearchException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__ParameterSearchException ** SOAP_FMAC4 soap_in_PointerTons1__ParameterSearchException(struct soap *soap, const char *tag, ns1__ParameterSearchException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__ParameterSearchException **)soap_malloc(soap, sizeof(ns1__ParameterSearchException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__ParameterSearchException *)soap_instantiate_ns1__ParameterSearchException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__ParameterSearchException ** p = (ns1__ParameterSearchException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ParameterSearchException, sizeof(ns1__ParameterSearchException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ParameterSearchException);
+	if (soap_out_PointerTons1__ParameterSearchException(soap, tag?tag:"ns1:ParameterSearchException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__ParameterSearchException ** SOAP_FMAC4 soap_get_PointerTons1__ParameterSearchException(struct soap *soap, ns1__ParameterSearchException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__ParameterSearchException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__NoSuchUserException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__NoSuchUserException(struct soap *soap, const char *tag, int id, ns1__NoSuchUserException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__NoSuchUserException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__NoSuchUserException ** SOAP_FMAC4 soap_in_PointerTons1__NoSuchUserException(struct soap *soap, const char *tag, ns1__NoSuchUserException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__NoSuchUserException **)soap_malloc(soap, sizeof(ns1__NoSuchUserException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__NoSuchUserException *)soap_instantiate_ns1__NoSuchUserException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__NoSuchUserException ** p = (ns1__NoSuchUserException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchUserException, sizeof(ns1__NoSuchUserException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__NoSuchUserException);
+	if (soap_out_PointerTons1__NoSuchUserException(soap, tag?tag:"ns1:NoSuchUserException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__NoSuchUserException ** SOAP_FMAC4 soap_get_PointerTons1__NoSuchUserException(struct soap *soap, ns1__NoSuchUserException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__NoSuchUserException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__NoSuchObjectFoundException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__NoSuchObjectFoundException(struct soap *soap, const char *tag, int id, ns1__NoSuchObjectFoundException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__NoSuchObjectFoundException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__NoSuchObjectFoundException ** SOAP_FMAC4 soap_in_PointerTons1__NoSuchObjectFoundException(struct soap *soap, const char *tag, ns1__NoSuchObjectFoundException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__NoSuchObjectFoundException **)soap_malloc(soap, sizeof(ns1__NoSuchObjectFoundException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__NoSuchObjectFoundException *)soap_instantiate_ns1__NoSuchObjectFoundException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__NoSuchObjectFoundException ** p = (ns1__NoSuchObjectFoundException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchObjectFoundException, sizeof(ns1__NoSuchObjectFoundException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__NoSuchObjectFoundException);
+	if (soap_out_PointerTons1__NoSuchObjectFoundException(soap, tag?tag:"ns1:NoSuchObjectFoundException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__NoSuchObjectFoundException ** SOAP_FMAC4 soap_get_PointerTons1__NoSuchObjectFoundException(struct soap *soap, ns1__NoSuchObjectFoundException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__NoSuchObjectFoundException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__InsufficientPrivilegesException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__InsufficientPrivilegesException(struct soap *soap, const char *tag, int id, ns1__InsufficientPrivilegesException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__InsufficientPrivilegesException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__InsufficientPrivilegesException ** SOAP_FMAC4 soap_in_PointerTons1__InsufficientPrivilegesException(struct soap *soap, const char *tag, ns1__InsufficientPrivilegesException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__InsufficientPrivilegesException **)soap_malloc(soap, sizeof(ns1__InsufficientPrivilegesException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__InsufficientPrivilegesException *)soap_instantiate_ns1__InsufficientPrivilegesException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__InsufficientPrivilegesException ** p = (ns1__InsufficientPrivilegesException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__InsufficientPrivilegesException, sizeof(ns1__InsufficientPrivilegesException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__InsufficientPrivilegesException);
+	if (soap_out_PointerTons1__InsufficientPrivilegesException(soap, tag?tag:"ns1:InsufficientPrivilegesException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__InsufficientPrivilegesException ** SOAP_FMAC4 soap_get_PointerTons1__InsufficientPrivilegesException(struct soap *soap, ns1__InsufficientPrivilegesException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__InsufficientPrivilegesException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__ICATAPIException(struct soap *soap, ns1__ICATAPIException *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__ICATAPIException))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__ICATAPIException(struct soap *soap, const char *tag, int id, ns1__ICATAPIException *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__ICATAPIException);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__ICATAPIException ** SOAP_FMAC4 soap_in_PointerTons1__ICATAPIException(struct soap *soap, const char *tag, ns1__ICATAPIException **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__ICATAPIException **)soap_malloc(soap, sizeof(ns1__ICATAPIException *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__ICATAPIException *)soap_instantiate_ns1__ICATAPIException(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__ICATAPIException ** p = (ns1__ICATAPIException **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ICATAPIException, sizeof(ns1__ICATAPIException), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__ICATAPIException(struct soap *soap, ns1__ICATAPIException *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__ICATAPIException);
+	if (soap_out_PointerTons1__ICATAPIException(soap, tag?tag:"ns1:ICATAPIException", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__ICATAPIException ** SOAP_FMAC4 soap_get_PointerTons1__ICATAPIException(struct soap *soap, ns1__ICATAPIException **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__ICATAPIException(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__logicalOperator);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__logicalOperator(struct soap *soap, const char *tag, int id, enum ns1__logicalOperator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__logicalOperator);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__logicalOperator(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__logicalOperator ** SOAP_FMAC4 soap_in_PointerTons1__logicalOperator(struct soap *soap, const char *tag, enum ns1__logicalOperator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__logicalOperator **)soap_malloc(soap, sizeof(enum ns1__logicalOperator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__logicalOperator(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__logicalOperator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logicalOperator, sizeof(enum ns1__logicalOperator), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__logicalOperator(struct soap *soap, enum ns1__logicalOperator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__logicalOperator);
+	if (soap_out_PointerTons1__logicalOperator(soap, tag?tag:"ns1:logicalOperator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__logicalOperator ** SOAP_FMAC4 soap_get_PointerTons1__logicalOperator(struct soap *soap, enum ns1__logicalOperator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__logicalOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterCondition(struct soap *soap, ns1__parameterCondition *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterCondition))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterCondition(struct soap *soap, const char *tag, int id, ns1__parameterCondition *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterCondition);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__parameterCondition ** SOAP_FMAC4 soap_in_PointerTons1__parameterCondition(struct soap *soap, const char *tag, ns1__parameterCondition **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__parameterCondition **)soap_malloc(soap, sizeof(ns1__parameterCondition *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__parameterCondition *)soap_instantiate_ns1__parameterCondition(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__parameterCondition ** p = (ns1__parameterCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterCondition, sizeof(ns1__parameterCondition), 0);
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (ns1__parameterCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (ns1__parameterCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), 0);
+		}
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterCondition(struct soap *soap, ns1__parameterCondition *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterCondition);
+	if (soap_out_PointerTons1__parameterCondition(soap, tag?tag:"ns1:parameterCondition", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__parameterCondition ** SOAP_FMAC4 soap_get_PointerTons1__parameterCondition(struct soap *soap, ns1__parameterCondition **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterCondition(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__shiftPK(struct soap *soap, ns1__shiftPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__shiftPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__shiftPK(struct soap *soap, const char *tag, int id, ns1__shiftPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__shiftPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__shiftPK ** SOAP_FMAC4 soap_in_PointerTons1__shiftPK(struct soap *soap, const char *tag, ns1__shiftPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__shiftPK **)soap_malloc(soap, sizeof(ns1__shiftPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__shiftPK *)soap_instantiate_ns1__shiftPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__shiftPK ** p = (ns1__shiftPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shiftPK, sizeof(ns1__shiftPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__shiftPK(struct soap *soap, ns1__shiftPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__shiftPK);
+	if (soap_out_PointerTons1__shiftPK(soap, tag?tag:"ns1:shiftPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__shiftPK ** SOAP_FMAC4 soap_get_PointerTons1__shiftPK(struct soap *soap, ns1__shiftPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__shiftPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__shift(struct soap *soap, ns1__shift *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__shift))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__shift(struct soap *soap, const char *tag, int id, ns1__shift *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__shift);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__shift ** SOAP_FMAC4 soap_in_PointerTons1__shift(struct soap *soap, const char *tag, ns1__shift **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__shift **)soap_malloc(soap, sizeof(ns1__shift *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__shift *)soap_instantiate_ns1__shift(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__shift ** p = (ns1__shift **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shift, sizeof(ns1__shift), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__shift(struct soap *soap, ns1__shift *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__shift);
+	if (soap_out_PointerTons1__shift(soap, tag?tag:"ns1:shift", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__shift ** SOAP_FMAC4 soap_get_PointerTons1__shift(struct soap *soap, ns1__shift **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__shift(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterPK(struct soap *soap, ns1__parameterPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterPK(struct soap *soap, const char *tag, int id, ns1__parameterPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__parameterPK ** SOAP_FMAC4 soap_in_PointerTons1__parameterPK(struct soap *soap, const char *tag, ns1__parameterPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__parameterPK **)soap_malloc(soap, sizeof(ns1__parameterPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__parameterPK *)soap_instantiate_ns1__parameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__parameterPK ** p = (ns1__parameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterPK, sizeof(ns1__parameterPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterPK(struct soap *soap, ns1__parameterPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterPK);
+	if (soap_out_PointerTons1__parameterPK(soap, tag?tag:"ns1:parameterPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__parameterPK ** SOAP_FMAC4 soap_get_PointerTons1__parameterPK(struct soap *soap, ns1__parameterPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterValued(struct soap *soap, ns1__parameterValued *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterValued))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterValued(struct soap *soap, const char *tag, int id, ns1__parameterValued *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterValued);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__parameterValued ** SOAP_FMAC4 soap_in_PointerTons1__parameterValued(struct soap *soap, const char *tag, ns1__parameterValued **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__parameterValued **)soap_malloc(soap, sizeof(ns1__parameterValued *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__parameterValued *)soap_instantiate_ns1__parameterValued(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__parameterValued ** p = (ns1__parameterValued **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValued, sizeof(ns1__parameterValued), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterValued(struct soap *soap, ns1__parameterValued *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterValued);
+	if (soap_out_PointerTons1__parameterValued(soap, tag?tag:"ns1:parameterValued", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__parameterValued ** SOAP_FMAC4 soap_get_PointerTons1__parameterValued(struct soap *soap, ns1__parameterValued **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterValued(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__comparisonOperator);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__comparisonOperator(struct soap *soap, const char *tag, int id, enum ns1__comparisonOperator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__comparisonOperator);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__comparisonOperator(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__comparisonOperator ** SOAP_FMAC4 soap_in_PointerTons1__comparisonOperator(struct soap *soap, const char *tag, enum ns1__comparisonOperator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__comparisonOperator **)soap_malloc(soap, sizeof(enum ns1__comparisonOperator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__comparisonOperator(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__comparisonOperator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__comparisonOperator, sizeof(enum ns1__comparisonOperator), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__comparisonOperator);
+	if (soap_out_PointerTons1__comparisonOperator(soap, tag?tag:"ns1:comparisonOperator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__comparisonOperator ** SOAP_FMAC4 soap_get_PointerTons1__comparisonOperator(struct soap *soap, enum ns1__comparisonOperator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__comparisonOperator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__relatedDatafilesPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__relatedDatafilesPK(struct soap *soap, const char *tag, int id, ns1__relatedDatafilesPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__relatedDatafilesPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__relatedDatafilesPK ** SOAP_FMAC4 soap_in_PointerTons1__relatedDatafilesPK(struct soap *soap, const char *tag, ns1__relatedDatafilesPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__relatedDatafilesPK **)soap_malloc(soap, sizeof(ns1__relatedDatafilesPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__relatedDatafilesPK *)soap_instantiate_ns1__relatedDatafilesPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__relatedDatafilesPK ** p = (ns1__relatedDatafilesPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafilesPK, sizeof(ns1__relatedDatafilesPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__relatedDatafilesPK);
+	if (soap_out_PointerTons1__relatedDatafilesPK(soap, tag?tag:"ns1:relatedDatafilesPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__relatedDatafilesPK ** SOAP_FMAC4 soap_get_PointerTons1__relatedDatafilesPK(struct soap *soap, ns1__relatedDatafilesPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__relatedDatafilesPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileFormatPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileFormatPK(struct soap *soap, const char *tag, int id, ns1__datafileFormatPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileFormatPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datafileFormatPK ** SOAP_FMAC4 soap_in_PointerTons1__datafileFormatPK(struct soap *soap, const char *tag, ns1__datafileFormatPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datafileFormatPK **)soap_malloc(soap, sizeof(ns1__datafileFormatPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datafileFormatPK *)soap_instantiate_ns1__datafileFormatPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datafileFormatPK ** p = (ns1__datafileFormatPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormatPK, sizeof(ns1__datafileFormatPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileFormatPK);
+	if (soap_out_PointerTons1__datafileFormatPK(soap, tag?tag:"ns1:datafileFormatPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datafileFormatPK ** SOAP_FMAC4 soap_get_PointerTons1__datafileFormatPK(struct soap *soap, ns1__datafileFormatPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datafileFormatPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__relatedDatafiles))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__relatedDatafiles(struct soap *soap, const char *tag, int id, ns1__relatedDatafiles *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__relatedDatafiles);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__relatedDatafiles ** SOAP_FMAC4 soap_in_PointerTons1__relatedDatafiles(struct soap *soap, const char *tag, ns1__relatedDatafiles **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__relatedDatafiles **)soap_malloc(soap, sizeof(ns1__relatedDatafiles *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__relatedDatafiles *)soap_instantiate_ns1__relatedDatafiles(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__relatedDatafiles ** p = (ns1__relatedDatafiles **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafiles, sizeof(ns1__relatedDatafiles), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__relatedDatafiles);
+	if (soap_out_PointerTons1__relatedDatafiles(soap, tag?tag:"ns1:relatedDatafiles", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__relatedDatafiles ** SOAP_FMAC4 soap_get_PointerTons1__relatedDatafiles(struct soap *soap, ns1__relatedDatafiles **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__relatedDatafiles(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__datafileInclude);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileInclude(struct soap *soap, const char *tag, int id, enum ns1__datafileInclude *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileInclude);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__datafileInclude(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__datafileInclude ** SOAP_FMAC4 soap_in_PointerTons1__datafileInclude(struct soap *soap, const char *tag, enum ns1__datafileInclude **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__datafileInclude **)soap_malloc(soap, sizeof(enum ns1__datafileInclude *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__datafileInclude(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__datafileInclude **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileInclude, sizeof(enum ns1__datafileInclude), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileInclude(struct soap *soap, enum ns1__datafileInclude *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileInclude);
+	if (soap_out_PointerTons1__datafileInclude(soap, tag?tag:"ns1:datafileInclude", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__datafileInclude ** SOAP_FMAC4 soap_get_PointerTons1__datafileInclude(struct soap *soap, enum ns1__datafileInclude **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datafileInclude(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__parameterValueType);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterValueType(struct soap *soap, const char *tag, int id, enum ns1__parameterValueType *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterValueType);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__parameterValueType(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__parameterValueType ** SOAP_FMAC4 soap_in_PointerTons1__parameterValueType(struct soap *soap, const char *tag, enum ns1__parameterValueType **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__parameterValueType **)soap_malloc(soap, sizeof(enum ns1__parameterValueType *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__parameterValueType(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__parameterValueType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValueType, sizeof(enum ns1__parameterValueType), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterValueType(struct soap *soap, enum ns1__parameterValueType *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterValueType);
+	if (soap_out_PointerTons1__parameterValueType(soap, tag?tag:"ns1:parameterValueType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__parameterValueType ** SOAP_FMAC4 soap_get_PointerTons1__parameterValueType(struct soap *soap, enum ns1__parameterValueType **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterValueType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToint(struct soap *soap, int *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_int);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToint(struct soap *soap, const char *tag, int id, int *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_int);
+	if (id < 0)
+		return soap->error;
+	return soap_out_int(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 int ** SOAP_FMAC4 soap_in_PointerToint(struct soap *soap, const char *tag, int **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (int **)soap_malloc(soap, sizeof(int *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_int(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (int **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_int, sizeof(int), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToint(struct soap *soap, int *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToint);
+	if (soap_out_PointerToint(soap, tag?tag:"int", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 int ** SOAP_FMAC4 soap_get_PointerToint(struct soap *soap, int **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerToint(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__datasetInclude);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datasetInclude(struct soap *soap, const char *tag, int id, enum ns1__datasetInclude *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datasetInclude);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__datasetInclude(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__datasetInclude ** SOAP_FMAC4 soap_in_PointerTons1__datasetInclude(struct soap *soap, const char *tag, enum ns1__datasetInclude **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__datasetInclude **)soap_malloc(soap, sizeof(enum ns1__datasetInclude *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__datasetInclude(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__datasetInclude **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetInclude, sizeof(enum ns1__datasetInclude), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datasetInclude(struct soap *soap, enum ns1__datasetInclude *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datasetInclude);
+	if (soap_out_PointerTons1__datasetInclude(soap, tag?tag:"ns1:datasetInclude", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__datasetInclude ** SOAP_FMAC4 soap_get_PointerTons1__datasetInclude(struct soap *soap, enum ns1__datasetInclude **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datasetInclude(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileFormat(struct soap *soap, ns1__datafileFormat *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileFormat))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileFormat(struct soap *soap, const char *tag, int id, ns1__datafileFormat *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileFormat);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datafileFormat ** SOAP_FMAC4 soap_in_PointerTons1__datafileFormat(struct soap *soap, const char *tag, ns1__datafileFormat **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datafileFormat **)soap_malloc(soap, sizeof(ns1__datafileFormat *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datafileFormat *)soap_instantiate_ns1__datafileFormat(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datafileFormat ** p = (ns1__datafileFormat **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormat, sizeof(ns1__datafileFormat), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileFormat(struct soap *soap, ns1__datafileFormat *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileFormat);
+	if (soap_out_PointerTons1__datafileFormat(soap, tag?tag:"ns1:datafileFormat", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datafileFormat ** SOAP_FMAC4 soap_get_PointerTons1__datafileFormat(struct soap *soap, ns1__datafileFormat **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datafileFormat(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTodouble(struct soap *soap, double *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_double);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTodouble(struct soap *soap, const char *tag, int id, double *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_double);
+	if (id < 0)
+		return soap->error;
+	return soap_out_double(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 double ** SOAP_FMAC4 soap_in_PointerTodouble(struct soap *soap, const char *tag, double **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (double **)soap_malloc(soap, sizeof(double *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_double(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (double **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_double, sizeof(double), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTodouble(struct soap *soap, double *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTodouble);
+	if (soap_out_PointerTodouble(soap, tag?tag:"double", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 double ** SOAP_FMAC4 soap_get_PointerTodouble(struct soap *soap, double **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTodouble(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTotime(struct soap *soap, time_t *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_time);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTotime(struct soap *soap, const char *tag, int id, time_t *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_time);
+	if (id < 0)
+		return soap->error;
+	return soap_out_time(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 time_t ** SOAP_FMAC4 soap_in_PointerTotime(struct soap *soap, const char *tag, time_t **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (time_t **)soap_malloc(soap, sizeof(time_t *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_time(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (time_t **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_time, sizeof(time_t), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTotime(struct soap *soap, time_t *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTotime);
+	if (soap_out_PointerTotime(soap, tag?tag:"dateTime", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 time_t ** SOAP_FMAC4 soap_get_PointerTotime(struct soap *soap, time_t **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTotime(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__advancedSearchDetails))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__advancedSearchDetails(struct soap *soap, const char *tag, int id, ns1__advancedSearchDetails *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__advancedSearchDetails);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__advancedSearchDetails ** SOAP_FMAC4 soap_in_PointerTons1__advancedSearchDetails(struct soap *soap, const char *tag, ns1__advancedSearchDetails **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__advancedSearchDetails **)soap_malloc(soap, sizeof(ns1__advancedSearchDetails *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__advancedSearchDetails *)soap_instantiate_ns1__advancedSearchDetails(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__advancedSearchDetails ** p = (ns1__advancedSearchDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__advancedSearchDetails, sizeof(ns1__advancedSearchDetails), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__advancedSearchDetails);
+	if (soap_out_PointerTons1__advancedSearchDetails(soap, tag?tag:"ns1:advancedSearchDetails", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__advancedSearchDetails ** SOAP_FMAC4 soap_get_PointerTons1__advancedSearchDetails(struct soap *soap, ns1__advancedSearchDetails **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__advancedSearchDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keyword(struct soap *soap, ns1__keyword *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__keyword))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keyword(struct soap *soap, const char *tag, int id, ns1__keyword *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keyword);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__keyword ** SOAP_FMAC4 soap_in_PointerTons1__keyword(struct soap *soap, const char *tag, ns1__keyword **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__keyword **)soap_malloc(soap, sizeof(ns1__keyword *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__keyword *)soap_instantiate_ns1__keyword(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__keyword ** p = (ns1__keyword **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keyword, sizeof(ns1__keyword), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keyword(struct soap *soap, ns1__keyword *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keyword);
+	if (soap_out_PointerTons1__keyword(soap, tag?tag:"ns1:keyword", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__keyword ** SOAP_FMAC4 soap_get_PointerTons1__keyword(struct soap *soap, ns1__keyword **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__keyword(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__icatAuthorisation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__icatAuthorisation(struct soap *soap, const char *tag, int id, ns1__icatAuthorisation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__icatAuthorisation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__icatAuthorisation ** SOAP_FMAC4 soap_in_PointerTons1__icatAuthorisation(struct soap *soap, const char *tag, ns1__icatAuthorisation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__icatAuthorisation **)soap_malloc(soap, sizeof(ns1__icatAuthorisation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__icatAuthorisation *)soap_instantiate_ns1__icatAuthorisation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__icatAuthorisation ** p = (ns1__icatAuthorisation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatAuthorisation, sizeof(ns1__icatAuthorisation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__icatAuthorisation);
+	if (soap_out_PointerTons1__icatAuthorisation(soap, tag?tag:"ns1:icatAuthorisation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__icatAuthorisation ** SOAP_FMAC4 soap_get_PointerTons1__icatAuthorisation(struct soap *soap, ns1__icatAuthorisation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__icatAuthorisation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__elementType(struct soap *soap, enum ns1__elementType *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__elementType);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__elementType(struct soap *soap, const char *tag, int id, enum ns1__elementType *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__elementType);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__elementType(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__elementType ** SOAP_FMAC4 soap_in_PointerTons1__elementType(struct soap *soap, const char *tag, enum ns1__elementType **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__elementType **)soap_malloc(soap, sizeof(enum ns1__elementType *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__elementType(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__elementType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__elementType, sizeof(enum ns1__elementType), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__elementType(struct soap *soap, enum ns1__elementType *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__elementType);
+	if (soap_out_PointerTons1__elementType(soap, tag?tag:"ns1:elementType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__elementType ** SOAP_FMAC4 soap_get_PointerTons1__elementType(struct soap *soap, enum ns1__elementType **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__elementType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datasetParameter(struct soap *soap, ns1__datasetParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datasetParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datasetParameter(struct soap *soap, const char *tag, int id, ns1__datasetParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datasetParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datasetParameter ** SOAP_FMAC4 soap_in_PointerTons1__datasetParameter(struct soap *soap, const char *tag, ns1__datasetParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datasetParameter **)soap_malloc(soap, sizeof(ns1__datasetParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datasetParameter *)soap_instantiate_ns1__datasetParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datasetParameter ** p = (ns1__datasetParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameter, sizeof(ns1__datasetParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datasetParameter(struct soap *soap, ns1__datasetParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datasetParameter);
+	if (soap_out_PointerTons1__datasetParameter(soap, tag?tag:"ns1:datasetParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datasetParameter ** SOAP_FMAC4 soap_get_PointerTons1__datasetParameter(struct soap *soap, ns1__datasetParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datasetParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__sampleParameterPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__sampleParameterPK(struct soap *soap, const char *tag, int id, ns1__sampleParameterPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__sampleParameterPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__sampleParameterPK ** SOAP_FMAC4 soap_in_PointerTons1__sampleParameterPK(struct soap *soap, const char *tag, ns1__sampleParameterPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__sampleParameterPK **)soap_malloc(soap, sizeof(ns1__sampleParameterPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__sampleParameterPK *)soap_instantiate_ns1__sampleParameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__sampleParameterPK ** p = (ns1__sampleParameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameterPK, sizeof(ns1__sampleParameterPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__sampleParameterPK);
+	if (soap_out_PointerTons1__sampleParameterPK(soap, tag?tag:"ns1:sampleParameterPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__sampleParameterPK ** SOAP_FMAC4 soap_get_PointerTons1__sampleParameterPK(struct soap *soap, ns1__sampleParameterPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__sampleParameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigator(struct soap *soap, ns1__investigator *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__investigator))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigator(struct soap *soap, const char *tag, int id, ns1__investigator *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigator);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__investigator ** SOAP_FMAC4 soap_in_PointerTons1__investigator(struct soap *soap, const char *tag, ns1__investigator **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__investigator **)soap_malloc(soap, sizeof(ns1__investigator *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__investigator *)soap_instantiate_ns1__investigator(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__investigator ** p = (ns1__investigator **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigator, sizeof(ns1__investigator), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigator(struct soap *soap, ns1__investigator *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigator);
+	if (soap_out_PointerTons1__investigator(soap, tag?tag:"ns1:investigator", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__investigator ** SOAP_FMAC4 soap_get_PointerTons1__investigator(struct soap *soap, ns1__investigator **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__investigator(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterLogicalCondition))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterLogicalCondition(struct soap *soap, const char *tag, int id, ns1__parameterLogicalCondition *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterLogicalCondition);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__parameterLogicalCondition ** SOAP_FMAC4 soap_in_PointerTons1__parameterLogicalCondition(struct soap *soap, const char *tag, ns1__parameterLogicalCondition **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__parameterLogicalCondition **)soap_malloc(soap, sizeof(ns1__parameterLogicalCondition *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__parameterLogicalCondition *)soap_instantiate_ns1__parameterLogicalCondition(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__parameterLogicalCondition ** p = (ns1__parameterLogicalCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterLogicalCondition);
+	if (soap_out_PointerTons1__parameterLogicalCondition(soap, tag?tag:"ns1:parameterLogicalCondition", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__parameterLogicalCondition ** SOAP_FMAC4 soap_get_PointerTons1__parameterLogicalCondition(struct soap *soap, ns1__parameterLogicalCondition **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterLogicalCondition(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileParameterPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileParameterPK(struct soap *soap, const char *tag, int id, ns1__datafileParameterPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileParameterPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datafileParameterPK ** SOAP_FMAC4 soap_in_PointerTons1__datafileParameterPK(struct soap *soap, const char *tag, ns1__datafileParameterPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datafileParameterPK **)soap_malloc(soap, sizeof(ns1__datafileParameterPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datafileParameterPK *)soap_instantiate_ns1__datafileParameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datafileParameterPK ** p = (ns1__datafileParameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameterPK, sizeof(ns1__datafileParameterPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileParameterPK);
+	if (soap_out_PointerTons1__datafileParameterPK(soap, tag?tag:"ns1:datafileParameterPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datafileParameterPK ** SOAP_FMAC4 soap_get_PointerTons1__datafileParameterPK(struct soap *soap, ns1__datafileParameterPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datafileParameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__publication(struct soap *soap, ns1__publication *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__publication))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__publication(struct soap *soap, const char *tag, int id, ns1__publication *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__publication);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__publication ** SOAP_FMAC4 soap_in_PointerTons1__publication(struct soap *soap, const char *tag, ns1__publication **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__publication **)soap_malloc(soap, sizeof(ns1__publication *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__publication *)soap_instantiate_ns1__publication(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__publication ** p = (ns1__publication **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__publication, sizeof(ns1__publication), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__publication(struct soap *soap, ns1__publication *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__publication);
+	if (soap_out_PointerTons1__publication(soap, tag?tag:"ns1:publication", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__publication ** SOAP_FMAC4 soap_get_PointerTons1__publication(struct soap *soap, ns1__publication **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__publication(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datasetParameterPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datasetParameterPK(struct soap *soap, const char *tag, int id, ns1__datasetParameterPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datasetParameterPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datasetParameterPK ** SOAP_FMAC4 soap_in_PointerTons1__datasetParameterPK(struct soap *soap, const char *tag, ns1__datasetParameterPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datasetParameterPK **)soap_malloc(soap, sizeof(ns1__datasetParameterPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datasetParameterPK *)soap_instantiate_ns1__datasetParameterPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datasetParameterPK ** p = (ns1__datasetParameterPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameterPK, sizeof(ns1__datasetParameterPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datasetParameterPK);
+	if (soap_out_PointerTons1__datasetParameterPK(soap, tag?tag:"ns1:datasetParameterPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datasetParameterPK ** SOAP_FMAC4 soap_get_PointerTons1__datasetParameterPK(struct soap *soap, ns1__datasetParameterPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datasetParameterPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__investigationInclude);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigationInclude(struct soap *soap, const char *tag, int id, enum ns1__investigationInclude *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigationInclude);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__investigationInclude(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__investigationInclude ** SOAP_FMAC4 soap_in_PointerTons1__investigationInclude(struct soap *soap, const char *tag, enum ns1__investigationInclude **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__investigationInclude **)soap_malloc(soap, sizeof(enum ns1__investigationInclude *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__investigationInclude(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__investigationInclude **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigationInclude, sizeof(enum ns1__investigationInclude), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigationInclude(struct soap *soap, enum ns1__investigationInclude *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigationInclude);
+	if (soap_out_PointerTons1__investigationInclude(soap, tag?tag:"ns1:investigationInclude", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__investigationInclude ** SOAP_FMAC4 soap_get_PointerTons1__investigationInclude(struct soap *soap, enum ns1__investigationInclude **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__investigationInclude(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keywordDetails(struct soap *soap, ns1__keywordDetails *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__keywordDetails))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keywordDetails(struct soap *soap, const char *tag, int id, ns1__keywordDetails *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keywordDetails);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__keywordDetails ** SOAP_FMAC4 soap_in_PointerTons1__keywordDetails(struct soap *soap, const char *tag, ns1__keywordDetails **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__keywordDetails **)soap_malloc(soap, sizeof(ns1__keywordDetails *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__keywordDetails *)soap_instantiate_ns1__keywordDetails(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__keywordDetails ** p = (ns1__keywordDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordDetails, sizeof(ns1__keywordDetails), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keywordDetails(struct soap *soap, ns1__keywordDetails *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keywordDetails);
+	if (soap_out_PointerTons1__keywordDetails(soap, tag?tag:"ns1:keywordDetails", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__keywordDetails ** SOAP_FMAC4 soap_get_PointerTons1__keywordDetails(struct soap *soap, ns1__keywordDetails **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__keywordDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToxsd__anyType(struct soap *soap, xsd__anyType *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_xsd__anyType))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToxsd__anyType(struct soap *soap, const char *tag, int id, xsd__anyType *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_xsd__anyType);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 xsd__anyType ** SOAP_FMAC4 soap_in_PointerToxsd__anyType(struct soap *soap, const char *tag, xsd__anyType **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (xsd__anyType **)soap_malloc(soap, sizeof(xsd__anyType *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (xsd__anyType *)soap_instantiate_xsd__anyType(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	xsd__anyType ** p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__anyType, sizeof(xsd__anyType), 0);
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__boolean, sizeof(xsd__boolean), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__dateTime, sizeof(xsd__dateTime), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__double, sizeof(xsd__double), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__float, sizeof(xsd__float), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__int, sizeof(xsd__int), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__long, sizeof(xsd__long), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_xsd__string, sizeof(xsd__string), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValueType_, sizeof(ns1__parameterValueType_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileInclude_, sizeof(ns1__datafileInclude_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__comparisonOperator_, sizeof(ns1__comparisonOperator_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterType_, sizeof(ns1__parameterType_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordType_, sizeof(ns1__keywordType_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigationInclude_, sizeof(ns1__investigationInclude_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logicalOperator_, sizeof(ns1__logicalOperator_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__elementType_, sizeof(ns1__elementType_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetInclude_, sizeof(ns1__datasetInclude_), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypes, sizeof(ns1__listDatasetTypes), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetTypesResponse, sizeof(ns1__listDatasetTypesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__SessionException, sizeof(ns1__SessionException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleName, sizeof(ns1__searchSamplesBySampleName), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchSamplesBySampleNameResponse, sizeof(ns1__searchSamplesBySampleNameResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__entityBaseBean, sizeof(ns1__entityBaseBean), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__entityPrimaryKeyBaseBean, sizeof(ns1__entityPrimaryKeyBaseBean), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSample, sizeof(ns1__removeSample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleResponse, sizeof(ns1__removeSampleResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__InsufficientPrivilegesException, sizeof(ns1__InsufficientPrivilegesException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchObjectFoundException, sizeof(ns1__NoSuchObjectFoundException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstruments, sizeof(ns1__listInstruments), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInstrumentsResponse, sizeof(ns1__listInstrumentsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFile, sizeof(ns1__createDataFile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFileResponse, sizeof(ns1__createDataFileResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ValidationException, sizeof(ns1__ValidationException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySample, sizeof(ns1__modifySample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleResponse, sizeof(ns1__modifySampleResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparators, sizeof(ns1__searchByParameterComparators), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterCondition, sizeof(ns1__parameterCondition), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterValued, sizeof(ns1__parameterValued), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorsResponse, sizeof(ns1__searchByParameterComparatorsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ParameterSearchException, sizeof(ns1__ParameterSearchException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparators, sizeof(ns1__searchDatafilesByParameterComparators), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorsResponse, sizeof(ns1__searchDatafilesByParameterComparatorsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFile, sizeof(ns1__removeDataFile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileResponse, sizeof(ns1__removeDataFileResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisation, sizeof(ns1__removeAuthorisation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeAuthorisationResponse, sizeof(ns1__removeAuthorisationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameters, sizeof(ns1__addDataFileParameters), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParametersResponse, sizeof(ns1__addDataFileParametersResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCycles, sizeof(ns1__listFacilityCycles), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listFacilityCyclesResponse, sizeof(ns1__listFacilityCyclesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logout, sizeof(ns1__logout), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__logoutResponse, sizeof(ns1__logoutResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDataset, sizeof(ns1__downloadDataset), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatasetResponse, sizeof(ns1__downloadDatasetResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalId, sizeof(ns1__getFacilityUserByFederalId), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFederalIdResponse, sizeof(ns1__getFacilityUserByFederalIdResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigation, sizeof(ns1__removeInvestigation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigationResponse, sizeof(ns1__removeInvestigationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigator, sizeof(ns1__removeInvestigator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeInvestigatorResponse, sizeof(ns1__removeInvestigatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeyword, sizeof(ns1__removeKeyword), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeKeywordResponse, sizeof(ns1__removeKeywordResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigation, sizeof(ns1__deleteInvestigation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigationResponse, sizeof(ns1__deleteInvestigationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSets, sizeof(ns1__createDataSets), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetsResponse, sizeof(ns1__createDataSetsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublication, sizeof(ns1__removePublication), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removePublicationResponse, sizeof(ns1__removePublicationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywords, sizeof(ns1__getAllKeywords), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAllKeywordsResponse, sizeof(ns1__getAllKeywordsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetails, sizeof(ns1__getUserDetails), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getUserDetailsResponse, sizeof(ns1__getUserDetailsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__userDetails, sizeof(ns1__userDetails), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__NoSuchUserException, sizeof(ns1__NoSuchUserException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafiles, sizeof(ns1__downloadDatafiles), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafilesResponse, sizeof(ns1__downloadDatafilesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSet, sizeof(ns1__modifyDataSet), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetResponse, sizeof(ns1__modifyDataSetResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameter, sizeof(ns1__addSampleParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleParameterResponse, sizeof(ns1__addSampleParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserId, sizeof(ns1__getFacilityUserByFacilityUserId), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getFacilityUserByFacilityUserIdResponse, sizeof(ns1__getFacilityUserByFacilityUserIdResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccess, sizeof(ns1__checkDatafileDownloadAccess), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatafileDownloadAccessResponse, sizeof(ns1__checkDatafileDownloadAccessResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadInfo, sizeof(ns1__downloadInfo), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFile, sizeof(ns1__deleteDataFile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileResponse, sizeof(ns1__deleteDataFileResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurname, sizeof(ns1__searchByUserSurname), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnameResponse, sizeof(ns1__searchByUserSurnameResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePagination, sizeof(ns1__searchByUserSurnamePagination), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserSurnamePaginationResponse, sizeof(ns1__searchByUserSurnamePaginationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccess, sizeof(ns1__checkDatasetDownloadAccess), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__checkDatasetDownloadAccessResponse, sizeof(ns1__checkDatasetDownloadAccessResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywords, sizeof(ns1__searchByKeywords), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsResponse, sizeof(ns1__searchByKeywordsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAll, sizeof(ns1__searchByKeywordsAll), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordDetails, sizeof(ns1__keywordDetails), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByKeywordsAllResponse, sizeof(ns1__searchByKeywordsAllResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigations, sizeof(ns1__getMyInvestigations), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsResponse, sizeof(ns1__getMyInvestigationsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludes, sizeof(ns1__getMyInvestigationsIncludes), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesResponse, sizeof(ns1__getMyInvestigationsIncludesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPagination, sizeof(ns1__getMyInvestigationsIncludesPagination), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getMyInvestigationsIncludesPaginationResponse, sizeof(ns1__getMyInvestigationsIncludesPaginationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameter, sizeof(ns1__removeDataSetParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetParameterResponse, sizeof(ns1__removeDataSetParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublication, sizeof(ns1__modifyPublication), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyPublicationResponse, sizeof(ns1__modifyPublicationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserID, sizeof(ns1__searchByUserID), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDResponse, sizeof(ns1__searchByUserIDResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPagination, sizeof(ns1__searchByUserIDPagination), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByUserIDPaginationResponse, sizeof(ns1__searchByUserIDPaginationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameter, sizeof(ns1__removeDataFileParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataFileParameterResponse, sizeof(ns1__removeDataFileParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludes, sizeof(ns1__getInvestigationsIncludes), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationsIncludesResponse, sizeof(ns1__getInvestigationsIncludesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparator, sizeof(ns1__searchDatafilesByParameterComparator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatafilesByParameterComparatorResponse, sizeof(ns1__searchDatafilesByParameterComparatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSet, sizeof(ns1__deleteDataSet), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetResponse, sizeof(ns1__deleteDataSetResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValid, sizeof(ns1__isSessionValid), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__isSessionValidResponse, sizeof(ns1__isSessionValidResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperator, sizeof(ns1__searchByParameterOperator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterOperatorResponse, sizeof(ns1__searchByParameterOperatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafiles, sizeof(ns1__getDatafiles), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafilesResponse, sizeof(ns1__getDatafilesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersion, sizeof(ns1__getICATAPIVersion), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getICATAPIVersionResponse, sizeof(ns1__getICATAPIVersionResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigator, sizeof(ns1__deleteInvestigator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteInvestigatorResponse, sizeof(ns1__deleteInvestigatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigator, sizeof(ns1__addInvestigator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addInvestigatorResponse, sizeof(ns1__addInvestigatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSet, sizeof(ns1__createDataSet), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataSetResponse, sizeof(ns1__createDataSetResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparator, sizeof(ns1__searchDatasetsByParameterComparator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorResponse, sizeof(ns1__searchDatasetsByParameterComparatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameter, sizeof(ns1__removeSampleParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeSampleParameterResponse, sizeof(ns1__removeSampleParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameter, sizeof(ns1__deleteDataSetParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataSetParameterResponse, sizeof(ns1__deleteDataSetParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSample, sizeof(ns1__setDataSetSample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__setDataSetSampleResponse, sizeof(ns1__setDataSetSampleResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparators, sizeof(ns1__searchDatasetsByParameterComparators), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsByParameterComparatorsResponse, sizeof(ns1__searchDatasetsByParameterComparatorsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafile, sizeof(ns1__downloadDatafile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadDatafileResponse, sizeof(ns1__downloadDatafileResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUser, sizeof(ns1__getKeywordsForUser), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserResponse, sizeof(ns1__getKeywordsForUserResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMax, sizeof(ns1__getKeywordsForUserStartWithMax), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserStartWithMaxResponse, sizeof(ns1__getKeywordsForUserStartWithMaxResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMax, sizeof(ns1__getKeywordsForUserMax), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserMaxResponse, sizeof(ns1__getKeywordsForUserMaxResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserType, sizeof(ns1__getKeywordsForUserType), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getKeywordsForUserTypeResponse, sizeof(ns1__getKeywordsForUserTypeResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypes, sizeof(ns1__listInvestigationTypes), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listInvestigationTypesResponse, sizeof(ns1__listInvestigationTypesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameter, sizeof(ns1__modifyDataSetParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataSetParameterResponse, sizeof(ns1__modifyDataSetParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSet, sizeof(ns1__removeDataSet), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__removeDataSetResponse, sizeof(ns1__removeDataSetResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisations, sizeof(ns1__getAuthorisations), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getAuthorisationsResponse, sizeof(ns1__getAuthorisationsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeyword, sizeof(ns1__addKeyword), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addKeywordResponse, sizeof(ns1__addKeywordResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigation, sizeof(ns1__modifyInvestigation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigationResponse, sizeof(ns1__modifyInvestigationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatus, sizeof(ns1__listDatasetStatus), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatasetStatusResponse, sizeof(ns1__listDatasetStatusResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSample, sizeof(ns1__deleteSample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleResponse, sizeof(ns1__deleteSampleResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeyword, sizeof(ns1__deleteKeyword), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteKeywordResponse, sizeof(ns1__deleteKeywordResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameters, sizeof(ns1__addDataSetParameters), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParametersResponse, sizeof(ns1__addDataSetParametersResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumber, sizeof(ns1__searchByRunNumber), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberResponse, sizeof(ns1__searchByRunNumberResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPagination, sizeof(ns1__searchByRunNumberPagination), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByRunNumberPaginationResponse, sizeof(ns1__searchByRunNumberPaginationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvanced, sizeof(ns1__searchByAdvanced), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__advancedSearchDetails, sizeof(ns1__advancedSearchDetails), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedResponse, sizeof(ns1__searchByAdvancedResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPagination, sizeof(ns1__searchByAdvancedPagination), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByAdvancedPaginationResponse, sizeof(ns1__searchByAdvancedPaginationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormats, sizeof(ns1__listDatafileFormats), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listDatafileFormatsResponse, sizeof(ns1__listDatafileFormatsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameter, sizeof(ns1__modifySampleParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifySampleParameterResponse, sizeof(ns1__modifySampleParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparator, sizeof(ns1__searchByParameterComparator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchByParameterComparatorResponse, sizeof(ns1__searchByParameterComparatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigator, sizeof(ns1__modifyInvestigator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyInvestigatorResponse, sizeof(ns1__modifyInvestigatorResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFiles, sizeof(ns1__createDataFiles), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createDataFilesResponse, sizeof(ns1__createDataFilesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameter, sizeof(ns1__addDataSetParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataSetParameterResponse, sizeof(ns1__addDataSetParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisation, sizeof(ns1__addAuthorisation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addAuthorisationResponse, sizeof(ns1__addAuthorisationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSample, sizeof(ns1__addSample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addSampleResponse, sizeof(ns1__addSampleResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetime, sizeof(ns1__loginLifetime), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginLifetimeResponse, sizeof(ns1__loginLifetimeResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__login, sizeof(ns1__login), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__loginResponse, sizeof(ns1__loginResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublication, sizeof(ns1__deletePublication), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deletePublicationResponse, sizeof(ns1__deletePublicationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisation, sizeof(ns1__deleteAuthorisation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteAuthorisationResponse, sizeof(ns1__deleteAuthorisationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisation, sizeof(ns1__updateAuthorisation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__updateAuthorisationResponse, sizeof(ns1__updateAuthorisationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludes, sizeof(ns1__getDatasetIncludes), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetIncludesResponse, sizeof(ns1__getDatasetIncludesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDataset, sizeof(ns1__getDataset), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetResponse, sizeof(ns1__getDatasetResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRoles, sizeof(ns1__listRoles), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listRolesResponse, sizeof(ns1__listRolesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadata, sizeof(ns1__ingestMetadata), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ingestMetadataResponse, sizeof(ns1__ingestMetadataResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__ICATAPIException, sizeof(ns1__ICATAPIException), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafile, sizeof(ns1__getDatafile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatafileResponse, sizeof(ns1__getDatafileResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFile, sizeof(ns1__modifyDataFile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileResponse, sizeof(ns1__modifyDataFileResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludes, sizeof(ns1__getInvestigationIncludes), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationIncludesResponse, sizeof(ns1__getInvestigationIncludesResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigation, sizeof(ns1__getInvestigation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getInvestigationResponse, sizeof(ns1__getInvestigationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameter, sizeof(ns1__deleteDataFileParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteDataFileParameterResponse, sizeof(ns1__deleteDataFileParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublication, sizeof(ns1__addPublication), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addPublicationResponse, sizeof(ns1__addPublicationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigation, sizeof(ns1__createInvestigation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__createInvestigationResponse, sizeof(ns1__createInvestigationResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySample, sizeof(ns1__searchDatasetsBySample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__searchDatasetsBySampleResponse, sizeof(ns1__searchDatasetsBySampleResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameter, sizeof(ns1__addDataFileParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__addDataFileParameterResponse, sizeof(ns1__addDataFileParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameter, sizeof(ns1__deleteSampleParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__deleteSampleParameterResponse, sizeof(ns1__deleteSampleParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameter, sizeof(ns1__modifyDataFileParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__modifyDataFileParameterResponse, sizeof(ns1__modifyDataFileParameterResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParameters, sizeof(ns1__listParameters), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__listParametersResponse, sizeof(ns1__listParametersResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasets, sizeof(ns1__getDatasets), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__getDatasetsResponse, sizeof(ns1__getDatasetsResponse), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sample, sizeof(ns1__sample), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameter, sizeof(ns1__sampleParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameterPK, sizeof(ns1__sampleParameterPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatRole, sizeof(ns1__icatRole), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafile, sizeof(ns1__datafile), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormat, sizeof(ns1__datafileFormat), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileFormatPK, sizeof(ns1__datafileFormatPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameter, sizeof(ns1__datafileParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameterPK, sizeof(ns1__datafileParameterPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafiles, sizeof(ns1__relatedDatafiles), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__relatedDatafilesPK, sizeof(ns1__relatedDatafilesPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameter, sizeof(ns1__parameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterPK, sizeof(ns1__parameterPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigation, sizeof(ns1__investigation), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__dataset, sizeof(ns1__dataset), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameter, sizeof(ns1__datasetParameter), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datasetParameterPK, sizeof(ns1__datasetParameterPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityCycle, sizeof(ns1__facilityCycle), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigator, sizeof(ns1__investigator), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityUser, sizeof(ns1__facilityUser), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigatorPK, sizeof(ns1__investigatorPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keyword, sizeof(ns1__keyword), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordPK, sizeof(ns1__keywordPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__publication, sizeof(ns1__publication), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shift, sizeof(ns1__shift), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__shiftPK, sizeof(ns1__shiftPK), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterLogicalCondition, sizeof(ns1__parameterLogicalCondition), 0);
+		}
+		if (!p && soap->error == SOAP_HREF)
+		{	soap->error = SOAP_OK;
+			p = (xsd__anyType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatAuthorisation, sizeof(ns1__icatAuthorisation), 0);
+		}
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToxsd__anyType(struct soap *soap, xsd__anyType *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToxsd__anyType);
+	if (soap_out_PointerToxsd__anyType(soap, tag?tag:"xsd:anyType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 xsd__anyType ** SOAP_FMAC4 soap_get_PointerToxsd__anyType(struct soap *soap, xsd__anyType **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerToxsd__anyType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__downloadInfo(struct soap *soap, ns1__downloadInfo *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__downloadInfo))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__downloadInfo(struct soap *soap, const char *tag, int id, ns1__downloadInfo *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__downloadInfo);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__downloadInfo ** SOAP_FMAC4 soap_in_PointerTons1__downloadInfo(struct soap *soap, const char *tag, ns1__downloadInfo **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__downloadInfo **)soap_malloc(soap, sizeof(ns1__downloadInfo *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__downloadInfo *)soap_instantiate_ns1__downloadInfo(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__downloadInfo ** p = (ns1__downloadInfo **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__downloadInfo, sizeof(ns1__downloadInfo), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__downloadInfo(struct soap *soap, ns1__downloadInfo *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__downloadInfo);
+	if (soap_out_PointerTons1__downloadInfo(soap, tag?tag:"ns1:downloadInfo", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__downloadInfo ** SOAP_FMAC4 soap_get_PointerTons1__downloadInfo(struct soap *soap, ns1__downloadInfo **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__downloadInfo(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__sampleParameter(struct soap *soap, ns1__sampleParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__sampleParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__sampleParameter(struct soap *soap, const char *tag, int id, ns1__sampleParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__sampleParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__sampleParameter ** SOAP_FMAC4 soap_in_PointerTons1__sampleParameter(struct soap *soap, const char *tag, ns1__sampleParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__sampleParameter **)soap_malloc(soap, sizeof(ns1__sampleParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__sampleParameter *)soap_instantiate_ns1__sampleParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__sampleParameter ** p = (ns1__sampleParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sampleParameter, sizeof(ns1__sampleParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__sampleParameter(struct soap *soap, ns1__sampleParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__sampleParameter);
+	if (soap_out_PointerTons1__sampleParameter(soap, tag?tag:"ns1:sampleParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__sampleParameter ** SOAP_FMAC4 soap_get_PointerTons1__sampleParameter(struct soap *soap, ns1__sampleParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__sampleParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__userDetails(struct soap *soap, ns1__userDetails *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__userDetails))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__userDetails(struct soap *soap, const char *tag, int id, ns1__userDetails *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__userDetails);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__userDetails ** SOAP_FMAC4 soap_in_PointerTons1__userDetails(struct soap *soap, const char *tag, ns1__userDetails **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__userDetails **)soap_malloc(soap, sizeof(ns1__userDetails *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__userDetails *)soap_instantiate_ns1__userDetails(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__userDetails ** p = (ns1__userDetails **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__userDetails, sizeof(ns1__userDetails), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__userDetails(struct soap *soap, ns1__userDetails *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__userDetails);
+	if (soap_out_PointerTons1__userDetails(soap, tag?tag:"ns1:userDetails", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__userDetails ** SOAP_FMAC4 soap_get_PointerTons1__userDetails(struct soap *soap, ns1__userDetails **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__userDetails(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keywordType(struct soap *soap, enum ns1__keywordType *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__keywordType);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keywordType(struct soap *soap, const char *tag, int id, enum ns1__keywordType *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keywordType);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__keywordType(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__keywordType ** SOAP_FMAC4 soap_in_PointerTons1__keywordType(struct soap *soap, const char *tag, enum ns1__keywordType **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__keywordType **)soap_malloc(soap, sizeof(enum ns1__keywordType *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__keywordType(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__keywordType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordType, sizeof(enum ns1__keywordType), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keywordType(struct soap *soap, enum ns1__keywordType *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keywordType);
+	if (soap_out_PointerTons1__keywordType(soap, tag?tag:"ns1:keywordType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__keywordType ** SOAP_FMAC4 soap_get_PointerTons1__keywordType(struct soap *soap, enum ns1__keywordType **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__keywordType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__dataset(struct soap *soap, ns1__dataset *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__dataset))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__dataset(struct soap *soap, const char *tag, int id, ns1__dataset *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__dataset);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__dataset ** SOAP_FMAC4 soap_in_PointerTons1__dataset(struct soap *soap, const char *tag, ns1__dataset **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__dataset **)soap_malloc(soap, sizeof(ns1__dataset *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__dataset *)soap_instantiate_ns1__dataset(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__dataset ** p = (ns1__dataset **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__dataset, sizeof(ns1__dataset), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__dataset(struct soap *soap, ns1__dataset *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__dataset);
+	if (soap_out_PointerTons1__dataset(soap, tag?tag:"ns1:dataset", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__dataset ** SOAP_FMAC4 soap_get_PointerTons1__dataset(struct soap *soap, ns1__dataset **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__dataset(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__keywordPK(struct soap *soap, ns1__keywordPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__keywordPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__keywordPK(struct soap *soap, const char *tag, int id, ns1__keywordPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__keywordPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__keywordPK ** SOAP_FMAC4 soap_in_PointerTons1__keywordPK(struct soap *soap, const char *tag, ns1__keywordPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__keywordPK **)soap_malloc(soap, sizeof(ns1__keywordPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__keywordPK *)soap_instantiate_ns1__keywordPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__keywordPK ** p = (ns1__keywordPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__keywordPK, sizeof(ns1__keywordPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__keywordPK(struct soap *soap, ns1__keywordPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__keywordPK);
+	if (soap_out_PointerTons1__keywordPK(soap, tag?tag:"ns1:keywordPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__keywordPK ** SOAP_FMAC4 soap_get_PointerTons1__keywordPK(struct soap *soap, ns1__keywordPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__keywordPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigatorPK(struct soap *soap, ns1__investigatorPK *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__investigatorPK))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigatorPK(struct soap *soap, const char *tag, int id, ns1__investigatorPK *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigatorPK);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__investigatorPK ** SOAP_FMAC4 soap_in_PointerTons1__investigatorPK(struct soap *soap, const char *tag, ns1__investigatorPK **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__investigatorPK **)soap_malloc(soap, sizeof(ns1__investigatorPK *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__investigatorPK *)soap_instantiate_ns1__investigatorPK(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__investigatorPK ** p = (ns1__investigatorPK **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigatorPK, sizeof(ns1__investigatorPK), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigatorPK(struct soap *soap, ns1__investigatorPK *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigatorPK);
+	if (soap_out_PointerTons1__investigatorPK(soap, tag?tag:"ns1:investigatorPK", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__investigatorPK ** SOAP_FMAC4 soap_get_PointerTons1__investigatorPK(struct soap *soap, ns1__investigatorPK **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__investigatorPK(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__facilityUser(struct soap *soap, ns1__facilityUser *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__facilityUser))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__facilityUser(struct soap *soap, const char *tag, int id, ns1__facilityUser *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__facilityUser);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__facilityUser ** SOAP_FMAC4 soap_in_PointerTons1__facilityUser(struct soap *soap, const char *tag, ns1__facilityUser **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__facilityUser **)soap_malloc(soap, sizeof(ns1__facilityUser *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__facilityUser *)soap_instantiate_ns1__facilityUser(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__facilityUser ** p = (ns1__facilityUser **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityUser, sizeof(ns1__facilityUser), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__facilityUser(struct soap *soap, ns1__facilityUser *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__facilityUser);
+	if (soap_out_PointerTons1__facilityUser(soap, tag?tag:"ns1:facilityUser", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__facilityUser ** SOAP_FMAC4 soap_get_PointerTons1__facilityUser(struct soap *soap, ns1__facilityUser **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__facilityUser(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__facilityCycle(struct soap *soap, ns1__facilityCycle *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__facilityCycle))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__facilityCycle(struct soap *soap, const char *tag, int id, ns1__facilityCycle *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__facilityCycle);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__facilityCycle ** SOAP_FMAC4 soap_in_PointerTons1__facilityCycle(struct soap *soap, const char *tag, ns1__facilityCycle **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__facilityCycle **)soap_malloc(soap, sizeof(ns1__facilityCycle *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__facilityCycle *)soap_instantiate_ns1__facilityCycle(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__facilityCycle ** p = (ns1__facilityCycle **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__facilityCycle, sizeof(ns1__facilityCycle), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__facilityCycle(struct soap *soap, ns1__facilityCycle *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__facilityCycle);
+	if (soap_out_PointerTons1__facilityCycle(soap, tag?tag:"ns1:facilityCycle", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__facilityCycle ** SOAP_FMAC4 soap_get_PointerTons1__facilityCycle(struct soap *soap, ns1__facilityCycle **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__facilityCycle(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafileParameter(struct soap *soap, ns1__datafileParameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafileParameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafileParameter(struct soap *soap, const char *tag, int id, ns1__datafileParameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafileParameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datafileParameter ** SOAP_FMAC4 soap_in_PointerTons1__datafileParameter(struct soap *soap, const char *tag, ns1__datafileParameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datafileParameter **)soap_malloc(soap, sizeof(ns1__datafileParameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datafileParameter *)soap_instantiate_ns1__datafileParameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datafileParameter ** p = (ns1__datafileParameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafileParameter, sizeof(ns1__datafileParameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafileParameter(struct soap *soap, ns1__datafileParameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafileParameter);
+	if (soap_out_PointerTons1__datafileParameter(soap, tag?tag:"ns1:datafileParameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datafileParameter ** SOAP_FMAC4 soap_get_PointerTons1__datafileParameter(struct soap *soap, ns1__datafileParameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datafileParameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__investigation(struct soap *soap, ns1__investigation *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__investigation))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__investigation(struct soap *soap, const char *tag, int id, ns1__investigation *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__investigation);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__investigation ** SOAP_FMAC4 soap_in_PointerTons1__investigation(struct soap *soap, const char *tag, ns1__investigation **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__investigation **)soap_malloc(soap, sizeof(ns1__investigation *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__investigation *)soap_instantiate_ns1__investigation(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__investigation ** p = (ns1__investigation **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__investigation, sizeof(ns1__investigation), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__investigation(struct soap *soap, ns1__investigation *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__investigation);
+	if (soap_out_PointerTons1__investigation(soap, tag?tag:"ns1:investigation", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__investigation ** SOAP_FMAC4 soap_get_PointerTons1__investigation(struct soap *soap, ns1__investigation **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__investigation(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterType(struct soap *soap, enum ns1__parameterType *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_ns1__parameterType);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterType(struct soap *soap, const char *tag, int id, enum ns1__parameterType *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterType);
+	if (id < 0)
+		return soap->error;
+	return soap_out_ns1__parameterType(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 enum ns1__parameterType ** SOAP_FMAC4 soap_in_PointerTons1__parameterType(struct soap *soap, const char *tag, enum ns1__parameterType **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (enum ns1__parameterType **)soap_malloc(soap, sizeof(enum ns1__parameterType *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_ns1__parameterType(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (enum ns1__parameterType **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterType, sizeof(enum ns1__parameterType), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterType(struct soap *soap, enum ns1__parameterType *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterType);
+	if (soap_out_PointerTons1__parameterType(soap, tag?tag:"ns1:parameterType", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 enum ns1__parameterType ** SOAP_FMAC4 soap_get_PointerTons1__parameterType(struct soap *soap, enum ns1__parameterType **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterType(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameter(struct soap *soap, ns1__parameter *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameter))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameter(struct soap *soap, const char *tag, int id, ns1__parameter *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameter);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__parameter ** SOAP_FMAC4 soap_in_PointerTons1__parameter(struct soap *soap, const char *tag, ns1__parameter **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__parameter **)soap_malloc(soap, sizeof(ns1__parameter *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__parameter *)soap_instantiate_ns1__parameter(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__parameter ** p = (ns1__parameter **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameter, sizeof(ns1__parameter), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameter(struct soap *soap, ns1__parameter *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameter);
+	if (soap_out_PointerTons1__parameter(soap, tag?tag:"ns1:parameter", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__parameter ** SOAP_FMAC4 soap_get_PointerTons1__parameter(struct soap *soap, ns1__parameter **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameter(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__parameterComparisonCondition))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, int id, ns1__parameterComparisonCondition *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__parameterComparisonCondition);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__parameterComparisonCondition ** SOAP_FMAC4 soap_in_PointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, ns1__parameterComparisonCondition **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__parameterComparisonCondition **)soap_malloc(soap, sizeof(ns1__parameterComparisonCondition *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__parameterComparisonCondition *)soap_instantiate_ns1__parameterComparisonCondition(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__parameterComparisonCondition ** p = (ns1__parameterComparisonCondition **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__parameterComparisonCondition);
+	if (soap_out_PointerTons1__parameterComparisonCondition(soap, tag?tag:"ns1:parameterComparisonCondition", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__parameterComparisonCondition ** SOAP_FMAC4 soap_get_PointerTons1__parameterComparisonCondition(struct soap *soap, ns1__parameterComparisonCondition **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__parameterComparisonCondition(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__datafile(struct soap *soap, ns1__datafile *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__datafile))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__datafile(struct soap *soap, const char *tag, int id, ns1__datafile *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__datafile);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__datafile ** SOAP_FMAC4 soap_in_PointerTons1__datafile(struct soap *soap, const char *tag, ns1__datafile **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__datafile **)soap_malloc(soap, sizeof(ns1__datafile *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__datafile *)soap_instantiate_ns1__datafile(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__datafile ** p = (ns1__datafile **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__datafile, sizeof(ns1__datafile), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__datafile(struct soap *soap, ns1__datafile *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__datafile);
+	if (soap_out_PointerTons1__datafile(soap, tag?tag:"ns1:datafile", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__datafile ** SOAP_FMAC4 soap_get_PointerTons1__datafile(struct soap *soap, ns1__datafile **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__datafile(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerToLONG64(struct soap *soap, LONG64 *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_LONG64);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerToLONG64(struct soap *soap, const char *tag, int id, LONG64 *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_LONG64);
+	if (id < 0)
+		return soap->error;
+	return soap_out_LONG64(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 LONG64 ** SOAP_FMAC4 soap_in_PointerToLONG64(struct soap *soap, const char *tag, LONG64 **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (LONG64 **)soap_malloc(soap, sizeof(LONG64 *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_LONG64(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (LONG64 **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_LONG64, sizeof(LONG64), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerToLONG64(struct soap *soap, LONG64 *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerToLONG64);
+	if (soap_out_PointerToLONG64(soap, tag?tag:"long", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 LONG64 ** SOAP_FMAC4 soap_get_PointerToLONG64(struct soap *soap, LONG64 **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerToLONG64(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__icatRole(struct soap *soap, ns1__icatRole *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__icatRole))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__icatRole(struct soap *soap, const char *tag, int id, ns1__icatRole *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__icatRole);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__icatRole ** SOAP_FMAC4 soap_in_PointerTons1__icatRole(struct soap *soap, const char *tag, ns1__icatRole **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__icatRole **)soap_malloc(soap, sizeof(ns1__icatRole *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__icatRole *)soap_instantiate_ns1__icatRole(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__icatRole ** p = (ns1__icatRole **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__icatRole, sizeof(ns1__icatRole), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__icatRole(struct soap *soap, ns1__icatRole *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__icatRole);
+	if (soap_out_PointerTons1__icatRole(soap, tag?tag:"ns1:icatRole", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__icatRole ** SOAP_FMAC4 soap_get_PointerTons1__icatRole(struct soap *soap, ns1__icatRole **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__icatRole(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTons1__sample(struct soap *soap, ns1__sample *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_ns1__sample))
+		(*a)->soap_serialize(soap);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTons1__sample(struct soap *soap, const char *tag, int id, ns1__sample *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_ns1__sample);
+	if (id < 0)
+		return soap->error;
+	return (*a)->soap_out(soap, tag, id, type);
+}
+
+SOAP_FMAC3 ns1__sample ** SOAP_FMAC4 soap_in_PointerTons1__sample(struct soap *soap, const char *tag, ns1__sample **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (ns1__sample **)soap_malloc(soap, sizeof(ns1__sample *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = (ns1__sample *)soap_instantiate_ns1__sample(soap, -1, soap->type, soap->arrayType, NULL)))
+			return NULL;
+		(*a)->soap_default(soap);
+		if (!(*a)->soap_in(soap, tag, NULL))
+			return NULL;
+	}
+	else
+	{	ns1__sample ** p = (ns1__sample **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_ns1__sample, sizeof(ns1__sample), 0);
+		a = p;
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTons1__sample(struct soap *soap, ns1__sample *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTons1__sample);
+	if (soap_out_PointerTons1__sample(soap, tag?tag:"ns1:sample", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 ns1__sample ** SOAP_FMAC4 soap_get_PointerTons1__sample(struct soap *soap, ns1__sample **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTons1__sample(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_PointerTostd__string(struct soap *soap, std::string *const*a)
+{
+	if (!soap_reference(soap, *a, SOAP_TYPE_std__string))
+		soap_serialize_std__string(soap, *a);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_PointerTostd__string(struct soap *soap, const char *tag, int id, std::string *const*a, const char *type)
+{
+	id = soap_element_id(soap, tag, id, *a, NULL, 0, type, SOAP_TYPE_std__string);
+	if (id < 0)
+		return soap->error;
+	return soap_out_std__string(soap, tag, id, *a, type);
+}
+
+SOAP_FMAC3 std::string ** SOAP_FMAC4 soap_in_PointerTostd__string(struct soap *soap, const char *tag, std::string **a, const char *type)
+{
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a)
+		if (!(a = (std::string **)soap_malloc(soap, sizeof(std::string *))))
+			return NULL;
+	*a = NULL;
+	if (!soap->null && *soap->href != '#')
+	{	soap_revert(soap);
+		if (!(*a = soap_in_std__string(soap, tag, *a, type)))
+			return NULL;
+	}
+	else
+	{	a = (std::string **)soap_id_lookup(soap, soap->href, (void**)a, SOAP_TYPE_std__string, sizeof(std::string), 0);
+		if (soap->body && soap_element_end_in(soap, tag))
+			return NULL;
+	}
+	return a;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_PointerTostd__string(struct soap *soap, std::string *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_PointerTostd__string);
+	if (soap_out_PointerTostd__string(soap, tag?tag:"string", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 std::string ** SOAP_FMAC4 soap_get_PointerTostd__string(struct soap *soap, std::string **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_PointerTostd__string(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out__QName(struct soap *soap, const char *tag, int id, char *const*a, const char *type)
+{
+	return soap_outstring(soap, tag, id, a, type, SOAP_TYPE__QName);
+}
+
+SOAP_FMAC3 char * * SOAP_FMAC4 soap_in__QName(struct soap *soap, const char *tag, char **a, const char *type)
+{	char **p;
+	p = soap_instring(soap, tag, a, type, SOAP_TYPE__QName, 2, -1, -1);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put__QName(struct soap *soap, char *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE__QName);
+	if (soap_out__QName(soap, tag?tag:"byte", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 char ** SOAP_FMAC4 soap_get__QName(struct soap *soap, char **p, const char *tag, const char *type)
+{
+	if ((p = soap_in__QName(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_string(struct soap *soap, char **a)
+{
+	(void)soap; /* appease -Wall -Werror */
+#ifdef SOAP_DEFAULT_string
+	*a = SOAP_DEFAULT_string;
+#else
+	*a = (char *)0;
+#endif
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_string(struct soap *soap, char *const*a)
+{
+	soap_reference(soap, *a, SOAP_TYPE_string);
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_string(struct soap *soap, const char *tag, int id, char *const*a, const char *type)
+{
+	return soap_outstring(soap, tag, id, a, type, SOAP_TYPE_string);
+}
+
+SOAP_FMAC3 char * * SOAP_FMAC4 soap_in_string(struct soap *soap, const char *tag, char **a, const char *type)
+{	char **p;
+	p = soap_instring(soap, tag, a, type, SOAP_TYPE_string, 1, -1, -1);
+	return p;
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_put_string(struct soap *soap, char *const*a, const char *tag, const char *type)
+{
+	register int id = soap_embed(soap, (void*)a, NULL, 0, tag, SOAP_TYPE_string);
+	if (soap_out_string(soap, tag?tag:"byte", id, a, type))
+		return soap->error;
+	return soap_putindependent(soap);
+}
+
+SOAP_FMAC3 char ** SOAP_FMAC4 soap_get_string(struct soap *soap, char **p, const char *tag, const char *type)
+{
+	if ((p = soap_in_string(soap, tag, p, type)))
+		if (soap_getindependent(soap))
+			return NULL;
+	return p;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, std::vector<ns1__parameterCondition * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, const std::vector<ns1__parameterCondition * >*a)
+{
+	for (std::vector<ns1__parameterCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__parameterCondition(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, const char *tag, int id, const std::vector<ns1__parameterCondition * >*a, const char *type)
+{
+	for (std::vector<ns1__parameterCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__parameterCondition(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__parameterCondition * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, const char *tag, std::vector<ns1__parameterCondition * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__parameterCondition(soap, -1)))
+		return NULL;
+	ns1__parameterCondition *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__parameterCondition, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition, sizeof(ns1__parameterCondition), 1))
+				break;
+			if (!soap_in_PointerTons1__parameterCondition(soap, tag, NULL, "ns1:parameterCondition"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__parameterCondition(soap, tag, &n, "ns1:parameterCondition"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__parameterCondition * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__parameterCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterCondition, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterCondition * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__parameterCondition * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterCondition * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__parameterCondition * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__parameterCondition * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__parameterCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__parameterCondition * > %p -> %p\n", q, p));
+	*(std::vector<ns1__parameterCondition * >*)p = *(std::vector<ns1__parameterCondition * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, std::vector<ns1__shift * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, const std::vector<ns1__shift * >*a)
+{
+	for (std::vector<ns1__shift * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__shift(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, const char *tag, int id, const std::vector<ns1__shift * >*a, const char *type)
+{
+	for (std::vector<ns1__shift * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__shift(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__shift * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, const char *tag, std::vector<ns1__shift * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__shift(soap, -1)))
+		return NULL;
+	ns1__shift *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__shift, SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift, sizeof(ns1__shift), 1))
+				break;
+			if (!soap_in_PointerTons1__shift(soap, tag, NULL, "ns1:shift"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__shift(soap, tag, &n, "ns1:shift"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__shift * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__shift(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__shift, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__shift * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__shift * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__shift * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__shift * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__shift * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__shift(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__shift * > %p -> %p\n", q, p));
+	*(std::vector<ns1__shift * >*)p = *(std::vector<ns1__shift * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, std::vector<ns1__publication * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, const std::vector<ns1__publication * >*a)
+{
+	for (std::vector<ns1__publication * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__publication(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, const char *tag, int id, const std::vector<ns1__publication * >*a, const char *type)
+{
+	for (std::vector<ns1__publication * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__publication(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__publication * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, const char *tag, std::vector<ns1__publication * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__publication(soap, -1)))
+		return NULL;
+	ns1__publication *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__publication, SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication, sizeof(ns1__publication), 1))
+				break;
+			if (!soap_in_PointerTons1__publication(soap, tag, NULL, "ns1:publication"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__publication(soap, tag, &n, "ns1:publication"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__publication * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__publication(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__publication, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__publication * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__publication * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__publication * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__publication * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__publication * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__publication(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__publication * > %p -> %p\n", q, p));
+	*(std::vector<ns1__publication * >*)p = *(std::vector<ns1__publication * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, std::vector<ns1__keyword * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, const std::vector<ns1__keyword * >*a)
+{
+	for (std::vector<ns1__keyword * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__keyword(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, const char *tag, int id, const std::vector<ns1__keyword * >*a, const char *type)
+{
+	for (std::vector<ns1__keyword * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__keyword(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__keyword * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, const char *tag, std::vector<ns1__keyword * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__keyword(soap, -1)))
+		return NULL;
+	ns1__keyword *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__keyword, SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword, sizeof(ns1__keyword), 1))
+				break;
+			if (!soap_in_PointerTons1__keyword(soap, tag, NULL, "ns1:keyword"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__keyword(soap, tag, &n, "ns1:keyword"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__keyword * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__keyword(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__keyword, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__keyword * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__keyword * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__keyword * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__keyword * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__keyword * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__keyword(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__keyword * > %p -> %p\n", q, p));
+	*(std::vector<ns1__keyword * >*)p = *(std::vector<ns1__keyword * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, std::vector<ns1__investigator * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, const std::vector<ns1__investigator * >*a)
+{
+	for (std::vector<ns1__investigator * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__investigator(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, const char *tag, int id, const std::vector<ns1__investigator * >*a, const char *type)
+{
+	for (std::vector<ns1__investigator * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__investigator(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__investigator * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, const char *tag, std::vector<ns1__investigator * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__investigator(soap, -1)))
+		return NULL;
+	ns1__investigator *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__investigator, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator, sizeof(ns1__investigator), 1))
+				break;
+			if (!soap_in_PointerTons1__investigator(soap, tag, NULL, "ns1:investigator"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__investigator(soap, tag, &n, "ns1:investigator"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__investigator * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__investigator(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigator, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigator * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__investigator * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigator * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__investigator * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__investigator * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__investigator(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__investigator * > %p -> %p\n", q, p));
+	*(std::vector<ns1__investigator * >*)p = *(std::vector<ns1__investigator * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, std::vector<ns1__relatedDatafiles * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, const std::vector<ns1__relatedDatafiles * >*a)
+{
+	for (std::vector<ns1__relatedDatafiles * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__relatedDatafiles(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, const char *tag, int id, const std::vector<ns1__relatedDatafiles * >*a, const char *type)
+{
+	for (std::vector<ns1__relatedDatafiles * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__relatedDatafiles(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__relatedDatafiles * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, const char *tag, std::vector<ns1__relatedDatafiles * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__relatedDatafiles(soap, -1)))
+		return NULL;
+	ns1__relatedDatafiles *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__relatedDatafiles, SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles, sizeof(ns1__relatedDatafiles), 1))
+				break;
+			if (!soap_in_PointerTons1__relatedDatafiles(soap, tag, NULL, "ns1:relatedDatafiles"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__relatedDatafiles(soap, tag, &n, "ns1:relatedDatafiles"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__relatedDatafiles * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__relatedDatafiles(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__relatedDatafiles, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__relatedDatafiles * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__relatedDatafiles * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__relatedDatafiles * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__relatedDatafiles * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__relatedDatafiles * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__relatedDatafiles(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__relatedDatafiles * > %p -> %p\n", q, p));
+	*(std::vector<ns1__relatedDatafiles * >*)p = *(std::vector<ns1__relatedDatafiles * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, std::vector<ns1__sampleParameter * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, const std::vector<ns1__sampleParameter * >*a)
+{
+	for (std::vector<ns1__sampleParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__sampleParameter(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__sampleParameter * >*a, const char *type)
+{
+	for (std::vector<ns1__sampleParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__sampleParameter(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__sampleParameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, const char *tag, std::vector<ns1__sampleParameter * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__sampleParameter(soap, -1)))
+		return NULL;
+	ns1__sampleParameter *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__sampleParameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter, sizeof(ns1__sampleParameter), 1))
+				break;
+			if (!soap_in_PointerTons1__sampleParameter(soap, tag, NULL, "ns1:sampleParameter"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__sampleParameter(soap, tag, &n, "ns1:sampleParameter"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__sampleParameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__sampleParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sampleParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sampleParameter * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__sampleParameter * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sampleParameter * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__sampleParameter * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__sampleParameter * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__sampleParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__sampleParameter * > %p -> %p\n", q, p));
+	*(std::vector<ns1__sampleParameter * >*)p = *(std::vector<ns1__sampleParameter * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, std::vector<ns1__parameter * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, const std::vector<ns1__parameter * >*a)
+{
+	for (std::vector<ns1__parameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__parameter(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__parameter * >*a, const char *type)
+{
+	for (std::vector<ns1__parameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__parameter(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__parameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, const char *tag, std::vector<ns1__parameter * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__parameter(soap, -1)))
+		return NULL;
+	ns1__parameter *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__parameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter, sizeof(ns1__parameter), 1))
+				break;
+			if (!soap_in_PointerTons1__parameter(soap, tag, NULL, "ns1:parameter"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__parameter(soap, tag, &n, "ns1:parameter"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__parameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__parameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameter * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__parameter * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameter * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__parameter * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__parameter * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__parameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__parameter * > %p -> %p\n", q, p));
+	*(std::vector<ns1__parameter * >*)p = *(std::vector<ns1__parameter * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, std::vector<ns1__icatRole * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, const std::vector<ns1__icatRole * >*a)
+{
+	for (std::vector<ns1__icatRole * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__icatRole(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, const char *tag, int id, const std::vector<ns1__icatRole * >*a, const char *type)
+{
+	for (std::vector<ns1__icatRole * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__icatRole(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__icatRole * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, const char *tag, std::vector<ns1__icatRole * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__icatRole(soap, -1)))
+		return NULL;
+	ns1__icatRole *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__icatRole, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole, sizeof(ns1__icatRole), 1))
+				break;
+			if (!soap_in_PointerTons1__icatRole(soap, tag, NULL, "ns1:icatRole"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__icatRole(soap, tag, &n, "ns1:icatRole"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__icatRole * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__icatRole(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatRole, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatRole * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__icatRole * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatRole * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__icatRole * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__icatRole * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__icatRole(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__icatRole * > %p -> %p\n", q, p));
+	*(std::vector<ns1__icatRole * >*)p = *(std::vector<ns1__icatRole * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, std::vector<ns1__datafileFormat * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, const std::vector<ns1__datafileFormat * >*a)
+{
+	for (std::vector<ns1__datafileFormat * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__datafileFormat(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, const char *tag, int id, const std::vector<ns1__datafileFormat * >*a, const char *type)
+{
+	for (std::vector<ns1__datafileFormat * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__datafileFormat(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__datafileFormat * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, const char *tag, std::vector<ns1__datafileFormat * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datafileFormat(soap, -1)))
+		return NULL;
+	ns1__datafileFormat *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datafileFormat, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat, sizeof(ns1__datafileFormat), 1))
+				break;
+			if (!soap_in_PointerTons1__datafileFormat(soap, tag, NULL, "ns1:datafileFormat"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__datafileFormat(soap, tag, &n, "ns1:datafileFormat"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__datafileFormat * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datafileFormat(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileFormat, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileFormat * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__datafileFormat * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileFormat * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__datafileFormat * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__datafileFormat * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datafileFormat(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datafileFormat * > %p -> %p\n", q, p));
+	*(std::vector<ns1__datafileFormat * >*)p = *(std::vector<ns1__datafileFormat * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, std::vector<ns1__datasetParameter * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, const std::vector<ns1__datasetParameter * >*a)
+{
+	for (std::vector<ns1__datasetParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__datasetParameter(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__datasetParameter * >*a, const char *type)
+{
+	for (std::vector<ns1__datasetParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__datasetParameter(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__datasetParameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, const char *tag, std::vector<ns1__datasetParameter * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datasetParameter(soap, -1)))
+		return NULL;
+	ns1__datasetParameter *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datasetParameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter, sizeof(ns1__datasetParameter), 1))
+				break;
+			if (!soap_in_PointerTons1__datasetParameter(soap, tag, NULL, "ns1:datasetParameter"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__datasetParameter(soap, tag, &n, "ns1:datasetParameter"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__datasetParameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datasetParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datasetParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datasetParameter * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__datasetParameter * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datasetParameter * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__datasetParameter * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__datasetParameter * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datasetParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datasetParameter * > %p -> %p\n", q, p));
+	*(std::vector<ns1__datasetParameter * >*)p = *(std::vector<ns1__datasetParameter * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, std::vector<ns1__icatAuthorisation * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, const std::vector<ns1__icatAuthorisation * >*a)
+{
+	for (std::vector<ns1__icatAuthorisation * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__icatAuthorisation(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, const char *tag, int id, const std::vector<ns1__icatAuthorisation * >*a, const char *type)
+{
+	for (std::vector<ns1__icatAuthorisation * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__icatAuthorisation(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__icatAuthorisation * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, const char *tag, std::vector<ns1__icatAuthorisation * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__icatAuthorisation(soap, -1)))
+		return NULL;
+	ns1__icatAuthorisation *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__icatAuthorisation, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation, sizeof(ns1__icatAuthorisation), 1))
+				break;
+			if (!soap_in_PointerTons1__icatAuthorisation(soap, tag, NULL, "ns1:icatAuthorisation"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__icatAuthorisation(soap, tag, &n, "ns1:icatAuthorisation"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__icatAuthorisation * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__icatAuthorisation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__icatAuthorisation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatAuthorisation * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__icatAuthorisation * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__icatAuthorisation * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__icatAuthorisation * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__icatAuthorisation * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__icatAuthorisation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__icatAuthorisation * > %p -> %p\n", q, p));
+	*(std::vector<ns1__icatAuthorisation * >*)p = *(std::vector<ns1__icatAuthorisation * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, std::vector<xsd__anyType * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, const std::vector<xsd__anyType * >*a)
+{
+	for (std::vector<xsd__anyType * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerToxsd__anyType(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, const char *tag, int id, const std::vector<xsd__anyType * >*a, const char *type)
+{
+	for (std::vector<xsd__anyType * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerToxsd__anyType(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<xsd__anyType * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, const char *tag, std::vector<xsd__anyType * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerToxsd__anyType(soap, -1)))
+		return NULL;
+	xsd__anyType *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_xsd__anyType, SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType, sizeof(xsd__anyType), 1))
+				break;
+			if (!soap_in_PointerToxsd__anyType(soap, tag, NULL, "xsd:anyType"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerToxsd__anyType(soap, tag, &n, "xsd:anyType"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<xsd__anyType * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerToxsd__anyType(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerToxsd__anyType, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<xsd__anyType * >);
+		if (size)
+			*size = sizeof(std::vector<xsd__anyType * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<xsd__anyType * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<xsd__anyType * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<xsd__anyType * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerToxsd__anyType(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<xsd__anyType * > %p -> %p\n", q, p));
+	*(std::vector<xsd__anyType * >*)p = *(std::vector<xsd__anyType * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfLONG64(struct soap *soap, std::vector<LONG64 >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfLONG64(struct soap *soap, const std::vector<LONG64 >*a)
+{
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfLONG64(struct soap *soap, const char *tag, int id, const std::vector<LONG64 >*a, const char *type)
+{
+	for (std::vector<LONG64 >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_LONG64(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<LONG64 >* SOAP_FMAC4 soap_in_std__vectorTemplateOfLONG64(struct soap *soap, const char *tag, std::vector<LONG64 >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfLONG64(soap, -1)))
+		return NULL;
+	LONG64 n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		soap_default_LONG64(soap, &n);
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_LONG64, SOAP_TYPE_std__vectorTemplateOfLONG64, sizeof(LONG64), 0))
+				break;
+			if (!soap_in_LONG64(soap, tag, NULL, "xsd:long"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_LONG64(soap, tag, &n, "xsd:long"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<LONG64 > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfLONG64(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfLONG64(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfLONG64, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<LONG64 >);
+		if (size)
+			*size = sizeof(std::vector<LONG64 >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<LONG64 >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<LONG64 >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<LONG64 >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfLONG64(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<LONG64 > %p -> %p\n", q, p));
+	*(std::vector<LONG64 >*)p = *(std::vector<LONG64 >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, std::vector<ns1__dataset * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, const std::vector<ns1__dataset * >*a)
+{
+	for (std::vector<ns1__dataset * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__dataset(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, const char *tag, int id, const std::vector<ns1__dataset * >*a, const char *type)
+{
+	for (std::vector<ns1__dataset * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__dataset(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__dataset * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, const char *tag, std::vector<ns1__dataset * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__dataset(soap, -1)))
+		return NULL;
+	ns1__dataset *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__dataset, SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset, sizeof(ns1__dataset), 1))
+				break;
+			if (!soap_in_PointerTons1__dataset(soap, tag, NULL, "ns1:dataset"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__dataset(soap, tag, &n, "ns1:dataset"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__dataset * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__dataset(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__dataset, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__dataset * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__dataset * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__dataset * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__dataset * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__dataset * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__dataset(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__dataset * > %p -> %p\n", q, p));
+	*(std::vector<ns1__dataset * >*)p = *(std::vector<ns1__dataset * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, std::vector<ns1__facilityCycle * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, const std::vector<ns1__facilityCycle * >*a)
+{
+	for (std::vector<ns1__facilityCycle * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__facilityCycle(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, const char *tag, int id, const std::vector<ns1__facilityCycle * >*a, const char *type)
+{
+	for (std::vector<ns1__facilityCycle * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__facilityCycle(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__facilityCycle * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, const char *tag, std::vector<ns1__facilityCycle * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__facilityCycle(soap, -1)))
+		return NULL;
+	ns1__facilityCycle *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__facilityCycle, SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle, sizeof(ns1__facilityCycle), 1))
+				break;
+			if (!soap_in_PointerTons1__facilityCycle(soap, tag, NULL, "ns1:facilityCycle"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__facilityCycle(soap, tag, &n, "ns1:facilityCycle"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__facilityCycle * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__facilityCycle(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__facilityCycle, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__facilityCycle * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__facilityCycle * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__facilityCycle * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__facilityCycle * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__facilityCycle * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__facilityCycle(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__facilityCycle * > %p -> %p\n", q, p));
+	*(std::vector<ns1__facilityCycle * >*)p = *(std::vector<ns1__facilityCycle * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, std::vector<ns1__datafileParameter * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, const std::vector<ns1__datafileParameter * >*a)
+{
+	for (std::vector<ns1__datafileParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__datafileParameter(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, const char *tag, int id, const std::vector<ns1__datafileParameter * >*a, const char *type)
+{
+	for (std::vector<ns1__datafileParameter * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__datafileParameter(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__datafileParameter * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, const char *tag, std::vector<ns1__datafileParameter * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datafileParameter(soap, -1)))
+		return NULL;
+	ns1__datafileParameter *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datafileParameter, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter, sizeof(ns1__datafileParameter), 1))
+				break;
+			if (!soap_in_PointerTons1__datafileParameter(soap, tag, NULL, "ns1:datafileParameter"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__datafileParameter(soap, tag, &n, "ns1:datafileParameter"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__datafileParameter * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datafileParameter(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafileParameter, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileParameter * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__datafileParameter * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafileParameter * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__datafileParameter * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__datafileParameter * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datafileParameter(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datafileParameter * > %p -> %p\n", q, p));
+	*(std::vector<ns1__datafileParameter * >*)p = *(std::vector<ns1__datafileParameter * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, std::vector<ns1__datafile * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, const std::vector<ns1__datafile * >*a)
+{
+	for (std::vector<ns1__datafile * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__datafile(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, const char *tag, int id, const std::vector<ns1__datafile * >*a, const char *type)
+{
+	for (std::vector<ns1__datafile * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__datafile(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__datafile * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, const char *tag, std::vector<ns1__datafile * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__datafile(soap, -1)))
+		return NULL;
+	ns1__datafile *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__datafile, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile, sizeof(ns1__datafile), 1))
+				break;
+			if (!soap_in_PointerTons1__datafile(soap, tag, NULL, "ns1:datafile"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__datafile(soap, tag, &n, "ns1:datafile"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__datafile * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__datafile(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__datafile, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafile * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__datafile * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__datafile * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__datafile * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__datafile * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__datafile(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__datafile * > %p -> %p\n", q, p));
+	*(std::vector<ns1__datafile * >*)p = *(std::vector<ns1__datafile * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, std::vector<ns1__investigation * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, const std::vector<ns1__investigation * >*a)
+{
+	for (std::vector<ns1__investigation * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__investigation(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, const char *tag, int id, const std::vector<ns1__investigation * >*a, const char *type)
+{
+	for (std::vector<ns1__investigation * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__investigation(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__investigation * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, const char *tag, std::vector<ns1__investigation * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__investigation(soap, -1)))
+		return NULL;
+	ns1__investigation *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__investigation, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation, sizeof(ns1__investigation), 1))
+				break;
+			if (!soap_in_PointerTons1__investigation(soap, tag, NULL, "ns1:investigation"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__investigation(soap, tag, &n, "ns1:investigation"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__investigation * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__investigation(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__investigation, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigation * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__investigation * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__investigation * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__investigation * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__investigation * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__investigation(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__investigation * > %p -> %p\n", q, p));
+	*(std::vector<ns1__investigation * >*)p = *(std::vector<ns1__investigation * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, std::vector<ns1__parameterComparisonCondition * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, const std::vector<ns1__parameterComparisonCondition * >*a)
+{
+	for (std::vector<ns1__parameterComparisonCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__parameterComparisonCondition(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, int id, const std::vector<ns1__parameterComparisonCondition * >*a, const char *type)
+{
+	for (std::vector<ns1__parameterComparisonCondition * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__parameterComparisonCondition(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__parameterComparisonCondition * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, const char *tag, std::vector<ns1__parameterComparisonCondition * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(soap, -1)))
+		return NULL;
+	ns1__parameterComparisonCondition *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__parameterComparisonCondition, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition, sizeof(ns1__parameterComparisonCondition), 1))
+				break;
+			if (!soap_in_PointerTons1__parameterComparisonCondition(soap, tag, NULL, "ns1:parameterComparisonCondition"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__parameterComparisonCondition(soap, tag, &n, "ns1:parameterComparisonCondition"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__parameterComparisonCondition * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__parameterComparisonCondition, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterComparisonCondition * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__parameterComparisonCondition * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__parameterComparisonCondition * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__parameterComparisonCondition * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__parameterComparisonCondition * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__parameterComparisonCondition(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__parameterComparisonCondition * > %p -> %p\n", q, p));
+	*(std::vector<ns1__parameterComparisonCondition * >*)p = *(std::vector<ns1__parameterComparisonCondition * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, std::vector<ns1__sample * >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, const std::vector<ns1__sample * >*a)
+{
+	for (std::vector<ns1__sample * >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_PointerTons1__sample(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, const char *tag, int id, const std::vector<ns1__sample * >*a, const char *type)
+{
+	for (std::vector<ns1__sample * >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_PointerTons1__sample(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<ns1__sample * >* SOAP_FMAC4 soap_in_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, const char *tag, std::vector<ns1__sample * >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfPointerTons1__sample(soap, -1)))
+		return NULL;
+	ns1__sample *n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		n = NULL;
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_ns1__sample, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample, sizeof(ns1__sample), 1))
+				break;
+			if (!soap_in_PointerTons1__sample(soap, tag, NULL, "ns1:sample"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_PointerTons1__sample(soap, tag, &n, "ns1:sample"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<ns1__sample * > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfPointerTons1__sample(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfPointerTons1__sample, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sample * >);
+		if (size)
+			*size = sizeof(std::vector<ns1__sample * >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<ns1__sample * >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<ns1__sample * >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<ns1__sample * >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfPointerTons1__sample(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<ns1__sample * > %p -> %p\n", q, p));
+	*(std::vector<ns1__sample * >*)p = *(std::vector<ns1__sample * >*)q;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_default_std__vectorTemplateOfstd__string(struct soap *soap, std::vector<std::string >*p)
+{
+	p->clear();
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_serialize_std__vectorTemplateOfstd__string(struct soap *soap, const std::vector<std::string >*a)
+{
+	for (std::vector<std::string >::const_iterator i = a->begin(); i != a->end(); ++i)
+		soap_serialize_std__string(soap, &(*i));
+}
+
+SOAP_FMAC3 int SOAP_FMAC4 soap_out_std__vectorTemplateOfstd__string(struct soap *soap, const char *tag, int id, const std::vector<std::string >*a, const char *type)
+{
+	for (std::vector<std::string >::const_iterator i = a->begin(); i != a->end(); ++i)
+	{
+		if (soap_out_std__string(soap, tag, id, &(*i), ""))
+			return soap->error;
+	}
+	return SOAP_OK;
+}
+
+SOAP_FMAC3 std::vector<std::string >* SOAP_FMAC4 soap_in_std__vectorTemplateOfstd__string(struct soap *soap, const char *tag, std::vector<std::string >*a, const char *type)
+{
+	(void)type; /* appease -Wall -Werror */
+	if (soap_element_begin_in(soap, tag, 1, NULL))
+		return NULL;
+	if (!a && !(a = soap_new_std__vectorTemplateOfstd__string(soap, -1)))
+		return NULL;
+	std::string n;
+	short soap_flag = 0;
+	do
+	{	soap_revert(soap);
+		soap_default_std__string(soap, &n);
+		if (*soap->id || *soap->href)
+		{	if (!soap_container_id_forward(soap, *soap->id?soap->id:soap->href, a, (size_t)a->size(), SOAP_TYPE_std__string, SOAP_TYPE_std__vectorTemplateOfstd__string, sizeof(std::string), 0))
+				break;
+			if (!soap_in_std__string(soap, tag, NULL, "xsd:string"))
+				break;
+		}
+		else
+		{
+			if (!soap_in_std__string(soap, tag, &n, "xsd:string"))
+				break;
+		}
+		a->push_back(n);
+		soap_flag = 1;
+	}
+	while (tag && *tag != '-' && !soap_element_begin_in(soap, tag, 1, NULL));
+	if (soap_flag && (soap->error == SOAP_TAG_MISMATCH || soap->error == SOAP_NO_TAG))
+	{	soap->error = SOAP_OK;
+		return a;
+	}
+	return NULL;
+}
+
+SOAP_FMAC1 std::vector<std::string > * SOAP_FMAC2 soap_instantiate_std__vectorTemplateOfstd__string(struct soap *soap, int n, const char *type, const char *arrayType, size_t *size)
+{
+	(void)type; (void)arrayType; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "soap_instantiate_std__vectorTemplateOfstd__string(%d, %s, %s)\n", n, type?type:"", arrayType?arrayType:""));
+	struct soap_clist *cp = soap_link(soap, NULL, SOAP_TYPE_std__vectorTemplateOfstd__string, n, soap_fdelete);
+	if (!cp)
+		return NULL;
+	if (n < 0)
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<std::string >);
+		if (size)
+			*size = sizeof(std::vector<std::string >);
+	}
+	else
+	{	cp->ptr = (void*)SOAP_NEW(std::vector<std::string >[n]);
+		if (!cp->ptr)
+		{	soap->error = SOAP_EOM;
+			return NULL;
+		}
+		if (size)
+			*size = n * sizeof(std::vector<std::string >);
+	}
+		DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Instantiated location=%p\n", cp->ptr));
+	return (std::vector<std::string >*)cp->ptr;
+}
+
+SOAP_FMAC3 void SOAP_FMAC4 soap_copy_std__vectorTemplateOfstd__string(struct soap *soap, int st, int tt, void *p, size_t len, const void *q, size_t n)
+{
+	(void)soap; (void)st; (void)len; (void)n; /* appease -Wall -Werror */
+	DBGLOG(TEST, SOAP_MESSAGE(fdebug, "Copying std::vector<std::string > %p -> %p\n", q, p));
+	*(std::vector<std::string >*)p = *(std::vector<std::string >*)q;
+}
+
+#if defined(__BORLANDC__)
+#pragma option pop
+#pragma option pop
+#endif
+
+/* End of soapC.cpp */
diff --git a/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapICATPortBindingProxy.cpp b/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapICATPortBindingProxy.cpp
index db871038f5f2f7c50b4ba4cc13906d95be378aaa..6aa3c3b1b8312c23117c1d88788b72625512e892 100644
--- a/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapICATPortBindingProxy.cpp
+++ b/Code/Mantid/Framework/ICat/src/GSoapGenerated/soapICATPortBindingProxy.cpp
@@ -1,5693 +1,5693 @@
-/* soapICATPortBindingProxy.cpp
-   Generated by gSOAP 2.7.17 from ICATService.h
-   Copyright(C) 2000-2010, Robert van Engelen, Genivia Inc. All Rights Reserved.
-   This part of the software is released under one of the following licenses:
-   GPL, the gSOAP public license, or Genivia's license for commercial use.
-*/
-
-#include "MantidICat/GSoapGenerated/soapICATPortBindingProxy.h"
-
-ICATPortBindingProxy::ICATPortBindingProxy()
-{	ICATPortBindingProxy_init(SOAP_IO_DEFAULT, SOAP_IO_DEFAULT);
-}
-
-ICATPortBindingProxy::ICATPortBindingProxy(const struct soap &_soap) : soap(_soap)
-{ }
-
-ICATPortBindingProxy::ICATPortBindingProxy(soap_mode iomode)
-{	ICATPortBindingProxy_init(iomode, iomode);
-}
-
-ICATPortBindingProxy::ICATPortBindingProxy(soap_mode imode, soap_mode omode)
-{	ICATPortBindingProxy_init(imode, omode);
-}
-
-void ICATPortBindingProxy::ICATPortBindingProxy_init(soap_mode imode, soap_mode omode)
-{	soap_imode(this, imode);
-	soap_omode(this, omode);
-	soap_endpoint = NULL;
-	static const struct Namespace namespaces[] =
-{
-	{"SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/", "http://www.w3.org/*/soap-envelope", NULL},
-	{"SOAP-ENC", "http://schemas.xmlsoap.org/soap/encoding/", "http://www.w3.org/*/soap-encoding", NULL},
-	{"xsi", "http://www.w3.org/2001/XMLSchema-instance", "http://www.w3.org/*/XMLSchema-instance", NULL},
-	{"xsd", "http://www.w3.org/2001/XMLSchema", "http://www.w3.org/*/XMLSchema", NULL},
-	{"ns1", "client.icat3.uk", NULL, NULL},
-	{NULL, NULL, NULL, NULL}
-};
-	this->namespaces = namespaces;
-}
-
-ICATPortBindingProxy::~ICATPortBindingProxy()
-{ }
-
-void ICATPortBindingProxy::destroy()
-{	soap_destroy(this);
-	soap_end(this);
-}
-
-void ICATPortBindingProxy::soap_noheader()
-{	header = NULL;
-}
-
-const SOAP_ENV__Fault *ICATPortBindingProxy::soap_fault()
-{	return this->fault;
-}
-
-const char *ICATPortBindingProxy::soap_fault_string()
-{	return *soap_faultstring(this);
-}
-
-const char *ICATPortBindingProxy::soap_fault_detail()
-{	return *soap_faultdetail(this);
-}
-
-int ICATPortBindingProxy::soap_close_socket()
-{	return soap_closesock(this);
-}
-
-void ICATPortBindingProxy::soap_print_fault(FILE *fd)
-{	::soap_print_fault(this, fd);
-}
-
-#ifndef WITH_LEAN
-void ICATPortBindingProxy::soap_stream_fault(std::ostream& os)
-{	::soap_stream_fault(this, os);
-}
-
-char *ICATPortBindingProxy::soap_sprint_fault(char *buf, size_t len)
-{	return ::soap_sprint_fault(this, buf, len);
-}
-#endif
-
-int ICATPortBindingProxy::login(ns1__login *ns1__login_, ns1__loginResponse *ns1__loginResponse_)
-{	struct soap *soap = this;
-	struct __ns1__login soap_tmp___ns1__login;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__login.ns1__login_ = ns1__login_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__login(soap, &soap_tmp___ns1__login);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__login(soap, &soap_tmp___ns1__login, "-ns1:login", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__login(soap, &soap_tmp___ns1__login, "-ns1:login", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__loginResponse_)
-		return soap_closesock(soap);
-	ns1__loginResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__loginResponse_->soap_get(soap, "ns1:loginResponse", "ns1:loginResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::loginLifetime(ns1__loginLifetime *ns1__loginLifetime_, ns1__loginLifetimeResponse *ns1__loginLifetimeResponse_)
-{	struct soap *soap = this;
-	struct __ns1__loginLifetime soap_tmp___ns1__loginLifetime;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__loginLifetime.ns1__loginLifetime_ = ns1__loginLifetime_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__loginLifetime(soap, &soap_tmp___ns1__loginLifetime);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__loginLifetime(soap, &soap_tmp___ns1__loginLifetime, "-ns1:loginLifetime", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__loginLifetime(soap, &soap_tmp___ns1__loginLifetime, "-ns1:loginLifetime", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__loginLifetimeResponse_)
-		return soap_closesock(soap);
-	ns1__loginLifetimeResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__loginLifetimeResponse_->soap_get(soap, "ns1:loginLifetimeResponse", "ns1:loginLifetimeResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addSample(ns1__addSample *ns1__addSample_, ns1__addSampleResponse *ns1__addSampleResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addSample soap_tmp___ns1__addSample;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addSample.ns1__addSample_ = ns1__addSample_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addSample(soap, &soap_tmp___ns1__addSample);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addSample(soap, &soap_tmp___ns1__addSample, "-ns1:addSample", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addSample(soap, &soap_tmp___ns1__addSample, "-ns1:addSample", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addSampleResponse_)
-		return soap_closesock(soap);
-	ns1__addSampleResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addSampleResponse_->soap_get(soap, "ns1:addSampleResponse", "ns1:addSampleResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::logout(ns1__logout *ns1__logout_, ns1__logoutResponse *ns1__logoutResponse_)
-{	struct soap *soap = this;
-	struct __ns1__logout soap_tmp___ns1__logout;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__logout.ns1__logout_ = ns1__logout_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__logout(soap, &soap_tmp___ns1__logout);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__logout(soap, &soap_tmp___ns1__logout, "-ns1:logout", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__logout(soap, &soap_tmp___ns1__logout, "-ns1:logout", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__logoutResponse_)
-		return soap_closesock(soap);
-	ns1__logoutResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__logoutResponse_->soap_get(soap, "ns1:logoutResponse", "ns1:logoutResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addSampleParameter(ns1__addSampleParameter *ns1__addSampleParameter_, ns1__addSampleParameterResponse *ns1__addSampleParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addSampleParameter soap_tmp___ns1__addSampleParameter;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addSampleParameter.ns1__addSampleParameter_ = ns1__addSampleParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addSampleParameter(soap, &soap_tmp___ns1__addSampleParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addSampleParameter(soap, &soap_tmp___ns1__addSampleParameter, "-ns1:addSampleParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addSampleParameter(soap, &soap_tmp___ns1__addSampleParameter, "-ns1:addSampleParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addSampleParameterResponse_)
-		return soap_closesock(soap);
-	ns1__addSampleParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addSampleParameterResponse_->soap_get(soap, "ns1:addSampleParameterResponse", "ns1:addSampleParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addPublication(ns1__addPublication *ns1__addPublication_, ns1__addPublicationResponse *ns1__addPublicationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addPublication soap_tmp___ns1__addPublication;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addPublication.ns1__addPublication_ = ns1__addPublication_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addPublication(soap, &soap_tmp___ns1__addPublication);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addPublication(soap, &soap_tmp___ns1__addPublication, "-ns1:addPublication", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addPublication(soap, &soap_tmp___ns1__addPublication, "-ns1:addPublication", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addPublicationResponse_)
-		return soap_closesock(soap);
-	ns1__addPublicationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addPublicationResponse_->soap_get(soap, "ns1:addPublicationResponse", "ns1:addPublicationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addKeyword(ns1__addKeyword *ns1__addKeyword_, ns1__addKeywordResponse *ns1__addKeywordResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addKeyword soap_tmp___ns1__addKeyword;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addKeyword.ns1__addKeyword_ = ns1__addKeyword_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addKeyword(soap, &soap_tmp___ns1__addKeyword);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addKeyword(soap, &soap_tmp___ns1__addKeyword, "-ns1:addKeyword", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addKeyword(soap, &soap_tmp___ns1__addKeyword, "-ns1:addKeyword", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addKeywordResponse_)
-		return soap_closesock(soap);
-	ns1__addKeywordResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addKeywordResponse_->soap_get(soap, "ns1:addKeywordResponse", "ns1:addKeywordResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addInvestigator(ns1__addInvestigator *ns1__addInvestigator_, ns1__addInvestigatorResponse *ns1__addInvestigatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addInvestigator soap_tmp___ns1__addInvestigator;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addInvestigator.ns1__addInvestigator_ = ns1__addInvestigator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addInvestigator(soap, &soap_tmp___ns1__addInvestigator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addInvestigator(soap, &soap_tmp___ns1__addInvestigator, "-ns1:addInvestigator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addInvestigator(soap, &soap_tmp___ns1__addInvestigator, "-ns1:addInvestigator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addInvestigatorResponse_)
-		return soap_closesock(soap);
-	ns1__addInvestigatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addInvestigatorResponse_->soap_get(soap, "ns1:addInvestigatorResponse", "ns1:addInvestigatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getInvestigation(ns1__getInvestigation *ns1__getInvestigation_, ns1__getInvestigationResponse *ns1__getInvestigationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getInvestigation soap_tmp___ns1__getInvestigation;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getInvestigation.ns1__getInvestigation_ = ns1__getInvestigation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getInvestigation(soap, &soap_tmp___ns1__getInvestigation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getInvestigation(soap, &soap_tmp___ns1__getInvestigation, "-ns1:getInvestigation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getInvestigation(soap, &soap_tmp___ns1__getInvestigation, "-ns1:getInvestigation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getInvestigationResponse_)
-		return soap_closesock(soap);
-	ns1__getInvestigationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getInvestigationResponse_->soap_get(soap, "ns1:getInvestigationResponse", "ns1:getInvestigationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getInvestigationIncludes(ns1__getInvestigationIncludes *ns1__getInvestigationIncludes_, ns1__getInvestigationIncludesResponse *ns1__getInvestigationIncludesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getInvestigationIncludes soap_tmp___ns1__getInvestigationIncludes;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getInvestigationIncludes.ns1__getInvestigationIncludes_ = ns1__getInvestigationIncludes_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getInvestigationIncludes(soap, &soap_tmp___ns1__getInvestigationIncludes);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getInvestigationIncludes(soap, &soap_tmp___ns1__getInvestigationIncludes, "-ns1:getInvestigationIncludes", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getInvestigationIncludes(soap, &soap_tmp___ns1__getInvestigationIncludes, "-ns1:getInvestigationIncludes", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getInvestigationIncludesResponse_)
-		return soap_closesock(soap);
-	ns1__getInvestigationIncludesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getInvestigationIncludesResponse_->soap_get(soap, "ns1:getInvestigationIncludesResponse", "ns1:getInvestigationIncludesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getDataset(ns1__getDataset *ns1__getDataset_, ns1__getDatasetResponse *ns1__getDatasetResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getDataset soap_tmp___ns1__getDataset;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getDataset.ns1__getDataset_ = ns1__getDataset_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getDataset(soap, &soap_tmp___ns1__getDataset);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getDataset(soap, &soap_tmp___ns1__getDataset, "-ns1:getDataset", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getDataset(soap, &soap_tmp___ns1__getDataset, "-ns1:getDataset", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getDatasetResponse_)
-		return soap_closesock(soap);
-	ns1__getDatasetResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getDatasetResponse_->soap_get(soap, "ns1:getDatasetResponse", "ns1:getDatasetResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getDatasetIncludes(ns1__getDatasetIncludes *ns1__getDatasetIncludes_, ns1__getDatasetIncludesResponse *ns1__getDatasetIncludesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getDatasetIncludes soap_tmp___ns1__getDatasetIncludes;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getDatasetIncludes.ns1__getDatasetIncludes_ = ns1__getDatasetIncludes_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getDatasetIncludes(soap, &soap_tmp___ns1__getDatasetIncludes);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getDatasetIncludes(soap, &soap_tmp___ns1__getDatasetIncludes, "-ns1:getDatasetIncludes", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getDatasetIncludes(soap, &soap_tmp___ns1__getDatasetIncludes, "-ns1:getDatasetIncludes", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getDatasetIncludesResponse_)
-		return soap_closesock(soap);
-	ns1__getDatasetIncludesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getDatasetIncludesResponse_->soap_get(soap, "ns1:getDatasetIncludesResponse", "ns1:getDatasetIncludesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getDatafile(ns1__getDatafile *ns1__getDatafile_, ns1__getDatafileResponse *ns1__getDatafileResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getDatafile soap_tmp___ns1__getDatafile;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getDatafile.ns1__getDatafile_ = ns1__getDatafile_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getDatafile(soap, &soap_tmp___ns1__getDatafile);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getDatafile(soap, &soap_tmp___ns1__getDatafile, "-ns1:getDatafile", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getDatafile(soap, &soap_tmp___ns1__getDatafile, "-ns1:getDatafile", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getDatafileResponse_)
-		return soap_closesock(soap);
-	ns1__getDatafileResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getDatafileResponse_->soap_get(soap, "ns1:getDatafileResponse", "ns1:getDatafileResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addDataFileParameter(ns1__addDataFileParameter *ns1__addDataFileParameter_, ns1__addDataFileParameterResponse *ns1__addDataFileParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addDataFileParameter soap_tmp___ns1__addDataFileParameter;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addDataFileParameter.ns1__addDataFileParameter_ = ns1__addDataFileParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addDataFileParameter(soap, &soap_tmp___ns1__addDataFileParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addDataFileParameter(soap, &soap_tmp___ns1__addDataFileParameter, "-ns1:addDataFileParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addDataFileParameter(soap, &soap_tmp___ns1__addDataFileParameter, "-ns1:addDataFileParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addDataFileParameterResponse_)
-		return soap_closesock(soap);
-	ns1__addDataFileParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addDataFileParameterResponse_->soap_get(soap, "ns1:addDataFileParameterResponse", "ns1:addDataFileParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getInvestigationsIncludes(ns1__getInvestigationsIncludes *ns1__getInvestigationsIncludes_, ns1__getInvestigationsIncludesResponse *ns1__getInvestigationsIncludesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getInvestigationsIncludes soap_tmp___ns1__getInvestigationsIncludes;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getInvestigationsIncludes.ns1__getInvestigationsIncludes_ = ns1__getInvestigationsIncludes_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getInvestigationsIncludes(soap, &soap_tmp___ns1__getInvestigationsIncludes);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getInvestigationsIncludes(soap, &soap_tmp___ns1__getInvestigationsIncludes, "-ns1:getInvestigationsIncludes", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getInvestigationsIncludes(soap, &soap_tmp___ns1__getInvestigationsIncludes, "-ns1:getInvestigationsIncludes", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getInvestigationsIncludesResponse_)
-		return soap_closesock(soap);
-	ns1__getInvestigationsIncludesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getInvestigationsIncludesResponse_->soap_get(soap, "ns1:getInvestigationsIncludesResponse", "ns1:getInvestigationsIncludesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::createInvestigation(ns1__createInvestigation *ns1__createInvestigation_, ns1__createInvestigationResponse *ns1__createInvestigationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__createInvestigation soap_tmp___ns1__createInvestigation;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__createInvestigation.ns1__createInvestigation_ = ns1__createInvestigation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__createInvestigation(soap, &soap_tmp___ns1__createInvestigation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__createInvestigation(soap, &soap_tmp___ns1__createInvestigation, "-ns1:createInvestigation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__createInvestigation(soap, &soap_tmp___ns1__createInvestigation, "-ns1:createInvestigation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__createInvestigationResponse_)
-		return soap_closesock(soap);
-	ns1__createInvestigationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__createInvestigationResponse_->soap_get(soap, "ns1:createInvestigationResponse", "ns1:createInvestigationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeInvestigation(ns1__removeInvestigation *ns1__removeInvestigation_, ns1__removeInvestigationResponse *ns1__removeInvestigationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeInvestigation soap_tmp___ns1__removeInvestigation;
-	struct __ns1__removeInvestigationResponse *soap_tmp___ns1__removeInvestigationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeInvestigation.ns1__removeInvestigation_ = ns1__removeInvestigation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeInvestigation(soap, &soap_tmp___ns1__removeInvestigation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeInvestigation(soap, &soap_tmp___ns1__removeInvestigation, "-ns1:removeInvestigation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeInvestigation(soap, &soap_tmp___ns1__removeInvestigation, "-ns1:removeInvestigation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeInvestigationResponse_)
-		return soap_closesock(soap);
-	ns1__removeInvestigationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeInvestigationResponse = soap_get___ns1__removeInvestigationResponse(soap, NULL, "-ns1:removeInvestigationResponse", "ns1:removeInvestigationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeInvestigationResponse_ && soap_tmp___ns1__removeInvestigationResponse->ns1__removeInvestigationResponse_)
-		*ns1__removeInvestigationResponse_ = *soap_tmp___ns1__removeInvestigationResponse->ns1__removeInvestigationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteInvestigation(ns1__deleteInvestigation *ns1__deleteInvestigation_, ns1__deleteInvestigationResponse *ns1__deleteInvestigationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteInvestigation soap_tmp___ns1__deleteInvestigation;
-	struct __ns1__deleteInvestigationResponse *soap_tmp___ns1__deleteInvestigationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteInvestigation.ns1__deleteInvestigation_ = ns1__deleteInvestigation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteInvestigation(soap, &soap_tmp___ns1__deleteInvestigation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteInvestigation(soap, &soap_tmp___ns1__deleteInvestigation, "-ns1:deleteInvestigation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteInvestigation(soap, &soap_tmp___ns1__deleteInvestigation, "-ns1:deleteInvestigation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteInvestigationResponse_)
-		return soap_closesock(soap);
-	ns1__deleteInvestigationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteInvestigationResponse = soap_get___ns1__deleteInvestigationResponse(soap, NULL, "-ns1:deleteInvestigationResponse", "ns1:deleteInvestigationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteInvestigationResponse_ && soap_tmp___ns1__deleteInvestigationResponse->ns1__deleteInvestigationResponse_)
-		*ns1__deleteInvestigationResponse_ = *soap_tmp___ns1__deleteInvestigationResponse->ns1__deleteInvestigationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyInvestigation(ns1__modifyInvestigation *ns1__modifyInvestigation_, ns1__modifyInvestigationResponse *ns1__modifyInvestigationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyInvestigation soap_tmp___ns1__modifyInvestigation;
-	struct __ns1__modifyInvestigationResponse *soap_tmp___ns1__modifyInvestigationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyInvestigation.ns1__modifyInvestigation_ = ns1__modifyInvestigation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyInvestigation(soap, &soap_tmp___ns1__modifyInvestigation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyInvestigation(soap, &soap_tmp___ns1__modifyInvestigation, "-ns1:modifyInvestigation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyInvestigation(soap, &soap_tmp___ns1__modifyInvestigation, "-ns1:modifyInvestigation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyInvestigationResponse_)
-		return soap_closesock(soap);
-	ns1__modifyInvestigationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyInvestigationResponse = soap_get___ns1__modifyInvestigationResponse(soap, NULL, "-ns1:modifyInvestigationResponse", "ns1:modifyInvestigationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyInvestigationResponse_ && soap_tmp___ns1__modifyInvestigationResponse->ns1__modifyInvestigationResponse_)
-		*ns1__modifyInvestigationResponse_ = *soap_tmp___ns1__modifyInvestigationResponse->ns1__modifyInvestigationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeKeyword(ns1__removeKeyword *ns1__removeKeyword_, ns1__removeKeywordResponse *ns1__removeKeywordResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeKeyword soap_tmp___ns1__removeKeyword;
-	struct __ns1__removeKeywordResponse *soap_tmp___ns1__removeKeywordResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeKeyword.ns1__removeKeyword_ = ns1__removeKeyword_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeKeyword(soap, &soap_tmp___ns1__removeKeyword);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeKeyword(soap, &soap_tmp___ns1__removeKeyword, "-ns1:removeKeyword", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeKeyword(soap, &soap_tmp___ns1__removeKeyword, "-ns1:removeKeyword", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeKeywordResponse_)
-		return soap_closesock(soap);
-	ns1__removeKeywordResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeKeywordResponse = soap_get___ns1__removeKeywordResponse(soap, NULL, "-ns1:removeKeywordResponse", "ns1:removeKeywordResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeKeywordResponse_ && soap_tmp___ns1__removeKeywordResponse->ns1__removeKeywordResponse_)
-		*ns1__removeKeywordResponse_ = *soap_tmp___ns1__removeKeywordResponse->ns1__removeKeywordResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteKeyword(ns1__deleteKeyword *ns1__deleteKeyword_, ns1__deleteKeywordResponse *ns1__deleteKeywordResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteKeyword soap_tmp___ns1__deleteKeyword;
-	struct __ns1__deleteKeywordResponse *soap_tmp___ns1__deleteKeywordResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteKeyword.ns1__deleteKeyword_ = ns1__deleteKeyword_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteKeyword(soap, &soap_tmp___ns1__deleteKeyword);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteKeyword(soap, &soap_tmp___ns1__deleteKeyword, "-ns1:deleteKeyword", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteKeyword(soap, &soap_tmp___ns1__deleteKeyword, "-ns1:deleteKeyword", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteKeywordResponse_)
-		return soap_closesock(soap);
-	ns1__deleteKeywordResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteKeywordResponse = soap_get___ns1__deleteKeywordResponse(soap, NULL, "-ns1:deleteKeywordResponse", "ns1:deleteKeywordResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteKeywordResponse_ && soap_tmp___ns1__deleteKeywordResponse->ns1__deleteKeywordResponse_)
-		*ns1__deleteKeywordResponse_ = *soap_tmp___ns1__deleteKeywordResponse->ns1__deleteKeywordResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removePublication(ns1__removePublication *ns1__removePublication_, ns1__removePublicationResponse *ns1__removePublicationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removePublication soap_tmp___ns1__removePublication;
-	struct __ns1__removePublicationResponse *soap_tmp___ns1__removePublicationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removePublication.ns1__removePublication_ = ns1__removePublication_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removePublication(soap, &soap_tmp___ns1__removePublication);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removePublication(soap, &soap_tmp___ns1__removePublication, "-ns1:removePublication", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removePublication(soap, &soap_tmp___ns1__removePublication, "-ns1:removePublication", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removePublicationResponse_)
-		return soap_closesock(soap);
-	ns1__removePublicationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removePublicationResponse = soap_get___ns1__removePublicationResponse(soap, NULL, "-ns1:removePublicationResponse", "ns1:removePublicationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removePublicationResponse_ && soap_tmp___ns1__removePublicationResponse->ns1__removePublicationResponse_)
-		*ns1__removePublicationResponse_ = *soap_tmp___ns1__removePublicationResponse->ns1__removePublicationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deletePublication(ns1__deletePublication *ns1__deletePublication_, ns1__deletePublicationResponse *ns1__deletePublicationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deletePublication soap_tmp___ns1__deletePublication;
-	struct __ns1__deletePublicationResponse *soap_tmp___ns1__deletePublicationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deletePublication.ns1__deletePublication_ = ns1__deletePublication_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deletePublication(soap, &soap_tmp___ns1__deletePublication);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deletePublication(soap, &soap_tmp___ns1__deletePublication, "-ns1:deletePublication", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deletePublication(soap, &soap_tmp___ns1__deletePublication, "-ns1:deletePublication", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deletePublicationResponse_)
-		return soap_closesock(soap);
-	ns1__deletePublicationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deletePublicationResponse = soap_get___ns1__deletePublicationResponse(soap, NULL, "-ns1:deletePublicationResponse", "ns1:deletePublicationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deletePublicationResponse_ && soap_tmp___ns1__deletePublicationResponse->ns1__deletePublicationResponse_)
-		*ns1__deletePublicationResponse_ = *soap_tmp___ns1__deletePublicationResponse->ns1__deletePublicationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyPublication(ns1__modifyPublication *ns1__modifyPublication_, ns1__modifyPublicationResponse *ns1__modifyPublicationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyPublication soap_tmp___ns1__modifyPublication;
-	struct __ns1__modifyPublicationResponse *soap_tmp___ns1__modifyPublicationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyPublication.ns1__modifyPublication_ = ns1__modifyPublication_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyPublication(soap, &soap_tmp___ns1__modifyPublication);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyPublication(soap, &soap_tmp___ns1__modifyPublication, "-ns1:modifyPublication", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyPublication(soap, &soap_tmp___ns1__modifyPublication, "-ns1:modifyPublication", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyPublicationResponse_)
-		return soap_closesock(soap);
-	ns1__modifyPublicationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyPublicationResponse = soap_get___ns1__modifyPublicationResponse(soap, NULL, "-ns1:modifyPublicationResponse", "ns1:modifyPublicationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyPublicationResponse_ && soap_tmp___ns1__modifyPublicationResponse->ns1__modifyPublicationResponse_)
-		*ns1__modifyPublicationResponse_ = *soap_tmp___ns1__modifyPublicationResponse->ns1__modifyPublicationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeInvestigator(ns1__removeInvestigator *ns1__removeInvestigator_, ns1__removeInvestigatorResponse *ns1__removeInvestigatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeInvestigator soap_tmp___ns1__removeInvestigator;
-	struct __ns1__removeInvestigatorResponse *soap_tmp___ns1__removeInvestigatorResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeInvestigator.ns1__removeInvestigator_ = ns1__removeInvestigator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeInvestigator(soap, &soap_tmp___ns1__removeInvestigator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeInvestigator(soap, &soap_tmp___ns1__removeInvestigator, "-ns1:removeInvestigator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeInvestigator(soap, &soap_tmp___ns1__removeInvestigator, "-ns1:removeInvestigator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeInvestigatorResponse_)
-		return soap_closesock(soap);
-	ns1__removeInvestigatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeInvestigatorResponse = soap_get___ns1__removeInvestigatorResponse(soap, NULL, "-ns1:removeInvestigatorResponse", "ns1:removeInvestigatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeInvestigatorResponse_ && soap_tmp___ns1__removeInvestigatorResponse->ns1__removeInvestigatorResponse_)
-		*ns1__removeInvestigatorResponse_ = *soap_tmp___ns1__removeInvestigatorResponse->ns1__removeInvestigatorResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyInvestigator(ns1__modifyInvestigator *ns1__modifyInvestigator_, ns1__modifyInvestigatorResponse *ns1__modifyInvestigatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyInvestigator soap_tmp___ns1__modifyInvestigator;
-	struct __ns1__modifyInvestigatorResponse *soap_tmp___ns1__modifyInvestigatorResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyInvestigator.ns1__modifyInvestigator_ = ns1__modifyInvestigator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyInvestigator(soap, &soap_tmp___ns1__modifyInvestigator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyInvestigator(soap, &soap_tmp___ns1__modifyInvestigator, "-ns1:modifyInvestigator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyInvestigator(soap, &soap_tmp___ns1__modifyInvestigator, "-ns1:modifyInvestigator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyInvestigatorResponse_)
-		return soap_closesock(soap);
-	ns1__modifyInvestigatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyInvestigatorResponse = soap_get___ns1__modifyInvestigatorResponse(soap, NULL, "-ns1:modifyInvestigatorResponse", "ns1:modifyInvestigatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyInvestigatorResponse_ && soap_tmp___ns1__modifyInvestigatorResponse->ns1__modifyInvestigatorResponse_)
-		*ns1__modifyInvestigatorResponse_ = *soap_tmp___ns1__modifyInvestigatorResponse->ns1__modifyInvestigatorResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteInvestigator(ns1__deleteInvestigator *ns1__deleteInvestigator_, ns1__deleteInvestigatorResponse *ns1__deleteInvestigatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteInvestigator soap_tmp___ns1__deleteInvestigator;
-	struct __ns1__deleteInvestigatorResponse *soap_tmp___ns1__deleteInvestigatorResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteInvestigator.ns1__deleteInvestigator_ = ns1__deleteInvestigator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteInvestigator(soap, &soap_tmp___ns1__deleteInvestigator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteInvestigator(soap, &soap_tmp___ns1__deleteInvestigator, "-ns1:deleteInvestigator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteInvestigator(soap, &soap_tmp___ns1__deleteInvestigator, "-ns1:deleteInvestigator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteInvestigatorResponse_)
-		return soap_closesock(soap);
-	ns1__deleteInvestigatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteInvestigatorResponse = soap_get___ns1__deleteInvestigatorResponse(soap, NULL, "-ns1:deleteInvestigatorResponse", "ns1:deleteInvestigatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteInvestigatorResponse_ && soap_tmp___ns1__deleteInvestigatorResponse->ns1__deleteInvestigatorResponse_)
-		*ns1__deleteInvestigatorResponse_ = *soap_tmp___ns1__deleteInvestigatorResponse->ns1__deleteInvestigatorResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeSample(ns1__removeSample *ns1__removeSample_, ns1__removeSampleResponse *ns1__removeSampleResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeSample soap_tmp___ns1__removeSample;
-	struct __ns1__removeSampleResponse *soap_tmp___ns1__removeSampleResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeSample.ns1__removeSample_ = ns1__removeSample_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeSample(soap, &soap_tmp___ns1__removeSample);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeSample(soap, &soap_tmp___ns1__removeSample, "-ns1:removeSample", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeSample(soap, &soap_tmp___ns1__removeSample, "-ns1:removeSample", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeSampleResponse_)
-		return soap_closesock(soap);
-	ns1__removeSampleResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeSampleResponse = soap_get___ns1__removeSampleResponse(soap, NULL, "-ns1:removeSampleResponse", "ns1:removeSampleResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeSampleResponse_ && soap_tmp___ns1__removeSampleResponse->ns1__removeSampleResponse_)
-		*ns1__removeSampleResponse_ = *soap_tmp___ns1__removeSampleResponse->ns1__removeSampleResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteSample(ns1__deleteSample *ns1__deleteSample_, ns1__deleteSampleResponse *ns1__deleteSampleResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteSample soap_tmp___ns1__deleteSample;
-	struct __ns1__deleteSampleResponse *soap_tmp___ns1__deleteSampleResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteSample.ns1__deleteSample_ = ns1__deleteSample_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteSample(soap, &soap_tmp___ns1__deleteSample);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteSample(soap, &soap_tmp___ns1__deleteSample, "-ns1:deleteSample", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteSample(soap, &soap_tmp___ns1__deleteSample, "-ns1:deleteSample", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteSampleResponse_)
-		return soap_closesock(soap);
-	ns1__deleteSampleResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteSampleResponse = soap_get___ns1__deleteSampleResponse(soap, NULL, "-ns1:deleteSampleResponse", "ns1:deleteSampleResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteSampleResponse_ && soap_tmp___ns1__deleteSampleResponse->ns1__deleteSampleResponse_)
-		*ns1__deleteSampleResponse_ = *soap_tmp___ns1__deleteSampleResponse->ns1__deleteSampleResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifySample(ns1__modifySample *ns1__modifySample_, ns1__modifySampleResponse *ns1__modifySampleResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifySample soap_tmp___ns1__modifySample;
-	struct __ns1__modifySampleResponse *soap_tmp___ns1__modifySampleResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifySample.ns1__modifySample_ = ns1__modifySample_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifySample(soap, &soap_tmp___ns1__modifySample);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifySample(soap, &soap_tmp___ns1__modifySample, "-ns1:modifySample", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifySample(soap, &soap_tmp___ns1__modifySample, "-ns1:modifySample", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifySampleResponse_)
-		return soap_closesock(soap);
-	ns1__modifySampleResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifySampleResponse = soap_get___ns1__modifySampleResponse(soap, NULL, "-ns1:modifySampleResponse", "ns1:modifySampleResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifySampleResponse_ && soap_tmp___ns1__modifySampleResponse->ns1__modifySampleResponse_)
-		*ns1__modifySampleResponse_ = *soap_tmp___ns1__modifySampleResponse->ns1__modifySampleResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeSampleParameter(ns1__removeSampleParameter *ns1__removeSampleParameter_, ns1__removeSampleParameterResponse *ns1__removeSampleParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeSampleParameter soap_tmp___ns1__removeSampleParameter;
-	struct __ns1__removeSampleParameterResponse *soap_tmp___ns1__removeSampleParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeSampleParameter.ns1__removeSampleParameter_ = ns1__removeSampleParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeSampleParameter(soap, &soap_tmp___ns1__removeSampleParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeSampleParameter(soap, &soap_tmp___ns1__removeSampleParameter, "-ns1:removeSampleParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeSampleParameter(soap, &soap_tmp___ns1__removeSampleParameter, "-ns1:removeSampleParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeSampleParameterResponse_)
-		return soap_closesock(soap);
-	ns1__removeSampleParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeSampleParameterResponse = soap_get___ns1__removeSampleParameterResponse(soap, NULL, "-ns1:removeSampleParameterResponse", "ns1:removeSampleParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeSampleParameterResponse_ && soap_tmp___ns1__removeSampleParameterResponse->ns1__removeSampleParameterResponse_)
-		*ns1__removeSampleParameterResponse_ = *soap_tmp___ns1__removeSampleParameterResponse->ns1__removeSampleParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteSampleParameter(ns1__deleteSampleParameter *ns1__deleteSampleParameter_, ns1__deleteSampleParameterResponse *ns1__deleteSampleParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteSampleParameter soap_tmp___ns1__deleteSampleParameter;
-	struct __ns1__deleteSampleParameterResponse *soap_tmp___ns1__deleteSampleParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteSampleParameter.ns1__deleteSampleParameter_ = ns1__deleteSampleParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteSampleParameter(soap, &soap_tmp___ns1__deleteSampleParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteSampleParameter(soap, &soap_tmp___ns1__deleteSampleParameter, "-ns1:deleteSampleParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteSampleParameter(soap, &soap_tmp___ns1__deleteSampleParameter, "-ns1:deleteSampleParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteSampleParameterResponse_)
-		return soap_closesock(soap);
-	ns1__deleteSampleParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteSampleParameterResponse = soap_get___ns1__deleteSampleParameterResponse(soap, NULL, "-ns1:deleteSampleParameterResponse", "ns1:deleteSampleParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteSampleParameterResponse_ && soap_tmp___ns1__deleteSampleParameterResponse->ns1__deleteSampleParameterResponse_)
-		*ns1__deleteSampleParameterResponse_ = *soap_tmp___ns1__deleteSampleParameterResponse->ns1__deleteSampleParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifySampleParameter(ns1__modifySampleParameter *ns1__modifySampleParameter_, ns1__modifySampleParameterResponse *ns1__modifySampleParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifySampleParameter soap_tmp___ns1__modifySampleParameter;
-	struct __ns1__modifySampleParameterResponse *soap_tmp___ns1__modifySampleParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifySampleParameter.ns1__modifySampleParameter_ = ns1__modifySampleParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifySampleParameter(soap, &soap_tmp___ns1__modifySampleParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifySampleParameter(soap, &soap_tmp___ns1__modifySampleParameter, "-ns1:modifySampleParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifySampleParameter(soap, &soap_tmp___ns1__modifySampleParameter, "-ns1:modifySampleParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifySampleParameterResponse_)
-		return soap_closesock(soap);
-	ns1__modifySampleParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifySampleParameterResponse = soap_get___ns1__modifySampleParameterResponse(soap, NULL, "-ns1:modifySampleParameterResponse", "ns1:modifySampleParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifySampleParameterResponse_ && soap_tmp___ns1__modifySampleParameterResponse->ns1__modifySampleParameterResponse_)
-		*ns1__modifySampleParameterResponse_ = *soap_tmp___ns1__modifySampleParameterResponse->ns1__modifySampleParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getAuthorisations(ns1__getAuthorisations *ns1__getAuthorisations_, ns1__getAuthorisationsResponse *ns1__getAuthorisationsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getAuthorisations soap_tmp___ns1__getAuthorisations;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getAuthorisations.ns1__getAuthorisations_ = ns1__getAuthorisations_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getAuthorisations(soap, &soap_tmp___ns1__getAuthorisations);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getAuthorisations(soap, &soap_tmp___ns1__getAuthorisations, "-ns1:getAuthorisations", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getAuthorisations(soap, &soap_tmp___ns1__getAuthorisations, "-ns1:getAuthorisations", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getAuthorisationsResponse_)
-		return soap_closesock(soap);
-	ns1__getAuthorisationsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getAuthorisationsResponse_->soap_get(soap, "ns1:getAuthorisationsResponse", "ns1:getAuthorisationsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addAuthorisation(ns1__addAuthorisation *ns1__addAuthorisation_, ns1__addAuthorisationResponse *ns1__addAuthorisationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addAuthorisation soap_tmp___ns1__addAuthorisation;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addAuthorisation.ns1__addAuthorisation_ = ns1__addAuthorisation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addAuthorisation(soap, &soap_tmp___ns1__addAuthorisation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addAuthorisation(soap, &soap_tmp___ns1__addAuthorisation, "-ns1:addAuthorisation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addAuthorisation(soap, &soap_tmp___ns1__addAuthorisation, "-ns1:addAuthorisation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addAuthorisationResponse_)
-		return soap_closesock(soap);
-	ns1__addAuthorisationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addAuthorisationResponse_->soap_get(soap, "ns1:addAuthorisationResponse", "ns1:addAuthorisationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteAuthorisation(ns1__deleteAuthorisation *ns1__deleteAuthorisation_, ns1__deleteAuthorisationResponse *ns1__deleteAuthorisationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteAuthorisation soap_tmp___ns1__deleteAuthorisation;
-	struct __ns1__deleteAuthorisationResponse *soap_tmp___ns1__deleteAuthorisationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteAuthorisation.ns1__deleteAuthorisation_ = ns1__deleteAuthorisation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteAuthorisation(soap, &soap_tmp___ns1__deleteAuthorisation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteAuthorisation(soap, &soap_tmp___ns1__deleteAuthorisation, "-ns1:deleteAuthorisation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteAuthorisation(soap, &soap_tmp___ns1__deleteAuthorisation, "-ns1:deleteAuthorisation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteAuthorisationResponse_)
-		return soap_closesock(soap);
-	ns1__deleteAuthorisationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteAuthorisationResponse = soap_get___ns1__deleteAuthorisationResponse(soap, NULL, "-ns1:deleteAuthorisationResponse", "ns1:deleteAuthorisationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteAuthorisationResponse_ && soap_tmp___ns1__deleteAuthorisationResponse->ns1__deleteAuthorisationResponse_)
-		*ns1__deleteAuthorisationResponse_ = *soap_tmp___ns1__deleteAuthorisationResponse->ns1__deleteAuthorisationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeAuthorisation(ns1__removeAuthorisation *ns1__removeAuthorisation_, ns1__removeAuthorisationResponse *ns1__removeAuthorisationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeAuthorisation soap_tmp___ns1__removeAuthorisation;
-	struct __ns1__removeAuthorisationResponse *soap_tmp___ns1__removeAuthorisationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeAuthorisation.ns1__removeAuthorisation_ = ns1__removeAuthorisation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeAuthorisation(soap, &soap_tmp___ns1__removeAuthorisation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeAuthorisation(soap, &soap_tmp___ns1__removeAuthorisation, "-ns1:removeAuthorisation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeAuthorisation(soap, &soap_tmp___ns1__removeAuthorisation, "-ns1:removeAuthorisation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeAuthorisationResponse_)
-		return soap_closesock(soap);
-	ns1__removeAuthorisationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeAuthorisationResponse = soap_get___ns1__removeAuthorisationResponse(soap, NULL, "-ns1:removeAuthorisationResponse", "ns1:removeAuthorisationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeAuthorisationResponse_ && soap_tmp___ns1__removeAuthorisationResponse->ns1__removeAuthorisationResponse_)
-		*ns1__removeAuthorisationResponse_ = *soap_tmp___ns1__removeAuthorisationResponse->ns1__removeAuthorisationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::updateAuthorisation(ns1__updateAuthorisation *ns1__updateAuthorisation_, ns1__updateAuthorisationResponse *ns1__updateAuthorisationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__updateAuthorisation soap_tmp___ns1__updateAuthorisation;
-	struct __ns1__updateAuthorisationResponse *soap_tmp___ns1__updateAuthorisationResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__updateAuthorisation.ns1__updateAuthorisation_ = ns1__updateAuthorisation_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__updateAuthorisation(soap, &soap_tmp___ns1__updateAuthorisation);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__updateAuthorisation(soap, &soap_tmp___ns1__updateAuthorisation, "-ns1:updateAuthorisation", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__updateAuthorisation(soap, &soap_tmp___ns1__updateAuthorisation, "-ns1:updateAuthorisation", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__updateAuthorisationResponse_)
-		return soap_closesock(soap);
-	ns1__updateAuthorisationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__updateAuthorisationResponse = soap_get___ns1__updateAuthorisationResponse(soap, NULL, "-ns1:updateAuthorisationResponse", "ns1:updateAuthorisationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__updateAuthorisationResponse_ && soap_tmp___ns1__updateAuthorisationResponse->ns1__updateAuthorisationResponse_)
-		*ns1__updateAuthorisationResponse_ = *soap_tmp___ns1__updateAuthorisationResponse->ns1__updateAuthorisationResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getUserDetails(ns1__getUserDetails *ns1__getUserDetails_, ns1__getUserDetailsResponse *ns1__getUserDetailsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getUserDetails soap_tmp___ns1__getUserDetails;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getUserDetails.ns1__getUserDetails_ = ns1__getUserDetails_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getUserDetails(soap, &soap_tmp___ns1__getUserDetails);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getUserDetails(soap, &soap_tmp___ns1__getUserDetails, "-ns1:getUserDetails", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getUserDetails(soap, &soap_tmp___ns1__getUserDetails, "-ns1:getUserDetails", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getUserDetailsResponse_)
-		return soap_closesock(soap);
-	ns1__getUserDetailsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getUserDetailsResponse_->soap_get(soap, "ns1:getUserDetailsResponse", "ns1:getUserDetailsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getDatafiles(ns1__getDatafiles *ns1__getDatafiles_, ns1__getDatafilesResponse *ns1__getDatafilesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getDatafiles soap_tmp___ns1__getDatafiles;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getDatafiles.ns1__getDatafiles_ = ns1__getDatafiles_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getDatafiles(soap, &soap_tmp___ns1__getDatafiles);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getDatafiles(soap, &soap_tmp___ns1__getDatafiles, "-ns1:getDatafiles", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getDatafiles(soap, &soap_tmp___ns1__getDatafiles, "-ns1:getDatafiles", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getDatafilesResponse_)
-		return soap_closesock(soap);
-	ns1__getDatafilesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getDatafilesResponse_->soap_get(soap, "ns1:getDatafilesResponse", "ns1:getDatafilesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::createDataFile(ns1__createDataFile *ns1__createDataFile_, ns1__createDataFileResponse *ns1__createDataFileResponse_)
-{	struct soap *soap = this;
-	struct __ns1__createDataFile soap_tmp___ns1__createDataFile;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__createDataFile.ns1__createDataFile_ = ns1__createDataFile_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__createDataFile(soap, &soap_tmp___ns1__createDataFile);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__createDataFile(soap, &soap_tmp___ns1__createDataFile, "-ns1:createDataFile", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__createDataFile(soap, &soap_tmp___ns1__createDataFile, "-ns1:createDataFile", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__createDataFileResponse_)
-		return soap_closesock(soap);
-	ns1__createDataFileResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__createDataFileResponse_->soap_get(soap, "ns1:createDataFileResponse", "ns1:createDataFileResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::createDataFiles(ns1__createDataFiles *ns1__createDataFiles_, ns1__createDataFilesResponse *ns1__createDataFilesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__createDataFiles soap_tmp___ns1__createDataFiles;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__createDataFiles.ns1__createDataFiles_ = ns1__createDataFiles_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__createDataFiles(soap, &soap_tmp___ns1__createDataFiles);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__createDataFiles(soap, &soap_tmp___ns1__createDataFiles, "-ns1:createDataFiles", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__createDataFiles(soap, &soap_tmp___ns1__createDataFiles, "-ns1:createDataFiles", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__createDataFilesResponse_)
-		return soap_closesock(soap);
-	ns1__createDataFilesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__createDataFilesResponse_->soap_get(soap, "ns1:createDataFilesResponse", "ns1:createDataFilesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteDataFile(ns1__deleteDataFile *ns1__deleteDataFile_, ns1__deleteDataFileResponse *ns1__deleteDataFileResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteDataFile soap_tmp___ns1__deleteDataFile;
-	struct __ns1__deleteDataFileResponse *soap_tmp___ns1__deleteDataFileResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteDataFile.ns1__deleteDataFile_ = ns1__deleteDataFile_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteDataFile(soap, &soap_tmp___ns1__deleteDataFile);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteDataFile(soap, &soap_tmp___ns1__deleteDataFile, "-ns1:deleteDataFile", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteDataFile(soap, &soap_tmp___ns1__deleteDataFile, "-ns1:deleteDataFile", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteDataFileResponse_)
-		return soap_closesock(soap);
-	ns1__deleteDataFileResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteDataFileResponse = soap_get___ns1__deleteDataFileResponse(soap, NULL, "-ns1:deleteDataFileResponse", "ns1:deleteDataFileResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteDataFileResponse_ && soap_tmp___ns1__deleteDataFileResponse->ns1__deleteDataFileResponse_)
-		*ns1__deleteDataFileResponse_ = *soap_tmp___ns1__deleteDataFileResponse->ns1__deleteDataFileResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeDataFile(ns1__removeDataFile *ns1__removeDataFile_, ns1__removeDataFileResponse *ns1__removeDataFileResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeDataFile soap_tmp___ns1__removeDataFile;
-	struct __ns1__removeDataFileResponse *soap_tmp___ns1__removeDataFileResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeDataFile.ns1__removeDataFile_ = ns1__removeDataFile_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeDataFile(soap, &soap_tmp___ns1__removeDataFile);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeDataFile(soap, &soap_tmp___ns1__removeDataFile, "-ns1:removeDataFile", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeDataFile(soap, &soap_tmp___ns1__removeDataFile, "-ns1:removeDataFile", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeDataFileResponse_)
-		return soap_closesock(soap);
-	ns1__removeDataFileResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeDataFileResponse = soap_get___ns1__removeDataFileResponse(soap, NULL, "-ns1:removeDataFileResponse", "ns1:removeDataFileResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeDataFileResponse_ && soap_tmp___ns1__removeDataFileResponse->ns1__removeDataFileResponse_)
-		*ns1__removeDataFileResponse_ = *soap_tmp___ns1__removeDataFileResponse->ns1__removeDataFileResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyDataFile(ns1__modifyDataFile *ns1__modifyDataFile_, ns1__modifyDataFileResponse *ns1__modifyDataFileResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyDataFile soap_tmp___ns1__modifyDataFile;
-	struct __ns1__modifyDataFileResponse *soap_tmp___ns1__modifyDataFileResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyDataFile.ns1__modifyDataFile_ = ns1__modifyDataFile_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyDataFile(soap, &soap_tmp___ns1__modifyDataFile);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyDataFile(soap, &soap_tmp___ns1__modifyDataFile, "-ns1:modifyDataFile", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyDataFile(soap, &soap_tmp___ns1__modifyDataFile, "-ns1:modifyDataFile", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyDataFileResponse_)
-		return soap_closesock(soap);
-	ns1__modifyDataFileResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyDataFileResponse = soap_get___ns1__modifyDataFileResponse(soap, NULL, "-ns1:modifyDataFileResponse", "ns1:modifyDataFileResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyDataFileResponse_ && soap_tmp___ns1__modifyDataFileResponse->ns1__modifyDataFileResponse_)
-		*ns1__modifyDataFileResponse_ = *soap_tmp___ns1__modifyDataFileResponse->ns1__modifyDataFileResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addDataFileParameters(ns1__addDataFileParameters *ns1__addDataFileParameters_, ns1__addDataFileParametersResponse *ns1__addDataFileParametersResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addDataFileParameters soap_tmp___ns1__addDataFileParameters;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addDataFileParameters.ns1__addDataFileParameters_ = ns1__addDataFileParameters_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addDataFileParameters(soap, &soap_tmp___ns1__addDataFileParameters);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addDataFileParameters(soap, &soap_tmp___ns1__addDataFileParameters, "-ns1:addDataFileParameters", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addDataFileParameters(soap, &soap_tmp___ns1__addDataFileParameters, "-ns1:addDataFileParameters", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addDataFileParametersResponse_)
-		return soap_closesock(soap);
-	ns1__addDataFileParametersResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addDataFileParametersResponse_->soap_get(soap, "ns1:addDataFileParametersResponse", "ns1:addDataFileParametersResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyDataFileParameter(ns1__modifyDataFileParameter *ns1__modifyDataFileParameter_, ns1__modifyDataFileParameterResponse *ns1__modifyDataFileParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyDataFileParameter soap_tmp___ns1__modifyDataFileParameter;
-	struct __ns1__modifyDataFileParameterResponse *soap_tmp___ns1__modifyDataFileParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyDataFileParameter.ns1__modifyDataFileParameter_ = ns1__modifyDataFileParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyDataFileParameter(soap, &soap_tmp___ns1__modifyDataFileParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyDataFileParameter(soap, &soap_tmp___ns1__modifyDataFileParameter, "-ns1:modifyDataFileParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyDataFileParameter(soap, &soap_tmp___ns1__modifyDataFileParameter, "-ns1:modifyDataFileParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyDataFileParameterResponse_)
-		return soap_closesock(soap);
-	ns1__modifyDataFileParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyDataFileParameterResponse = soap_get___ns1__modifyDataFileParameterResponse(soap, NULL, "-ns1:modifyDataFileParameterResponse", "ns1:modifyDataFileParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyDataFileParameterResponse_ && soap_tmp___ns1__modifyDataFileParameterResponse->ns1__modifyDataFileParameterResponse_)
-		*ns1__modifyDataFileParameterResponse_ = *soap_tmp___ns1__modifyDataFileParameterResponse->ns1__modifyDataFileParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeDataFileParameter(ns1__removeDataFileParameter *ns1__removeDataFileParameter_, ns1__removeDataFileParameterResponse *ns1__removeDataFileParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeDataFileParameter soap_tmp___ns1__removeDataFileParameter;
-	struct __ns1__removeDataFileParameterResponse *soap_tmp___ns1__removeDataFileParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeDataFileParameter.ns1__removeDataFileParameter_ = ns1__removeDataFileParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeDataFileParameter(soap, &soap_tmp___ns1__removeDataFileParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeDataFileParameter(soap, &soap_tmp___ns1__removeDataFileParameter, "-ns1:removeDataFileParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeDataFileParameter(soap, &soap_tmp___ns1__removeDataFileParameter, "-ns1:removeDataFileParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeDataFileParameterResponse_)
-		return soap_closesock(soap);
-	ns1__removeDataFileParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeDataFileParameterResponse = soap_get___ns1__removeDataFileParameterResponse(soap, NULL, "-ns1:removeDataFileParameterResponse", "ns1:removeDataFileParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeDataFileParameterResponse_ && soap_tmp___ns1__removeDataFileParameterResponse->ns1__removeDataFileParameterResponse_)
-		*ns1__removeDataFileParameterResponse_ = *soap_tmp___ns1__removeDataFileParameterResponse->ns1__removeDataFileParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteDataFileParameter(ns1__deleteDataFileParameter *ns1__deleteDataFileParameter_, ns1__deleteDataFileParameterResponse *ns1__deleteDataFileParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteDataFileParameter soap_tmp___ns1__deleteDataFileParameter;
-	struct __ns1__deleteDataFileParameterResponse *soap_tmp___ns1__deleteDataFileParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteDataFileParameter.ns1__deleteDataFileParameter_ = ns1__deleteDataFileParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteDataFileParameter(soap, &soap_tmp___ns1__deleteDataFileParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteDataFileParameter(soap, &soap_tmp___ns1__deleteDataFileParameter, "-ns1:deleteDataFileParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteDataFileParameter(soap, &soap_tmp___ns1__deleteDataFileParameter, "-ns1:deleteDataFileParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteDataFileParameterResponse_)
-		return soap_closesock(soap);
-	ns1__deleteDataFileParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteDataFileParameterResponse = soap_get___ns1__deleteDataFileParameterResponse(soap, NULL, "-ns1:deleteDataFileParameterResponse", "ns1:deleteDataFileParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteDataFileParameterResponse_ && soap_tmp___ns1__deleteDataFileParameterResponse->ns1__deleteDataFileParameterResponse_)
-		*ns1__deleteDataFileParameterResponse_ = *soap_tmp___ns1__deleteDataFileParameterResponse->ns1__deleteDataFileParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getKeywordsForUser(ns1__getKeywordsForUser *ns1__getKeywordsForUser_, ns1__getKeywordsForUserResponse *ns1__getKeywordsForUserResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getKeywordsForUser soap_tmp___ns1__getKeywordsForUser;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getKeywordsForUser.ns1__getKeywordsForUser_ = ns1__getKeywordsForUser_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getKeywordsForUser(soap, &soap_tmp___ns1__getKeywordsForUser);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getKeywordsForUser(soap, &soap_tmp___ns1__getKeywordsForUser, "-ns1:getKeywordsForUser", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getKeywordsForUser(soap, &soap_tmp___ns1__getKeywordsForUser, "-ns1:getKeywordsForUser", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getKeywordsForUserResponse_)
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserResponse_->soap_get(soap, "ns1:getKeywordsForUserResponse", "ns1:getKeywordsForUserResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getKeywordsForUserStartWithMax(ns1__getKeywordsForUserStartWithMax *ns1__getKeywordsForUserStartWithMax_, ns1__getKeywordsForUserStartWithMaxResponse *ns1__getKeywordsForUserStartWithMaxResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getKeywordsForUserStartWithMax soap_tmp___ns1__getKeywordsForUserStartWithMax;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getKeywordsForUserStartWithMax.ns1__getKeywordsForUserStartWithMax_ = ns1__getKeywordsForUserStartWithMax_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getKeywordsForUserStartWithMax(soap, &soap_tmp___ns1__getKeywordsForUserStartWithMax);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getKeywordsForUserStartWithMax(soap, &soap_tmp___ns1__getKeywordsForUserStartWithMax, "-ns1:getKeywordsForUserStartWithMax", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getKeywordsForUserStartWithMax(soap, &soap_tmp___ns1__getKeywordsForUserStartWithMax, "-ns1:getKeywordsForUserStartWithMax", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getKeywordsForUserStartWithMaxResponse_)
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserStartWithMaxResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserStartWithMaxResponse_->soap_get(soap, "ns1:getKeywordsForUserStartWithMaxResponse", "ns1:getKeywordsForUserStartWithMaxResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getKeywordsForUserMax(ns1__getKeywordsForUserMax *ns1__getKeywordsForUserMax_, ns1__getKeywordsForUserMaxResponse *ns1__getKeywordsForUserMaxResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getKeywordsForUserMax soap_tmp___ns1__getKeywordsForUserMax;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getKeywordsForUserMax.ns1__getKeywordsForUserMax_ = ns1__getKeywordsForUserMax_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getKeywordsForUserMax(soap, &soap_tmp___ns1__getKeywordsForUserMax);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getKeywordsForUserMax(soap, &soap_tmp___ns1__getKeywordsForUserMax, "-ns1:getKeywordsForUserMax", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getKeywordsForUserMax(soap, &soap_tmp___ns1__getKeywordsForUserMax, "-ns1:getKeywordsForUserMax", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getKeywordsForUserMaxResponse_)
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserMaxResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserMaxResponse_->soap_get(soap, "ns1:getKeywordsForUserMaxResponse", "ns1:getKeywordsForUserMaxResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getKeywordsForUserType(ns1__getKeywordsForUserType *ns1__getKeywordsForUserType_, ns1__getKeywordsForUserTypeResponse *ns1__getKeywordsForUserTypeResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getKeywordsForUserType soap_tmp___ns1__getKeywordsForUserType;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getKeywordsForUserType.ns1__getKeywordsForUserType_ = ns1__getKeywordsForUserType_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getKeywordsForUserType(soap, &soap_tmp___ns1__getKeywordsForUserType);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getKeywordsForUserType(soap, &soap_tmp___ns1__getKeywordsForUserType, "-ns1:getKeywordsForUserType", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getKeywordsForUserType(soap, &soap_tmp___ns1__getKeywordsForUserType, "-ns1:getKeywordsForUserType", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getKeywordsForUserTypeResponse_)
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserTypeResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getKeywordsForUserTypeResponse_->soap_get(soap, "ns1:getKeywordsForUserTypeResponse", "ns1:getKeywordsForUserTypeResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getAllKeywords(ns1__getAllKeywords *ns1__getAllKeywords_, ns1__getAllKeywordsResponse *ns1__getAllKeywordsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getAllKeywords soap_tmp___ns1__getAllKeywords;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getAllKeywords.ns1__getAllKeywords_ = ns1__getAllKeywords_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getAllKeywords(soap, &soap_tmp___ns1__getAllKeywords);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getAllKeywords(soap, &soap_tmp___ns1__getAllKeywords, "-ns1:getAllKeywords", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getAllKeywords(soap, &soap_tmp___ns1__getAllKeywords, "-ns1:getAllKeywords", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getAllKeywordsResponse_)
-		return soap_closesock(soap);
-	ns1__getAllKeywordsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getAllKeywordsResponse_->soap_get(soap, "ns1:getAllKeywordsResponse", "ns1:getAllKeywordsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::downloadDatafile(ns1__downloadDatafile *ns1__downloadDatafile_, ns1__downloadDatafileResponse *ns1__downloadDatafileResponse_)
-{	struct soap *soap = this;
-	struct __ns1__downloadDatafile soap_tmp___ns1__downloadDatafile;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__downloadDatafile.ns1__downloadDatafile_ = ns1__downloadDatafile_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__downloadDatafile(soap, &soap_tmp___ns1__downloadDatafile);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__downloadDatafile(soap, &soap_tmp___ns1__downloadDatafile, "-ns1:downloadDatafile", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__downloadDatafile(soap, &soap_tmp___ns1__downloadDatafile, "-ns1:downloadDatafile", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__downloadDatafileResponse_)
-		return soap_closesock(soap);
-	ns1__downloadDatafileResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__downloadDatafileResponse_->soap_get(soap, "ns1:downloadDatafileResponse", "ns1:downloadDatafileResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::downloadDatafiles(ns1__downloadDatafiles *ns1__downloadDatafiles_, ns1__downloadDatafilesResponse *ns1__downloadDatafilesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__downloadDatafiles soap_tmp___ns1__downloadDatafiles;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__downloadDatafiles.ns1__downloadDatafiles_ = ns1__downloadDatafiles_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__downloadDatafiles(soap, &soap_tmp___ns1__downloadDatafiles);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__downloadDatafiles(soap, &soap_tmp___ns1__downloadDatafiles, "-ns1:downloadDatafiles", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__downloadDatafiles(soap, &soap_tmp___ns1__downloadDatafiles, "-ns1:downloadDatafiles", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__downloadDatafilesResponse_)
-		return soap_closesock(soap);
-	ns1__downloadDatafilesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__downloadDatafilesResponse_->soap_get(soap, "ns1:downloadDatafilesResponse", "ns1:downloadDatafilesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::downloadDataset(ns1__downloadDataset *ns1__downloadDataset_, ns1__downloadDatasetResponse *ns1__downloadDatasetResponse_)
-{	struct soap *soap = this;
-	struct __ns1__downloadDataset soap_tmp___ns1__downloadDataset;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__downloadDataset.ns1__downloadDataset_ = ns1__downloadDataset_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__downloadDataset(soap, &soap_tmp___ns1__downloadDataset);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__downloadDataset(soap, &soap_tmp___ns1__downloadDataset, "-ns1:downloadDataset", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__downloadDataset(soap, &soap_tmp___ns1__downloadDataset, "-ns1:downloadDataset", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__downloadDatasetResponse_)
-		return soap_closesock(soap);
-	ns1__downloadDatasetResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__downloadDatasetResponse_->soap_get(soap, "ns1:downloadDatasetResponse", "ns1:downloadDatasetResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::checkDatafileDownloadAccess(ns1__checkDatafileDownloadAccess *ns1__checkDatafileDownloadAccess_, ns1__checkDatafileDownloadAccessResponse *ns1__checkDatafileDownloadAccessResponse_)
-{	struct soap *soap = this;
-	struct __ns1__checkDatafileDownloadAccess soap_tmp___ns1__checkDatafileDownloadAccess;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__checkDatafileDownloadAccess.ns1__checkDatafileDownloadAccess_ = ns1__checkDatafileDownloadAccess_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__checkDatafileDownloadAccess(soap, &soap_tmp___ns1__checkDatafileDownloadAccess);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__checkDatafileDownloadAccess(soap, &soap_tmp___ns1__checkDatafileDownloadAccess, "-ns1:checkDatafileDownloadAccess", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__checkDatafileDownloadAccess(soap, &soap_tmp___ns1__checkDatafileDownloadAccess, "-ns1:checkDatafileDownloadAccess", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__checkDatafileDownloadAccessResponse_)
-		return soap_closesock(soap);
-	ns1__checkDatafileDownloadAccessResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__checkDatafileDownloadAccessResponse_->soap_get(soap, "ns1:checkDatafileDownloadAccessResponse", "ns1:checkDatafileDownloadAccessResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::checkDatasetDownloadAccess(ns1__checkDatasetDownloadAccess *ns1__checkDatasetDownloadAccess_, ns1__checkDatasetDownloadAccessResponse *ns1__checkDatasetDownloadAccessResponse_)
-{	struct soap *soap = this;
-	struct __ns1__checkDatasetDownloadAccess soap_tmp___ns1__checkDatasetDownloadAccess;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__checkDatasetDownloadAccess.ns1__checkDatasetDownloadAccess_ = ns1__checkDatasetDownloadAccess_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__checkDatasetDownloadAccess(soap, &soap_tmp___ns1__checkDatasetDownloadAccess);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__checkDatasetDownloadAccess(soap, &soap_tmp___ns1__checkDatasetDownloadAccess, "-ns1:checkDatasetDownloadAccess", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__checkDatasetDownloadAccess(soap, &soap_tmp___ns1__checkDatasetDownloadAccess, "-ns1:checkDatasetDownloadAccess", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__checkDatasetDownloadAccessResponse_)
-		return soap_closesock(soap);
-	ns1__checkDatasetDownloadAccessResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__checkDatasetDownloadAccessResponse_->soap_get(soap, "ns1:checkDatasetDownloadAccessResponse", "ns1:checkDatasetDownloadAccessResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByAdvanced(ns1__searchByAdvanced *ns1__searchByAdvanced_, ns1__searchByAdvancedResponse *ns1__searchByAdvancedResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByAdvanced soap_tmp___ns1__searchByAdvanced;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByAdvanced.ns1__searchByAdvanced_ = ns1__searchByAdvanced_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByAdvanced(soap, &soap_tmp___ns1__searchByAdvanced);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByAdvanced(soap, &soap_tmp___ns1__searchByAdvanced, "-ns1:searchByAdvanced", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByAdvanced(soap, &soap_tmp___ns1__searchByAdvanced, "-ns1:searchByAdvanced", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByAdvancedResponse_)
-		return soap_closesock(soap);
-	ns1__searchByAdvancedResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByAdvancedResponse_->soap_get(soap, "ns1:searchByAdvancedResponse", "ns1:searchByAdvancedResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByAdvancedPagination(ns1__searchByAdvancedPagination *ns1__searchByAdvancedPagination_, ns1__searchByAdvancedPaginationResponse *ns1__searchByAdvancedPaginationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByAdvancedPagination soap_tmp___ns1__searchByAdvancedPagination;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByAdvancedPagination.ns1__searchByAdvancedPagination_ = ns1__searchByAdvancedPagination_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByAdvancedPagination(soap, &soap_tmp___ns1__searchByAdvancedPagination);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByAdvancedPagination(soap, &soap_tmp___ns1__searchByAdvancedPagination, "-ns1:searchByAdvancedPagination", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByAdvancedPagination(soap, &soap_tmp___ns1__searchByAdvancedPagination, "-ns1:searchByAdvancedPagination", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByAdvancedPaginationResponse_)
-		return soap_closesock(soap);
-	ns1__searchByAdvancedPaginationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByAdvancedPaginationResponse_->soap_get(soap, "ns1:searchByAdvancedPaginationResponse", "ns1:searchByAdvancedPaginationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByKeywords(ns1__searchByKeywords *ns1__searchByKeywords_, ns1__searchByKeywordsResponse *ns1__searchByKeywordsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByKeywords soap_tmp___ns1__searchByKeywords;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByKeywords.ns1__searchByKeywords_ = ns1__searchByKeywords_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByKeywords(soap, &soap_tmp___ns1__searchByKeywords);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByKeywords(soap, &soap_tmp___ns1__searchByKeywords, "-ns1:searchByKeywords", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByKeywords(soap, &soap_tmp___ns1__searchByKeywords, "-ns1:searchByKeywords", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByKeywordsResponse_)
-		return soap_closesock(soap);
-	ns1__searchByKeywordsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByKeywordsResponse_->soap_get(soap, "ns1:searchByKeywordsResponse", "ns1:searchByKeywordsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByKeywordsAll(ns1__searchByKeywordsAll *ns1__searchByKeywordsAll_, ns1__searchByKeywordsAllResponse *ns1__searchByKeywordsAllResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByKeywordsAll soap_tmp___ns1__searchByKeywordsAll;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByKeywordsAll.ns1__searchByKeywordsAll_ = ns1__searchByKeywordsAll_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByKeywordsAll(soap, &soap_tmp___ns1__searchByKeywordsAll);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByKeywordsAll(soap, &soap_tmp___ns1__searchByKeywordsAll, "-ns1:searchByKeywordsAll", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByKeywordsAll(soap, &soap_tmp___ns1__searchByKeywordsAll, "-ns1:searchByKeywordsAll", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByKeywordsAllResponse_)
-		return soap_closesock(soap);
-	ns1__searchByKeywordsAllResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByKeywordsAllResponse_->soap_get(soap, "ns1:searchByKeywordsAllResponse", "ns1:searchByKeywordsAllResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getMyInvestigations(ns1__getMyInvestigations *ns1__getMyInvestigations_, ns1__getMyInvestigationsResponse *ns1__getMyInvestigationsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getMyInvestigations soap_tmp___ns1__getMyInvestigations;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getMyInvestigations.ns1__getMyInvestigations_ = ns1__getMyInvestigations_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getMyInvestigations(soap, &soap_tmp___ns1__getMyInvestigations);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getMyInvestigations(soap, &soap_tmp___ns1__getMyInvestigations, "-ns1:getMyInvestigations", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getMyInvestigations(soap, &soap_tmp___ns1__getMyInvestigations, "-ns1:getMyInvestigations", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getMyInvestigationsResponse_)
-		return soap_closesock(soap);
-	ns1__getMyInvestigationsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getMyInvestigationsResponse_->soap_get(soap, "ns1:getMyInvestigationsResponse", "ns1:getMyInvestigationsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getMyInvestigationsIncludes(ns1__getMyInvestigationsIncludes *ns1__getMyInvestigationsIncludes_, ns1__getMyInvestigationsIncludesResponse *ns1__getMyInvestigationsIncludesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getMyInvestigationsIncludes soap_tmp___ns1__getMyInvestigationsIncludes;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getMyInvestigationsIncludes.ns1__getMyInvestigationsIncludes_ = ns1__getMyInvestigationsIncludes_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getMyInvestigationsIncludes(soap, &soap_tmp___ns1__getMyInvestigationsIncludes);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getMyInvestigationsIncludes(soap, &soap_tmp___ns1__getMyInvestigationsIncludes, "-ns1:getMyInvestigationsIncludes", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getMyInvestigationsIncludes(soap, &soap_tmp___ns1__getMyInvestigationsIncludes, "-ns1:getMyInvestigationsIncludes", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getMyInvestigationsIncludesResponse_)
-		return soap_closesock(soap);
-	ns1__getMyInvestigationsIncludesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getMyInvestigationsIncludesResponse_->soap_get(soap, "ns1:getMyInvestigationsIncludesResponse", "ns1:getMyInvestigationsIncludesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getMyInvestigationsIncludesPagination(ns1__getMyInvestigationsIncludesPagination *ns1__getMyInvestigationsIncludesPagination_, ns1__getMyInvestigationsIncludesPaginationResponse *ns1__getMyInvestigationsIncludesPaginationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getMyInvestigationsIncludesPagination soap_tmp___ns1__getMyInvestigationsIncludesPagination;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getMyInvestigationsIncludesPagination.ns1__getMyInvestigationsIncludesPagination_ = ns1__getMyInvestigationsIncludesPagination_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getMyInvestigationsIncludesPagination(soap, &soap_tmp___ns1__getMyInvestigationsIncludesPagination);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getMyInvestigationsIncludesPagination(soap, &soap_tmp___ns1__getMyInvestigationsIncludesPagination, "-ns1:getMyInvestigationsIncludesPagination", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getMyInvestigationsIncludesPagination(soap, &soap_tmp___ns1__getMyInvestigationsIncludesPagination, "-ns1:getMyInvestigationsIncludesPagination", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getMyInvestigationsIncludesPaginationResponse_)
-		return soap_closesock(soap);
-	ns1__getMyInvestigationsIncludesPaginationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getMyInvestigationsIncludesPaginationResponse_->soap_get(soap, "ns1:getMyInvestigationsIncludesPaginationResponse", "ns1:getMyInvestigationsIncludesPaginationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByUserID(ns1__searchByUserID *ns1__searchByUserID_, ns1__searchByUserIDResponse *ns1__searchByUserIDResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByUserID soap_tmp___ns1__searchByUserID;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByUserID.ns1__searchByUserID_ = ns1__searchByUserID_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByUserID(soap, &soap_tmp___ns1__searchByUserID);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByUserID(soap, &soap_tmp___ns1__searchByUserID, "-ns1:searchByUserID", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByUserID(soap, &soap_tmp___ns1__searchByUserID, "-ns1:searchByUserID", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByUserIDResponse_)
-		return soap_closesock(soap);
-	ns1__searchByUserIDResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByUserIDResponse_->soap_get(soap, "ns1:searchByUserIDResponse", "ns1:searchByUserIDResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByUserIDPagination(ns1__searchByUserIDPagination *ns1__searchByUserIDPagination_, ns1__searchByUserIDPaginationResponse *ns1__searchByUserIDPaginationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByUserIDPagination soap_tmp___ns1__searchByUserIDPagination;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByUserIDPagination.ns1__searchByUserIDPagination_ = ns1__searchByUserIDPagination_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByUserIDPagination(soap, &soap_tmp___ns1__searchByUserIDPagination);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByUserIDPagination(soap, &soap_tmp___ns1__searchByUserIDPagination, "-ns1:searchByUserIDPagination", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByUserIDPagination(soap, &soap_tmp___ns1__searchByUserIDPagination, "-ns1:searchByUserIDPagination", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByUserIDPaginationResponse_)
-		return soap_closesock(soap);
-	ns1__searchByUserIDPaginationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByUserIDPaginationResponse_->soap_get(soap, "ns1:searchByUserIDPaginationResponse", "ns1:searchByUserIDPaginationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByUserSurname(ns1__searchByUserSurname *ns1__searchByUserSurname_, ns1__searchByUserSurnameResponse *ns1__searchByUserSurnameResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByUserSurname soap_tmp___ns1__searchByUserSurname;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByUserSurname.ns1__searchByUserSurname_ = ns1__searchByUserSurname_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByUserSurname(soap, &soap_tmp___ns1__searchByUserSurname);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByUserSurname(soap, &soap_tmp___ns1__searchByUserSurname, "-ns1:searchByUserSurname", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByUserSurname(soap, &soap_tmp___ns1__searchByUserSurname, "-ns1:searchByUserSurname", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByUserSurnameResponse_)
-		return soap_closesock(soap);
-	ns1__searchByUserSurnameResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByUserSurnameResponse_->soap_get(soap, "ns1:searchByUserSurnameResponse", "ns1:searchByUserSurnameResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByUserSurnamePagination(ns1__searchByUserSurnamePagination *ns1__searchByUserSurnamePagination_, ns1__searchByUserSurnamePaginationResponse *ns1__searchByUserSurnamePaginationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByUserSurnamePagination soap_tmp___ns1__searchByUserSurnamePagination;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByUserSurnamePagination.ns1__searchByUserSurnamePagination_ = ns1__searchByUserSurnamePagination_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByUserSurnamePagination(soap, &soap_tmp___ns1__searchByUserSurnamePagination);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByUserSurnamePagination(soap, &soap_tmp___ns1__searchByUserSurnamePagination, "-ns1:searchByUserSurnamePagination", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByUserSurnamePagination(soap, &soap_tmp___ns1__searchByUserSurnamePagination, "-ns1:searchByUserSurnamePagination", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByUserSurnamePaginationResponse_)
-		return soap_closesock(soap);
-	ns1__searchByUserSurnamePaginationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByUserSurnamePaginationResponse_->soap_get(soap, "ns1:searchByUserSurnamePaginationResponse", "ns1:searchByUserSurnamePaginationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listInstruments(ns1__listInstruments *ns1__listInstruments_, ns1__listInstrumentsResponse *ns1__listInstrumentsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listInstruments soap_tmp___ns1__listInstruments;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listInstruments.ns1__listInstruments_ = ns1__listInstruments_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listInstruments(soap, &soap_tmp___ns1__listInstruments);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listInstruments(soap, &soap_tmp___ns1__listInstruments, "-ns1:listInstruments", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listInstruments(soap, &soap_tmp___ns1__listInstruments, "-ns1:listInstruments", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listInstrumentsResponse_)
-		return soap_closesock(soap);
-	ns1__listInstrumentsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listInstrumentsResponse_->soap_get(soap, "ns1:listInstrumentsResponse", "ns1:listInstrumentsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listRoles(ns1__listRoles *ns1__listRoles_, ns1__listRolesResponse *ns1__listRolesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listRoles soap_tmp___ns1__listRoles;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listRoles.ns1__listRoles_ = ns1__listRoles_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listRoles(soap, &soap_tmp___ns1__listRoles);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listRoles(soap, &soap_tmp___ns1__listRoles, "-ns1:listRoles", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listRoles(soap, &soap_tmp___ns1__listRoles, "-ns1:listRoles", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listRolesResponse_)
-		return soap_closesock(soap);
-	ns1__listRolesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listRolesResponse_->soap_get(soap, "ns1:listRolesResponse", "ns1:listRolesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listParameters(ns1__listParameters *ns1__listParameters_, ns1__listParametersResponse *ns1__listParametersResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listParameters soap_tmp___ns1__listParameters;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listParameters.ns1__listParameters_ = ns1__listParameters_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listParameters(soap, &soap_tmp___ns1__listParameters);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listParameters(soap, &soap_tmp___ns1__listParameters, "-ns1:listParameters", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listParameters(soap, &soap_tmp___ns1__listParameters, "-ns1:listParameters", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listParametersResponse_)
-		return soap_closesock(soap);
-	ns1__listParametersResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listParametersResponse_->soap_get(soap, "ns1:listParametersResponse", "ns1:listParametersResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listFacilityCycles(ns1__listFacilityCycles *ns1__listFacilityCycles_, ns1__listFacilityCyclesResponse *ns1__listFacilityCyclesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listFacilityCycles soap_tmp___ns1__listFacilityCycles;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listFacilityCycles.ns1__listFacilityCycles_ = ns1__listFacilityCycles_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listFacilityCycles(soap, &soap_tmp___ns1__listFacilityCycles);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listFacilityCycles(soap, &soap_tmp___ns1__listFacilityCycles, "-ns1:listFacilityCycles", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listFacilityCycles(soap, &soap_tmp___ns1__listFacilityCycles, "-ns1:listFacilityCycles", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listFacilityCyclesResponse_)
-		return soap_closesock(soap);
-	ns1__listFacilityCyclesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listFacilityCyclesResponse_->soap_get(soap, "ns1:listFacilityCyclesResponse", "ns1:listFacilityCyclesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listInvestigationTypes(ns1__listInvestigationTypes *ns1__listInvestigationTypes_, ns1__listInvestigationTypesResponse *ns1__listInvestigationTypesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listInvestigationTypes soap_tmp___ns1__listInvestigationTypes;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listInvestigationTypes.ns1__listInvestigationTypes_ = ns1__listInvestigationTypes_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listInvestigationTypes(soap, &soap_tmp___ns1__listInvestigationTypes);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listInvestigationTypes(soap, &soap_tmp___ns1__listInvestigationTypes, "-ns1:listInvestigationTypes", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listInvestigationTypes(soap, &soap_tmp___ns1__listInvestigationTypes, "-ns1:listInvestigationTypes", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listInvestigationTypesResponse_)
-		return soap_closesock(soap);
-	ns1__listInvestigationTypesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listInvestigationTypesResponse_->soap_get(soap, "ns1:listInvestigationTypesResponse", "ns1:listInvestigationTypesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchSamplesBySampleName(ns1__searchSamplesBySampleName *ns1__searchSamplesBySampleName_, ns1__searchSamplesBySampleNameResponse *ns1__searchSamplesBySampleNameResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchSamplesBySampleName soap_tmp___ns1__searchSamplesBySampleName;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchSamplesBySampleName.ns1__searchSamplesBySampleName_ = ns1__searchSamplesBySampleName_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchSamplesBySampleName(soap, &soap_tmp___ns1__searchSamplesBySampleName);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchSamplesBySampleName(soap, &soap_tmp___ns1__searchSamplesBySampleName, "-ns1:searchSamplesBySampleName", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchSamplesBySampleName(soap, &soap_tmp___ns1__searchSamplesBySampleName, "-ns1:searchSamplesBySampleName", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchSamplesBySampleNameResponse_)
-		return soap_closesock(soap);
-	ns1__searchSamplesBySampleNameResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchSamplesBySampleNameResponse_->soap_get(soap, "ns1:searchSamplesBySampleNameResponse", "ns1:searchSamplesBySampleNameResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchDatasetsBySample(ns1__searchDatasetsBySample *ns1__searchDatasetsBySample_, ns1__searchDatasetsBySampleResponse *ns1__searchDatasetsBySampleResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchDatasetsBySample soap_tmp___ns1__searchDatasetsBySample;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchDatasetsBySample.ns1__searchDatasetsBySample_ = ns1__searchDatasetsBySample_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchDatasetsBySample(soap, &soap_tmp___ns1__searchDatasetsBySample);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchDatasetsBySample(soap, &soap_tmp___ns1__searchDatasetsBySample, "-ns1:searchDatasetsBySample", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchDatasetsBySample(soap, &soap_tmp___ns1__searchDatasetsBySample, "-ns1:searchDatasetsBySample", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchDatasetsBySampleResponse_)
-		return soap_closesock(soap);
-	ns1__searchDatasetsBySampleResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchDatasetsBySampleResponse_->soap_get(soap, "ns1:searchDatasetsBySampleResponse", "ns1:searchDatasetsBySampleResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listDatasetTypes(ns1__listDatasetTypes *ns1__listDatasetTypes_, ns1__listDatasetTypesResponse *ns1__listDatasetTypesResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listDatasetTypes soap_tmp___ns1__listDatasetTypes;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listDatasetTypes.ns1__listDatasetTypes_ = ns1__listDatasetTypes_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listDatasetTypes(soap, &soap_tmp___ns1__listDatasetTypes);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listDatasetTypes(soap, &soap_tmp___ns1__listDatasetTypes, "-ns1:listDatasetTypes", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listDatasetTypes(soap, &soap_tmp___ns1__listDatasetTypes, "-ns1:listDatasetTypes", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listDatasetTypesResponse_)
-		return soap_closesock(soap);
-	ns1__listDatasetTypesResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listDatasetTypesResponse_->soap_get(soap, "ns1:listDatasetTypesResponse", "ns1:listDatasetTypesResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listDatasetStatus(ns1__listDatasetStatus *ns1__listDatasetStatus_, ns1__listDatasetStatusResponse *ns1__listDatasetStatusResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listDatasetStatus soap_tmp___ns1__listDatasetStatus;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listDatasetStatus.ns1__listDatasetStatus_ = ns1__listDatasetStatus_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listDatasetStatus(soap, &soap_tmp___ns1__listDatasetStatus);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listDatasetStatus(soap, &soap_tmp___ns1__listDatasetStatus, "-ns1:listDatasetStatus", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listDatasetStatus(soap, &soap_tmp___ns1__listDatasetStatus, "-ns1:listDatasetStatus", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listDatasetStatusResponse_)
-		return soap_closesock(soap);
-	ns1__listDatasetStatusResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listDatasetStatusResponse_->soap_get(soap, "ns1:listDatasetStatusResponse", "ns1:listDatasetStatusResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByRunNumber(ns1__searchByRunNumber *ns1__searchByRunNumber_, ns1__searchByRunNumberResponse *ns1__searchByRunNumberResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByRunNumber soap_tmp___ns1__searchByRunNumber;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByRunNumber.ns1__searchByRunNumber_ = ns1__searchByRunNumber_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByRunNumber(soap, &soap_tmp___ns1__searchByRunNumber);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByRunNumber(soap, &soap_tmp___ns1__searchByRunNumber, "-ns1:searchByRunNumber", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByRunNumber(soap, &soap_tmp___ns1__searchByRunNumber, "-ns1:searchByRunNumber", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByRunNumberResponse_)
-		return soap_closesock(soap);
-	ns1__searchByRunNumberResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByRunNumberResponse_->soap_get(soap, "ns1:searchByRunNumberResponse", "ns1:searchByRunNumberResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByRunNumberPagination(ns1__searchByRunNumberPagination *ns1__searchByRunNumberPagination_, ns1__searchByRunNumberPaginationResponse *ns1__searchByRunNumberPaginationResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByRunNumberPagination soap_tmp___ns1__searchByRunNumberPagination;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByRunNumberPagination.ns1__searchByRunNumberPagination_ = ns1__searchByRunNumberPagination_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByRunNumberPagination(soap, &soap_tmp___ns1__searchByRunNumberPagination);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByRunNumberPagination(soap, &soap_tmp___ns1__searchByRunNumberPagination, "-ns1:searchByRunNumberPagination", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByRunNumberPagination(soap, &soap_tmp___ns1__searchByRunNumberPagination, "-ns1:searchByRunNumberPagination", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByRunNumberPaginationResponse_)
-		return soap_closesock(soap);
-	ns1__searchByRunNumberPaginationResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByRunNumberPaginationResponse_->soap_get(soap, "ns1:searchByRunNumberPaginationResponse", "ns1:searchByRunNumberPaginationResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::listDatafileFormats(ns1__listDatafileFormats *ns1__listDatafileFormats_, ns1__listDatafileFormatsResponse *ns1__listDatafileFormatsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__listDatafileFormats soap_tmp___ns1__listDatafileFormats;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__listDatafileFormats.ns1__listDatafileFormats_ = ns1__listDatafileFormats_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__listDatafileFormats(soap, &soap_tmp___ns1__listDatafileFormats);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__listDatafileFormats(soap, &soap_tmp___ns1__listDatafileFormats, "-ns1:listDatafileFormats", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__listDatafileFormats(soap, &soap_tmp___ns1__listDatafileFormats, "-ns1:listDatafileFormats", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__listDatafileFormatsResponse_)
-		return soap_closesock(soap);
-	ns1__listDatafileFormatsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__listDatafileFormatsResponse_->soap_get(soap, "ns1:listDatafileFormatsResponse", "ns1:listDatafileFormatsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getDatasets(ns1__getDatasets *ns1__getDatasets_, ns1__getDatasetsResponse *ns1__getDatasetsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getDatasets soap_tmp___ns1__getDatasets;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getDatasets.ns1__getDatasets_ = ns1__getDatasets_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getDatasets(soap, &soap_tmp___ns1__getDatasets);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getDatasets(soap, &soap_tmp___ns1__getDatasets, "-ns1:getDatasets", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getDatasets(soap, &soap_tmp___ns1__getDatasets, "-ns1:getDatasets", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getDatasetsResponse_)
-		return soap_closesock(soap);
-	ns1__getDatasetsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getDatasetsResponse_->soap_get(soap, "ns1:getDatasetsResponse", "ns1:getDatasetsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::createDataSet(ns1__createDataSet *ns1__createDataSet_, ns1__createDataSetResponse *ns1__createDataSetResponse_)
-{	struct soap *soap = this;
-	struct __ns1__createDataSet soap_tmp___ns1__createDataSet;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__createDataSet.ns1__createDataSet_ = ns1__createDataSet_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__createDataSet(soap, &soap_tmp___ns1__createDataSet);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__createDataSet(soap, &soap_tmp___ns1__createDataSet, "-ns1:createDataSet", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__createDataSet(soap, &soap_tmp___ns1__createDataSet, "-ns1:createDataSet", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__createDataSetResponse_)
-		return soap_closesock(soap);
-	ns1__createDataSetResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__createDataSetResponse_->soap_get(soap, "ns1:createDataSetResponse", "ns1:createDataSetResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::createDataSets(ns1__createDataSets *ns1__createDataSets_, ns1__createDataSetsResponse *ns1__createDataSetsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__createDataSets soap_tmp___ns1__createDataSets;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__createDataSets.ns1__createDataSets_ = ns1__createDataSets_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__createDataSets(soap, &soap_tmp___ns1__createDataSets);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__createDataSets(soap, &soap_tmp___ns1__createDataSets, "-ns1:createDataSets", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__createDataSets(soap, &soap_tmp___ns1__createDataSets, "-ns1:createDataSets", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__createDataSetsResponse_)
-		return soap_closesock(soap);
-	ns1__createDataSetsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__createDataSetsResponse_->soap_get(soap, "ns1:createDataSetsResponse", "ns1:createDataSetsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteDataSet(ns1__deleteDataSet *ns1__deleteDataSet_, ns1__deleteDataSetResponse *ns1__deleteDataSetResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteDataSet soap_tmp___ns1__deleteDataSet;
-	struct __ns1__deleteDataSetResponse *soap_tmp___ns1__deleteDataSetResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteDataSet.ns1__deleteDataSet_ = ns1__deleteDataSet_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteDataSet(soap, &soap_tmp___ns1__deleteDataSet);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteDataSet(soap, &soap_tmp___ns1__deleteDataSet, "-ns1:deleteDataSet", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteDataSet(soap, &soap_tmp___ns1__deleteDataSet, "-ns1:deleteDataSet", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteDataSetResponse_)
-		return soap_closesock(soap);
-	ns1__deleteDataSetResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteDataSetResponse = soap_get___ns1__deleteDataSetResponse(soap, NULL, "-ns1:deleteDataSetResponse", "ns1:deleteDataSetResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteDataSetResponse_ && soap_tmp___ns1__deleteDataSetResponse->ns1__deleteDataSetResponse_)
-		*ns1__deleteDataSetResponse_ = *soap_tmp___ns1__deleteDataSetResponse->ns1__deleteDataSetResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::deleteDataSetParameter(ns1__deleteDataSetParameter *ns1__deleteDataSetParameter_, ns1__deleteDataSetParameterResponse *ns1__deleteDataSetParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__deleteDataSetParameter soap_tmp___ns1__deleteDataSetParameter;
-	struct __ns1__deleteDataSetParameterResponse *soap_tmp___ns1__deleteDataSetParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__deleteDataSetParameter.ns1__deleteDataSetParameter_ = ns1__deleteDataSetParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__deleteDataSetParameter(soap, &soap_tmp___ns1__deleteDataSetParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__deleteDataSetParameter(soap, &soap_tmp___ns1__deleteDataSetParameter, "-ns1:deleteDataSetParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__deleteDataSetParameter(soap, &soap_tmp___ns1__deleteDataSetParameter, "-ns1:deleteDataSetParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__deleteDataSetParameterResponse_)
-		return soap_closesock(soap);
-	ns1__deleteDataSetParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__deleteDataSetParameterResponse = soap_get___ns1__deleteDataSetParameterResponse(soap, NULL, "-ns1:deleteDataSetParameterResponse", "ns1:deleteDataSetParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__deleteDataSetParameterResponse_ && soap_tmp___ns1__deleteDataSetParameterResponse->ns1__deleteDataSetParameterResponse_)
-		*ns1__deleteDataSetParameterResponse_ = *soap_tmp___ns1__deleteDataSetParameterResponse->ns1__deleteDataSetParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyDataSet(ns1__modifyDataSet *ns1__modifyDataSet_, ns1__modifyDataSetResponse *ns1__modifyDataSetResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyDataSet soap_tmp___ns1__modifyDataSet;
-	struct __ns1__modifyDataSetResponse *soap_tmp___ns1__modifyDataSetResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyDataSet.ns1__modifyDataSet_ = ns1__modifyDataSet_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyDataSet(soap, &soap_tmp___ns1__modifyDataSet);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyDataSet(soap, &soap_tmp___ns1__modifyDataSet, "-ns1:modifyDataSet", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyDataSet(soap, &soap_tmp___ns1__modifyDataSet, "-ns1:modifyDataSet", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyDataSetResponse_)
-		return soap_closesock(soap);
-	ns1__modifyDataSetResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyDataSetResponse = soap_get___ns1__modifyDataSetResponse(soap, NULL, "-ns1:modifyDataSetResponse", "ns1:modifyDataSetResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyDataSetResponse_ && soap_tmp___ns1__modifyDataSetResponse->ns1__modifyDataSetResponse_)
-		*ns1__modifyDataSetResponse_ = *soap_tmp___ns1__modifyDataSetResponse->ns1__modifyDataSetResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::modifyDataSetParameter(ns1__modifyDataSetParameter *ns1__modifyDataSetParameter_, ns1__modifyDataSetParameterResponse *ns1__modifyDataSetParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__modifyDataSetParameter soap_tmp___ns1__modifyDataSetParameter;
-	struct __ns1__modifyDataSetParameterResponse *soap_tmp___ns1__modifyDataSetParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__modifyDataSetParameter.ns1__modifyDataSetParameter_ = ns1__modifyDataSetParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__modifyDataSetParameter(soap, &soap_tmp___ns1__modifyDataSetParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__modifyDataSetParameter(soap, &soap_tmp___ns1__modifyDataSetParameter, "-ns1:modifyDataSetParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__modifyDataSetParameter(soap, &soap_tmp___ns1__modifyDataSetParameter, "-ns1:modifyDataSetParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__modifyDataSetParameterResponse_)
-		return soap_closesock(soap);
-	ns1__modifyDataSetParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__modifyDataSetParameterResponse = soap_get___ns1__modifyDataSetParameterResponse(soap, NULL, "-ns1:modifyDataSetParameterResponse", "ns1:modifyDataSetParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__modifyDataSetParameterResponse_ && soap_tmp___ns1__modifyDataSetParameterResponse->ns1__modifyDataSetParameterResponse_)
-		*ns1__modifyDataSetParameterResponse_ = *soap_tmp___ns1__modifyDataSetParameterResponse->ns1__modifyDataSetParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::setDataSetSample(ns1__setDataSetSample *ns1__setDataSetSample_, ns1__setDataSetSampleResponse *ns1__setDataSetSampleResponse_)
-{	struct soap *soap = this;
-	struct __ns1__setDataSetSample soap_tmp___ns1__setDataSetSample;
-	struct __ns1__setDataSetSampleResponse *soap_tmp___ns1__setDataSetSampleResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__setDataSetSample.ns1__setDataSetSample_ = ns1__setDataSetSample_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__setDataSetSample(soap, &soap_tmp___ns1__setDataSetSample);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__setDataSetSample(soap, &soap_tmp___ns1__setDataSetSample, "-ns1:setDataSetSample", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__setDataSetSample(soap, &soap_tmp___ns1__setDataSetSample, "-ns1:setDataSetSample", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__setDataSetSampleResponse_)
-		return soap_closesock(soap);
-	ns1__setDataSetSampleResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__setDataSetSampleResponse = soap_get___ns1__setDataSetSampleResponse(soap, NULL, "-ns1:setDataSetSampleResponse", "ns1:setDataSetSampleResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__setDataSetSampleResponse_ && soap_tmp___ns1__setDataSetSampleResponse->ns1__setDataSetSampleResponse_)
-		*ns1__setDataSetSampleResponse_ = *soap_tmp___ns1__setDataSetSampleResponse->ns1__setDataSetSampleResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addDataSetParameter(ns1__addDataSetParameter *ns1__addDataSetParameter_, ns1__addDataSetParameterResponse *ns1__addDataSetParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addDataSetParameter soap_tmp___ns1__addDataSetParameter;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addDataSetParameter.ns1__addDataSetParameter_ = ns1__addDataSetParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addDataSetParameter(soap, &soap_tmp___ns1__addDataSetParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addDataSetParameter(soap, &soap_tmp___ns1__addDataSetParameter, "-ns1:addDataSetParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addDataSetParameter(soap, &soap_tmp___ns1__addDataSetParameter, "-ns1:addDataSetParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addDataSetParameterResponse_)
-		return soap_closesock(soap);
-	ns1__addDataSetParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addDataSetParameterResponse_->soap_get(soap, "ns1:addDataSetParameterResponse", "ns1:addDataSetParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::addDataSetParameters(ns1__addDataSetParameters *ns1__addDataSetParameters_, ns1__addDataSetParametersResponse *ns1__addDataSetParametersResponse_)
-{	struct soap *soap = this;
-	struct __ns1__addDataSetParameters soap_tmp___ns1__addDataSetParameters;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__addDataSetParameters.ns1__addDataSetParameters_ = ns1__addDataSetParameters_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__addDataSetParameters(soap, &soap_tmp___ns1__addDataSetParameters);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__addDataSetParameters(soap, &soap_tmp___ns1__addDataSetParameters, "-ns1:addDataSetParameters", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__addDataSetParameters(soap, &soap_tmp___ns1__addDataSetParameters, "-ns1:addDataSetParameters", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__addDataSetParametersResponse_)
-		return soap_closesock(soap);
-	ns1__addDataSetParametersResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__addDataSetParametersResponse_->soap_get(soap, "ns1:addDataSetParametersResponse", "ns1:addDataSetParametersResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeDataSet(ns1__removeDataSet *ns1__removeDataSet_, ns1__removeDataSetResponse *ns1__removeDataSetResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeDataSet soap_tmp___ns1__removeDataSet;
-	struct __ns1__removeDataSetResponse *soap_tmp___ns1__removeDataSetResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeDataSet.ns1__removeDataSet_ = ns1__removeDataSet_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeDataSet(soap, &soap_tmp___ns1__removeDataSet);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeDataSet(soap, &soap_tmp___ns1__removeDataSet, "-ns1:removeDataSet", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeDataSet(soap, &soap_tmp___ns1__removeDataSet, "-ns1:removeDataSet", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeDataSetResponse_)
-		return soap_closesock(soap);
-	ns1__removeDataSetResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeDataSetResponse = soap_get___ns1__removeDataSetResponse(soap, NULL, "-ns1:removeDataSetResponse", "ns1:removeDataSetResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeDataSetResponse_ && soap_tmp___ns1__removeDataSetResponse->ns1__removeDataSetResponse_)
-		*ns1__removeDataSetResponse_ = *soap_tmp___ns1__removeDataSetResponse->ns1__removeDataSetResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::removeDataSetParameter(ns1__removeDataSetParameter *ns1__removeDataSetParameter_, ns1__removeDataSetParameterResponse *ns1__removeDataSetParameterResponse_)
-{	struct soap *soap = this;
-	struct __ns1__removeDataSetParameter soap_tmp___ns1__removeDataSetParameter;
-	struct __ns1__removeDataSetParameterResponse *soap_tmp___ns1__removeDataSetParameterResponse;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__removeDataSetParameter.ns1__removeDataSetParameter_ = ns1__removeDataSetParameter_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__removeDataSetParameter(soap, &soap_tmp___ns1__removeDataSetParameter);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__removeDataSetParameter(soap, &soap_tmp___ns1__removeDataSetParameter, "-ns1:removeDataSetParameter", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__removeDataSetParameter(soap, &soap_tmp___ns1__removeDataSetParameter, "-ns1:removeDataSetParameter", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__removeDataSetParameterResponse_)
-		return soap_closesock(soap);
-	ns1__removeDataSetParameterResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	soap_tmp___ns1__removeDataSetParameterResponse = soap_get___ns1__removeDataSetParameterResponse(soap, NULL, "-ns1:removeDataSetParameterResponse", "ns1:removeDataSetParameterResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	if (ns1__removeDataSetParameterResponse_ && soap_tmp___ns1__removeDataSetParameterResponse->ns1__removeDataSetParameterResponse_)
-		*ns1__removeDataSetParameterResponse_ = *soap_tmp___ns1__removeDataSetParameterResponse->ns1__removeDataSetParameterResponse_;
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::ingestMetadata(ns1__ingestMetadata *ns1__ingestMetadata_, ns1__ingestMetadataResponse *ns1__ingestMetadataResponse_)
-{	struct soap *soap = this;
-	struct __ns1__ingestMetadata soap_tmp___ns1__ingestMetadata;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__ingestMetadata.ns1__ingestMetadata_ = ns1__ingestMetadata_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__ingestMetadata(soap, &soap_tmp___ns1__ingestMetadata);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__ingestMetadata(soap, &soap_tmp___ns1__ingestMetadata, "-ns1:ingestMetadata", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__ingestMetadata(soap, &soap_tmp___ns1__ingestMetadata, "-ns1:ingestMetadata", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__ingestMetadataResponse_)
-		return soap_closesock(soap);
-	ns1__ingestMetadataResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__ingestMetadataResponse_->soap_get(soap, "ns1:ingestMetadataResponse", "ns1:ingestMetadataResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getICATAPIVersion(ns1__getICATAPIVersion *ns1__getICATAPIVersion_, ns1__getICATAPIVersionResponse *ns1__getICATAPIVersionResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getICATAPIVersion soap_tmp___ns1__getICATAPIVersion;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getICATAPIVersion.ns1__getICATAPIVersion_ = ns1__getICATAPIVersion_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getICATAPIVersion(soap, &soap_tmp___ns1__getICATAPIVersion);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getICATAPIVersion(soap, &soap_tmp___ns1__getICATAPIVersion, "-ns1:getICATAPIVersion", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getICATAPIVersion(soap, &soap_tmp___ns1__getICATAPIVersion, "-ns1:getICATAPIVersion", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getICATAPIVersionResponse_)
-		return soap_closesock(soap);
-	ns1__getICATAPIVersionResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getICATAPIVersionResponse_->soap_get(soap, "ns1:getICATAPIVersionResponse", "ns1:getICATAPIVersionResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getFacilityUserByFacilityUserId(ns1__getFacilityUserByFacilityUserId *ns1__getFacilityUserByFacilityUserId_, ns1__getFacilityUserByFacilityUserIdResponse *ns1__getFacilityUserByFacilityUserIdResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getFacilityUserByFacilityUserId soap_tmp___ns1__getFacilityUserByFacilityUserId;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getFacilityUserByFacilityUserId.ns1__getFacilityUserByFacilityUserId_ = ns1__getFacilityUserByFacilityUserId_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getFacilityUserByFacilityUserId(soap, &soap_tmp___ns1__getFacilityUserByFacilityUserId);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getFacilityUserByFacilityUserId(soap, &soap_tmp___ns1__getFacilityUserByFacilityUserId, "-ns1:getFacilityUserByFacilityUserId", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getFacilityUserByFacilityUserId(soap, &soap_tmp___ns1__getFacilityUserByFacilityUserId, "-ns1:getFacilityUserByFacilityUserId", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getFacilityUserByFacilityUserIdResponse_)
-		return soap_closesock(soap);
-	ns1__getFacilityUserByFacilityUserIdResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getFacilityUserByFacilityUserIdResponse_->soap_get(soap, "ns1:getFacilityUserByFacilityUserIdResponse", "ns1:getFacilityUserByFacilityUserIdResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::getFacilityUserByFederalId(ns1__getFacilityUserByFederalId *ns1__getFacilityUserByFederalId_, ns1__getFacilityUserByFederalIdResponse *ns1__getFacilityUserByFederalIdResponse_)
-{	struct soap *soap = this;
-	struct __ns1__getFacilityUserByFederalId soap_tmp___ns1__getFacilityUserByFederalId;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__getFacilityUserByFederalId.ns1__getFacilityUserByFederalId_ = ns1__getFacilityUserByFederalId_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__getFacilityUserByFederalId(soap, &soap_tmp___ns1__getFacilityUserByFederalId);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__getFacilityUserByFederalId(soap, &soap_tmp___ns1__getFacilityUserByFederalId, "-ns1:getFacilityUserByFederalId", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__getFacilityUserByFederalId(soap, &soap_tmp___ns1__getFacilityUserByFederalId, "-ns1:getFacilityUserByFederalId", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__getFacilityUserByFederalIdResponse_)
-		return soap_closesock(soap);
-	ns1__getFacilityUserByFederalIdResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__getFacilityUserByFederalIdResponse_->soap_get(soap, "ns1:getFacilityUserByFederalIdResponse", "ns1:getFacilityUserByFederalIdResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::isSessionValid(ns1__isSessionValid *ns1__isSessionValid_, ns1__isSessionValidResponse *ns1__isSessionValidResponse_)
-{	struct soap *soap = this;
-	struct __ns1__isSessionValid soap_tmp___ns1__isSessionValid;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__isSessionValid.ns1__isSessionValid_ = ns1__isSessionValid_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__isSessionValid(soap, &soap_tmp___ns1__isSessionValid);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__isSessionValid(soap, &soap_tmp___ns1__isSessionValid, "-ns1:isSessionValid", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__isSessionValid(soap, &soap_tmp___ns1__isSessionValid, "-ns1:isSessionValid", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__isSessionValidResponse_)
-		return soap_closesock(soap);
-	ns1__isSessionValidResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__isSessionValidResponse_->soap_get(soap, "ns1:isSessionValidResponse", "ns1:isSessionValidResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByParameterOperator(ns1__searchByParameterOperator *ns1__searchByParameterOperator_, ns1__searchByParameterOperatorResponse *ns1__searchByParameterOperatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByParameterOperator soap_tmp___ns1__searchByParameterOperator;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByParameterOperator.ns1__searchByParameterOperator_ = ns1__searchByParameterOperator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByParameterOperator(soap, &soap_tmp___ns1__searchByParameterOperator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByParameterOperator(soap, &soap_tmp___ns1__searchByParameterOperator, "-ns1:searchByParameterOperator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByParameterOperator(soap, &soap_tmp___ns1__searchByParameterOperator, "-ns1:searchByParameterOperator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByParameterOperatorResponse_)
-		return soap_closesock(soap);
-	ns1__searchByParameterOperatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByParameterOperatorResponse_->soap_get(soap, "ns1:searchByParameterOperatorResponse", "ns1:searchByParameterOperatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByParameterComparator(ns1__searchByParameterComparator *ns1__searchByParameterComparator_, ns1__searchByParameterComparatorResponse *ns1__searchByParameterComparatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByParameterComparator soap_tmp___ns1__searchByParameterComparator;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByParameterComparator.ns1__searchByParameterComparator_ = ns1__searchByParameterComparator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByParameterComparator(soap, &soap_tmp___ns1__searchByParameterComparator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByParameterComparator(soap, &soap_tmp___ns1__searchByParameterComparator, "-ns1:searchByParameterComparator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByParameterComparator(soap, &soap_tmp___ns1__searchByParameterComparator, "-ns1:searchByParameterComparator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByParameterComparatorResponse_)
-		return soap_closesock(soap);
-	ns1__searchByParameterComparatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByParameterComparatorResponse_->soap_get(soap, "ns1:searchByParameterComparatorResponse", "ns1:searchByParameterComparatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchByParameterComparators(ns1__searchByParameterComparators *ns1__searchByParameterComparators_, ns1__searchByParameterComparatorsResponse *ns1__searchByParameterComparatorsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchByParameterComparators soap_tmp___ns1__searchByParameterComparators;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchByParameterComparators.ns1__searchByParameterComparators_ = ns1__searchByParameterComparators_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchByParameterComparators(soap, &soap_tmp___ns1__searchByParameterComparators);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchByParameterComparators(soap, &soap_tmp___ns1__searchByParameterComparators, "-ns1:searchByParameterComparators", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchByParameterComparators(soap, &soap_tmp___ns1__searchByParameterComparators, "-ns1:searchByParameterComparators", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchByParameterComparatorsResponse_)
-		return soap_closesock(soap);
-	ns1__searchByParameterComparatorsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchByParameterComparatorsResponse_->soap_get(soap, "ns1:searchByParameterComparatorsResponse", "ns1:searchByParameterComparatorsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchDatasetsByParameterComparator(ns1__searchDatasetsByParameterComparator *ns1__searchDatasetsByParameterComparator_, ns1__searchDatasetsByParameterComparatorResponse *ns1__searchDatasetsByParameterComparatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchDatasetsByParameterComparator soap_tmp___ns1__searchDatasetsByParameterComparator;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchDatasetsByParameterComparator.ns1__searchDatasetsByParameterComparator_ = ns1__searchDatasetsByParameterComparator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchDatasetsByParameterComparator(soap, &soap_tmp___ns1__searchDatasetsByParameterComparator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchDatasetsByParameterComparator(soap, &soap_tmp___ns1__searchDatasetsByParameterComparator, "-ns1:searchDatasetsByParameterComparator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchDatasetsByParameterComparator(soap, &soap_tmp___ns1__searchDatasetsByParameterComparator, "-ns1:searchDatasetsByParameterComparator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchDatasetsByParameterComparatorResponse_)
-		return soap_closesock(soap);
-	ns1__searchDatasetsByParameterComparatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchDatasetsByParameterComparatorResponse_->soap_get(soap, "ns1:searchDatasetsByParameterComparatorResponse", "ns1:searchDatasetsByParameterComparatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchDatasetsByParameterComparators(ns1__searchDatasetsByParameterComparators *ns1__searchDatasetsByParameterComparators_, ns1__searchDatasetsByParameterComparatorsResponse *ns1__searchDatasetsByParameterComparatorsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchDatasetsByParameterComparators soap_tmp___ns1__searchDatasetsByParameterComparators;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchDatasetsByParameterComparators.ns1__searchDatasetsByParameterComparators_ = ns1__searchDatasetsByParameterComparators_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchDatasetsByParameterComparators(soap, &soap_tmp___ns1__searchDatasetsByParameterComparators);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchDatasetsByParameterComparators(soap, &soap_tmp___ns1__searchDatasetsByParameterComparators, "-ns1:searchDatasetsByParameterComparators", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchDatasetsByParameterComparators(soap, &soap_tmp___ns1__searchDatasetsByParameterComparators, "-ns1:searchDatasetsByParameterComparators", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchDatasetsByParameterComparatorsResponse_)
-		return soap_closesock(soap);
-	ns1__searchDatasetsByParameterComparatorsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchDatasetsByParameterComparatorsResponse_->soap_get(soap, "ns1:searchDatasetsByParameterComparatorsResponse", "ns1:searchDatasetsByParameterComparatorsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchDatafilesByParameterComparator(ns1__searchDatafilesByParameterComparator *ns1__searchDatafilesByParameterComparator_, ns1__searchDatafilesByParameterComparatorResponse *ns1__searchDatafilesByParameterComparatorResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchDatafilesByParameterComparator soap_tmp___ns1__searchDatafilesByParameterComparator;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchDatafilesByParameterComparator.ns1__searchDatafilesByParameterComparator_ = ns1__searchDatafilesByParameterComparator_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchDatafilesByParameterComparator(soap, &soap_tmp___ns1__searchDatafilesByParameterComparator);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchDatafilesByParameterComparator(soap, &soap_tmp___ns1__searchDatafilesByParameterComparator, "-ns1:searchDatafilesByParameterComparator", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchDatafilesByParameterComparator(soap, &soap_tmp___ns1__searchDatafilesByParameterComparator, "-ns1:searchDatafilesByParameterComparator", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchDatafilesByParameterComparatorResponse_)
-		return soap_closesock(soap);
-	ns1__searchDatafilesByParameterComparatorResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchDatafilesByParameterComparatorResponse_->soap_get(soap, "ns1:searchDatafilesByParameterComparatorResponse", "ns1:searchDatafilesByParameterComparatorResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-
-int ICATPortBindingProxy::searchDatafilesByParameterComparators(ns1__searchDatafilesByParameterComparators *ns1__searchDatafilesByParameterComparators_, ns1__searchDatafilesByParameterComparatorsResponse *ns1__searchDatafilesByParameterComparatorsResponse_)
-{	struct soap *soap = this;
-	struct __ns1__searchDatafilesByParameterComparators soap_tmp___ns1__searchDatafilesByParameterComparators;
-	const char *soap_action = NULL;
-	if (!soap_endpoint)
-		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
-	soap_action = "";
-	soap->encodingStyle = NULL;
-	soap_tmp___ns1__searchDatafilesByParameterComparators.ns1__searchDatafilesByParameterComparators_ = ns1__searchDatafilesByParameterComparators_;
-	soap_begin(soap);
-	soap_serializeheader(soap);
-	soap_serialize___ns1__searchDatafilesByParameterComparators(soap, &soap_tmp___ns1__searchDatafilesByParameterComparators);
-	if (soap_begin_count(soap))
-		return soap->error;
-	if (soap->mode & SOAP_IO_LENGTH)
-	{	if (soap_envelope_begin_out(soap)
-		 || soap_putheader(soap)
-		 || soap_body_begin_out(soap)
-		 || soap_put___ns1__searchDatafilesByParameterComparators(soap, &soap_tmp___ns1__searchDatafilesByParameterComparators, "-ns1:searchDatafilesByParameterComparators", NULL)
-		 || soap_body_end_out(soap)
-		 || soap_envelope_end_out(soap))
-			 return soap->error;
-	}
-	if (soap_end_count(soap))
-		return soap->error;
-	if (soap_connect(soap, soap_endpoint, soap_action)
-	 || soap_envelope_begin_out(soap)
-	 || soap_putheader(soap)
-	 || soap_body_begin_out(soap)
-	 || soap_put___ns1__searchDatafilesByParameterComparators(soap, &soap_tmp___ns1__searchDatafilesByParameterComparators, "-ns1:searchDatafilesByParameterComparators", NULL)
-	 || soap_body_end_out(soap)
-	 || soap_envelope_end_out(soap)
-	 || soap_end_send(soap))
-		return soap_closesock(soap);
-	if (!ns1__searchDatafilesByParameterComparatorsResponse_)
-		return soap_closesock(soap);
-	ns1__searchDatafilesByParameterComparatorsResponse_->soap_default(soap);
-	if (soap_begin_recv(soap)
-	 || soap_envelope_begin_in(soap)
-	 || soap_recv_header(soap)
-	 || soap_body_begin_in(soap))
-		return soap_closesock(soap);
-	ns1__searchDatafilesByParameterComparatorsResponse_->soap_get(soap, "ns1:searchDatafilesByParameterComparatorsResponse", "ns1:searchDatafilesByParameterComparatorsResponse");
-	if (soap->error)
-		return soap_recv_fault(soap, 0);
-	if (soap_body_end_in(soap)
-	 || soap_envelope_end_in(soap)
-	 || soap_end_recv(soap))
-		return soap_closesock(soap);
-	return soap_closesock(soap);
-}
-/* End of client proxy code */
+/* soapICATPortBindingProxy.cpp
+   Generated by gSOAP 2.7.17 from ICATService.h
+   Copyright(C) 2000-2010, Robert van Engelen, Genivia Inc. All Rights Reserved.
+   This part of the software is released under one of the following licenses:
+   GPL, the gSOAP public license, or Genivia's license for commercial use.
+*/
+
+#include "MantidICat/GSoapGenerated/soapICATPortBindingProxy.h"
+
+ICATPortBindingProxy::ICATPortBindingProxy()
+{	ICATPortBindingProxy_init(SOAP_IO_DEFAULT, SOAP_IO_DEFAULT);
+}
+
+ICATPortBindingProxy::ICATPortBindingProxy(const struct soap &_soap) : soap(_soap)
+{ }
+
+ICATPortBindingProxy::ICATPortBindingProxy(soap_mode iomode)
+{	ICATPortBindingProxy_init(iomode, iomode);
+}
+
+ICATPortBindingProxy::ICATPortBindingProxy(soap_mode imode, soap_mode omode)
+{	ICATPortBindingProxy_init(imode, omode);
+}
+
+void ICATPortBindingProxy::ICATPortBindingProxy_init(soap_mode imode, soap_mode omode)
+{	soap_imode(this, imode);
+	soap_omode(this, omode);
+	soap_endpoint = NULL;
+	static const struct Namespace namespaces[] =
+{
+	{"SOAP-ENV", "http://schemas.xmlsoap.org/soap/envelope/", "http://www.w3.org/*/soap-envelope", NULL},
+	{"SOAP-ENC", "http://schemas.xmlsoap.org/soap/encoding/", "http://www.w3.org/*/soap-encoding", NULL},
+	{"xsi", "http://www.w3.org/2001/XMLSchema-instance", "http://www.w3.org/*/XMLSchema-instance", NULL},
+	{"xsd", "http://www.w3.org/2001/XMLSchema", "http://www.w3.org/*/XMLSchema", NULL},
+	{"ns1", "client.icat3.uk", NULL, NULL},
+	{NULL, NULL, NULL, NULL}
+};
+	this->namespaces = namespaces;
+}
+
+ICATPortBindingProxy::~ICATPortBindingProxy()
+{ }
+
+void ICATPortBindingProxy::destroy()
+{	soap_destroy(this);
+	soap_end(this);
+}
+
+void ICATPortBindingProxy::soap_noheader()
+{	header = NULL;
+}
+
+const SOAP_ENV__Fault *ICATPortBindingProxy::soap_fault()
+{	return this->fault;
+}
+
+const char *ICATPortBindingProxy::soap_fault_string()
+{	return *soap_faultstring(this);
+}
+
+const char *ICATPortBindingProxy::soap_fault_detail()
+{	return *soap_faultdetail(this);
+}
+
+int ICATPortBindingProxy::soap_close_socket()
+{	return soap_closesock(this);
+}
+
+void ICATPortBindingProxy::soap_print_fault(FILE *fd)
+{	::soap_print_fault(this, fd);
+}
+
+#ifndef WITH_LEAN
+void ICATPortBindingProxy::soap_stream_fault(std::ostream& os)
+{	::soap_stream_fault(this, os);
+}
+
+char *ICATPortBindingProxy::soap_sprint_fault(char *buf, size_t len)
+{	return ::soap_sprint_fault(this, buf, len);
+}
+#endif
+
+int ICATPortBindingProxy::login(ns1__login *ns1__login_, ns1__loginResponse *ns1__loginResponse_)
+{	struct soap *soap = this;
+	struct __ns1__login soap_tmp___ns1__login;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__login.ns1__login_ = ns1__login_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__login(soap, &soap_tmp___ns1__login);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__login(soap, &soap_tmp___ns1__login, "-ns1:login", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__login(soap, &soap_tmp___ns1__login, "-ns1:login", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__loginResponse_)
+		return soap_closesock(soap);
+	ns1__loginResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__loginResponse_->soap_get(soap, "ns1:loginResponse", "ns1:loginResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::loginLifetime(ns1__loginLifetime *ns1__loginLifetime_, ns1__loginLifetimeResponse *ns1__loginLifetimeResponse_)
+{	struct soap *soap = this;
+	struct __ns1__loginLifetime soap_tmp___ns1__loginLifetime;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__loginLifetime.ns1__loginLifetime_ = ns1__loginLifetime_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__loginLifetime(soap, &soap_tmp___ns1__loginLifetime);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__loginLifetime(soap, &soap_tmp___ns1__loginLifetime, "-ns1:loginLifetime", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__loginLifetime(soap, &soap_tmp___ns1__loginLifetime, "-ns1:loginLifetime", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__loginLifetimeResponse_)
+		return soap_closesock(soap);
+	ns1__loginLifetimeResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__loginLifetimeResponse_->soap_get(soap, "ns1:loginLifetimeResponse", "ns1:loginLifetimeResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addSample(ns1__addSample *ns1__addSample_, ns1__addSampleResponse *ns1__addSampleResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addSample soap_tmp___ns1__addSample;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addSample.ns1__addSample_ = ns1__addSample_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addSample(soap, &soap_tmp___ns1__addSample);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addSample(soap, &soap_tmp___ns1__addSample, "-ns1:addSample", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addSample(soap, &soap_tmp___ns1__addSample, "-ns1:addSample", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addSampleResponse_)
+		return soap_closesock(soap);
+	ns1__addSampleResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addSampleResponse_->soap_get(soap, "ns1:addSampleResponse", "ns1:addSampleResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::logout(ns1__logout *ns1__logout_, ns1__logoutResponse *ns1__logoutResponse_)
+{	struct soap *soap = this;
+	struct __ns1__logout soap_tmp___ns1__logout;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__logout.ns1__logout_ = ns1__logout_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__logout(soap, &soap_tmp___ns1__logout);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__logout(soap, &soap_tmp___ns1__logout, "-ns1:logout", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__logout(soap, &soap_tmp___ns1__logout, "-ns1:logout", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__logoutResponse_)
+		return soap_closesock(soap);
+	ns1__logoutResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__logoutResponse_->soap_get(soap, "ns1:logoutResponse", "ns1:logoutResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addSampleParameter(ns1__addSampleParameter *ns1__addSampleParameter_, ns1__addSampleParameterResponse *ns1__addSampleParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addSampleParameter soap_tmp___ns1__addSampleParameter;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addSampleParameter.ns1__addSampleParameter_ = ns1__addSampleParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addSampleParameter(soap, &soap_tmp___ns1__addSampleParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addSampleParameter(soap, &soap_tmp___ns1__addSampleParameter, "-ns1:addSampleParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addSampleParameter(soap, &soap_tmp___ns1__addSampleParameter, "-ns1:addSampleParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addSampleParameterResponse_)
+		return soap_closesock(soap);
+	ns1__addSampleParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addSampleParameterResponse_->soap_get(soap, "ns1:addSampleParameterResponse", "ns1:addSampleParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addPublication(ns1__addPublication *ns1__addPublication_, ns1__addPublicationResponse *ns1__addPublicationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addPublication soap_tmp___ns1__addPublication;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addPublication.ns1__addPublication_ = ns1__addPublication_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addPublication(soap, &soap_tmp___ns1__addPublication);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addPublication(soap, &soap_tmp___ns1__addPublication, "-ns1:addPublication", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addPublication(soap, &soap_tmp___ns1__addPublication, "-ns1:addPublication", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addPublicationResponse_)
+		return soap_closesock(soap);
+	ns1__addPublicationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addPublicationResponse_->soap_get(soap, "ns1:addPublicationResponse", "ns1:addPublicationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addKeyword(ns1__addKeyword *ns1__addKeyword_, ns1__addKeywordResponse *ns1__addKeywordResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addKeyword soap_tmp___ns1__addKeyword;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addKeyword.ns1__addKeyword_ = ns1__addKeyword_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addKeyword(soap, &soap_tmp___ns1__addKeyword);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addKeyword(soap, &soap_tmp___ns1__addKeyword, "-ns1:addKeyword", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addKeyword(soap, &soap_tmp___ns1__addKeyword, "-ns1:addKeyword", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addKeywordResponse_)
+		return soap_closesock(soap);
+	ns1__addKeywordResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addKeywordResponse_->soap_get(soap, "ns1:addKeywordResponse", "ns1:addKeywordResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addInvestigator(ns1__addInvestigator *ns1__addInvestigator_, ns1__addInvestigatorResponse *ns1__addInvestigatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addInvestigator soap_tmp___ns1__addInvestigator;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addInvestigator.ns1__addInvestigator_ = ns1__addInvestigator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addInvestigator(soap, &soap_tmp___ns1__addInvestigator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addInvestigator(soap, &soap_tmp___ns1__addInvestigator, "-ns1:addInvestigator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addInvestigator(soap, &soap_tmp___ns1__addInvestigator, "-ns1:addInvestigator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addInvestigatorResponse_)
+		return soap_closesock(soap);
+	ns1__addInvestigatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addInvestigatorResponse_->soap_get(soap, "ns1:addInvestigatorResponse", "ns1:addInvestigatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getInvestigation(ns1__getInvestigation *ns1__getInvestigation_, ns1__getInvestigationResponse *ns1__getInvestigationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getInvestigation soap_tmp___ns1__getInvestigation;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getInvestigation.ns1__getInvestigation_ = ns1__getInvestigation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getInvestigation(soap, &soap_tmp___ns1__getInvestigation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getInvestigation(soap, &soap_tmp___ns1__getInvestigation, "-ns1:getInvestigation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getInvestigation(soap, &soap_tmp___ns1__getInvestigation, "-ns1:getInvestigation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getInvestigationResponse_)
+		return soap_closesock(soap);
+	ns1__getInvestigationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getInvestigationResponse_->soap_get(soap, "ns1:getInvestigationResponse", "ns1:getInvestigationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getInvestigationIncludes(ns1__getInvestigationIncludes *ns1__getInvestigationIncludes_, ns1__getInvestigationIncludesResponse *ns1__getInvestigationIncludesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getInvestigationIncludes soap_tmp___ns1__getInvestigationIncludes;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getInvestigationIncludes.ns1__getInvestigationIncludes_ = ns1__getInvestigationIncludes_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getInvestigationIncludes(soap, &soap_tmp___ns1__getInvestigationIncludes);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getInvestigationIncludes(soap, &soap_tmp___ns1__getInvestigationIncludes, "-ns1:getInvestigationIncludes", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getInvestigationIncludes(soap, &soap_tmp___ns1__getInvestigationIncludes, "-ns1:getInvestigationIncludes", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getInvestigationIncludesResponse_)
+		return soap_closesock(soap);
+	ns1__getInvestigationIncludesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getInvestigationIncludesResponse_->soap_get(soap, "ns1:getInvestigationIncludesResponse", "ns1:getInvestigationIncludesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getDataset(ns1__getDataset *ns1__getDataset_, ns1__getDatasetResponse *ns1__getDatasetResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getDataset soap_tmp___ns1__getDataset;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getDataset.ns1__getDataset_ = ns1__getDataset_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getDataset(soap, &soap_tmp___ns1__getDataset);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getDataset(soap, &soap_tmp___ns1__getDataset, "-ns1:getDataset", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getDataset(soap, &soap_tmp___ns1__getDataset, "-ns1:getDataset", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getDatasetResponse_)
+		return soap_closesock(soap);
+	ns1__getDatasetResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getDatasetResponse_->soap_get(soap, "ns1:getDatasetResponse", "ns1:getDatasetResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getDatasetIncludes(ns1__getDatasetIncludes *ns1__getDatasetIncludes_, ns1__getDatasetIncludesResponse *ns1__getDatasetIncludesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getDatasetIncludes soap_tmp___ns1__getDatasetIncludes;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getDatasetIncludes.ns1__getDatasetIncludes_ = ns1__getDatasetIncludes_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getDatasetIncludes(soap, &soap_tmp___ns1__getDatasetIncludes);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getDatasetIncludes(soap, &soap_tmp___ns1__getDatasetIncludes, "-ns1:getDatasetIncludes", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getDatasetIncludes(soap, &soap_tmp___ns1__getDatasetIncludes, "-ns1:getDatasetIncludes", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getDatasetIncludesResponse_)
+		return soap_closesock(soap);
+	ns1__getDatasetIncludesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getDatasetIncludesResponse_->soap_get(soap, "ns1:getDatasetIncludesResponse", "ns1:getDatasetIncludesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getDatafile(ns1__getDatafile *ns1__getDatafile_, ns1__getDatafileResponse *ns1__getDatafileResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getDatafile soap_tmp___ns1__getDatafile;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getDatafile.ns1__getDatafile_ = ns1__getDatafile_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getDatafile(soap, &soap_tmp___ns1__getDatafile);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getDatafile(soap, &soap_tmp___ns1__getDatafile, "-ns1:getDatafile", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getDatafile(soap, &soap_tmp___ns1__getDatafile, "-ns1:getDatafile", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getDatafileResponse_)
+		return soap_closesock(soap);
+	ns1__getDatafileResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getDatafileResponse_->soap_get(soap, "ns1:getDatafileResponse", "ns1:getDatafileResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addDataFileParameter(ns1__addDataFileParameter *ns1__addDataFileParameter_, ns1__addDataFileParameterResponse *ns1__addDataFileParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addDataFileParameter soap_tmp___ns1__addDataFileParameter;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addDataFileParameter.ns1__addDataFileParameter_ = ns1__addDataFileParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addDataFileParameter(soap, &soap_tmp___ns1__addDataFileParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addDataFileParameter(soap, &soap_tmp___ns1__addDataFileParameter, "-ns1:addDataFileParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addDataFileParameter(soap, &soap_tmp___ns1__addDataFileParameter, "-ns1:addDataFileParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addDataFileParameterResponse_)
+		return soap_closesock(soap);
+	ns1__addDataFileParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addDataFileParameterResponse_->soap_get(soap, "ns1:addDataFileParameterResponse", "ns1:addDataFileParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getInvestigationsIncludes(ns1__getInvestigationsIncludes *ns1__getInvestigationsIncludes_, ns1__getInvestigationsIncludesResponse *ns1__getInvestigationsIncludesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getInvestigationsIncludes soap_tmp___ns1__getInvestigationsIncludes;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getInvestigationsIncludes.ns1__getInvestigationsIncludes_ = ns1__getInvestigationsIncludes_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getInvestigationsIncludes(soap, &soap_tmp___ns1__getInvestigationsIncludes);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getInvestigationsIncludes(soap, &soap_tmp___ns1__getInvestigationsIncludes, "-ns1:getInvestigationsIncludes", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getInvestigationsIncludes(soap, &soap_tmp___ns1__getInvestigationsIncludes, "-ns1:getInvestigationsIncludes", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getInvestigationsIncludesResponse_)
+		return soap_closesock(soap);
+	ns1__getInvestigationsIncludesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getInvestigationsIncludesResponse_->soap_get(soap, "ns1:getInvestigationsIncludesResponse", "ns1:getInvestigationsIncludesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::createInvestigation(ns1__createInvestigation *ns1__createInvestigation_, ns1__createInvestigationResponse *ns1__createInvestigationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__createInvestigation soap_tmp___ns1__createInvestigation;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__createInvestigation.ns1__createInvestigation_ = ns1__createInvestigation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__createInvestigation(soap, &soap_tmp___ns1__createInvestigation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__createInvestigation(soap, &soap_tmp___ns1__createInvestigation, "-ns1:createInvestigation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__createInvestigation(soap, &soap_tmp___ns1__createInvestigation, "-ns1:createInvestigation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__createInvestigationResponse_)
+		return soap_closesock(soap);
+	ns1__createInvestigationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__createInvestigationResponse_->soap_get(soap, "ns1:createInvestigationResponse", "ns1:createInvestigationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeInvestigation(ns1__removeInvestigation *ns1__removeInvestigation_, ns1__removeInvestigationResponse *ns1__removeInvestigationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeInvestigation soap_tmp___ns1__removeInvestigation;
+	struct __ns1__removeInvestigationResponse *soap_tmp___ns1__removeInvestigationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeInvestigation.ns1__removeInvestigation_ = ns1__removeInvestigation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeInvestigation(soap, &soap_tmp___ns1__removeInvestigation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeInvestigation(soap, &soap_tmp___ns1__removeInvestigation, "-ns1:removeInvestigation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeInvestigation(soap, &soap_tmp___ns1__removeInvestigation, "-ns1:removeInvestigation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeInvestigationResponse_)
+		return soap_closesock(soap);
+	ns1__removeInvestigationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeInvestigationResponse = soap_get___ns1__removeInvestigationResponse(soap, NULL, "-ns1:removeInvestigationResponse", "ns1:removeInvestigationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeInvestigationResponse_ && soap_tmp___ns1__removeInvestigationResponse->ns1__removeInvestigationResponse_)
+		*ns1__removeInvestigationResponse_ = *soap_tmp___ns1__removeInvestigationResponse->ns1__removeInvestigationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteInvestigation(ns1__deleteInvestigation *ns1__deleteInvestigation_, ns1__deleteInvestigationResponse *ns1__deleteInvestigationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteInvestigation soap_tmp___ns1__deleteInvestigation;
+	struct __ns1__deleteInvestigationResponse *soap_tmp___ns1__deleteInvestigationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteInvestigation.ns1__deleteInvestigation_ = ns1__deleteInvestigation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteInvestigation(soap, &soap_tmp___ns1__deleteInvestigation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteInvestigation(soap, &soap_tmp___ns1__deleteInvestigation, "-ns1:deleteInvestigation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteInvestigation(soap, &soap_tmp___ns1__deleteInvestigation, "-ns1:deleteInvestigation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteInvestigationResponse_)
+		return soap_closesock(soap);
+	ns1__deleteInvestigationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteInvestigationResponse = soap_get___ns1__deleteInvestigationResponse(soap, NULL, "-ns1:deleteInvestigationResponse", "ns1:deleteInvestigationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteInvestigationResponse_ && soap_tmp___ns1__deleteInvestigationResponse->ns1__deleteInvestigationResponse_)
+		*ns1__deleteInvestigationResponse_ = *soap_tmp___ns1__deleteInvestigationResponse->ns1__deleteInvestigationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyInvestigation(ns1__modifyInvestigation *ns1__modifyInvestigation_, ns1__modifyInvestigationResponse *ns1__modifyInvestigationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyInvestigation soap_tmp___ns1__modifyInvestigation;
+	struct __ns1__modifyInvestigationResponse *soap_tmp___ns1__modifyInvestigationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyInvestigation.ns1__modifyInvestigation_ = ns1__modifyInvestigation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyInvestigation(soap, &soap_tmp___ns1__modifyInvestigation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyInvestigation(soap, &soap_tmp___ns1__modifyInvestigation, "-ns1:modifyInvestigation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyInvestigation(soap, &soap_tmp___ns1__modifyInvestigation, "-ns1:modifyInvestigation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyInvestigationResponse_)
+		return soap_closesock(soap);
+	ns1__modifyInvestigationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyInvestigationResponse = soap_get___ns1__modifyInvestigationResponse(soap, NULL, "-ns1:modifyInvestigationResponse", "ns1:modifyInvestigationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyInvestigationResponse_ && soap_tmp___ns1__modifyInvestigationResponse->ns1__modifyInvestigationResponse_)
+		*ns1__modifyInvestigationResponse_ = *soap_tmp___ns1__modifyInvestigationResponse->ns1__modifyInvestigationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeKeyword(ns1__removeKeyword *ns1__removeKeyword_, ns1__removeKeywordResponse *ns1__removeKeywordResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeKeyword soap_tmp___ns1__removeKeyword;
+	struct __ns1__removeKeywordResponse *soap_tmp___ns1__removeKeywordResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeKeyword.ns1__removeKeyword_ = ns1__removeKeyword_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeKeyword(soap, &soap_tmp___ns1__removeKeyword);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeKeyword(soap, &soap_tmp___ns1__removeKeyword, "-ns1:removeKeyword", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeKeyword(soap, &soap_tmp___ns1__removeKeyword, "-ns1:removeKeyword", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeKeywordResponse_)
+		return soap_closesock(soap);
+	ns1__removeKeywordResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeKeywordResponse = soap_get___ns1__removeKeywordResponse(soap, NULL, "-ns1:removeKeywordResponse", "ns1:removeKeywordResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeKeywordResponse_ && soap_tmp___ns1__removeKeywordResponse->ns1__removeKeywordResponse_)
+		*ns1__removeKeywordResponse_ = *soap_tmp___ns1__removeKeywordResponse->ns1__removeKeywordResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteKeyword(ns1__deleteKeyword *ns1__deleteKeyword_, ns1__deleteKeywordResponse *ns1__deleteKeywordResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteKeyword soap_tmp___ns1__deleteKeyword;
+	struct __ns1__deleteKeywordResponse *soap_tmp___ns1__deleteKeywordResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteKeyword.ns1__deleteKeyword_ = ns1__deleteKeyword_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteKeyword(soap, &soap_tmp___ns1__deleteKeyword);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteKeyword(soap, &soap_tmp___ns1__deleteKeyword, "-ns1:deleteKeyword", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteKeyword(soap, &soap_tmp___ns1__deleteKeyword, "-ns1:deleteKeyword", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteKeywordResponse_)
+		return soap_closesock(soap);
+	ns1__deleteKeywordResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteKeywordResponse = soap_get___ns1__deleteKeywordResponse(soap, NULL, "-ns1:deleteKeywordResponse", "ns1:deleteKeywordResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteKeywordResponse_ && soap_tmp___ns1__deleteKeywordResponse->ns1__deleteKeywordResponse_)
+		*ns1__deleteKeywordResponse_ = *soap_tmp___ns1__deleteKeywordResponse->ns1__deleteKeywordResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removePublication(ns1__removePublication *ns1__removePublication_, ns1__removePublicationResponse *ns1__removePublicationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removePublication soap_tmp___ns1__removePublication;
+	struct __ns1__removePublicationResponse *soap_tmp___ns1__removePublicationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removePublication.ns1__removePublication_ = ns1__removePublication_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removePublication(soap, &soap_tmp___ns1__removePublication);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removePublication(soap, &soap_tmp___ns1__removePublication, "-ns1:removePublication", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removePublication(soap, &soap_tmp___ns1__removePublication, "-ns1:removePublication", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removePublicationResponse_)
+		return soap_closesock(soap);
+	ns1__removePublicationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removePublicationResponse = soap_get___ns1__removePublicationResponse(soap, NULL, "-ns1:removePublicationResponse", "ns1:removePublicationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removePublicationResponse_ && soap_tmp___ns1__removePublicationResponse->ns1__removePublicationResponse_)
+		*ns1__removePublicationResponse_ = *soap_tmp___ns1__removePublicationResponse->ns1__removePublicationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deletePublication(ns1__deletePublication *ns1__deletePublication_, ns1__deletePublicationResponse *ns1__deletePublicationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deletePublication soap_tmp___ns1__deletePublication;
+	struct __ns1__deletePublicationResponse *soap_tmp___ns1__deletePublicationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deletePublication.ns1__deletePublication_ = ns1__deletePublication_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deletePublication(soap, &soap_tmp___ns1__deletePublication);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deletePublication(soap, &soap_tmp___ns1__deletePublication, "-ns1:deletePublication", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deletePublication(soap, &soap_tmp___ns1__deletePublication, "-ns1:deletePublication", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deletePublicationResponse_)
+		return soap_closesock(soap);
+	ns1__deletePublicationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deletePublicationResponse = soap_get___ns1__deletePublicationResponse(soap, NULL, "-ns1:deletePublicationResponse", "ns1:deletePublicationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deletePublicationResponse_ && soap_tmp___ns1__deletePublicationResponse->ns1__deletePublicationResponse_)
+		*ns1__deletePublicationResponse_ = *soap_tmp___ns1__deletePublicationResponse->ns1__deletePublicationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyPublication(ns1__modifyPublication *ns1__modifyPublication_, ns1__modifyPublicationResponse *ns1__modifyPublicationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyPublication soap_tmp___ns1__modifyPublication;
+	struct __ns1__modifyPublicationResponse *soap_tmp___ns1__modifyPublicationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyPublication.ns1__modifyPublication_ = ns1__modifyPublication_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyPublication(soap, &soap_tmp___ns1__modifyPublication);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyPublication(soap, &soap_tmp___ns1__modifyPublication, "-ns1:modifyPublication", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyPublication(soap, &soap_tmp___ns1__modifyPublication, "-ns1:modifyPublication", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyPublicationResponse_)
+		return soap_closesock(soap);
+	ns1__modifyPublicationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyPublicationResponse = soap_get___ns1__modifyPublicationResponse(soap, NULL, "-ns1:modifyPublicationResponse", "ns1:modifyPublicationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyPublicationResponse_ && soap_tmp___ns1__modifyPublicationResponse->ns1__modifyPublicationResponse_)
+		*ns1__modifyPublicationResponse_ = *soap_tmp___ns1__modifyPublicationResponse->ns1__modifyPublicationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeInvestigator(ns1__removeInvestigator *ns1__removeInvestigator_, ns1__removeInvestigatorResponse *ns1__removeInvestigatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeInvestigator soap_tmp___ns1__removeInvestigator;
+	struct __ns1__removeInvestigatorResponse *soap_tmp___ns1__removeInvestigatorResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeInvestigator.ns1__removeInvestigator_ = ns1__removeInvestigator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeInvestigator(soap, &soap_tmp___ns1__removeInvestigator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeInvestigator(soap, &soap_tmp___ns1__removeInvestigator, "-ns1:removeInvestigator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeInvestigator(soap, &soap_tmp___ns1__removeInvestigator, "-ns1:removeInvestigator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeInvestigatorResponse_)
+		return soap_closesock(soap);
+	ns1__removeInvestigatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeInvestigatorResponse = soap_get___ns1__removeInvestigatorResponse(soap, NULL, "-ns1:removeInvestigatorResponse", "ns1:removeInvestigatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeInvestigatorResponse_ && soap_tmp___ns1__removeInvestigatorResponse->ns1__removeInvestigatorResponse_)
+		*ns1__removeInvestigatorResponse_ = *soap_tmp___ns1__removeInvestigatorResponse->ns1__removeInvestigatorResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyInvestigator(ns1__modifyInvestigator *ns1__modifyInvestigator_, ns1__modifyInvestigatorResponse *ns1__modifyInvestigatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyInvestigator soap_tmp___ns1__modifyInvestigator;
+	struct __ns1__modifyInvestigatorResponse *soap_tmp___ns1__modifyInvestigatorResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyInvestigator.ns1__modifyInvestigator_ = ns1__modifyInvestigator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyInvestigator(soap, &soap_tmp___ns1__modifyInvestigator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyInvestigator(soap, &soap_tmp___ns1__modifyInvestigator, "-ns1:modifyInvestigator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyInvestigator(soap, &soap_tmp___ns1__modifyInvestigator, "-ns1:modifyInvestigator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyInvestigatorResponse_)
+		return soap_closesock(soap);
+	ns1__modifyInvestigatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyInvestigatorResponse = soap_get___ns1__modifyInvestigatorResponse(soap, NULL, "-ns1:modifyInvestigatorResponse", "ns1:modifyInvestigatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyInvestigatorResponse_ && soap_tmp___ns1__modifyInvestigatorResponse->ns1__modifyInvestigatorResponse_)
+		*ns1__modifyInvestigatorResponse_ = *soap_tmp___ns1__modifyInvestigatorResponse->ns1__modifyInvestigatorResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteInvestigator(ns1__deleteInvestigator *ns1__deleteInvestigator_, ns1__deleteInvestigatorResponse *ns1__deleteInvestigatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteInvestigator soap_tmp___ns1__deleteInvestigator;
+	struct __ns1__deleteInvestigatorResponse *soap_tmp___ns1__deleteInvestigatorResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteInvestigator.ns1__deleteInvestigator_ = ns1__deleteInvestigator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteInvestigator(soap, &soap_tmp___ns1__deleteInvestigator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteInvestigator(soap, &soap_tmp___ns1__deleteInvestigator, "-ns1:deleteInvestigator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteInvestigator(soap, &soap_tmp___ns1__deleteInvestigator, "-ns1:deleteInvestigator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteInvestigatorResponse_)
+		return soap_closesock(soap);
+	ns1__deleteInvestigatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteInvestigatorResponse = soap_get___ns1__deleteInvestigatorResponse(soap, NULL, "-ns1:deleteInvestigatorResponse", "ns1:deleteInvestigatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteInvestigatorResponse_ && soap_tmp___ns1__deleteInvestigatorResponse->ns1__deleteInvestigatorResponse_)
+		*ns1__deleteInvestigatorResponse_ = *soap_tmp___ns1__deleteInvestigatorResponse->ns1__deleteInvestigatorResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeSample(ns1__removeSample *ns1__removeSample_, ns1__removeSampleResponse *ns1__removeSampleResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeSample soap_tmp___ns1__removeSample;
+	struct __ns1__removeSampleResponse *soap_tmp___ns1__removeSampleResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeSample.ns1__removeSample_ = ns1__removeSample_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeSample(soap, &soap_tmp___ns1__removeSample);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeSample(soap, &soap_tmp___ns1__removeSample, "-ns1:removeSample", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeSample(soap, &soap_tmp___ns1__removeSample, "-ns1:removeSample", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeSampleResponse_)
+		return soap_closesock(soap);
+	ns1__removeSampleResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeSampleResponse = soap_get___ns1__removeSampleResponse(soap, NULL, "-ns1:removeSampleResponse", "ns1:removeSampleResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeSampleResponse_ && soap_tmp___ns1__removeSampleResponse->ns1__removeSampleResponse_)
+		*ns1__removeSampleResponse_ = *soap_tmp___ns1__removeSampleResponse->ns1__removeSampleResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteSample(ns1__deleteSample *ns1__deleteSample_, ns1__deleteSampleResponse *ns1__deleteSampleResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteSample soap_tmp___ns1__deleteSample;
+	struct __ns1__deleteSampleResponse *soap_tmp___ns1__deleteSampleResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteSample.ns1__deleteSample_ = ns1__deleteSample_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteSample(soap, &soap_tmp___ns1__deleteSample);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteSample(soap, &soap_tmp___ns1__deleteSample, "-ns1:deleteSample", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteSample(soap, &soap_tmp___ns1__deleteSample, "-ns1:deleteSample", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteSampleResponse_)
+		return soap_closesock(soap);
+	ns1__deleteSampleResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteSampleResponse = soap_get___ns1__deleteSampleResponse(soap, NULL, "-ns1:deleteSampleResponse", "ns1:deleteSampleResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteSampleResponse_ && soap_tmp___ns1__deleteSampleResponse->ns1__deleteSampleResponse_)
+		*ns1__deleteSampleResponse_ = *soap_tmp___ns1__deleteSampleResponse->ns1__deleteSampleResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifySample(ns1__modifySample *ns1__modifySample_, ns1__modifySampleResponse *ns1__modifySampleResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifySample soap_tmp___ns1__modifySample;
+	struct __ns1__modifySampleResponse *soap_tmp___ns1__modifySampleResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifySample.ns1__modifySample_ = ns1__modifySample_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifySample(soap, &soap_tmp___ns1__modifySample);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifySample(soap, &soap_tmp___ns1__modifySample, "-ns1:modifySample", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifySample(soap, &soap_tmp___ns1__modifySample, "-ns1:modifySample", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifySampleResponse_)
+		return soap_closesock(soap);
+	ns1__modifySampleResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifySampleResponse = soap_get___ns1__modifySampleResponse(soap, NULL, "-ns1:modifySampleResponse", "ns1:modifySampleResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifySampleResponse_ && soap_tmp___ns1__modifySampleResponse->ns1__modifySampleResponse_)
+		*ns1__modifySampleResponse_ = *soap_tmp___ns1__modifySampleResponse->ns1__modifySampleResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeSampleParameter(ns1__removeSampleParameter *ns1__removeSampleParameter_, ns1__removeSampleParameterResponse *ns1__removeSampleParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeSampleParameter soap_tmp___ns1__removeSampleParameter;
+	struct __ns1__removeSampleParameterResponse *soap_tmp___ns1__removeSampleParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeSampleParameter.ns1__removeSampleParameter_ = ns1__removeSampleParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeSampleParameter(soap, &soap_tmp___ns1__removeSampleParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeSampleParameter(soap, &soap_tmp___ns1__removeSampleParameter, "-ns1:removeSampleParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeSampleParameter(soap, &soap_tmp___ns1__removeSampleParameter, "-ns1:removeSampleParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeSampleParameterResponse_)
+		return soap_closesock(soap);
+	ns1__removeSampleParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeSampleParameterResponse = soap_get___ns1__removeSampleParameterResponse(soap, NULL, "-ns1:removeSampleParameterResponse", "ns1:removeSampleParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeSampleParameterResponse_ && soap_tmp___ns1__removeSampleParameterResponse->ns1__removeSampleParameterResponse_)
+		*ns1__removeSampleParameterResponse_ = *soap_tmp___ns1__removeSampleParameterResponse->ns1__removeSampleParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteSampleParameter(ns1__deleteSampleParameter *ns1__deleteSampleParameter_, ns1__deleteSampleParameterResponse *ns1__deleteSampleParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteSampleParameter soap_tmp___ns1__deleteSampleParameter;
+	struct __ns1__deleteSampleParameterResponse *soap_tmp___ns1__deleteSampleParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteSampleParameter.ns1__deleteSampleParameter_ = ns1__deleteSampleParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteSampleParameter(soap, &soap_tmp___ns1__deleteSampleParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteSampleParameter(soap, &soap_tmp___ns1__deleteSampleParameter, "-ns1:deleteSampleParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteSampleParameter(soap, &soap_tmp___ns1__deleteSampleParameter, "-ns1:deleteSampleParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteSampleParameterResponse_)
+		return soap_closesock(soap);
+	ns1__deleteSampleParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteSampleParameterResponse = soap_get___ns1__deleteSampleParameterResponse(soap, NULL, "-ns1:deleteSampleParameterResponse", "ns1:deleteSampleParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteSampleParameterResponse_ && soap_tmp___ns1__deleteSampleParameterResponse->ns1__deleteSampleParameterResponse_)
+		*ns1__deleteSampleParameterResponse_ = *soap_tmp___ns1__deleteSampleParameterResponse->ns1__deleteSampleParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifySampleParameter(ns1__modifySampleParameter *ns1__modifySampleParameter_, ns1__modifySampleParameterResponse *ns1__modifySampleParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifySampleParameter soap_tmp___ns1__modifySampleParameter;
+	struct __ns1__modifySampleParameterResponse *soap_tmp___ns1__modifySampleParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifySampleParameter.ns1__modifySampleParameter_ = ns1__modifySampleParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifySampleParameter(soap, &soap_tmp___ns1__modifySampleParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifySampleParameter(soap, &soap_tmp___ns1__modifySampleParameter, "-ns1:modifySampleParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifySampleParameter(soap, &soap_tmp___ns1__modifySampleParameter, "-ns1:modifySampleParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifySampleParameterResponse_)
+		return soap_closesock(soap);
+	ns1__modifySampleParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifySampleParameterResponse = soap_get___ns1__modifySampleParameterResponse(soap, NULL, "-ns1:modifySampleParameterResponse", "ns1:modifySampleParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifySampleParameterResponse_ && soap_tmp___ns1__modifySampleParameterResponse->ns1__modifySampleParameterResponse_)
+		*ns1__modifySampleParameterResponse_ = *soap_tmp___ns1__modifySampleParameterResponse->ns1__modifySampleParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getAuthorisations(ns1__getAuthorisations *ns1__getAuthorisations_, ns1__getAuthorisationsResponse *ns1__getAuthorisationsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getAuthorisations soap_tmp___ns1__getAuthorisations;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getAuthorisations.ns1__getAuthorisations_ = ns1__getAuthorisations_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getAuthorisations(soap, &soap_tmp___ns1__getAuthorisations);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getAuthorisations(soap, &soap_tmp___ns1__getAuthorisations, "-ns1:getAuthorisations", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getAuthorisations(soap, &soap_tmp___ns1__getAuthorisations, "-ns1:getAuthorisations", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getAuthorisationsResponse_)
+		return soap_closesock(soap);
+	ns1__getAuthorisationsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getAuthorisationsResponse_->soap_get(soap, "ns1:getAuthorisationsResponse", "ns1:getAuthorisationsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addAuthorisation(ns1__addAuthorisation *ns1__addAuthorisation_, ns1__addAuthorisationResponse *ns1__addAuthorisationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addAuthorisation soap_tmp___ns1__addAuthorisation;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addAuthorisation.ns1__addAuthorisation_ = ns1__addAuthorisation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addAuthorisation(soap, &soap_tmp___ns1__addAuthorisation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addAuthorisation(soap, &soap_tmp___ns1__addAuthorisation, "-ns1:addAuthorisation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addAuthorisation(soap, &soap_tmp___ns1__addAuthorisation, "-ns1:addAuthorisation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addAuthorisationResponse_)
+		return soap_closesock(soap);
+	ns1__addAuthorisationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addAuthorisationResponse_->soap_get(soap, "ns1:addAuthorisationResponse", "ns1:addAuthorisationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteAuthorisation(ns1__deleteAuthorisation *ns1__deleteAuthorisation_, ns1__deleteAuthorisationResponse *ns1__deleteAuthorisationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteAuthorisation soap_tmp___ns1__deleteAuthorisation;
+	struct __ns1__deleteAuthorisationResponse *soap_tmp___ns1__deleteAuthorisationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteAuthorisation.ns1__deleteAuthorisation_ = ns1__deleteAuthorisation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteAuthorisation(soap, &soap_tmp___ns1__deleteAuthorisation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteAuthorisation(soap, &soap_tmp___ns1__deleteAuthorisation, "-ns1:deleteAuthorisation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteAuthorisation(soap, &soap_tmp___ns1__deleteAuthorisation, "-ns1:deleteAuthorisation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteAuthorisationResponse_)
+		return soap_closesock(soap);
+	ns1__deleteAuthorisationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteAuthorisationResponse = soap_get___ns1__deleteAuthorisationResponse(soap, NULL, "-ns1:deleteAuthorisationResponse", "ns1:deleteAuthorisationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteAuthorisationResponse_ && soap_tmp___ns1__deleteAuthorisationResponse->ns1__deleteAuthorisationResponse_)
+		*ns1__deleteAuthorisationResponse_ = *soap_tmp___ns1__deleteAuthorisationResponse->ns1__deleteAuthorisationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeAuthorisation(ns1__removeAuthorisation *ns1__removeAuthorisation_, ns1__removeAuthorisationResponse *ns1__removeAuthorisationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeAuthorisation soap_tmp___ns1__removeAuthorisation;
+	struct __ns1__removeAuthorisationResponse *soap_tmp___ns1__removeAuthorisationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeAuthorisation.ns1__removeAuthorisation_ = ns1__removeAuthorisation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeAuthorisation(soap, &soap_tmp___ns1__removeAuthorisation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeAuthorisation(soap, &soap_tmp___ns1__removeAuthorisation, "-ns1:removeAuthorisation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeAuthorisation(soap, &soap_tmp___ns1__removeAuthorisation, "-ns1:removeAuthorisation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeAuthorisationResponse_)
+		return soap_closesock(soap);
+	ns1__removeAuthorisationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeAuthorisationResponse = soap_get___ns1__removeAuthorisationResponse(soap, NULL, "-ns1:removeAuthorisationResponse", "ns1:removeAuthorisationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeAuthorisationResponse_ && soap_tmp___ns1__removeAuthorisationResponse->ns1__removeAuthorisationResponse_)
+		*ns1__removeAuthorisationResponse_ = *soap_tmp___ns1__removeAuthorisationResponse->ns1__removeAuthorisationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::updateAuthorisation(ns1__updateAuthorisation *ns1__updateAuthorisation_, ns1__updateAuthorisationResponse *ns1__updateAuthorisationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__updateAuthorisation soap_tmp___ns1__updateAuthorisation;
+	struct __ns1__updateAuthorisationResponse *soap_tmp___ns1__updateAuthorisationResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__updateAuthorisation.ns1__updateAuthorisation_ = ns1__updateAuthorisation_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__updateAuthorisation(soap, &soap_tmp___ns1__updateAuthorisation);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__updateAuthorisation(soap, &soap_tmp___ns1__updateAuthorisation, "-ns1:updateAuthorisation", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__updateAuthorisation(soap, &soap_tmp___ns1__updateAuthorisation, "-ns1:updateAuthorisation", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__updateAuthorisationResponse_)
+		return soap_closesock(soap);
+	ns1__updateAuthorisationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__updateAuthorisationResponse = soap_get___ns1__updateAuthorisationResponse(soap, NULL, "-ns1:updateAuthorisationResponse", "ns1:updateAuthorisationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__updateAuthorisationResponse_ && soap_tmp___ns1__updateAuthorisationResponse->ns1__updateAuthorisationResponse_)
+		*ns1__updateAuthorisationResponse_ = *soap_tmp___ns1__updateAuthorisationResponse->ns1__updateAuthorisationResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getUserDetails(ns1__getUserDetails *ns1__getUserDetails_, ns1__getUserDetailsResponse *ns1__getUserDetailsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getUserDetails soap_tmp___ns1__getUserDetails;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getUserDetails.ns1__getUserDetails_ = ns1__getUserDetails_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getUserDetails(soap, &soap_tmp___ns1__getUserDetails);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getUserDetails(soap, &soap_tmp___ns1__getUserDetails, "-ns1:getUserDetails", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getUserDetails(soap, &soap_tmp___ns1__getUserDetails, "-ns1:getUserDetails", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getUserDetailsResponse_)
+		return soap_closesock(soap);
+	ns1__getUserDetailsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getUserDetailsResponse_->soap_get(soap, "ns1:getUserDetailsResponse", "ns1:getUserDetailsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getDatafiles(ns1__getDatafiles *ns1__getDatafiles_, ns1__getDatafilesResponse *ns1__getDatafilesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getDatafiles soap_tmp___ns1__getDatafiles;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getDatafiles.ns1__getDatafiles_ = ns1__getDatafiles_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getDatafiles(soap, &soap_tmp___ns1__getDatafiles);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getDatafiles(soap, &soap_tmp___ns1__getDatafiles, "-ns1:getDatafiles", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getDatafiles(soap, &soap_tmp___ns1__getDatafiles, "-ns1:getDatafiles", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getDatafilesResponse_)
+		return soap_closesock(soap);
+	ns1__getDatafilesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getDatafilesResponse_->soap_get(soap, "ns1:getDatafilesResponse", "ns1:getDatafilesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::createDataFile(ns1__createDataFile *ns1__createDataFile_, ns1__createDataFileResponse *ns1__createDataFileResponse_)
+{	struct soap *soap = this;
+	struct __ns1__createDataFile soap_tmp___ns1__createDataFile;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__createDataFile.ns1__createDataFile_ = ns1__createDataFile_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__createDataFile(soap, &soap_tmp___ns1__createDataFile);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__createDataFile(soap, &soap_tmp___ns1__createDataFile, "-ns1:createDataFile", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__createDataFile(soap, &soap_tmp___ns1__createDataFile, "-ns1:createDataFile", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__createDataFileResponse_)
+		return soap_closesock(soap);
+	ns1__createDataFileResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__createDataFileResponse_->soap_get(soap, "ns1:createDataFileResponse", "ns1:createDataFileResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::createDataFiles(ns1__createDataFiles *ns1__createDataFiles_, ns1__createDataFilesResponse *ns1__createDataFilesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__createDataFiles soap_tmp___ns1__createDataFiles;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__createDataFiles.ns1__createDataFiles_ = ns1__createDataFiles_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__createDataFiles(soap, &soap_tmp___ns1__createDataFiles);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__createDataFiles(soap, &soap_tmp___ns1__createDataFiles, "-ns1:createDataFiles", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__createDataFiles(soap, &soap_tmp___ns1__createDataFiles, "-ns1:createDataFiles", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__createDataFilesResponse_)
+		return soap_closesock(soap);
+	ns1__createDataFilesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__createDataFilesResponse_->soap_get(soap, "ns1:createDataFilesResponse", "ns1:createDataFilesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteDataFile(ns1__deleteDataFile *ns1__deleteDataFile_, ns1__deleteDataFileResponse *ns1__deleteDataFileResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteDataFile soap_tmp___ns1__deleteDataFile;
+	struct __ns1__deleteDataFileResponse *soap_tmp___ns1__deleteDataFileResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteDataFile.ns1__deleteDataFile_ = ns1__deleteDataFile_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteDataFile(soap, &soap_tmp___ns1__deleteDataFile);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteDataFile(soap, &soap_tmp___ns1__deleteDataFile, "-ns1:deleteDataFile", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteDataFile(soap, &soap_tmp___ns1__deleteDataFile, "-ns1:deleteDataFile", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteDataFileResponse_)
+		return soap_closesock(soap);
+	ns1__deleteDataFileResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteDataFileResponse = soap_get___ns1__deleteDataFileResponse(soap, NULL, "-ns1:deleteDataFileResponse", "ns1:deleteDataFileResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteDataFileResponse_ && soap_tmp___ns1__deleteDataFileResponse->ns1__deleteDataFileResponse_)
+		*ns1__deleteDataFileResponse_ = *soap_tmp___ns1__deleteDataFileResponse->ns1__deleteDataFileResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeDataFile(ns1__removeDataFile *ns1__removeDataFile_, ns1__removeDataFileResponse *ns1__removeDataFileResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeDataFile soap_tmp___ns1__removeDataFile;
+	struct __ns1__removeDataFileResponse *soap_tmp___ns1__removeDataFileResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeDataFile.ns1__removeDataFile_ = ns1__removeDataFile_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeDataFile(soap, &soap_tmp___ns1__removeDataFile);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeDataFile(soap, &soap_tmp___ns1__removeDataFile, "-ns1:removeDataFile", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeDataFile(soap, &soap_tmp___ns1__removeDataFile, "-ns1:removeDataFile", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeDataFileResponse_)
+		return soap_closesock(soap);
+	ns1__removeDataFileResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeDataFileResponse = soap_get___ns1__removeDataFileResponse(soap, NULL, "-ns1:removeDataFileResponse", "ns1:removeDataFileResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeDataFileResponse_ && soap_tmp___ns1__removeDataFileResponse->ns1__removeDataFileResponse_)
+		*ns1__removeDataFileResponse_ = *soap_tmp___ns1__removeDataFileResponse->ns1__removeDataFileResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyDataFile(ns1__modifyDataFile *ns1__modifyDataFile_, ns1__modifyDataFileResponse *ns1__modifyDataFileResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyDataFile soap_tmp___ns1__modifyDataFile;
+	struct __ns1__modifyDataFileResponse *soap_tmp___ns1__modifyDataFileResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyDataFile.ns1__modifyDataFile_ = ns1__modifyDataFile_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyDataFile(soap, &soap_tmp___ns1__modifyDataFile);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyDataFile(soap, &soap_tmp___ns1__modifyDataFile, "-ns1:modifyDataFile", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyDataFile(soap, &soap_tmp___ns1__modifyDataFile, "-ns1:modifyDataFile", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyDataFileResponse_)
+		return soap_closesock(soap);
+	ns1__modifyDataFileResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyDataFileResponse = soap_get___ns1__modifyDataFileResponse(soap, NULL, "-ns1:modifyDataFileResponse", "ns1:modifyDataFileResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyDataFileResponse_ && soap_tmp___ns1__modifyDataFileResponse->ns1__modifyDataFileResponse_)
+		*ns1__modifyDataFileResponse_ = *soap_tmp___ns1__modifyDataFileResponse->ns1__modifyDataFileResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addDataFileParameters(ns1__addDataFileParameters *ns1__addDataFileParameters_, ns1__addDataFileParametersResponse *ns1__addDataFileParametersResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addDataFileParameters soap_tmp___ns1__addDataFileParameters;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addDataFileParameters.ns1__addDataFileParameters_ = ns1__addDataFileParameters_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addDataFileParameters(soap, &soap_tmp___ns1__addDataFileParameters);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addDataFileParameters(soap, &soap_tmp___ns1__addDataFileParameters, "-ns1:addDataFileParameters", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addDataFileParameters(soap, &soap_tmp___ns1__addDataFileParameters, "-ns1:addDataFileParameters", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addDataFileParametersResponse_)
+		return soap_closesock(soap);
+	ns1__addDataFileParametersResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addDataFileParametersResponse_->soap_get(soap, "ns1:addDataFileParametersResponse", "ns1:addDataFileParametersResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyDataFileParameter(ns1__modifyDataFileParameter *ns1__modifyDataFileParameter_, ns1__modifyDataFileParameterResponse *ns1__modifyDataFileParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyDataFileParameter soap_tmp___ns1__modifyDataFileParameter;
+	struct __ns1__modifyDataFileParameterResponse *soap_tmp___ns1__modifyDataFileParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyDataFileParameter.ns1__modifyDataFileParameter_ = ns1__modifyDataFileParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyDataFileParameter(soap, &soap_tmp___ns1__modifyDataFileParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyDataFileParameter(soap, &soap_tmp___ns1__modifyDataFileParameter, "-ns1:modifyDataFileParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyDataFileParameter(soap, &soap_tmp___ns1__modifyDataFileParameter, "-ns1:modifyDataFileParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyDataFileParameterResponse_)
+		return soap_closesock(soap);
+	ns1__modifyDataFileParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyDataFileParameterResponse = soap_get___ns1__modifyDataFileParameterResponse(soap, NULL, "-ns1:modifyDataFileParameterResponse", "ns1:modifyDataFileParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyDataFileParameterResponse_ && soap_tmp___ns1__modifyDataFileParameterResponse->ns1__modifyDataFileParameterResponse_)
+		*ns1__modifyDataFileParameterResponse_ = *soap_tmp___ns1__modifyDataFileParameterResponse->ns1__modifyDataFileParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeDataFileParameter(ns1__removeDataFileParameter *ns1__removeDataFileParameter_, ns1__removeDataFileParameterResponse *ns1__removeDataFileParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeDataFileParameter soap_tmp___ns1__removeDataFileParameter;
+	struct __ns1__removeDataFileParameterResponse *soap_tmp___ns1__removeDataFileParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeDataFileParameter.ns1__removeDataFileParameter_ = ns1__removeDataFileParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeDataFileParameter(soap, &soap_tmp___ns1__removeDataFileParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeDataFileParameter(soap, &soap_tmp___ns1__removeDataFileParameter, "-ns1:removeDataFileParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeDataFileParameter(soap, &soap_tmp___ns1__removeDataFileParameter, "-ns1:removeDataFileParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeDataFileParameterResponse_)
+		return soap_closesock(soap);
+	ns1__removeDataFileParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeDataFileParameterResponse = soap_get___ns1__removeDataFileParameterResponse(soap, NULL, "-ns1:removeDataFileParameterResponse", "ns1:removeDataFileParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeDataFileParameterResponse_ && soap_tmp___ns1__removeDataFileParameterResponse->ns1__removeDataFileParameterResponse_)
+		*ns1__removeDataFileParameterResponse_ = *soap_tmp___ns1__removeDataFileParameterResponse->ns1__removeDataFileParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteDataFileParameter(ns1__deleteDataFileParameter *ns1__deleteDataFileParameter_, ns1__deleteDataFileParameterResponse *ns1__deleteDataFileParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteDataFileParameter soap_tmp___ns1__deleteDataFileParameter;
+	struct __ns1__deleteDataFileParameterResponse *soap_tmp___ns1__deleteDataFileParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteDataFileParameter.ns1__deleteDataFileParameter_ = ns1__deleteDataFileParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteDataFileParameter(soap, &soap_tmp___ns1__deleteDataFileParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteDataFileParameter(soap, &soap_tmp___ns1__deleteDataFileParameter, "-ns1:deleteDataFileParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteDataFileParameter(soap, &soap_tmp___ns1__deleteDataFileParameter, "-ns1:deleteDataFileParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteDataFileParameterResponse_)
+		return soap_closesock(soap);
+	ns1__deleteDataFileParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteDataFileParameterResponse = soap_get___ns1__deleteDataFileParameterResponse(soap, NULL, "-ns1:deleteDataFileParameterResponse", "ns1:deleteDataFileParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteDataFileParameterResponse_ && soap_tmp___ns1__deleteDataFileParameterResponse->ns1__deleteDataFileParameterResponse_)
+		*ns1__deleteDataFileParameterResponse_ = *soap_tmp___ns1__deleteDataFileParameterResponse->ns1__deleteDataFileParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getKeywordsForUser(ns1__getKeywordsForUser *ns1__getKeywordsForUser_, ns1__getKeywordsForUserResponse *ns1__getKeywordsForUserResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getKeywordsForUser soap_tmp___ns1__getKeywordsForUser;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getKeywordsForUser.ns1__getKeywordsForUser_ = ns1__getKeywordsForUser_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getKeywordsForUser(soap, &soap_tmp___ns1__getKeywordsForUser);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getKeywordsForUser(soap, &soap_tmp___ns1__getKeywordsForUser, "-ns1:getKeywordsForUser", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getKeywordsForUser(soap, &soap_tmp___ns1__getKeywordsForUser, "-ns1:getKeywordsForUser", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getKeywordsForUserResponse_)
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserResponse_->soap_get(soap, "ns1:getKeywordsForUserResponse", "ns1:getKeywordsForUserResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getKeywordsForUserStartWithMax(ns1__getKeywordsForUserStartWithMax *ns1__getKeywordsForUserStartWithMax_, ns1__getKeywordsForUserStartWithMaxResponse *ns1__getKeywordsForUserStartWithMaxResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getKeywordsForUserStartWithMax soap_tmp___ns1__getKeywordsForUserStartWithMax;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getKeywordsForUserStartWithMax.ns1__getKeywordsForUserStartWithMax_ = ns1__getKeywordsForUserStartWithMax_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getKeywordsForUserStartWithMax(soap, &soap_tmp___ns1__getKeywordsForUserStartWithMax);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getKeywordsForUserStartWithMax(soap, &soap_tmp___ns1__getKeywordsForUserStartWithMax, "-ns1:getKeywordsForUserStartWithMax", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getKeywordsForUserStartWithMax(soap, &soap_tmp___ns1__getKeywordsForUserStartWithMax, "-ns1:getKeywordsForUserStartWithMax", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getKeywordsForUserStartWithMaxResponse_)
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserStartWithMaxResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserStartWithMaxResponse_->soap_get(soap, "ns1:getKeywordsForUserStartWithMaxResponse", "ns1:getKeywordsForUserStartWithMaxResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getKeywordsForUserMax(ns1__getKeywordsForUserMax *ns1__getKeywordsForUserMax_, ns1__getKeywordsForUserMaxResponse *ns1__getKeywordsForUserMaxResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getKeywordsForUserMax soap_tmp___ns1__getKeywordsForUserMax;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getKeywordsForUserMax.ns1__getKeywordsForUserMax_ = ns1__getKeywordsForUserMax_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getKeywordsForUserMax(soap, &soap_tmp___ns1__getKeywordsForUserMax);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getKeywordsForUserMax(soap, &soap_tmp___ns1__getKeywordsForUserMax, "-ns1:getKeywordsForUserMax", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getKeywordsForUserMax(soap, &soap_tmp___ns1__getKeywordsForUserMax, "-ns1:getKeywordsForUserMax", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getKeywordsForUserMaxResponse_)
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserMaxResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserMaxResponse_->soap_get(soap, "ns1:getKeywordsForUserMaxResponse", "ns1:getKeywordsForUserMaxResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getKeywordsForUserType(ns1__getKeywordsForUserType *ns1__getKeywordsForUserType_, ns1__getKeywordsForUserTypeResponse *ns1__getKeywordsForUserTypeResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getKeywordsForUserType soap_tmp___ns1__getKeywordsForUserType;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getKeywordsForUserType.ns1__getKeywordsForUserType_ = ns1__getKeywordsForUserType_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getKeywordsForUserType(soap, &soap_tmp___ns1__getKeywordsForUserType);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getKeywordsForUserType(soap, &soap_tmp___ns1__getKeywordsForUserType, "-ns1:getKeywordsForUserType", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getKeywordsForUserType(soap, &soap_tmp___ns1__getKeywordsForUserType, "-ns1:getKeywordsForUserType", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getKeywordsForUserTypeResponse_)
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserTypeResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getKeywordsForUserTypeResponse_->soap_get(soap, "ns1:getKeywordsForUserTypeResponse", "ns1:getKeywordsForUserTypeResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getAllKeywords(ns1__getAllKeywords *ns1__getAllKeywords_, ns1__getAllKeywordsResponse *ns1__getAllKeywordsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getAllKeywords soap_tmp___ns1__getAllKeywords;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getAllKeywords.ns1__getAllKeywords_ = ns1__getAllKeywords_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getAllKeywords(soap, &soap_tmp___ns1__getAllKeywords);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getAllKeywords(soap, &soap_tmp___ns1__getAllKeywords, "-ns1:getAllKeywords", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getAllKeywords(soap, &soap_tmp___ns1__getAllKeywords, "-ns1:getAllKeywords", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getAllKeywordsResponse_)
+		return soap_closesock(soap);
+	ns1__getAllKeywordsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getAllKeywordsResponse_->soap_get(soap, "ns1:getAllKeywordsResponse", "ns1:getAllKeywordsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::downloadDatafile(ns1__downloadDatafile *ns1__downloadDatafile_, ns1__downloadDatafileResponse *ns1__downloadDatafileResponse_)
+{	struct soap *soap = this;
+	struct __ns1__downloadDatafile soap_tmp___ns1__downloadDatafile;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__downloadDatafile.ns1__downloadDatafile_ = ns1__downloadDatafile_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__downloadDatafile(soap, &soap_tmp___ns1__downloadDatafile);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__downloadDatafile(soap, &soap_tmp___ns1__downloadDatafile, "-ns1:downloadDatafile", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__downloadDatafile(soap, &soap_tmp___ns1__downloadDatafile, "-ns1:downloadDatafile", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__downloadDatafileResponse_)
+		return soap_closesock(soap);
+	ns1__downloadDatafileResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__downloadDatafileResponse_->soap_get(soap, "ns1:downloadDatafileResponse", "ns1:downloadDatafileResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::downloadDatafiles(ns1__downloadDatafiles *ns1__downloadDatafiles_, ns1__downloadDatafilesResponse *ns1__downloadDatafilesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__downloadDatafiles soap_tmp___ns1__downloadDatafiles;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__downloadDatafiles.ns1__downloadDatafiles_ = ns1__downloadDatafiles_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__downloadDatafiles(soap, &soap_tmp___ns1__downloadDatafiles);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__downloadDatafiles(soap, &soap_tmp___ns1__downloadDatafiles, "-ns1:downloadDatafiles", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__downloadDatafiles(soap, &soap_tmp___ns1__downloadDatafiles, "-ns1:downloadDatafiles", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__downloadDatafilesResponse_)
+		return soap_closesock(soap);
+	ns1__downloadDatafilesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__downloadDatafilesResponse_->soap_get(soap, "ns1:downloadDatafilesResponse", "ns1:downloadDatafilesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::downloadDataset(ns1__downloadDataset *ns1__downloadDataset_, ns1__downloadDatasetResponse *ns1__downloadDatasetResponse_)
+{	struct soap *soap = this;
+	struct __ns1__downloadDataset soap_tmp___ns1__downloadDataset;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__downloadDataset.ns1__downloadDataset_ = ns1__downloadDataset_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__downloadDataset(soap, &soap_tmp___ns1__downloadDataset);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__downloadDataset(soap, &soap_tmp___ns1__downloadDataset, "-ns1:downloadDataset", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__downloadDataset(soap, &soap_tmp___ns1__downloadDataset, "-ns1:downloadDataset", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__downloadDatasetResponse_)
+		return soap_closesock(soap);
+	ns1__downloadDatasetResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__downloadDatasetResponse_->soap_get(soap, "ns1:downloadDatasetResponse", "ns1:downloadDatasetResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::checkDatafileDownloadAccess(ns1__checkDatafileDownloadAccess *ns1__checkDatafileDownloadAccess_, ns1__checkDatafileDownloadAccessResponse *ns1__checkDatafileDownloadAccessResponse_)
+{	struct soap *soap = this;
+	struct __ns1__checkDatafileDownloadAccess soap_tmp___ns1__checkDatafileDownloadAccess;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__checkDatafileDownloadAccess.ns1__checkDatafileDownloadAccess_ = ns1__checkDatafileDownloadAccess_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__checkDatafileDownloadAccess(soap, &soap_tmp___ns1__checkDatafileDownloadAccess);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__checkDatafileDownloadAccess(soap, &soap_tmp___ns1__checkDatafileDownloadAccess, "-ns1:checkDatafileDownloadAccess", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__checkDatafileDownloadAccess(soap, &soap_tmp___ns1__checkDatafileDownloadAccess, "-ns1:checkDatafileDownloadAccess", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__checkDatafileDownloadAccessResponse_)
+		return soap_closesock(soap);
+	ns1__checkDatafileDownloadAccessResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__checkDatafileDownloadAccessResponse_->soap_get(soap, "ns1:checkDatafileDownloadAccessResponse", "ns1:checkDatafileDownloadAccessResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::checkDatasetDownloadAccess(ns1__checkDatasetDownloadAccess *ns1__checkDatasetDownloadAccess_, ns1__checkDatasetDownloadAccessResponse *ns1__checkDatasetDownloadAccessResponse_)
+{	struct soap *soap = this;
+	struct __ns1__checkDatasetDownloadAccess soap_tmp___ns1__checkDatasetDownloadAccess;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__checkDatasetDownloadAccess.ns1__checkDatasetDownloadAccess_ = ns1__checkDatasetDownloadAccess_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__checkDatasetDownloadAccess(soap, &soap_tmp___ns1__checkDatasetDownloadAccess);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__checkDatasetDownloadAccess(soap, &soap_tmp___ns1__checkDatasetDownloadAccess, "-ns1:checkDatasetDownloadAccess", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__checkDatasetDownloadAccess(soap, &soap_tmp___ns1__checkDatasetDownloadAccess, "-ns1:checkDatasetDownloadAccess", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__checkDatasetDownloadAccessResponse_)
+		return soap_closesock(soap);
+	ns1__checkDatasetDownloadAccessResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__checkDatasetDownloadAccessResponse_->soap_get(soap, "ns1:checkDatasetDownloadAccessResponse", "ns1:checkDatasetDownloadAccessResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByAdvanced(ns1__searchByAdvanced *ns1__searchByAdvanced_, ns1__searchByAdvancedResponse *ns1__searchByAdvancedResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByAdvanced soap_tmp___ns1__searchByAdvanced;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByAdvanced.ns1__searchByAdvanced_ = ns1__searchByAdvanced_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByAdvanced(soap, &soap_tmp___ns1__searchByAdvanced);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByAdvanced(soap, &soap_tmp___ns1__searchByAdvanced, "-ns1:searchByAdvanced", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByAdvanced(soap, &soap_tmp___ns1__searchByAdvanced, "-ns1:searchByAdvanced", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByAdvancedResponse_)
+		return soap_closesock(soap);
+	ns1__searchByAdvancedResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByAdvancedResponse_->soap_get(soap, "ns1:searchByAdvancedResponse", "ns1:searchByAdvancedResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByAdvancedPagination(ns1__searchByAdvancedPagination *ns1__searchByAdvancedPagination_, ns1__searchByAdvancedPaginationResponse *ns1__searchByAdvancedPaginationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByAdvancedPagination soap_tmp___ns1__searchByAdvancedPagination;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByAdvancedPagination.ns1__searchByAdvancedPagination_ = ns1__searchByAdvancedPagination_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByAdvancedPagination(soap, &soap_tmp___ns1__searchByAdvancedPagination);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByAdvancedPagination(soap, &soap_tmp___ns1__searchByAdvancedPagination, "-ns1:searchByAdvancedPagination", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByAdvancedPagination(soap, &soap_tmp___ns1__searchByAdvancedPagination, "-ns1:searchByAdvancedPagination", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByAdvancedPaginationResponse_)
+		return soap_closesock(soap);
+	ns1__searchByAdvancedPaginationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByAdvancedPaginationResponse_->soap_get(soap, "ns1:searchByAdvancedPaginationResponse", "ns1:searchByAdvancedPaginationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByKeywords(ns1__searchByKeywords *ns1__searchByKeywords_, ns1__searchByKeywordsResponse *ns1__searchByKeywordsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByKeywords soap_tmp___ns1__searchByKeywords;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByKeywords.ns1__searchByKeywords_ = ns1__searchByKeywords_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByKeywords(soap, &soap_tmp___ns1__searchByKeywords);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByKeywords(soap, &soap_tmp___ns1__searchByKeywords, "-ns1:searchByKeywords", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByKeywords(soap, &soap_tmp___ns1__searchByKeywords, "-ns1:searchByKeywords", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByKeywordsResponse_)
+		return soap_closesock(soap);
+	ns1__searchByKeywordsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByKeywordsResponse_->soap_get(soap, "ns1:searchByKeywordsResponse", "ns1:searchByKeywordsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByKeywordsAll(ns1__searchByKeywordsAll *ns1__searchByKeywordsAll_, ns1__searchByKeywordsAllResponse *ns1__searchByKeywordsAllResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByKeywordsAll soap_tmp___ns1__searchByKeywordsAll;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByKeywordsAll.ns1__searchByKeywordsAll_ = ns1__searchByKeywordsAll_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByKeywordsAll(soap, &soap_tmp___ns1__searchByKeywordsAll);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByKeywordsAll(soap, &soap_tmp___ns1__searchByKeywordsAll, "-ns1:searchByKeywordsAll", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByKeywordsAll(soap, &soap_tmp___ns1__searchByKeywordsAll, "-ns1:searchByKeywordsAll", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByKeywordsAllResponse_)
+		return soap_closesock(soap);
+	ns1__searchByKeywordsAllResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByKeywordsAllResponse_->soap_get(soap, "ns1:searchByKeywordsAllResponse", "ns1:searchByKeywordsAllResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getMyInvestigations(ns1__getMyInvestigations *ns1__getMyInvestigations_, ns1__getMyInvestigationsResponse *ns1__getMyInvestigationsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getMyInvestigations soap_tmp___ns1__getMyInvestigations;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getMyInvestigations.ns1__getMyInvestigations_ = ns1__getMyInvestigations_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getMyInvestigations(soap, &soap_tmp___ns1__getMyInvestigations);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getMyInvestigations(soap, &soap_tmp___ns1__getMyInvestigations, "-ns1:getMyInvestigations", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getMyInvestigations(soap, &soap_tmp___ns1__getMyInvestigations, "-ns1:getMyInvestigations", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getMyInvestigationsResponse_)
+		return soap_closesock(soap);
+	ns1__getMyInvestigationsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getMyInvestigationsResponse_->soap_get(soap, "ns1:getMyInvestigationsResponse", "ns1:getMyInvestigationsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getMyInvestigationsIncludes(ns1__getMyInvestigationsIncludes *ns1__getMyInvestigationsIncludes_, ns1__getMyInvestigationsIncludesResponse *ns1__getMyInvestigationsIncludesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getMyInvestigationsIncludes soap_tmp___ns1__getMyInvestigationsIncludes;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getMyInvestigationsIncludes.ns1__getMyInvestigationsIncludes_ = ns1__getMyInvestigationsIncludes_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getMyInvestigationsIncludes(soap, &soap_tmp___ns1__getMyInvestigationsIncludes);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getMyInvestigationsIncludes(soap, &soap_tmp___ns1__getMyInvestigationsIncludes, "-ns1:getMyInvestigationsIncludes", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getMyInvestigationsIncludes(soap, &soap_tmp___ns1__getMyInvestigationsIncludes, "-ns1:getMyInvestigationsIncludes", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getMyInvestigationsIncludesResponse_)
+		return soap_closesock(soap);
+	ns1__getMyInvestigationsIncludesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getMyInvestigationsIncludesResponse_->soap_get(soap, "ns1:getMyInvestigationsIncludesResponse", "ns1:getMyInvestigationsIncludesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getMyInvestigationsIncludesPagination(ns1__getMyInvestigationsIncludesPagination *ns1__getMyInvestigationsIncludesPagination_, ns1__getMyInvestigationsIncludesPaginationResponse *ns1__getMyInvestigationsIncludesPaginationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getMyInvestigationsIncludesPagination soap_tmp___ns1__getMyInvestigationsIncludesPagination;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getMyInvestigationsIncludesPagination.ns1__getMyInvestigationsIncludesPagination_ = ns1__getMyInvestigationsIncludesPagination_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getMyInvestigationsIncludesPagination(soap, &soap_tmp___ns1__getMyInvestigationsIncludesPagination);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getMyInvestigationsIncludesPagination(soap, &soap_tmp___ns1__getMyInvestigationsIncludesPagination, "-ns1:getMyInvestigationsIncludesPagination", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getMyInvestigationsIncludesPagination(soap, &soap_tmp___ns1__getMyInvestigationsIncludesPagination, "-ns1:getMyInvestigationsIncludesPagination", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getMyInvestigationsIncludesPaginationResponse_)
+		return soap_closesock(soap);
+	ns1__getMyInvestigationsIncludesPaginationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getMyInvestigationsIncludesPaginationResponse_->soap_get(soap, "ns1:getMyInvestigationsIncludesPaginationResponse", "ns1:getMyInvestigationsIncludesPaginationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByUserID(ns1__searchByUserID *ns1__searchByUserID_, ns1__searchByUserIDResponse *ns1__searchByUserIDResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByUserID soap_tmp___ns1__searchByUserID;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByUserID.ns1__searchByUserID_ = ns1__searchByUserID_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByUserID(soap, &soap_tmp___ns1__searchByUserID);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByUserID(soap, &soap_tmp___ns1__searchByUserID, "-ns1:searchByUserID", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByUserID(soap, &soap_tmp___ns1__searchByUserID, "-ns1:searchByUserID", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByUserIDResponse_)
+		return soap_closesock(soap);
+	ns1__searchByUserIDResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByUserIDResponse_->soap_get(soap, "ns1:searchByUserIDResponse", "ns1:searchByUserIDResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByUserIDPagination(ns1__searchByUserIDPagination *ns1__searchByUserIDPagination_, ns1__searchByUserIDPaginationResponse *ns1__searchByUserIDPaginationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByUserIDPagination soap_tmp___ns1__searchByUserIDPagination;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByUserIDPagination.ns1__searchByUserIDPagination_ = ns1__searchByUserIDPagination_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByUserIDPagination(soap, &soap_tmp___ns1__searchByUserIDPagination);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByUserIDPagination(soap, &soap_tmp___ns1__searchByUserIDPagination, "-ns1:searchByUserIDPagination", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByUserIDPagination(soap, &soap_tmp___ns1__searchByUserIDPagination, "-ns1:searchByUserIDPagination", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByUserIDPaginationResponse_)
+		return soap_closesock(soap);
+	ns1__searchByUserIDPaginationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByUserIDPaginationResponse_->soap_get(soap, "ns1:searchByUserIDPaginationResponse", "ns1:searchByUserIDPaginationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByUserSurname(ns1__searchByUserSurname *ns1__searchByUserSurname_, ns1__searchByUserSurnameResponse *ns1__searchByUserSurnameResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByUserSurname soap_tmp___ns1__searchByUserSurname;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByUserSurname.ns1__searchByUserSurname_ = ns1__searchByUserSurname_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByUserSurname(soap, &soap_tmp___ns1__searchByUserSurname);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByUserSurname(soap, &soap_tmp___ns1__searchByUserSurname, "-ns1:searchByUserSurname", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByUserSurname(soap, &soap_tmp___ns1__searchByUserSurname, "-ns1:searchByUserSurname", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByUserSurnameResponse_)
+		return soap_closesock(soap);
+	ns1__searchByUserSurnameResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByUserSurnameResponse_->soap_get(soap, "ns1:searchByUserSurnameResponse", "ns1:searchByUserSurnameResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByUserSurnamePagination(ns1__searchByUserSurnamePagination *ns1__searchByUserSurnamePagination_, ns1__searchByUserSurnamePaginationResponse *ns1__searchByUserSurnamePaginationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByUserSurnamePagination soap_tmp___ns1__searchByUserSurnamePagination;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByUserSurnamePagination.ns1__searchByUserSurnamePagination_ = ns1__searchByUserSurnamePagination_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByUserSurnamePagination(soap, &soap_tmp___ns1__searchByUserSurnamePagination);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByUserSurnamePagination(soap, &soap_tmp___ns1__searchByUserSurnamePagination, "-ns1:searchByUserSurnamePagination", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByUserSurnamePagination(soap, &soap_tmp___ns1__searchByUserSurnamePagination, "-ns1:searchByUserSurnamePagination", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByUserSurnamePaginationResponse_)
+		return soap_closesock(soap);
+	ns1__searchByUserSurnamePaginationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByUserSurnamePaginationResponse_->soap_get(soap, "ns1:searchByUserSurnamePaginationResponse", "ns1:searchByUserSurnamePaginationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listInstruments(ns1__listInstruments *ns1__listInstruments_, ns1__listInstrumentsResponse *ns1__listInstrumentsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listInstruments soap_tmp___ns1__listInstruments;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listInstruments.ns1__listInstruments_ = ns1__listInstruments_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listInstruments(soap, &soap_tmp___ns1__listInstruments);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listInstruments(soap, &soap_tmp___ns1__listInstruments, "-ns1:listInstruments", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listInstruments(soap, &soap_tmp___ns1__listInstruments, "-ns1:listInstruments", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listInstrumentsResponse_)
+		return soap_closesock(soap);
+	ns1__listInstrumentsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listInstrumentsResponse_->soap_get(soap, "ns1:listInstrumentsResponse", "ns1:listInstrumentsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listRoles(ns1__listRoles *ns1__listRoles_, ns1__listRolesResponse *ns1__listRolesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listRoles soap_tmp___ns1__listRoles;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listRoles.ns1__listRoles_ = ns1__listRoles_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listRoles(soap, &soap_tmp___ns1__listRoles);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listRoles(soap, &soap_tmp___ns1__listRoles, "-ns1:listRoles", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listRoles(soap, &soap_tmp___ns1__listRoles, "-ns1:listRoles", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listRolesResponse_)
+		return soap_closesock(soap);
+	ns1__listRolesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listRolesResponse_->soap_get(soap, "ns1:listRolesResponse", "ns1:listRolesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listParameters(ns1__listParameters *ns1__listParameters_, ns1__listParametersResponse *ns1__listParametersResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listParameters soap_tmp___ns1__listParameters;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listParameters.ns1__listParameters_ = ns1__listParameters_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listParameters(soap, &soap_tmp___ns1__listParameters);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listParameters(soap, &soap_tmp___ns1__listParameters, "-ns1:listParameters", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listParameters(soap, &soap_tmp___ns1__listParameters, "-ns1:listParameters", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listParametersResponse_)
+		return soap_closesock(soap);
+	ns1__listParametersResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listParametersResponse_->soap_get(soap, "ns1:listParametersResponse", "ns1:listParametersResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listFacilityCycles(ns1__listFacilityCycles *ns1__listFacilityCycles_, ns1__listFacilityCyclesResponse *ns1__listFacilityCyclesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listFacilityCycles soap_tmp___ns1__listFacilityCycles;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listFacilityCycles.ns1__listFacilityCycles_ = ns1__listFacilityCycles_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listFacilityCycles(soap, &soap_tmp___ns1__listFacilityCycles);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listFacilityCycles(soap, &soap_tmp___ns1__listFacilityCycles, "-ns1:listFacilityCycles", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listFacilityCycles(soap, &soap_tmp___ns1__listFacilityCycles, "-ns1:listFacilityCycles", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listFacilityCyclesResponse_)
+		return soap_closesock(soap);
+	ns1__listFacilityCyclesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listFacilityCyclesResponse_->soap_get(soap, "ns1:listFacilityCyclesResponse", "ns1:listFacilityCyclesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listInvestigationTypes(ns1__listInvestigationTypes *ns1__listInvestigationTypes_, ns1__listInvestigationTypesResponse *ns1__listInvestigationTypesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listInvestigationTypes soap_tmp___ns1__listInvestigationTypes;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listInvestigationTypes.ns1__listInvestigationTypes_ = ns1__listInvestigationTypes_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listInvestigationTypes(soap, &soap_tmp___ns1__listInvestigationTypes);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listInvestigationTypes(soap, &soap_tmp___ns1__listInvestigationTypes, "-ns1:listInvestigationTypes", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listInvestigationTypes(soap, &soap_tmp___ns1__listInvestigationTypes, "-ns1:listInvestigationTypes", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listInvestigationTypesResponse_)
+		return soap_closesock(soap);
+	ns1__listInvestigationTypesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listInvestigationTypesResponse_->soap_get(soap, "ns1:listInvestigationTypesResponse", "ns1:listInvestigationTypesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchSamplesBySampleName(ns1__searchSamplesBySampleName *ns1__searchSamplesBySampleName_, ns1__searchSamplesBySampleNameResponse *ns1__searchSamplesBySampleNameResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchSamplesBySampleName soap_tmp___ns1__searchSamplesBySampleName;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchSamplesBySampleName.ns1__searchSamplesBySampleName_ = ns1__searchSamplesBySampleName_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchSamplesBySampleName(soap, &soap_tmp___ns1__searchSamplesBySampleName);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchSamplesBySampleName(soap, &soap_tmp___ns1__searchSamplesBySampleName, "-ns1:searchSamplesBySampleName", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchSamplesBySampleName(soap, &soap_tmp___ns1__searchSamplesBySampleName, "-ns1:searchSamplesBySampleName", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchSamplesBySampleNameResponse_)
+		return soap_closesock(soap);
+	ns1__searchSamplesBySampleNameResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchSamplesBySampleNameResponse_->soap_get(soap, "ns1:searchSamplesBySampleNameResponse", "ns1:searchSamplesBySampleNameResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchDatasetsBySample(ns1__searchDatasetsBySample *ns1__searchDatasetsBySample_, ns1__searchDatasetsBySampleResponse *ns1__searchDatasetsBySampleResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchDatasetsBySample soap_tmp___ns1__searchDatasetsBySample;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchDatasetsBySample.ns1__searchDatasetsBySample_ = ns1__searchDatasetsBySample_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchDatasetsBySample(soap, &soap_tmp___ns1__searchDatasetsBySample);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchDatasetsBySample(soap, &soap_tmp___ns1__searchDatasetsBySample, "-ns1:searchDatasetsBySample", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchDatasetsBySample(soap, &soap_tmp___ns1__searchDatasetsBySample, "-ns1:searchDatasetsBySample", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchDatasetsBySampleResponse_)
+		return soap_closesock(soap);
+	ns1__searchDatasetsBySampleResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchDatasetsBySampleResponse_->soap_get(soap, "ns1:searchDatasetsBySampleResponse", "ns1:searchDatasetsBySampleResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listDatasetTypes(ns1__listDatasetTypes *ns1__listDatasetTypes_, ns1__listDatasetTypesResponse *ns1__listDatasetTypesResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listDatasetTypes soap_tmp___ns1__listDatasetTypes;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listDatasetTypes.ns1__listDatasetTypes_ = ns1__listDatasetTypes_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listDatasetTypes(soap, &soap_tmp___ns1__listDatasetTypes);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listDatasetTypes(soap, &soap_tmp___ns1__listDatasetTypes, "-ns1:listDatasetTypes", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listDatasetTypes(soap, &soap_tmp___ns1__listDatasetTypes, "-ns1:listDatasetTypes", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listDatasetTypesResponse_)
+		return soap_closesock(soap);
+	ns1__listDatasetTypesResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listDatasetTypesResponse_->soap_get(soap, "ns1:listDatasetTypesResponse", "ns1:listDatasetTypesResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listDatasetStatus(ns1__listDatasetStatus *ns1__listDatasetStatus_, ns1__listDatasetStatusResponse *ns1__listDatasetStatusResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listDatasetStatus soap_tmp___ns1__listDatasetStatus;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listDatasetStatus.ns1__listDatasetStatus_ = ns1__listDatasetStatus_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listDatasetStatus(soap, &soap_tmp___ns1__listDatasetStatus);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listDatasetStatus(soap, &soap_tmp___ns1__listDatasetStatus, "-ns1:listDatasetStatus", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listDatasetStatus(soap, &soap_tmp___ns1__listDatasetStatus, "-ns1:listDatasetStatus", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listDatasetStatusResponse_)
+		return soap_closesock(soap);
+	ns1__listDatasetStatusResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listDatasetStatusResponse_->soap_get(soap, "ns1:listDatasetStatusResponse", "ns1:listDatasetStatusResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByRunNumber(ns1__searchByRunNumber *ns1__searchByRunNumber_, ns1__searchByRunNumberResponse *ns1__searchByRunNumberResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByRunNumber soap_tmp___ns1__searchByRunNumber;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByRunNumber.ns1__searchByRunNumber_ = ns1__searchByRunNumber_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByRunNumber(soap, &soap_tmp___ns1__searchByRunNumber);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByRunNumber(soap, &soap_tmp___ns1__searchByRunNumber, "-ns1:searchByRunNumber", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByRunNumber(soap, &soap_tmp___ns1__searchByRunNumber, "-ns1:searchByRunNumber", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByRunNumberResponse_)
+		return soap_closesock(soap);
+	ns1__searchByRunNumberResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByRunNumberResponse_->soap_get(soap, "ns1:searchByRunNumberResponse", "ns1:searchByRunNumberResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByRunNumberPagination(ns1__searchByRunNumberPagination *ns1__searchByRunNumberPagination_, ns1__searchByRunNumberPaginationResponse *ns1__searchByRunNumberPaginationResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByRunNumberPagination soap_tmp___ns1__searchByRunNumberPagination;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByRunNumberPagination.ns1__searchByRunNumberPagination_ = ns1__searchByRunNumberPagination_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByRunNumberPagination(soap, &soap_tmp___ns1__searchByRunNumberPagination);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByRunNumberPagination(soap, &soap_tmp___ns1__searchByRunNumberPagination, "-ns1:searchByRunNumberPagination", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByRunNumberPagination(soap, &soap_tmp___ns1__searchByRunNumberPagination, "-ns1:searchByRunNumberPagination", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByRunNumberPaginationResponse_)
+		return soap_closesock(soap);
+	ns1__searchByRunNumberPaginationResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByRunNumberPaginationResponse_->soap_get(soap, "ns1:searchByRunNumberPaginationResponse", "ns1:searchByRunNumberPaginationResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::listDatafileFormats(ns1__listDatafileFormats *ns1__listDatafileFormats_, ns1__listDatafileFormatsResponse *ns1__listDatafileFormatsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__listDatafileFormats soap_tmp___ns1__listDatafileFormats;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__listDatafileFormats.ns1__listDatafileFormats_ = ns1__listDatafileFormats_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__listDatafileFormats(soap, &soap_tmp___ns1__listDatafileFormats);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__listDatafileFormats(soap, &soap_tmp___ns1__listDatafileFormats, "-ns1:listDatafileFormats", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__listDatafileFormats(soap, &soap_tmp___ns1__listDatafileFormats, "-ns1:listDatafileFormats", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__listDatafileFormatsResponse_)
+		return soap_closesock(soap);
+	ns1__listDatafileFormatsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__listDatafileFormatsResponse_->soap_get(soap, "ns1:listDatafileFormatsResponse", "ns1:listDatafileFormatsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getDatasets(ns1__getDatasets *ns1__getDatasets_, ns1__getDatasetsResponse *ns1__getDatasetsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getDatasets soap_tmp___ns1__getDatasets;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getDatasets.ns1__getDatasets_ = ns1__getDatasets_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getDatasets(soap, &soap_tmp___ns1__getDatasets);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getDatasets(soap, &soap_tmp___ns1__getDatasets, "-ns1:getDatasets", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getDatasets(soap, &soap_tmp___ns1__getDatasets, "-ns1:getDatasets", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getDatasetsResponse_)
+		return soap_closesock(soap);
+	ns1__getDatasetsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getDatasetsResponse_->soap_get(soap, "ns1:getDatasetsResponse", "ns1:getDatasetsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::createDataSet(ns1__createDataSet *ns1__createDataSet_, ns1__createDataSetResponse *ns1__createDataSetResponse_)
+{	struct soap *soap = this;
+	struct __ns1__createDataSet soap_tmp___ns1__createDataSet;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__createDataSet.ns1__createDataSet_ = ns1__createDataSet_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__createDataSet(soap, &soap_tmp___ns1__createDataSet);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__createDataSet(soap, &soap_tmp___ns1__createDataSet, "-ns1:createDataSet", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__createDataSet(soap, &soap_tmp___ns1__createDataSet, "-ns1:createDataSet", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__createDataSetResponse_)
+		return soap_closesock(soap);
+	ns1__createDataSetResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__createDataSetResponse_->soap_get(soap, "ns1:createDataSetResponse", "ns1:createDataSetResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::createDataSets(ns1__createDataSets *ns1__createDataSets_, ns1__createDataSetsResponse *ns1__createDataSetsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__createDataSets soap_tmp___ns1__createDataSets;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__createDataSets.ns1__createDataSets_ = ns1__createDataSets_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__createDataSets(soap, &soap_tmp___ns1__createDataSets);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__createDataSets(soap, &soap_tmp___ns1__createDataSets, "-ns1:createDataSets", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__createDataSets(soap, &soap_tmp___ns1__createDataSets, "-ns1:createDataSets", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__createDataSetsResponse_)
+		return soap_closesock(soap);
+	ns1__createDataSetsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__createDataSetsResponse_->soap_get(soap, "ns1:createDataSetsResponse", "ns1:createDataSetsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteDataSet(ns1__deleteDataSet *ns1__deleteDataSet_, ns1__deleteDataSetResponse *ns1__deleteDataSetResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteDataSet soap_tmp___ns1__deleteDataSet;
+	struct __ns1__deleteDataSetResponse *soap_tmp___ns1__deleteDataSetResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteDataSet.ns1__deleteDataSet_ = ns1__deleteDataSet_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteDataSet(soap, &soap_tmp___ns1__deleteDataSet);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteDataSet(soap, &soap_tmp___ns1__deleteDataSet, "-ns1:deleteDataSet", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteDataSet(soap, &soap_tmp___ns1__deleteDataSet, "-ns1:deleteDataSet", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteDataSetResponse_)
+		return soap_closesock(soap);
+	ns1__deleteDataSetResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteDataSetResponse = soap_get___ns1__deleteDataSetResponse(soap, NULL, "-ns1:deleteDataSetResponse", "ns1:deleteDataSetResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteDataSetResponse_ && soap_tmp___ns1__deleteDataSetResponse->ns1__deleteDataSetResponse_)
+		*ns1__deleteDataSetResponse_ = *soap_tmp___ns1__deleteDataSetResponse->ns1__deleteDataSetResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::deleteDataSetParameter(ns1__deleteDataSetParameter *ns1__deleteDataSetParameter_, ns1__deleteDataSetParameterResponse *ns1__deleteDataSetParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__deleteDataSetParameter soap_tmp___ns1__deleteDataSetParameter;
+	struct __ns1__deleteDataSetParameterResponse *soap_tmp___ns1__deleteDataSetParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__deleteDataSetParameter.ns1__deleteDataSetParameter_ = ns1__deleteDataSetParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__deleteDataSetParameter(soap, &soap_tmp___ns1__deleteDataSetParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__deleteDataSetParameter(soap, &soap_tmp___ns1__deleteDataSetParameter, "-ns1:deleteDataSetParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__deleteDataSetParameter(soap, &soap_tmp___ns1__deleteDataSetParameter, "-ns1:deleteDataSetParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__deleteDataSetParameterResponse_)
+		return soap_closesock(soap);
+	ns1__deleteDataSetParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__deleteDataSetParameterResponse = soap_get___ns1__deleteDataSetParameterResponse(soap, NULL, "-ns1:deleteDataSetParameterResponse", "ns1:deleteDataSetParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__deleteDataSetParameterResponse_ && soap_tmp___ns1__deleteDataSetParameterResponse->ns1__deleteDataSetParameterResponse_)
+		*ns1__deleteDataSetParameterResponse_ = *soap_tmp___ns1__deleteDataSetParameterResponse->ns1__deleteDataSetParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyDataSet(ns1__modifyDataSet *ns1__modifyDataSet_, ns1__modifyDataSetResponse *ns1__modifyDataSetResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyDataSet soap_tmp___ns1__modifyDataSet;
+	struct __ns1__modifyDataSetResponse *soap_tmp___ns1__modifyDataSetResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyDataSet.ns1__modifyDataSet_ = ns1__modifyDataSet_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyDataSet(soap, &soap_tmp___ns1__modifyDataSet);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyDataSet(soap, &soap_tmp___ns1__modifyDataSet, "-ns1:modifyDataSet", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyDataSet(soap, &soap_tmp___ns1__modifyDataSet, "-ns1:modifyDataSet", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyDataSetResponse_)
+		return soap_closesock(soap);
+	ns1__modifyDataSetResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyDataSetResponse = soap_get___ns1__modifyDataSetResponse(soap, NULL, "-ns1:modifyDataSetResponse", "ns1:modifyDataSetResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyDataSetResponse_ && soap_tmp___ns1__modifyDataSetResponse->ns1__modifyDataSetResponse_)
+		*ns1__modifyDataSetResponse_ = *soap_tmp___ns1__modifyDataSetResponse->ns1__modifyDataSetResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::modifyDataSetParameter(ns1__modifyDataSetParameter *ns1__modifyDataSetParameter_, ns1__modifyDataSetParameterResponse *ns1__modifyDataSetParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__modifyDataSetParameter soap_tmp___ns1__modifyDataSetParameter;
+	struct __ns1__modifyDataSetParameterResponse *soap_tmp___ns1__modifyDataSetParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__modifyDataSetParameter.ns1__modifyDataSetParameter_ = ns1__modifyDataSetParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__modifyDataSetParameter(soap, &soap_tmp___ns1__modifyDataSetParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__modifyDataSetParameter(soap, &soap_tmp___ns1__modifyDataSetParameter, "-ns1:modifyDataSetParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__modifyDataSetParameter(soap, &soap_tmp___ns1__modifyDataSetParameter, "-ns1:modifyDataSetParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__modifyDataSetParameterResponse_)
+		return soap_closesock(soap);
+	ns1__modifyDataSetParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__modifyDataSetParameterResponse = soap_get___ns1__modifyDataSetParameterResponse(soap, NULL, "-ns1:modifyDataSetParameterResponse", "ns1:modifyDataSetParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__modifyDataSetParameterResponse_ && soap_tmp___ns1__modifyDataSetParameterResponse->ns1__modifyDataSetParameterResponse_)
+		*ns1__modifyDataSetParameterResponse_ = *soap_tmp___ns1__modifyDataSetParameterResponse->ns1__modifyDataSetParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::setDataSetSample(ns1__setDataSetSample *ns1__setDataSetSample_, ns1__setDataSetSampleResponse *ns1__setDataSetSampleResponse_)
+{	struct soap *soap = this;
+	struct __ns1__setDataSetSample soap_tmp___ns1__setDataSetSample;
+	struct __ns1__setDataSetSampleResponse *soap_tmp___ns1__setDataSetSampleResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__setDataSetSample.ns1__setDataSetSample_ = ns1__setDataSetSample_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__setDataSetSample(soap, &soap_tmp___ns1__setDataSetSample);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__setDataSetSample(soap, &soap_tmp___ns1__setDataSetSample, "-ns1:setDataSetSample", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__setDataSetSample(soap, &soap_tmp___ns1__setDataSetSample, "-ns1:setDataSetSample", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__setDataSetSampleResponse_)
+		return soap_closesock(soap);
+	ns1__setDataSetSampleResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__setDataSetSampleResponse = soap_get___ns1__setDataSetSampleResponse(soap, NULL, "-ns1:setDataSetSampleResponse", "ns1:setDataSetSampleResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__setDataSetSampleResponse_ && soap_tmp___ns1__setDataSetSampleResponse->ns1__setDataSetSampleResponse_)
+		*ns1__setDataSetSampleResponse_ = *soap_tmp___ns1__setDataSetSampleResponse->ns1__setDataSetSampleResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addDataSetParameter(ns1__addDataSetParameter *ns1__addDataSetParameter_, ns1__addDataSetParameterResponse *ns1__addDataSetParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addDataSetParameter soap_tmp___ns1__addDataSetParameter;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addDataSetParameter.ns1__addDataSetParameter_ = ns1__addDataSetParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addDataSetParameter(soap, &soap_tmp___ns1__addDataSetParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addDataSetParameter(soap, &soap_tmp___ns1__addDataSetParameter, "-ns1:addDataSetParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addDataSetParameter(soap, &soap_tmp___ns1__addDataSetParameter, "-ns1:addDataSetParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addDataSetParameterResponse_)
+		return soap_closesock(soap);
+	ns1__addDataSetParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addDataSetParameterResponse_->soap_get(soap, "ns1:addDataSetParameterResponse", "ns1:addDataSetParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::addDataSetParameters(ns1__addDataSetParameters *ns1__addDataSetParameters_, ns1__addDataSetParametersResponse *ns1__addDataSetParametersResponse_)
+{	struct soap *soap = this;
+	struct __ns1__addDataSetParameters soap_tmp___ns1__addDataSetParameters;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__addDataSetParameters.ns1__addDataSetParameters_ = ns1__addDataSetParameters_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__addDataSetParameters(soap, &soap_tmp___ns1__addDataSetParameters);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__addDataSetParameters(soap, &soap_tmp___ns1__addDataSetParameters, "-ns1:addDataSetParameters", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__addDataSetParameters(soap, &soap_tmp___ns1__addDataSetParameters, "-ns1:addDataSetParameters", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__addDataSetParametersResponse_)
+		return soap_closesock(soap);
+	ns1__addDataSetParametersResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__addDataSetParametersResponse_->soap_get(soap, "ns1:addDataSetParametersResponse", "ns1:addDataSetParametersResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeDataSet(ns1__removeDataSet *ns1__removeDataSet_, ns1__removeDataSetResponse *ns1__removeDataSetResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeDataSet soap_tmp___ns1__removeDataSet;
+	struct __ns1__removeDataSetResponse *soap_tmp___ns1__removeDataSetResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeDataSet.ns1__removeDataSet_ = ns1__removeDataSet_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeDataSet(soap, &soap_tmp___ns1__removeDataSet);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeDataSet(soap, &soap_tmp___ns1__removeDataSet, "-ns1:removeDataSet", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeDataSet(soap, &soap_tmp___ns1__removeDataSet, "-ns1:removeDataSet", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeDataSetResponse_)
+		return soap_closesock(soap);
+	ns1__removeDataSetResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeDataSetResponse = soap_get___ns1__removeDataSetResponse(soap, NULL, "-ns1:removeDataSetResponse", "ns1:removeDataSetResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeDataSetResponse_ && soap_tmp___ns1__removeDataSetResponse->ns1__removeDataSetResponse_)
+		*ns1__removeDataSetResponse_ = *soap_tmp___ns1__removeDataSetResponse->ns1__removeDataSetResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::removeDataSetParameter(ns1__removeDataSetParameter *ns1__removeDataSetParameter_, ns1__removeDataSetParameterResponse *ns1__removeDataSetParameterResponse_)
+{	struct soap *soap = this;
+	struct __ns1__removeDataSetParameter soap_tmp___ns1__removeDataSetParameter;
+	struct __ns1__removeDataSetParameterResponse *soap_tmp___ns1__removeDataSetParameterResponse;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__removeDataSetParameter.ns1__removeDataSetParameter_ = ns1__removeDataSetParameter_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__removeDataSetParameter(soap, &soap_tmp___ns1__removeDataSetParameter);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__removeDataSetParameter(soap, &soap_tmp___ns1__removeDataSetParameter, "-ns1:removeDataSetParameter", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__removeDataSetParameter(soap, &soap_tmp___ns1__removeDataSetParameter, "-ns1:removeDataSetParameter", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__removeDataSetParameterResponse_)
+		return soap_closesock(soap);
+	ns1__removeDataSetParameterResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	soap_tmp___ns1__removeDataSetParameterResponse = soap_get___ns1__removeDataSetParameterResponse(soap, NULL, "-ns1:removeDataSetParameterResponse", "ns1:removeDataSetParameterResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	if (ns1__removeDataSetParameterResponse_ && soap_tmp___ns1__removeDataSetParameterResponse->ns1__removeDataSetParameterResponse_)
+		*ns1__removeDataSetParameterResponse_ = *soap_tmp___ns1__removeDataSetParameterResponse->ns1__removeDataSetParameterResponse_;
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::ingestMetadata(ns1__ingestMetadata *ns1__ingestMetadata_, ns1__ingestMetadataResponse *ns1__ingestMetadataResponse_)
+{	struct soap *soap = this;
+	struct __ns1__ingestMetadata soap_tmp___ns1__ingestMetadata;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__ingestMetadata.ns1__ingestMetadata_ = ns1__ingestMetadata_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__ingestMetadata(soap, &soap_tmp___ns1__ingestMetadata);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__ingestMetadata(soap, &soap_tmp___ns1__ingestMetadata, "-ns1:ingestMetadata", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__ingestMetadata(soap, &soap_tmp___ns1__ingestMetadata, "-ns1:ingestMetadata", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__ingestMetadataResponse_)
+		return soap_closesock(soap);
+	ns1__ingestMetadataResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__ingestMetadataResponse_->soap_get(soap, "ns1:ingestMetadataResponse", "ns1:ingestMetadataResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getICATAPIVersion(ns1__getICATAPIVersion *ns1__getICATAPIVersion_, ns1__getICATAPIVersionResponse *ns1__getICATAPIVersionResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getICATAPIVersion soap_tmp___ns1__getICATAPIVersion;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getICATAPIVersion.ns1__getICATAPIVersion_ = ns1__getICATAPIVersion_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getICATAPIVersion(soap, &soap_tmp___ns1__getICATAPIVersion);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getICATAPIVersion(soap, &soap_tmp___ns1__getICATAPIVersion, "-ns1:getICATAPIVersion", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getICATAPIVersion(soap, &soap_tmp___ns1__getICATAPIVersion, "-ns1:getICATAPIVersion", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getICATAPIVersionResponse_)
+		return soap_closesock(soap);
+	ns1__getICATAPIVersionResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getICATAPIVersionResponse_->soap_get(soap, "ns1:getICATAPIVersionResponse", "ns1:getICATAPIVersionResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getFacilityUserByFacilityUserId(ns1__getFacilityUserByFacilityUserId *ns1__getFacilityUserByFacilityUserId_, ns1__getFacilityUserByFacilityUserIdResponse *ns1__getFacilityUserByFacilityUserIdResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getFacilityUserByFacilityUserId soap_tmp___ns1__getFacilityUserByFacilityUserId;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getFacilityUserByFacilityUserId.ns1__getFacilityUserByFacilityUserId_ = ns1__getFacilityUserByFacilityUserId_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getFacilityUserByFacilityUserId(soap, &soap_tmp___ns1__getFacilityUserByFacilityUserId);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getFacilityUserByFacilityUserId(soap, &soap_tmp___ns1__getFacilityUserByFacilityUserId, "-ns1:getFacilityUserByFacilityUserId", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getFacilityUserByFacilityUserId(soap, &soap_tmp___ns1__getFacilityUserByFacilityUserId, "-ns1:getFacilityUserByFacilityUserId", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getFacilityUserByFacilityUserIdResponse_)
+		return soap_closesock(soap);
+	ns1__getFacilityUserByFacilityUserIdResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getFacilityUserByFacilityUserIdResponse_->soap_get(soap, "ns1:getFacilityUserByFacilityUserIdResponse", "ns1:getFacilityUserByFacilityUserIdResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::getFacilityUserByFederalId(ns1__getFacilityUserByFederalId *ns1__getFacilityUserByFederalId_, ns1__getFacilityUserByFederalIdResponse *ns1__getFacilityUserByFederalIdResponse_)
+{	struct soap *soap = this;
+	struct __ns1__getFacilityUserByFederalId soap_tmp___ns1__getFacilityUserByFederalId;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__getFacilityUserByFederalId.ns1__getFacilityUserByFederalId_ = ns1__getFacilityUserByFederalId_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__getFacilityUserByFederalId(soap, &soap_tmp___ns1__getFacilityUserByFederalId);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__getFacilityUserByFederalId(soap, &soap_tmp___ns1__getFacilityUserByFederalId, "-ns1:getFacilityUserByFederalId", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__getFacilityUserByFederalId(soap, &soap_tmp___ns1__getFacilityUserByFederalId, "-ns1:getFacilityUserByFederalId", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__getFacilityUserByFederalIdResponse_)
+		return soap_closesock(soap);
+	ns1__getFacilityUserByFederalIdResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__getFacilityUserByFederalIdResponse_->soap_get(soap, "ns1:getFacilityUserByFederalIdResponse", "ns1:getFacilityUserByFederalIdResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::isSessionValid(ns1__isSessionValid *ns1__isSessionValid_, ns1__isSessionValidResponse *ns1__isSessionValidResponse_)
+{	struct soap *soap = this;
+	struct __ns1__isSessionValid soap_tmp___ns1__isSessionValid;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__isSessionValid.ns1__isSessionValid_ = ns1__isSessionValid_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__isSessionValid(soap, &soap_tmp___ns1__isSessionValid);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__isSessionValid(soap, &soap_tmp___ns1__isSessionValid, "-ns1:isSessionValid", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__isSessionValid(soap, &soap_tmp___ns1__isSessionValid, "-ns1:isSessionValid", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__isSessionValidResponse_)
+		return soap_closesock(soap);
+	ns1__isSessionValidResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__isSessionValidResponse_->soap_get(soap, "ns1:isSessionValidResponse", "ns1:isSessionValidResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByParameterOperator(ns1__searchByParameterOperator *ns1__searchByParameterOperator_, ns1__searchByParameterOperatorResponse *ns1__searchByParameterOperatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByParameterOperator soap_tmp___ns1__searchByParameterOperator;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByParameterOperator.ns1__searchByParameterOperator_ = ns1__searchByParameterOperator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByParameterOperator(soap, &soap_tmp___ns1__searchByParameterOperator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByParameterOperator(soap, &soap_tmp___ns1__searchByParameterOperator, "-ns1:searchByParameterOperator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByParameterOperator(soap, &soap_tmp___ns1__searchByParameterOperator, "-ns1:searchByParameterOperator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByParameterOperatorResponse_)
+		return soap_closesock(soap);
+	ns1__searchByParameterOperatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByParameterOperatorResponse_->soap_get(soap, "ns1:searchByParameterOperatorResponse", "ns1:searchByParameterOperatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByParameterComparator(ns1__searchByParameterComparator *ns1__searchByParameterComparator_, ns1__searchByParameterComparatorResponse *ns1__searchByParameterComparatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByParameterComparator soap_tmp___ns1__searchByParameterComparator;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByParameterComparator.ns1__searchByParameterComparator_ = ns1__searchByParameterComparator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByParameterComparator(soap, &soap_tmp___ns1__searchByParameterComparator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByParameterComparator(soap, &soap_tmp___ns1__searchByParameterComparator, "-ns1:searchByParameterComparator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByParameterComparator(soap, &soap_tmp___ns1__searchByParameterComparator, "-ns1:searchByParameterComparator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByParameterComparatorResponse_)
+		return soap_closesock(soap);
+	ns1__searchByParameterComparatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByParameterComparatorResponse_->soap_get(soap, "ns1:searchByParameterComparatorResponse", "ns1:searchByParameterComparatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchByParameterComparators(ns1__searchByParameterComparators *ns1__searchByParameterComparators_, ns1__searchByParameterComparatorsResponse *ns1__searchByParameterComparatorsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchByParameterComparators soap_tmp___ns1__searchByParameterComparators;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchByParameterComparators.ns1__searchByParameterComparators_ = ns1__searchByParameterComparators_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchByParameterComparators(soap, &soap_tmp___ns1__searchByParameterComparators);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchByParameterComparators(soap, &soap_tmp___ns1__searchByParameterComparators, "-ns1:searchByParameterComparators", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchByParameterComparators(soap, &soap_tmp___ns1__searchByParameterComparators, "-ns1:searchByParameterComparators", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchByParameterComparatorsResponse_)
+		return soap_closesock(soap);
+	ns1__searchByParameterComparatorsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchByParameterComparatorsResponse_->soap_get(soap, "ns1:searchByParameterComparatorsResponse", "ns1:searchByParameterComparatorsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchDatasetsByParameterComparator(ns1__searchDatasetsByParameterComparator *ns1__searchDatasetsByParameterComparator_, ns1__searchDatasetsByParameterComparatorResponse *ns1__searchDatasetsByParameterComparatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchDatasetsByParameterComparator soap_tmp___ns1__searchDatasetsByParameterComparator;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchDatasetsByParameterComparator.ns1__searchDatasetsByParameterComparator_ = ns1__searchDatasetsByParameterComparator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchDatasetsByParameterComparator(soap, &soap_tmp___ns1__searchDatasetsByParameterComparator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchDatasetsByParameterComparator(soap, &soap_tmp___ns1__searchDatasetsByParameterComparator, "-ns1:searchDatasetsByParameterComparator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchDatasetsByParameterComparator(soap, &soap_tmp___ns1__searchDatasetsByParameterComparator, "-ns1:searchDatasetsByParameterComparator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchDatasetsByParameterComparatorResponse_)
+		return soap_closesock(soap);
+	ns1__searchDatasetsByParameterComparatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchDatasetsByParameterComparatorResponse_->soap_get(soap, "ns1:searchDatasetsByParameterComparatorResponse", "ns1:searchDatasetsByParameterComparatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchDatasetsByParameterComparators(ns1__searchDatasetsByParameterComparators *ns1__searchDatasetsByParameterComparators_, ns1__searchDatasetsByParameterComparatorsResponse *ns1__searchDatasetsByParameterComparatorsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchDatasetsByParameterComparators soap_tmp___ns1__searchDatasetsByParameterComparators;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchDatasetsByParameterComparators.ns1__searchDatasetsByParameterComparators_ = ns1__searchDatasetsByParameterComparators_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchDatasetsByParameterComparators(soap, &soap_tmp___ns1__searchDatasetsByParameterComparators);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchDatasetsByParameterComparators(soap, &soap_tmp___ns1__searchDatasetsByParameterComparators, "-ns1:searchDatasetsByParameterComparators", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchDatasetsByParameterComparators(soap, &soap_tmp___ns1__searchDatasetsByParameterComparators, "-ns1:searchDatasetsByParameterComparators", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchDatasetsByParameterComparatorsResponse_)
+		return soap_closesock(soap);
+	ns1__searchDatasetsByParameterComparatorsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchDatasetsByParameterComparatorsResponse_->soap_get(soap, "ns1:searchDatasetsByParameterComparatorsResponse", "ns1:searchDatasetsByParameterComparatorsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchDatafilesByParameterComparator(ns1__searchDatafilesByParameterComparator *ns1__searchDatafilesByParameterComparator_, ns1__searchDatafilesByParameterComparatorResponse *ns1__searchDatafilesByParameterComparatorResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchDatafilesByParameterComparator soap_tmp___ns1__searchDatafilesByParameterComparator;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchDatafilesByParameterComparator.ns1__searchDatafilesByParameterComparator_ = ns1__searchDatafilesByParameterComparator_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchDatafilesByParameterComparator(soap, &soap_tmp___ns1__searchDatafilesByParameterComparator);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchDatafilesByParameterComparator(soap, &soap_tmp___ns1__searchDatafilesByParameterComparator, "-ns1:searchDatafilesByParameterComparator", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchDatafilesByParameterComparator(soap, &soap_tmp___ns1__searchDatafilesByParameterComparator, "-ns1:searchDatafilesByParameterComparator", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchDatafilesByParameterComparatorResponse_)
+		return soap_closesock(soap);
+	ns1__searchDatafilesByParameterComparatorResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchDatafilesByParameterComparatorResponse_->soap_get(soap, "ns1:searchDatafilesByParameterComparatorResponse", "ns1:searchDatafilesByParameterComparatorResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+
+int ICATPortBindingProxy::searchDatafilesByParameterComparators(ns1__searchDatafilesByParameterComparators *ns1__searchDatafilesByParameterComparators_, ns1__searchDatafilesByParameterComparatorsResponse *ns1__searchDatafilesByParameterComparatorsResponse_)
+{	struct soap *soap = this;
+	struct __ns1__searchDatafilesByParameterComparators soap_tmp___ns1__searchDatafilesByParameterComparators;
+	const char *soap_action = NULL;
+	if (!soap_endpoint)
+		soap_endpoint = "https://facilities01.esc.rl.ac.uk:443/ICATService/ICAT";
+	soap_action = "";
+	soap->encodingStyle = NULL;
+	soap_tmp___ns1__searchDatafilesByParameterComparators.ns1__searchDatafilesByParameterComparators_ = ns1__searchDatafilesByParameterComparators_;
+	soap_begin(soap);
+	soap_serializeheader(soap);
+	soap_serialize___ns1__searchDatafilesByParameterComparators(soap, &soap_tmp___ns1__searchDatafilesByParameterComparators);
+	if (soap_begin_count(soap))
+		return soap->error;
+	if (soap->mode & SOAP_IO_LENGTH)
+	{	if (soap_envelope_begin_out(soap)
+		 || soap_putheader(soap)
+		 || soap_body_begin_out(soap)
+		 || soap_put___ns1__searchDatafilesByParameterComparators(soap, &soap_tmp___ns1__searchDatafilesByParameterComparators, "-ns1:searchDatafilesByParameterComparators", NULL)
+		 || soap_body_end_out(soap)
+		 || soap_envelope_end_out(soap))
+			 return soap->error;
+	}
+	if (soap_end_count(soap))
+		return soap->error;
+	if (soap_connect(soap, soap_endpoint, soap_action)
+	 || soap_envelope_begin_out(soap)
+	 || soap_putheader(soap)
+	 || soap_body_begin_out(soap)
+	 || soap_put___ns1__searchDatafilesByParameterComparators(soap, &soap_tmp___ns1__searchDatafilesByParameterComparators, "-ns1:searchDatafilesByParameterComparators", NULL)
+	 || soap_body_end_out(soap)
+	 || soap_envelope_end_out(soap)
+	 || soap_end_send(soap))
+		return soap_closesock(soap);
+	if (!ns1__searchDatafilesByParameterComparatorsResponse_)
+		return soap_closesock(soap);
+	ns1__searchDatafilesByParameterComparatorsResponse_->soap_default(soap);
+	if (soap_begin_recv(soap)
+	 || soap_envelope_begin_in(soap)
+	 || soap_recv_header(soap)
+	 || soap_body_begin_in(soap))
+		return soap_closesock(soap);
+	ns1__searchDatafilesByParameterComparatorsResponse_->soap_get(soap, "ns1:searchDatafilesByParameterComparatorsResponse", "ns1:searchDatafilesByParameterComparatorsResponse");
+	if (soap->error)
+		return soap_recv_fault(soap, 0);
+	if (soap_body_end_in(soap)
+	 || soap_envelope_end_in(soap)
+	 || soap_end_recv(soap))
+		return soap_closesock(soap);
+	return soap_closesock(soap);
+}
+/* End of client proxy code */
diff --git a/Code/Mantid/Framework/ICat/src/GetDataFiles.cpp b/Code/Mantid/Framework/ICat/src/GetDataFiles.cpp
index 70d15ec54193be67a8b9c8e8e7f3c805f86af464..eb45daa9d1e639b0baa0107c0e4609516ae92c74 100644
--- a/Code/Mantid/Framework/ICat/src/GetDataFiles.cpp
+++ b/Code/Mantid/Framework/ICat/src/GetDataFiles.cpp
@@ -1,111 +1,111 @@
-#include "MantidICat/GetDataFiles.h"
-#include "MantidKernel/PropertyWithValue.h"
-#include "MantidKernel/BoundedValidator.h"
-#include "MantidAPI/WorkspaceProperty.h"
-
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-
-		DECLARE_ALGORITHM(CGetDataFiles)
-
-		/// Sets documentation strings for this algorithm
-		void CGetDataFiles::initDocs()
-		{
-		  this->setWikiSummary("Gets the files associated to the selected investigation . ");
-		  this->setOptionalMessage("Gets the files associated to the selected investigation .");
-		}
-
-		/// Initialising the algorithm
-		void CGetDataFiles::init()
-		{
-			BoundedValidator<long long>* mustBePositive = new BoundedValidator<long long>();
-			mustBePositive->setLower(0);
-			declareProperty<long long>("InvestigationId",-1,mustBePositive,"Id of the selected investigation");
-		
+#include "MantidICat/GetDataFiles.h"
+#include "MantidKernel/PropertyWithValue.h"
+#include "MantidKernel/BoundedValidator.h"
+#include "MantidAPI/WorkspaceProperty.h"
+
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+
+		DECLARE_ALGORITHM(CGetDataFiles)
+
+		/// Sets documentation strings for this algorithm
+		void CGetDataFiles::initDocs()
+		{
+		  this->setWikiSummary("Gets the files associated to the selected investigation . ");
+		  this->setOptionalMessage("Gets the files associated to the selected investigation .");
+		}
+
+		/// Initialising the algorithm
+		void CGetDataFiles::init()
+		{
+			BoundedValidator<long long>* mustBePositive = new BoundedValidator<long long>();
+			mustBePositive->setLower(0);
+			declareProperty<long long>("InvestigationId",-1,mustBePositive,"Id of the selected investigation");
+		
 			declareProperty(new WorkspaceProperty<API::ITableWorkspace> ("OutputWorkspace", "", Direction::Output),
-                            "The name of the workspace to store the file data search details");
-			declareProperty("FilterLogFiles",false,"Use this boolean option to filter log files from the list of files associated to the investigation.\n"
-				"The default option is set to false and loads all the files assocaited to the selected investigation.");
-		}
-
-		//execute the algorithm
-		void CGetDataFiles::exec()
-		{
-			ICatalog_sptr catalog_sptr;
-			try
-			{			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-			
-			long long investigationId = getProperty("InvestigationId");
-			bool bfiletrLog =getProperty("FilterLogFiles");
-
-			API::ITableWorkspace_sptr ws_sptr = WorkspaceFactory::Instance().createTable("TableWorkspace");
-			catalog_sptr->getDataFiles(investigationId,ws_sptr);
-
-			if(bfiletrLog)
-			{
-				filterLogFiles(ws_sptr);
-			}
-			
-			setProperty("OutputWorkspace",ws_sptr);
-		}
-
-	  /**This method filters log files from the workspace
-	    *@param ws_sptr :: shared pointer to workspace
-		*/
-		void CGetDataFiles::filterLogFiles( API::ITableWorkspace_sptr& ws_sptr)
-		{
-			if(!ws_sptr)
-			{
-				return;
-			}
-			/// now filter log files
-			for( int row=0;row<ws_sptr->rowCount();)
-			{
-				if(!isDataFile(ws_sptr->cell<std::string>(row,0)))
-				{
-					ws_sptr->removeRow(row);
- 				}
-        else
-        {
-          ++row;
-        }
-			}
-		}
-
-	 /**This checks the datafile boolean  selected
-		 * @param fileName :: name of the  file 
-		 * @return bool - returns true if it's a raw file or nexus file
-		 */
-		bool CGetDataFiles::isDataFile(const std::string& fileName)
-		{			
-			std::basic_string <char>::size_type dotIndex;
-			//find the position of '.' in raw/nexus file name
-			dotIndex = fileName.find_last_of (".");
-			std::string fextn=fileName.substr(dotIndex+1,fileName.size()-dotIndex);
-			std::transform(fextn.begin(),fextn.end(),fextn.begin(),tolower);
-			return ((!fextn.compare("raw")|| !fextn.compare("nxs")) ? true : false);
-		}
-		
-		
-	}
-}
+                            "The name of the workspace to store the file data search details");
+			declareProperty("FilterLogFiles",false,"Use this boolean option to filter log files from the list of files associated to the investigation.\n"
+				"The default option is set to false and loads all the files assocaited to the selected investigation.");
+		}
+
+		//execute the algorithm
+		void CGetDataFiles::exec()
+		{
+			ICatalog_sptr catalog_sptr;
+			try
+			{			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+			
+			long long investigationId = getProperty("InvestigationId");
+			bool bfiletrLog =getProperty("FilterLogFiles");
+
+			API::ITableWorkspace_sptr ws_sptr = WorkspaceFactory::Instance().createTable("TableWorkspace");
+			catalog_sptr->getDataFiles(investigationId,ws_sptr);
+
+			if(bfiletrLog)
+			{
+				filterLogFiles(ws_sptr);
+			}
+			
+			setProperty("OutputWorkspace",ws_sptr);
+		}
+
+	  /**This method filters log files from the workspace
+	    *@param ws_sptr :: shared pointer to workspace
+		*/
+		void CGetDataFiles::filterLogFiles( API::ITableWorkspace_sptr& ws_sptr)
+		{
+			if(!ws_sptr)
+			{
+				return;
+			}
+			/// now filter log files
+			for( int row=0;row<ws_sptr->rowCount();)
+			{
+				if(!isDataFile(ws_sptr->cell<std::string>(row,0)))
+				{
+					ws_sptr->removeRow(row);
+ 				}
+        else
+        {
+          ++row;
+        }
+			}
+		}
+
+	 /**This checks the datafile boolean  selected
+		 * @param fileName :: name of the  file 
+		 * @return bool - returns true if it's a raw file or nexus file
+		 */
+		bool CGetDataFiles::isDataFile(const std::string& fileName)
+		{			
+			std::basic_string <char>::size_type dotIndex;
+			//find the position of '.' in raw/nexus file name
+			dotIndex = fileName.find_last_of (".");
+			std::string fextn=fileName.substr(dotIndex+1,fileName.size()-dotIndex);
+			std::transform(fextn.begin(),fextn.end(),fextn.begin(),tolower);
+			return ((!fextn.compare("raw")|| !fextn.compare("nxs")) ? true : false);
+		}
+		
+		
+	}
+}
diff --git a/Code/Mantid/Framework/ICat/src/GetDataSets.cpp b/Code/Mantid/Framework/ICat/src/GetDataSets.cpp
index edd80b58b4e5266c66b133fc62245eb4a72dfc3a..8ff1aecc28aac00b25be5ce7a8e41a4bdc6e1212 100644
--- a/Code/Mantid/Framework/ICat/src/GetDataSets.cpp
+++ b/Code/Mantid/Framework/ICat/src/GetDataSets.cpp
@@ -1,60 +1,60 @@
-#include "MantidICat/GetDataSets.h"
-#include "MantidKernel/PropertyWithValue.h"
-#include "MantidKernel/BoundedValidator.h"
-#include "MantidAPI/WorkspaceProperty.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-		DECLARE_ALGORITHM(CGetDataSets)
-
-		/// Sets documentation strings for this algorithm
-		void CGetDataSets::initDocs()
-		{
-		  this->setWikiSummary("Gets the datasets associated to the selected investigation. ");
-		  this->setOptionalMessage("Gets the datasets associated to the selected investigation.");
-		}
-
-		/// Initialisation methods
-		void CGetDataSets::init()
-		{
-			BoundedValidator<long long>* mustBePositive = new BoundedValidator<long long>();
-			mustBePositive->setLower(0);
-			declareProperty<long long>("InvestigationId",-1,mustBePositive,"Id of the selected investigation");
+#include "MantidICat/GetDataSets.h"
+#include "MantidKernel/PropertyWithValue.h"
+#include "MantidKernel/BoundedValidator.h"
+#include "MantidAPI/WorkspaceProperty.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+		DECLARE_ALGORITHM(CGetDataSets)
+
+		/// Sets documentation strings for this algorithm
+		void CGetDataSets::initDocs()
+		{
+		  this->setWikiSummary("Gets the datasets associated to the selected investigation. ");
+		  this->setOptionalMessage("Gets the datasets associated to the selected investigation.");
+		}
+
+		/// Initialisation methods
+		void CGetDataSets::init()
+		{
+			BoundedValidator<long long>* mustBePositive = new BoundedValidator<long long>();
+			mustBePositive->setLower(0);
+			declareProperty<long long>("InvestigationId",-1,mustBePositive,"Id of the selected investigation");
 			declareProperty(new WorkspaceProperty<API::ITableWorkspace> ("OutputWorkspace", "", Direction::Output),
-                            "The name of the workspace to store the result of datasets search ");
-		}
-
-		/// exec methods
-		void CGetDataSets::exec()
-		{
-			ICatalog_sptr catalog_sptr;
-			try
-			{			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-						
-		   API::ITableWorkspace_sptr ws_sptr = WorkspaceFactory::Instance().createTable("TableWorkspace");
-		   long long investigationId = getProperty("InvestigationId");
-		   catalog_sptr->getDataSets(investigationId,ws_sptr);
-		   setProperty("OutputWorkspace",ws_sptr);
-		}
-			
-	}
-}
+                            "The name of the workspace to store the result of datasets search ");
+		}
+
+		/// exec methods
+		void CGetDataSets::exec()
+		{
+			ICatalog_sptr catalog_sptr;
+			try
+			{			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+						
+		   API::ITableWorkspace_sptr ws_sptr = WorkspaceFactory::Instance().createTable("TableWorkspace");
+		   long long investigationId = getProperty("InvestigationId");
+		   catalog_sptr->getDataSets(investigationId,ws_sptr);
+		   setProperty("OutputWorkspace",ws_sptr);
+		}
+			
+	}
+}
diff --git a/Code/Mantid/Framework/ICat/src/ICat3Catalog.cpp b/Code/Mantid/Framework/ICat/src/ICat3Catalog.cpp
index 73943357fb70e5fcd5c205860d83494aa3142811..62002297d5bf0ccd8cbfbc9cc79eb940c9c9cc56 100644
--- a/Code/Mantid/Framework/ICat/src/ICat3Catalog.cpp
+++ b/Code/Mantid/Framework/ICat/src/ICat3Catalog.cpp
@@ -1,132 +1,132 @@
-#include "MantidICat/ICat3Catalog.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidICat/Session.h"
-#include "MantidAPI/Progress.h"
-#include "MantidICat/ICatHelper.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-
-		DECLARE_CATALOG(ICat3Catalog)
-
-		/// constructor
-		ICat3Catalog::ICat3Catalog()
-		{
-		}
-		/// destructor
-		ICat3Catalog::~ICat3Catalog()
-		{
-		}
-		/**This method is responsible for connecting the client application to ICat3 based catalog services
-		  *@param username :: login name(eg. federal id) of the user
-		  *@param password :: passowrd of the user
-		  *@param url :: url of the user
-		*/
-		void ICat3Catalog::login(const std::string& username,const std::string& password,const std::string& url)
-		{
-			CICatHelper helper;
-			helper.doLogin(username,password,url);
-		}
-		/// This method disconnects the client application from ICat3 based catalog services
-		void ICat3Catalog::logout()
-		{
-
-			CICatHelper helper;
-			helper.doLogout();
-			Session::Instance().setSessionId("");//clearing the session id saved to Mantid after log out
-		}
-		
-		/*This method returns the logged in user's investigations data .
-		 *@param mydataws_sptr :: pointer to table workspace which stores the data
-		 */
-		void  ICat3Catalog::myData(Mantid::API::ITableWorkspace_sptr& mydataws_sptr)
-		{
-			CICatHelper helper;
-			helper.doMyDataSearch(mydataws_sptr);
-		}
-
-		/*This method returns  the datasets associated to the given investigationid .
-		 *@param investigationId :: unique identifier of the investigation
-		 *@param datasetsws_sptr :: shared pointer to datasets
-		 */
-		void ICat3Catalog::getDataSets(const long long& investigationId,Mantid::API::ITableWorkspace_sptr& datasetsws_sptr)
-		{
-			CICatHelper helper;
-			//search datasets for a given investigation id using ICat api.
-			helper.doDataSetsSearch(investigationId,
-				ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATASET_USCOREPARAMETERS_USCOREONLY,datasetsws_sptr);
-		}
-
-		/*This method returns the datafiles associated to the given investigationid .
-		 *@param investigationId :: unique identifier of the investigation
-	     *@param datafilesws_sptr :: shared pointer to datasets
-	     */
-		void ICat3Catalog::getDataFiles(const long long& investigationId,Mantid::API::ITableWorkspace_sptr& datafilesws_sptr)
-		{
-			CICatHelper helperobj;	
-			helperobj.getDataFiles(investigationId,ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATAFILES,datafilesws_sptr);
-		}
-
-	 /**This method returns the list of instruments
-	   *@param instruments :: instruments list
-	   */
-		void ICat3Catalog::listInstruments(std::vector<std::string>& instruments)
-		{
-			CICatHelper helper;
-			helper.listInstruments(instruments);
-		}
-
-	 /**This method returns the list of investigationtypes
-	   *@param invstTypes :: investigation types list
-	   */
-		void  ICat3Catalog::listInvestigationTypes(std::vector<std::string>& invstTypes)
-		{			
-			CICatHelper helper;
-			helper.listInvestigationTypes(invstTypes);
-		}
-
-	 /**This method method gets the file location strings from isis archive
-	   *@param fileid :: id of the file
-	   *@param filelocation :: location string  of the file
-	   */
-		void ICat3Catalog::getFileLocation(const long long & fileid,std::string & filelocation)
-		{
-			CICatHelper helper;
-			helper.getlocationString(fileid,filelocation);
-		}
-
-	 /**This method method gets the url for downloading the file from isis server
-	   *@param fileid :: id of the file
-	   *@param url :: url  of the file
-	   */
-		void ICat3Catalog::getDownloadURL(const long long & fileid,std::string& url)
-		{
-			CICatHelper helper;
-			helper.getdownloadURL(fileid,url);
-		}
-
-	 /**This method method does the search for investigations
-	   *@param inputs :: reference to a class conatains search inputs
-	   *@param ws_sptr :: -shared pointer to search results workspace
-	   */
-		void ICat3Catalog::search(const CSearchParam& inputs, Mantid::API::ITableWorkspace_sptr& ws_sptr)
-		{
-			CICatHelper helper;
-			helper.doISISSearch(inputs,ws_sptr);
-		}
-
-		/// keep alive
-		void ICat3Catalog::keepAlive()
-		{
-		}
-			//keep alive in minutes
-		int ICat3Catalog::keepAliveinminutes()
-		{
-			return 0;
-		}
-
-	
-}
-}
+#include "MantidICat/ICat3Catalog.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidICat/Session.h"
+#include "MantidAPI/Progress.h"
+#include "MantidICat/ICatHelper.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+
+		DECLARE_CATALOG(ICat3Catalog)
+
+		/// constructor
+		ICat3Catalog::ICat3Catalog()
+		{
+		}
+		/// destructor
+		ICat3Catalog::~ICat3Catalog()
+		{
+		}
+		/**This method is responsible for connecting the client application to ICat3 based catalog services
+		  *@param username :: login name(eg. federal id) of the user
+		  *@param password :: passowrd of the user
+		  *@param url :: url of the user
+		*/
+		void ICat3Catalog::login(const std::string& username,const std::string& password,const std::string& url)
+		{
+			CICatHelper helper;
+			helper.doLogin(username,password,url);
+		}
+		/// This method disconnects the client application from ICat3 based catalog services
+		void ICat3Catalog::logout()
+		{
+
+			CICatHelper helper;
+			helper.doLogout();
+			Session::Instance().setSessionId("");//clearing the session id saved to Mantid after log out
+		}
+		
+		/*This method returns the logged in user's investigations data .
+		 *@param mydataws_sptr :: pointer to table workspace which stores the data
+		 */
+		void  ICat3Catalog::myData(Mantid::API::ITableWorkspace_sptr& mydataws_sptr)
+		{
+			CICatHelper helper;
+			helper.doMyDataSearch(mydataws_sptr);
+		}
+
+		/*This method returns  the datasets associated to the given investigationid .
+		 *@param investigationId :: unique identifier of the investigation
+		 *@param datasetsws_sptr :: shared pointer to datasets
+		 */
+		void ICat3Catalog::getDataSets(const long long& investigationId,Mantid::API::ITableWorkspace_sptr& datasetsws_sptr)
+		{
+			CICatHelper helper;
+			//search datasets for a given investigation id using ICat api.
+			helper.doDataSetsSearch(investigationId,
+				ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATASET_USCOREPARAMETERS_USCOREONLY,datasetsws_sptr);
+		}
+
+		/*This method returns the datafiles associated to the given investigationid .
+		 *@param investigationId :: unique identifier of the investigation
+	     *@param datafilesws_sptr :: shared pointer to datasets
+	     */
+		void ICat3Catalog::getDataFiles(const long long& investigationId,Mantid::API::ITableWorkspace_sptr& datafilesws_sptr)
+		{
+			CICatHelper helperobj;	
+			helperobj.getDataFiles(investigationId,ns1__investigationInclude__DATASETS_USCOREAND_USCOREDATAFILES,datafilesws_sptr);
+		}
+
+	 /**This method returns the list of instruments
+	   *@param instruments :: instruments list
+	   */
+		void ICat3Catalog::listInstruments(std::vector<std::string>& instruments)
+		{
+			CICatHelper helper;
+			helper.listInstruments(instruments);
+		}
+
+	 /**This method returns the list of investigationtypes
+	   *@param invstTypes :: investigation types list
+	   */
+		void  ICat3Catalog::listInvestigationTypes(std::vector<std::string>& invstTypes)
+		{			
+			CICatHelper helper;
+			helper.listInvestigationTypes(invstTypes);
+		}
+
+	 /**This method method gets the file location strings from isis archive
+	   *@param fileid :: id of the file
+	   *@param filelocation :: location string  of the file
+	   */
+		void ICat3Catalog::getFileLocation(const long long & fileid,std::string & filelocation)
+		{
+			CICatHelper helper;
+			helper.getlocationString(fileid,filelocation);
+		}
+
+	 /**This method method gets the url for downloading the file from isis server
+	   *@param fileid :: id of the file
+	   *@param url :: url  of the file
+	   */
+		void ICat3Catalog::getDownloadURL(const long long & fileid,std::string& url)
+		{
+			CICatHelper helper;
+			helper.getdownloadURL(fileid,url);
+		}
+
+	 /**This method method does the search for investigations
+	   *@param inputs :: reference to a class conatains search inputs
+	   *@param ws_sptr :: -shared pointer to search results workspace
+	   */
+		void ICat3Catalog::search(const CSearchParam& inputs, Mantid::API::ITableWorkspace_sptr& ws_sptr)
+		{
+			CICatHelper helper;
+			helper.doISISSearch(inputs,ws_sptr);
+		}
+
+		/// keep alive
+		void ICat3Catalog::keepAlive()
+		{
+		}
+			//keep alive in minutes
+		int ICat3Catalog::keepAliveinminutes()
+		{
+			return 0;
+		}
+
+	
+}
+}
diff --git a/Code/Mantid/Framework/ICat/src/ICatHelper.cpp b/Code/Mantid/Framework/ICat/src/ICatHelper.cpp
index 0fd8defd862b860942ac648d616b429bce765538..ed24b31a7f76bf15838a3fd1d32610d2b6f440e1 100644
--- a/Code/Mantid/Framework/ICat/src/ICatHelper.cpp
+++ b/Code/Mantid/Framework/ICat/src/ICatHelper.cpp
@@ -1,1253 +1,1253 @@
-// WorkspaceFactory include must be first otherwise you get a bizarre Poco-related compilation error on Windows
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MantidICat/ICatHelper.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/ErrorHandling.h" 
-#include <iomanip>
-#include <time.h>
-#include <boost/lexical_cast.hpp>
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-		
-		
-
-		/* This method calls ICat API searchbydavanced and do the basic run search 
-		 * @param icat :: Proxy object for ICat
-		 * @param request :: request object
-		 * @param response :: response object
-		 */
-		int CICatHelper::doSearch(ICATPortBindingProxy& icat,boost::shared_ptr<ns1__searchByAdvanced>& request,ns1__searchByAdvancedResponse& response)
-		{
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
-							))
-			{
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			clock_t start=clock();
-			int ret_advsearch=icat.searchByAdvanced(request.get(),&response);
-			if(ret_advsearch!=0)
-			{
-			
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			clock_t end=clock();
-			float diff = float(end -start)/CLOCKS_PER_SEC;
-			g_log.information()<<" Time taken to do  search is "<<diff<< "  seconds "<<std::endl;
-			return ret_advsearch;
-		}
-
-		/* This method does a search  by different parameters and  investigation data
-		 * @param inputs :: reference to class containing search inputs
-		 * @param outputws :: shared pointer to output workspace
-		 */
-		void CICatHelper::doISISSearch(const CSearchParam& inputs,API::ITableWorkspace_sptr &outputws)
-		{
-			//ICAt proxy object
-			ICATPortBindingProxy icat;
-			// request object
-			boost::shared_ptr<ns1__searchByAdvanced> req_sptr(new ns1__searchByAdvanced );
-
-			//session id
-			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
-			req_sptr->sessionId=sessionId_sptr.get();
-			//get the sessionid which is cached in session class during login
-			*req_sptr->sessionId=Session::Instance().getSessionId();
-
-			boost::shared_ptr<ns1__advancedSearchDetails>adv_sptr(new ns1__advancedSearchDetails);
-			req_sptr->advancedSearchDetails=adv_sptr.get();
-			//run start
-			boost::shared_ptr<double>runstart_sptr(new double);
-			if(inputs.getRunStart()>0)
-			{
-				req_sptr->advancedSearchDetails->runStart=runstart_sptr.get();
-			   *req_sptr->advancedSearchDetails->runStart= inputs.getRunStart();
-			}
-			//run end
-			boost::shared_ptr<double>runend_sptr(new double);
-			if(inputs.getRunEnd()>0)
-			{
-				req_sptr->advancedSearchDetails->runEnd=runend_sptr.get();
-			    *req_sptr->advancedSearchDetails->runEnd=inputs.getRunEnd();
-			}
-            //start date
-			boost::shared_ptr<time_t> startdate_sptr(new time_t);
-			if(inputs.getStartDate()!=0)
-			{				
-				req_sptr->advancedSearchDetails->dateRangeStart = startdate_sptr.get();
-				*req_sptr->advancedSearchDetails->dateRangeStart = inputs.getStartDate();
-			}
-			//end date
-            boost::shared_ptr<time_t> enddate_sptr(new time_t);
-			if(inputs.getEndDate()!=0)
-			{				
-				req_sptr->advancedSearchDetails->dateRangeEnd = enddate_sptr.get();
-				*req_sptr->advancedSearchDetails->dateRangeEnd =inputs.getEndDate();
-			}
-			req_sptr->advancedSearchDetails->caseSensitive=inputs.getCaseSensitive();
-			
-			// investigation include
-            boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
-			req_sptr->advancedSearchDetails->investigationInclude=invstInculde_sptr.get();
-			*req_sptr->advancedSearchDetails->investigationInclude=ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES;
-         
-			//instrument name
-			if(!inputs.getInstrument().empty())
-			{
-				req_sptr->advancedSearchDetails->instruments.push_back(inputs.getInstrument());
-			}
-
-			// keywords
-			if(!inputs.getKeywords().empty())
-			{
-				req_sptr->advancedSearchDetails->keywords.push_back(inputs.getKeywords());
-			}
-
-			//invetigation name
-			boost::shared_ptr<std::string > investName_sptr(new std::string);
-			if(!inputs.getInvestigationName().empty())
-			{
-				req_sptr->advancedSearchDetails->investigationName = investName_sptr.get();
-				*req_sptr->advancedSearchDetails->investigationName = inputs.getInvestigationName();
-			}
-
-			//invetigation abstarct
-			boost::shared_ptr<std::string > investAbstract_sptr(new std::string);
-			if(!inputs.getInvestigationAbstract().empty())
-			{
-				req_sptr->advancedSearchDetails->investigationAbstract = investAbstract_sptr.get();
-				*req_sptr->advancedSearchDetails->investigationAbstract = inputs.getInvestigationAbstract();
-			}
-			std::string invstType=inputs.getInvestigationType();
-			req_sptr->advancedSearchDetails->investigationType = &invstType;
-			
-
-			//sample name
-			boost::shared_ptr<std::string > sample_sptr(new std::string);
-			if(!inputs.getSampleName().empty())
-			{
-				req_sptr->advancedSearchDetails->sampleName = sample_sptr.get();
-				*req_sptr->advancedSearchDetails->sampleName = inputs.getSampleName();
-			}
-
-			//investigator's surname
-			boost::shared_ptr<std::string > investigator_sptr(new std::string);
-			if(!inputs.getInvestigatorSurName().empty())
-			{
-				req_sptr->advancedSearchDetails->investigators.push_back(inputs.getInvestigatorSurName());
-			}
-
-			//datafile name
-			boost::shared_ptr<std::string > datafilename_sptr(new std::string);
-			if(!inputs.getDatafileName().empty())
-			{
-				req_sptr->advancedSearchDetails->datafileName = datafilename_sptr.get();
-				*req_sptr->advancedSearchDetails->datafileName = inputs.getDatafileName();
-			}
-
-			//rb number 
-			boost::shared_ptr<std::string > RbNumber_sptr(new std::string);
-			if(!inputs.getRbNumber().empty())
-			{
-				req_sptr->advancedSearchDetails->experimentNumber = RbNumber_sptr.get();
-				*req_sptr->advancedSearchDetails->experimentNumber = inputs.getRbNumber();
-			}
-
-						
-			//response object
-			ns1__searchByAdvancedResponse response;
-			// do  search
-			int ret_search=doSearch(icat,req_sptr,response);
-			if(ret_search!=0)
-			{
-				//replace with mantid error routine
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			if(response.return_.empty())
-			{	
-				g_log.information()<<"ICat investigations search is complete.There are no results to display"<<std::endl;
-				return ;
-        		
-			}
-			//save response to a table workspace
-			saveSearchRessults(response,outputws);
-		}
-	   
-	  		
-	/** This method saves the search response( investigations )data to a table workspace
-		*  @param response :: const reference to response object
-		*  @param outputws :: shared pointer to output workspace
-		*/
-		void  CICatHelper::saveSearchRessults(const ns1__searchByAdvancedResponse& response,API::ITableWorkspace_sptr& outputws)
-		{
-			//create table workspace
-		
-			//API::ITableWorkspace_sptr outputws =createTableWorkspace();
-			
-			outputws->addColumn("long64","InvestigationId");
-			outputws->addColumn("str","RbNumber");
-			outputws->addColumn("str","Title");
-			outputws->addColumn("str","Type");
-			outputws->addColumn("str","Instrument");
-			outputws->addColumn("str","Investigator");
-			outputws->addColumn("str","RunRange");
-			outputws->addColumn("str","Year");
-			outputws->addColumn("str","Abstract");
-			outputws->addColumn("str","Investigators Name ");
-			outputws->addColumn("str","Samples Name");
-
-			try
-			{				
-				saveInvestigations(response.return_,outputws);
-			}
-			catch(std::runtime_error& )
-			{
-			  throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
-			}
-		
-		}
-	   /** This method saves investigations  to a table workspace
-		*  @param investigations :: a vector containing investigation data
-		*  @param outputws :: shared pointer to output workspace
-		*/
-		void CICatHelper::saveInvestigations(const std::vector<ns1__investigation*>& investigations,API::ITableWorkspace_sptr& outputws)
-		{
-	
-			try
-			{
-				std::vector<ns1__investigation*>::const_iterator citr;
-				for (citr=investigations.begin();citr!=investigations.end();++citr)
-				{
-					API::TableRow t = outputws->appendRow();
-					//investigation id
-					savetoTableWorkspace((*citr)->id,t);
-								
-					//rb number
-					savetoTableWorkspace((*citr)->invNumber,t);
-
-       				//title
-					savetoTableWorkspace((*citr)->title,t);
-							
-					//type 
-					savetoTableWorkspace((*citr)->invType,t);
-
-					savetoTableWorkspace((*citr)->instrument,t);
-					//investigator
-					savetoTableWorkspace((*citr)->bcatInvStr,t);
-					// run range
-					savetoTableWorkspace((*citr)->invParamValue,t);
-								
-					//year
-					std::string *sInvEndtime=NULL ;
-					if((*citr)->invEndDate!=NULL)
-					{
-						sInvEndtime=new std::string;
-						time_t  invEndtime=*(*citr)->invEndDate;
-						char temp [25];
-						strftime (temp,25,"%H:%M:%S %Y-%d-%b",localtime(&invEndtime));
-						strftime (temp,25,"%Y",localtime(&invEndtime));
-						std::string ftime(temp);
-						
-						sInvEndtime->assign(ftime);
-						
-					}
-					savetoTableWorkspace(sInvEndtime,t);
-
-					saveInvestigatorsNameandSample(*citr,t);
-     //              
-				}
-			}
-			catch(std::runtime_error& )
-			{
-			  throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
-			}
-		}
-
-	   /** This method saves investigations  to a table workspace
-		*  @param investigation :: pointer to a single investigation data
-		*  @param t :: reference to a row in a table workspace
-		*/
-		void CICatHelper::saveInvestigatorsNameandSample(ns1__investigation* investigation,API::TableRow& t)
-		{
-			
-			try
-			{
-
-				//   abstract
-				savetoTableWorkspace(investigation->invAbstract,t);
-
-				std::vector<ns1__investigator*>investigators;
-				investigators.assign(investigation->investigatorCollection.begin(),investigation->investigatorCollection.end());
-
-				std::string fullname; std::string* facilityUser=NULL;
-				//for loop for getting invetigator's first and last name
-				std::vector<ns1__investigator*>::const_iterator invstrItr;
-				for(invstrItr=investigators.begin();invstrItr!=investigators.end();++invstrItr)
-				{
-					std::string firstname;std::string lastname;std::string name;
-					if((*invstrItr)->facilityUser)
-					{
-
-						if((*invstrItr)->facilityUser->firstName)
-						{
-							firstname = *(*invstrItr)->facilityUser->firstName;
-						}
-						if((*invstrItr)->facilityUser->lastName)
-						{
-							lastname = *(*invstrItr)->facilityUser->lastName;
-						}
-						name = firstname+" "+ lastname;
-					}
-					if(!fullname.empty())
-					{
-						fullname+=",";
-					}
-					fullname+=name;
-				}//end of for loop for investigator's name.
-
-				if(!fullname.empty())
-				{
-					facilityUser = new std::string;
-					facilityUser->assign(fullname);
-				}
-
-				//invetigator name
-				savetoTableWorkspace(facilityUser,t);
-
-				std::vector<ns1__sample*>samples;
-				std::string *samplenames =NULL;
-				samples.assign(investigation->sampleCollection.begin(),investigation->sampleCollection.end());
-				std::string sNames;
-				//for loop for samples name.
-				std::vector<ns1__sample*>::const_iterator sItr;
-				for(sItr=samples.begin();sItr!=samples.end();++sItr)
-				{
-					std::string sName;
-					if((*sItr)->name)
-					{
-						sName=*((*sItr)->name);
-					}
-					if(!sNames.empty())
-					{
-						sNames+=",";
-					}
-					sNames+=sName;
-				}
-				if(!sNames.empty())
-				{
-					samplenames = new std::string;
-					samplenames->assign(sNames);
-				}
-				savetoTableWorkspace(samplenames,t);
-			}
-			catch(std::runtime_error& )
-			{
-				throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
-			}
-		}
-		
-		/** This method loops through the response return_vector and saves the datafile details to a table workspace
-		 * @param response :: const reference to response object
-		 * @returns shared pointer to table workspace which stores the data
-		 */
-		API::ITableWorkspace_sptr CICatHelper::saveFileSearchResponse(const ns1__searchByAdvancedResponse& response)
-		{
-			//create table workspace
-			API::ITableWorkspace_sptr outputws =createTableWorkspace();
-			//add columns
-			outputws->addColumn("str","Name");
-			outputws->addColumn("int","File Size(B)");
-			outputws->addColumn("long64","FileId");
-			outputws->addColumn("str","Format");
-			outputws->addColumn("str","Format Version");
-			outputws->addColumn("str","Format Type");
-			outputws->addColumn("str","Create Time");
-
-			std::vector<ns1__investigation*> investVec;
-			investVec.assign(response.return_.begin(),response.return_.end());
-
-			try
-			{
-				std::vector<ns1__investigation*>::const_iterator inv_citr;
-				for (inv_citr=investVec.begin();inv_citr!=investVec.end();++inv_citr)
-				{
-					std::vector<ns1__dataset*> datasetVec;
-					datasetVec.assign((*inv_citr)->datasetCollection.begin(),(*inv_citr)->datasetCollection.end());
-
-					std::vector<ns1__dataset*>::const_iterator dataset_citr;
-					for(dataset_citr=datasetVec.begin();dataset_citr!=datasetVec.end();++dataset_citr)
-					{
-						std::vector<ns1__datafile * >datafileVec;
-						datafileVec.assign((*dataset_citr)->datafileCollection.begin(),(*dataset_citr)->datafileCollection.end());
-
-						std::vector<ns1__datafile * >::const_iterator datafile_citr;
-						for(datafile_citr=datafileVec.begin();datafile_citr!=datafileVec.end();++datafile_citr)
-						{
-
-							API::TableRow t = outputws->appendRow();
-							savetoTableWorkspace((*datafile_citr)->name,t);
-							savetoTableWorkspace((*datafile_citr)->fileSize,t);
-
-							//long long fileId=*(*datafile_citr)->id;
-							savetoTableWorkspace((*datafile_citr)->id,t);
-							ns1__datafileFormat* fileFormat=(*datafile_citr)->datafileFormat;
-							if(fileFormat)
-							{
-								if(fileFormat->datafileFormatPK)
-								{
-									savetoTableWorkspace((fileFormat->datafileFormatPK->name),t);
-									savetoTableWorkspace((fileFormat->datafileFormatPK->version),t);
-								}
-								savetoTableWorkspace((fileFormat->formatType),t);
-
-							}
-							if((*datafile_citr)->datafileCreateTime!=NULL)
-							{
-								time_t  crtime=*(*datafile_citr)->datafileCreateTime;
-								char temp [25];
-								strftime (temp,25,"%H:%M:%S %Y-%d-%b",localtime(&crtime));
-								std::string ftime(temp);
-								std::string *creationtime=new std::string ;
-								creationtime->assign(ftime);
-								savetoTableWorkspace(creationtime,t);
-							}
-			
-						}//end of for loop for data files iteration
-
-					}//end of for loop for datasets iteration
-
-
-				}// end of for loop investigations iteration.
-			}
-			catch(std::runtime_error& )
-			{
-				throw;
-			}
-
-			return outputws;
-		}
-
-		/**
-    * This method sets the request parameters for the investigations includes
-		* @param invstId :: investigation id 
-		* @param include :: enum parameter to retrieve dat from DB
-		* @param request :: request object
-		*/
-		void CICatHelper::setReqParamforInvestigationIncludes(long long invstId,ns1__investigationInclude include,ns1__getInvestigationIncludes& request)
-		{
-			//get the sessionid which is cached in session class during login
-			*request.sessionId=Session::Instance().getSessionId();;
-			*request.investigationInclude=include;
-  		    *request.investigationId=invstId;
-
-		}
-	  /**
-    * This method calls ICat API getInvestigationIncludes and returns investigation details for a given investigation Id
-		* @param invstId :: investigation id
-		* @param include :: enum parameter for selecting the response data from the db.
-		* @param responsews_sptr :: table workspace to save the response data
-		* @returns zero if success otherwise error code
-		*/
-		int CICatHelper::getDataFiles(long long invstId,ns1__investigationInclude include,
-			               API::ITableWorkspace_sptr& responsews_sptr)
-		{
-			//ICAt proxy object
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
-							))
-			{
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			ns1__getInvestigationIncludes request;
-			//get the sessionid which is cached in session class during login
-			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
-			request.sessionId=sessionId_sptr.get();
-
-			// enum include
-			boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
-			request.investigationInclude=invstInculde_sptr.get();
-
-			request.investigationId=new LONG64;
-			setReqParamforInvestigationIncludes(invstId,include,request);
-
-			ns1__getInvestigationIncludesResponse response;
-			int ret_advsearch=icat.getInvestigationIncludes(&request,&response);
-			if(ret_advsearch!=0)
-			{
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			std::stringstream stream;
-			stream<<invstId;
-			if(!response.return_)
-			{
-				g_log.information()<<"No data files exists in the ICat database for the selected investigation"<<std::endl;
-				return -1;
-			}
-			try
-			{
-				saveInvestigationIncludesResponse(response,responsews_sptr);
-			}
-			catch(std::runtime_error)
-			{				
-				throw std::runtime_error("Error when selecting the investigation data with inestigation id "+ stream.str());
-			}
-			return ret_advsearch;
-		}
-
-		 /**
-     * This method loops through the response return_vector and saves the datafile details to a table workspace
-		 * @param response :: const reference to response object
-		 * @param outputws :: shared pointer to table workspace which stores the data
-		 */
-		void  CICatHelper::saveInvestigationIncludesResponse(const ns1__getInvestigationIncludesResponse& response,
-			API::ITableWorkspace_sptr& outputws)
-		{
-			
-			outputws->addColumn("str","Name");//File name
-			outputws->addColumn("int","File Size (B)");//File Size
-			outputws->addColumn("long64","File Id");//File id
-			outputws->addColumn("str","Format");//File Format
-			outputws->addColumn("str","Format Version");//File Version
-			outputws->addColumn("str","Format Type");// File Format Type
-			outputws->addColumn("str","Create Time");// File Creation Time
-
-			try
-			{		std::vector<ns1__dataset*> datasetVec;
-					datasetVec.assign((response.return_)->datasetCollection.begin(),(response.return_)->datasetCollection.end());
-					if(datasetVec.empty())
-					{
-						throw std::runtime_error("No data files exists in the ICAT database for the selected investigation");
-					}
-					std::vector<ns1__dataset*>::const_iterator dataset_citr;
-					for(dataset_citr=datasetVec.begin();dataset_citr!=datasetVec.end();++dataset_citr)
-					{
-						std::vector<ns1__datafile * >datafileVec;
-						datafileVec.assign((*dataset_citr)->datafileCollection.begin(),(*dataset_citr)->datafileCollection.end());
-						if(datafileVec.empty())
-						{
-							throw std::runtime_error("No data files exists in the ICAT database for the selected  investigation ");
-						}
-
-						std::vector<ns1__datafile * >::const_iterator datafile_citr;
-						for(datafile_citr=datafileVec.begin();datafile_citr!=datafileVec.end();++datafile_citr)
-						{
-
-							API::TableRow t = outputws->appendRow();
-										
-							// File Name
-							savetoTableWorkspace((*datafile_citr)->name,t);
-						    // File Size
-							savetoTableWorkspace((*datafile_citr)->fileSize,t);
-							//File Id
-							savetoTableWorkspace((*datafile_citr)->id,t);
-							ns1__datafileFormat* fileFormat=(*datafile_citr)->datafileFormat;
-							if(fileFormat)
-							{
-								if(fileFormat->datafileFormatPK)
-								{
-									// File Format
-									savetoTableWorkspace((fileFormat->datafileFormatPK->name),t);
-									// File Format Version
-									savetoTableWorkspace((fileFormat->datafileFormatPK->version),t);
-								}
-								else
-								{
-									std::string *s=NULL;
-									savetoTableWorkspace(s,t);
-									savetoTableWorkspace(s,t);
-								}
-								// File format Type
-								savetoTableWorkspace((fileFormat->formatType),t);
-							}
-							else
-							{
-								//i've to see a better way to write empty columns if the data is empty
-								std::string *s=NULL;
-								savetoTableWorkspace(s,t);
-								savetoTableWorkspace(s,t);
-								savetoTableWorkspace(s,t);
-							}
-														
-							//File creation Time.
-							std::string *creationtime=NULL;
-							if((*datafile_citr)->datafileCreateTime!=NULL)
-							{
-								time_t  crtime=*(*datafile_citr)->datafileCreateTime;
-								char temp [25];
-								strftime (temp,25,"%H:%M:%S %Y-%d-%b",localtime(&crtime));
-								std::string ftime(temp);
-								creationtime=new std::string ;
-								creationtime->assign(ftime);
-							}
-							savetoTableWorkspace(creationtime,t);
-
-						}
-
-					}
-
-			}
-			catch(std::runtime_error& )
-			{
-				throw ;
-			}
-
-		}
-
-	   /**This checks the datafile boolean  selected
-		 * @param fileName :: pointer to file name
-		 * @return bool - returns true if it's a raw file or nexus file
-		 */
-
-		bool CICatHelper::isDataFile(const std::string* fileName)
-		{	
-			if(!fileName)
-			{
-				return false;
-			}
-			std::basic_string <char>::size_type dotIndex;
-			//find the position of '.' in raw/nexus file name
-			dotIndex = (*fileName).find_last_of (".");
-			std::string fextn=(*fileName).substr(dotIndex+1,(*fileName).size()-dotIndex);
-			std::transform(fextn.begin(),fextn.end(),fextn.begin(),tolower);
-			
-			return((!fextn.compare("raw")|| !fextn.compare("nxs")) ? true :  false);
-		}
-
-		/**This method calls ICat API getInvestigationIncludes and returns datasets details for a given investigation Id
-		 * @param invstId :: investigation id
-		 * @param include :: enum parameter for selecting the response data from iact db.
-		 * @param responsews_sptr :: table workspace to save the response data
-     * @returns an integer zero if success if not an error number.
-		 */
-		int CICatHelper::doDataSetsSearch(long long invstId,ns1__investigationInclude include,
-			               API::ITableWorkspace_sptr& responsews_sptr)
-		{
-			//ICAt proxy object
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to 
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */ 
-							))
-			{ 
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			// request object
-			ns1__getInvestigationIncludes request;
-			//get the sessionid which is cached in session class during login
-			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
-			request.sessionId=sessionId_sptr.get();
-
-			// enum include 
-			boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
-			request.investigationInclude=invstInculde_sptr.get();
-
-			request.investigationId=new LONG64;
-			setReqParamforInvestigationIncludes(invstId,include,request);
-            
-			//response object
-			ns1__getInvestigationIncludesResponse response;
-			// Calling Icat api 
-			int ret_advsearch=icat.getInvestigationIncludes(&request,&response);
-			if(ret_advsearch!=0)
-			{
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			std::stringstream stream;
-			stream<<invstId;
-			if(!(response.return_)|| (response.return_)->datasetCollection.empty())
-			{
-				g_log.information()<<"No datasets  exists in the ICat database for the inevstigation id "+ stream.str()<<std::endl;
-				return -1 ;
-			}
-			try
-			{
-				saveDataSets(response,responsews_sptr);
-			}
-			catch(std::runtime_error)
-			{
-				
-				throw std::runtime_error("Error when loading the datasets for the investigation id "+ stream.str());
-			}
-
-			return ret_advsearch;
-		}
-
-		/** This method loops through the response return_vector and saves the datasets details to a table workspace
-		 * @param response :: const reference to response object
-		 * @param outputws ::  shred pointer to workspace
-		 * @returns shared pointer to table workspace which stores the data
-		 */
-		void  CICatHelper::saveDataSets(const ns1__getInvestigationIncludesResponse& response,API::ITableWorkspace_sptr& outputws)
-		{
-			//create table workspace
-			//adding columns
-			outputws->addColumn("str","Name");//File name
-			outputws->addColumn("str","Status");
-			outputws->addColumn("str","Type");
-			outputws->addColumn("str","Description");
-			outputws->addColumn("long64","Sample Id");
-			
-			try
-			{	
-				
-				std::vector<ns1__dataset*> datasetVec;
-				datasetVec.assign((response.return_)->datasetCollection.begin(),(response.return_)->datasetCollection.end());
-
-				std::vector<ns1__dataset*>::const_iterator dataset_citr;
-				for(dataset_citr=datasetVec.begin();dataset_citr!=datasetVec.end();++dataset_citr)
-				{						
-					API::TableRow t = outputws->appendRow();
-
-					// DataSet Name
-					savetoTableWorkspace((*dataset_citr)->name,t);
-					// DataSet Status
-					savetoTableWorkspace((*dataset_citr)->datasetStatus,t);
-					//DataSet Type
-					savetoTableWorkspace((*dataset_citr)->datasetType,t);
-					//DataSet Type
-					savetoTableWorkspace((*dataset_citr)->description,t);
-					//DataSet Type
-					savetoTableWorkspace((*dataset_citr)->sampleId,t);
-				}
-			}
-
-			catch(std::runtime_error& )
-			{
-				throw;
-			}
-
-			//return outputws;
-		}
-
-		/**This method calls ICat api listruments and returns the list of instruments a table workspace
-		 *@param instruments ::  list of instruments
-		 */
-		void CICatHelper::listInstruments(std::vector<std::string>& instruments)
-		{		
-			//ICAt proxy object
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to 
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */ 
-							))
-			{ 
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			
-			ns1__listInstruments request;
-			//get the sessionid which is cached in session class during login
-			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
-			request.sessionId=sessionId_sptr.get();
-			//setting the request parameters
-			setReqparamforlistInstruments(request);
-
-			// response object
-			 ns1__listInstrumentsResponse response;
-
-			 int ret=icat.listInstruments(&request,&response);
-			 if(ret!=0)
-			 {				
-				// 
-				 if(isvalidSession())
-				 {					
-					 CErrorHandling::throwErrorMessages(icat);
-				 }
-				 else
-				 {					
-					 throw SessionException("Please login to the information catalog using the login dialog provided.");
-				 }
-
-			 }
-			 if(response.return_.empty())
-			 {
-				 g_log.error()<<"Instruments List is empty"<<std::endl;
-				 return ;
-			 }
-			 
-			 instruments.assign(response.return_.begin(),response.return_.end());
-			 						
-		}
-
-	  /**This method sets the request parameter for ICat api list isnturments
-		* @param request :: reference to request object
-		*/
-		void CICatHelper::setReqparamforlistInstruments(ns1__listInstruments& request)
-		{
-			*request.sessionId=Session::Instance().getSessionId();
-		}
-
-		
-		/**This method calls ICat api listruments and returns the list of instruments a table workspace
-		  *@param investTypes ::  list of investigationtypes
-		 */
-		void  CICatHelper::listInvestigationTypes(std::vector<std::string>& investTypes)
-		{		
-			//ICAt proxy object
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to 
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */ 
-							))
-			{ 
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			
-			ns1__listInvestigationTypes request;
-			//get the sessionid which is cached in session class during login
-			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
-			request.sessionId=sessionId_sptr.get();
-			*request.sessionId=Session::Instance().getSessionId();
-			
-			// response object
-			 ns1__listInvestigationTypesResponse response;
-
-			int ret=icat.listInvestigationTypes(&request,&response);
-			 if(ret!=0)
-			 {
-				// 
-				 if(isvalidSession())
-				 {					
-					 CErrorHandling::throwErrorMessages(icat);
-				 }
-				 else
-				 {					
-					 throw SessionException("Please login to the information catalog using the login dialog provided.");
-				 }
-			 }
-			 if(response.return_.empty())
-			 {
-				 g_log.information()<<"Investigation types is empty"<<std::endl;
-				 return ;
-			 }
-	    	 investTypes.assign(response.return_.begin(),response.return_.end());
-		}
-
-  
-	  /** This method creates table workspace
-		  * @returns the table workspace created
-		 */
-		API::ITableWorkspace_sptr CICatHelper::createTableWorkspace()
-		{
-			//create table workspace
-			API::ITableWorkspace_sptr outputws ;
-			try
-			{
-				outputws=WorkspaceFactory::Instance().createTable("TableWorkspace");
-			}
-			catch(Mantid::Kernel::Exception::NotFoundError& )
-			{
-				throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
-			}
-			catch(std::runtime_error)
-			{
-				throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
-			}
-			return outputws;
-		}
-    
-
-    /** 
-    *This method calls ICat api logout and disconnects from ICat DB
-    * @returns zero if successful otherwise error code
-    */
-		int CICatHelper::doLogout()
-		{
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
-							))
-			{
-				
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			ns1__logout request;
-			ns1__logoutResponse response;
-			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
-			*sessionId_sptr=Session::Instance().getSessionId();
-			request.sessionId=sessionId_sptr.get();
-			int ret=icat.logout(&request,&response);
-			if(ret!=0)
-			{				
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			
-			return ret;
-		}
-
-		 /**
-     * This method calls ICat api getmyinvestigations and do returns the investigations of the logged in user
-		 * @param ws_sptr :: shared pointer to table workspace which stores the investigations search result
-		 */
-		void CICatHelper::doMyDataSearch(API::ITableWorkspace_sptr& ws_sptr)
-		{
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
-							))
-			{
-				
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			ns1__getMyInvestigationsIncludes request;
-			ns1__getMyInvestigationsIncludesResponse response;
-			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
-			*sessionId_sptr=Session::Instance().getSessionId();
-			request.sessionId=sessionId_sptr.get();
-			// investigation include
-            boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
-			request.investigationInclude=invstInculde_sptr.get();
-			*request.investigationInclude = ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES;
-
-			int ret=icat.getMyInvestigationsIncludes(&request,&response);
-			if(ret!=0)
-			{				
-         if(isvalidSession())
-				 {					
-					 CErrorHandling::throwErrorMessages(icat);
-				 }
-				 else
-				 {					
-					 throw SessionException("Please login to the information catalog using the login dialog provided.");
-				 }
-			}
-			if(response.return_.empty())
-			{	
-				g_log.information()<<"ICat Mydata search is complete.There are no results to display"<<std::endl;
-				return ;
-			}
-			//save response to a table workspace
-			saveMyInvestigations(response,ws_sptr);
-				
-		}
-
-		/**This method calls ICat api getmyinvestigations and do returns the investigations of the logged in user
-		 * @param response :: reference to response  object 
-		 * @param outputws :: shared pointer to table workspace which stores the investigations search result
-		 */
-		void CICatHelper::saveMyInvestigations( const ns1__getMyInvestigationsIncludesResponse& response,API::ITableWorkspace_sptr& outputws)
-		{
-			outputws->addColumn("long64","InvestigationId");
-			outputws->addColumn("str","RbNumber");
-			outputws->addColumn("str","Title");
-			outputws->addColumn("str","Type");
-			outputws->addColumn("str","Instrument");
-			outputws->addColumn("str","Investigator");
-			outputws->addColumn("str","RunRange");
-			outputws->addColumn("str","Year");
-			outputws->addColumn("str","Abstract");
-			outputws->addColumn("str","Investigators Name ");
-			outputws->addColumn("str","Samples Name");
-
-			saveInvestigations(response.return_,outputws);
-
-		}
-
-
-		/* This method does advanced search and returns investigation data
-		 * @param inputs :: reference to class containing search inputs
-		 * @param outputws :: shared pointer to output workspace
-		 */
-		void CICatHelper::doAdvancedSearch(CSearchParam& inputs,API::ITableWorkspace_sptr &outputws)
-		{
-
-			//ICAt proxy object
-			ICATPortBindingProxy icat;
-			// request object
-			boost::shared_ptr<ns1__searchByAdvanced> req_sptr(new ns1__searchByAdvanced );
-
-			//session id
-			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
-			req_sptr->sessionId=sessionId_sptr.get();
-			//get the sessionid which is cached in session class during login
-			*req_sptr->sessionId=Session::Instance().getSessionId();
-
-			boost::shared_ptr<ns1__advancedSearchDetails>adv_sptr(new ns1__advancedSearchDetails);
-			req_sptr->advancedSearchDetails=adv_sptr.get();
-			//run start
-			boost::shared_ptr<double>runstart_sptr(new double);
-			if(inputs.getRunStart()>0)
-			{
-				req_sptr->advancedSearchDetails->runStart = runstart_sptr.get();
-			   *req_sptr->advancedSearchDetails->runStart = inputs.getRunStart();
-			}
-			//run end
-			boost::shared_ptr<double>runend_sptr(new double);
-			if(inputs.getRunEnd()>0)
-			{
-				req_sptr->advancedSearchDetails->runEnd = runend_sptr.get();
-			    *req_sptr->advancedSearchDetails->runEnd = inputs.getRunEnd();
-			}
-            //start date
-			boost::shared_ptr<time_t> startdate_sptr(new time_t);
-			if(inputs.getStartDate()!=0)
-			{				
-				req_sptr->advancedSearchDetails->dateRangeStart = startdate_sptr.get();
-				*req_sptr->advancedSearchDetails->dateRangeStart = inputs.getStartDate();
-			}
-			//end date
-      boost::shared_ptr<time_t> enddate_sptr(new time_t);
-			if(inputs.getEndDate()!=0)
-			{				
-				req_sptr->advancedSearchDetails->dateRangeEnd =  enddate_sptr.get();
-				*req_sptr->advancedSearchDetails->dateRangeEnd = inputs.getEndDate();
-			}
-
-			req_sptr->advancedSearchDetails->caseSensitive=inputs.getCaseSensitive();
-
-			// investigation include
-      boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
-			req_sptr->advancedSearchDetails->investigationInclude = invstInculde_sptr.get();
-			*req_sptr->advancedSearchDetails->investigationInclude = ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES;
-
-			//instrument name
-			if(!inputs.getInstrument().empty())
-			{
-				req_sptr->advancedSearchDetails->instruments.push_back(inputs.getInstrument());
-			}
-			// keywords
-			if(!inputs.getKeywords().empty())
-			{
-				req_sptr->advancedSearchDetails->keywords.push_back(inputs.getKeywords());
-			}
-
-			//invetigation name
-			boost::shared_ptr<std::string > investName_sptr(new std::string);
-			if(!inputs.getInvestigationName().empty())
-			{
-				req_sptr->advancedSearchDetails->investigationName = investName_sptr.get();
-				*req_sptr->advancedSearchDetails->investigationName = inputs.getInvestigationName();
-			}
-
-			//invetigation abstarct
-			boost::shared_ptr<std::string > investAbstract_sptr(new std::string);
-			if(!inputs.getInvestigationAbstract().empty())
-			{
-				req_sptr->advancedSearchDetails->investigationAbstract = investAbstract_sptr.get();
-				*req_sptr->advancedSearchDetails->investigationAbstract = inputs.getInvestigationAbstract();
-			}
-			std::string invstType=inputs.getInvestigationType();
-			req_sptr->advancedSearchDetails->investigationType = &invstType;
-			
-
-			//sample name
-			boost::shared_ptr<std::string > sample_sptr(new std::string);
-			if(!inputs.getSampleName().empty())
-			{
-				req_sptr->advancedSearchDetails->sampleName = sample_sptr.get();
-				*req_sptr->advancedSearchDetails->sampleName = inputs.getSampleName();
-			}
-
-			//investigator's surname
-			boost::shared_ptr<std::string > investigator_sptr(new std::string);
-			if(!inputs.getInvestigatorSurName().empty())
-			{
-				req_sptr->advancedSearchDetails->investigators.push_back(inputs.getInvestigatorSurName());
-			}
-
-			//datafile name
-			boost::shared_ptr<std::string > datafilename_sptr(new std::string);
-			if(!inputs.getDatafileName().empty())
-			{
-				req_sptr->advancedSearchDetails->datafileName = datafilename_sptr.get();
-				*req_sptr->advancedSearchDetails->datafileName = inputs.getDatafileName();
-			}
-
-			//rb number 
-			boost::shared_ptr<std::string > RbNumber_sptr(new std::string);
-			if(!inputs.getRbNumber().empty())
-			{
-				req_sptr->advancedSearchDetails->experimentNumber = RbNumber_sptr.get();
-				*req_sptr->advancedSearchDetails->experimentNumber = inputs.getRbNumber();
-			}
-
-
-			//response object
-			ns1__searchByAdvancedResponse response;
-			// do  search
-			int ret_search=doSearch(icat,req_sptr,response);
-			if(ret_search!=0)
-			{
-				//replace with mantid error routine
-				CErrorHandling::throwErrorMessages(icat);
-			}
-			if(response.return_.empty())
-			{	
-				g_log.information()<<"ICat investigations search is complete.There are no results to display"<<std::endl;
-				return ;
-        	}
-			//save response to a table workspace
-			saveSearchRessults(response,outputws);
-	
-		}
-
-	   /**This method saves the date components to C library struct tm
-		 *@param sDate :: string containing the date 
-		 *@return time_t value of date 
-		 */
-		time_t CICatHelper::getTimevalue(const std::string& sDate)
-		{
-
-			if(!sDate.compare(""))
-			{
-				return 0;
-			}
-			struct tm  timeinfo;
-			std::basic_string <char>::size_type index,off=0;
-			int day,month,year;
-
-			//look for the first '/' to extract day part from the date string
-			index=sDate.find('/',off);
-			if(index == std::string::npos)
-			{			
-				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
-			}
-			//get day part of the date
-			try
-			{
-				day=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
-			}
-			catch(boost::bad_lexical_cast&)
-			{
-				throw std::runtime_error("Invalid Date");
-			}
-			timeinfo.tm_mday=day;
-
-			//change the offset to the next position after "/"
-			off=index+1;
-			//look for 2nd '/' to get month part from  the date string
-			index=sDate.find('/',off);
-			if(index == std::string::npos)
-			{			
-				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
-			}
-			//now get the month part
-			try
-			{
-				month=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
-			}
-			catch(boost::bad_lexical_cast&)
-			{
-				throw std::runtime_error("Invalid Date");
-			}
-			timeinfo.tm_mon=month-1;
-
-			//change the offset to the position after "/"
-			off=index+1;
-			//now get the year part from the date string
-			try
-			{
-				year=boost::lexical_cast<int>(sDate.substr(off,4).c_str());
-
-			}
-			catch(boost::bad_lexical_cast&)
-			{
-				throw std::runtime_error("Invalid Date");
-			}
-
-			timeinfo.tm_year=year-1900;
-			timeinfo.tm_min=0;
-			timeinfo.tm_sec=0;
-			timeinfo.tm_hour=0;
-			//timeinfo->tm_isdst=-1;
-			return std::mktime (&timeinfo );
-		}
-		/**This method checks the given session is valid
-		  *@return returns true if the session id is valid,otherwise false;
-		 */
-		bool CICatHelper::isvalidSession()
-		{
-			
-			ICATPortBindingProxy icat;
-			// Define ssl authentication scheme
-			if (soap_ssl_client_context(&icat,
-				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
-				NULL,       /* keyfile: required only when client must authenticate to
-							server (see SSL docs on how to obtain this file) */
-							NULL,       /* password to read the keyfile */
-							NULL,      /* optional cacert file to store trusted certificates */
-							NULL,      /* optional capath to directory with trusted certificates */
-							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
-							))
-			{
-				
-				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			ns1__isSessionValid request;
-			ns1__isSessionValidResponse response;
-			std::string sessionId=Session::Instance().getSessionId();
-			request.sessionId = &sessionId;
-			
-			return (response.return_? true: false);
-			
-
-		}
-		
-		/**This method uses ICat API login to connect to catalog 
-		  *@param name :: login name of the user
-		  *@param password :: of the user
-		  *@param url :: endpoint url of the catalog
-		*/
-		void CICatHelper::doLogin(const std::string& name,const std::string& password,const std::string & url)
-		{
-			ICATPortBindingProxy icat;
+// WorkspaceFactory include must be first otherwise you get a bizarre Poco-related compilation error on Windows
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MantidICat/ICatHelper.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/ErrorHandling.h" 
+#include <iomanip>
+#include <time.h>
+#include <boost/lexical_cast.hpp>
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+		
+		
+
+		/* This method calls ICat API searchbydavanced and do the basic run search 
+		 * @param icat :: Proxy object for ICat
+		 * @param request :: request object
+		 * @param response :: response object
+		 */
+		int CICatHelper::doSearch(ICATPortBindingProxy& icat,boost::shared_ptr<ns1__searchByAdvanced>& request,ns1__searchByAdvancedResponse& response)
+		{
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
+							))
+			{
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			clock_t start=clock();
+			int ret_advsearch=icat.searchByAdvanced(request.get(),&response);
+			if(ret_advsearch!=0)
+			{
+			
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			clock_t end=clock();
+			float diff = float(end -start)/CLOCKS_PER_SEC;
+			g_log.information()<<" Time taken to do  search is "<<diff<< "  seconds "<<std::endl;
+			return ret_advsearch;
+		}
+
+		/* This method does a search  by different parameters and  investigation data
+		 * @param inputs :: reference to class containing search inputs
+		 * @param outputws :: shared pointer to output workspace
+		 */
+		void CICatHelper::doISISSearch(const CSearchParam& inputs,API::ITableWorkspace_sptr &outputws)
+		{
+			//ICAt proxy object
+			ICATPortBindingProxy icat;
+			// request object
+			boost::shared_ptr<ns1__searchByAdvanced> req_sptr(new ns1__searchByAdvanced );
+
+			//session id
+			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
+			req_sptr->sessionId=sessionId_sptr.get();
+			//get the sessionid which is cached in session class during login
+			*req_sptr->sessionId=Session::Instance().getSessionId();
+
+			boost::shared_ptr<ns1__advancedSearchDetails>adv_sptr(new ns1__advancedSearchDetails);
+			req_sptr->advancedSearchDetails=adv_sptr.get();
+			//run start
+			boost::shared_ptr<double>runstart_sptr(new double);
+			if(inputs.getRunStart()>0)
+			{
+				req_sptr->advancedSearchDetails->runStart=runstart_sptr.get();
+			   *req_sptr->advancedSearchDetails->runStart= inputs.getRunStart();
+			}
+			//run end
+			boost::shared_ptr<double>runend_sptr(new double);
+			if(inputs.getRunEnd()>0)
+			{
+				req_sptr->advancedSearchDetails->runEnd=runend_sptr.get();
+			    *req_sptr->advancedSearchDetails->runEnd=inputs.getRunEnd();
+			}
+            //start date
+			boost::shared_ptr<time_t> startdate_sptr(new time_t);
+			if(inputs.getStartDate()!=0)
+			{				
+				req_sptr->advancedSearchDetails->dateRangeStart = startdate_sptr.get();
+				*req_sptr->advancedSearchDetails->dateRangeStart = inputs.getStartDate();
+			}
+			//end date
+            boost::shared_ptr<time_t> enddate_sptr(new time_t);
+			if(inputs.getEndDate()!=0)
+			{				
+				req_sptr->advancedSearchDetails->dateRangeEnd = enddate_sptr.get();
+				*req_sptr->advancedSearchDetails->dateRangeEnd =inputs.getEndDate();
+			}
+			req_sptr->advancedSearchDetails->caseSensitive=inputs.getCaseSensitive();
+			
+			// investigation include
+            boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
+			req_sptr->advancedSearchDetails->investigationInclude=invstInculde_sptr.get();
+			*req_sptr->advancedSearchDetails->investigationInclude=ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES;
+         
+			//instrument name
+			if(!inputs.getInstrument().empty())
+			{
+				req_sptr->advancedSearchDetails->instruments.push_back(inputs.getInstrument());
+			}
+
+			// keywords
+			if(!inputs.getKeywords().empty())
+			{
+				req_sptr->advancedSearchDetails->keywords.push_back(inputs.getKeywords());
+			}
+
+			//invetigation name
+			boost::shared_ptr<std::string > investName_sptr(new std::string);
+			if(!inputs.getInvestigationName().empty())
+			{
+				req_sptr->advancedSearchDetails->investigationName = investName_sptr.get();
+				*req_sptr->advancedSearchDetails->investigationName = inputs.getInvestigationName();
+			}
+
+			//invetigation abstarct
+			boost::shared_ptr<std::string > investAbstract_sptr(new std::string);
+			if(!inputs.getInvestigationAbstract().empty())
+			{
+				req_sptr->advancedSearchDetails->investigationAbstract = investAbstract_sptr.get();
+				*req_sptr->advancedSearchDetails->investigationAbstract = inputs.getInvestigationAbstract();
+			}
+			std::string invstType=inputs.getInvestigationType();
+			req_sptr->advancedSearchDetails->investigationType = &invstType;
+			
+
+			//sample name
+			boost::shared_ptr<std::string > sample_sptr(new std::string);
+			if(!inputs.getSampleName().empty())
+			{
+				req_sptr->advancedSearchDetails->sampleName = sample_sptr.get();
+				*req_sptr->advancedSearchDetails->sampleName = inputs.getSampleName();
+			}
+
+			//investigator's surname
+			boost::shared_ptr<std::string > investigator_sptr(new std::string);
+			if(!inputs.getInvestigatorSurName().empty())
+			{
+				req_sptr->advancedSearchDetails->investigators.push_back(inputs.getInvestigatorSurName());
+			}
+
+			//datafile name
+			boost::shared_ptr<std::string > datafilename_sptr(new std::string);
+			if(!inputs.getDatafileName().empty())
+			{
+				req_sptr->advancedSearchDetails->datafileName = datafilename_sptr.get();
+				*req_sptr->advancedSearchDetails->datafileName = inputs.getDatafileName();
+			}
+
+			//rb number 
+			boost::shared_ptr<std::string > RbNumber_sptr(new std::string);
+			if(!inputs.getRbNumber().empty())
+			{
+				req_sptr->advancedSearchDetails->experimentNumber = RbNumber_sptr.get();
+				*req_sptr->advancedSearchDetails->experimentNumber = inputs.getRbNumber();
+			}
+
+						
+			//response object
+			ns1__searchByAdvancedResponse response;
+			// do  search
+			int ret_search=doSearch(icat,req_sptr,response);
+			if(ret_search!=0)
+			{
+				//replace with mantid error routine
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			if(response.return_.empty())
+			{	
+				g_log.information()<<"ICat investigations search is complete.There are no results to display"<<std::endl;
+				return ;
+        		
+			}
+			//save response to a table workspace
+			saveSearchRessults(response,outputws);
+		}
+	   
+	  		
+	/** This method saves the search response( investigations )data to a table workspace
+		*  @param response :: const reference to response object
+		*  @param outputws :: shared pointer to output workspace
+		*/
+		void  CICatHelper::saveSearchRessults(const ns1__searchByAdvancedResponse& response,API::ITableWorkspace_sptr& outputws)
+		{
+			//create table workspace
+		
+			//API::ITableWorkspace_sptr outputws =createTableWorkspace();
+			
+			outputws->addColumn("long64","InvestigationId");
+			outputws->addColumn("str","RbNumber");
+			outputws->addColumn("str","Title");
+			outputws->addColumn("str","Type");
+			outputws->addColumn("str","Instrument");
+			outputws->addColumn("str","Investigator");
+			outputws->addColumn("str","RunRange");
+			outputws->addColumn("str","Year");
+			outputws->addColumn("str","Abstract");
+			outputws->addColumn("str","Investigators Name ");
+			outputws->addColumn("str","Samples Name");
+
+			try
+			{				
+				saveInvestigations(response.return_,outputws);
+			}
+			catch(std::runtime_error& )
+			{
+			  throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
+			}
+		
+		}
+	   /** This method saves investigations  to a table workspace
+		*  @param investigations :: a vector containing investigation data
+		*  @param outputws :: shared pointer to output workspace
+		*/
+		void CICatHelper::saveInvestigations(const std::vector<ns1__investigation*>& investigations,API::ITableWorkspace_sptr& outputws)
+		{
+	
+			try
+			{
+				std::vector<ns1__investigation*>::const_iterator citr;
+				for (citr=investigations.begin();citr!=investigations.end();++citr)
+				{
+					API::TableRow t = outputws->appendRow();
+					//investigation id
+					savetoTableWorkspace((*citr)->id,t);
+								
+					//rb number
+					savetoTableWorkspace((*citr)->invNumber,t);
+
+       				//title
+					savetoTableWorkspace((*citr)->title,t);
+							
+					//type 
+					savetoTableWorkspace((*citr)->invType,t);
+
+					savetoTableWorkspace((*citr)->instrument,t);
+					//investigator
+					savetoTableWorkspace((*citr)->bcatInvStr,t);
+					// run range
+					savetoTableWorkspace((*citr)->invParamValue,t);
+								
+					//year
+					std::string *sInvEndtime=NULL ;
+					if((*citr)->invEndDate!=NULL)
+					{
+						sInvEndtime=new std::string;
+						time_t  invEndtime=*(*citr)->invEndDate;
+						char temp [25];
+						strftime (temp,25,"%H:%M:%S %Y-%d-%b",localtime(&invEndtime));
+						strftime (temp,25,"%Y",localtime(&invEndtime));
+						std::string ftime(temp);
+						
+						sInvEndtime->assign(ftime);
+						
+					}
+					savetoTableWorkspace(sInvEndtime,t);
+
+					saveInvestigatorsNameandSample(*citr,t);
+     //              
+				}
+			}
+			catch(std::runtime_error& )
+			{
+			  throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
+			}
+		}
+
+	   /** This method saves investigations  to a table workspace
+		*  @param investigation :: pointer to a single investigation data
+		*  @param t :: reference to a row in a table workspace
+		*/
+		void CICatHelper::saveInvestigatorsNameandSample(ns1__investigation* investigation,API::TableRow& t)
+		{
+			
+			try
+			{
+
+				//   abstract
+				savetoTableWorkspace(investigation->invAbstract,t);
+
+				std::vector<ns1__investigator*>investigators;
+				investigators.assign(investigation->investigatorCollection.begin(),investigation->investigatorCollection.end());
+
+				std::string fullname; std::string* facilityUser=NULL;
+				//for loop for getting invetigator's first and last name
+				std::vector<ns1__investigator*>::const_iterator invstrItr;
+				for(invstrItr=investigators.begin();invstrItr!=investigators.end();++invstrItr)
+				{
+					std::string firstname;std::string lastname;std::string name;
+					if((*invstrItr)->facilityUser)
+					{
+
+						if((*invstrItr)->facilityUser->firstName)
+						{
+							firstname = *(*invstrItr)->facilityUser->firstName;
+						}
+						if((*invstrItr)->facilityUser->lastName)
+						{
+							lastname = *(*invstrItr)->facilityUser->lastName;
+						}
+						name = firstname+" "+ lastname;
+					}
+					if(!fullname.empty())
+					{
+						fullname+=",";
+					}
+					fullname+=name;
+				}//end of for loop for investigator's name.
+
+				if(!fullname.empty())
+				{
+					facilityUser = new std::string;
+					facilityUser->assign(fullname);
+				}
+
+				//invetigator name
+				savetoTableWorkspace(facilityUser,t);
+
+				std::vector<ns1__sample*>samples;
+				std::string *samplenames =NULL;
+				samples.assign(investigation->sampleCollection.begin(),investigation->sampleCollection.end());
+				std::string sNames;
+				//for loop for samples name.
+				std::vector<ns1__sample*>::const_iterator sItr;
+				for(sItr=samples.begin();sItr!=samples.end();++sItr)
+				{
+					std::string sName;
+					if((*sItr)->name)
+					{
+						sName=*((*sItr)->name);
+					}
+					if(!sNames.empty())
+					{
+						sNames+=",";
+					}
+					sNames+=sName;
+				}
+				if(!sNames.empty())
+				{
+					samplenames = new std::string;
+					samplenames->assign(sNames);
+				}
+				savetoTableWorkspace(samplenames,t);
+			}
+			catch(std::runtime_error& )
+			{
+				throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
+			}
+		}
+		
+		/** This method loops through the response return_vector and saves the datafile details to a table workspace
+		 * @param response :: const reference to response object
+		 * @returns shared pointer to table workspace which stores the data
+		 */
+		API::ITableWorkspace_sptr CICatHelper::saveFileSearchResponse(const ns1__searchByAdvancedResponse& response)
+		{
+			//create table workspace
+			API::ITableWorkspace_sptr outputws =createTableWorkspace();
+			//add columns
+			outputws->addColumn("str","Name");
+			outputws->addColumn("int","File Size(B)");
+			outputws->addColumn("long64","FileId");
+			outputws->addColumn("str","Format");
+			outputws->addColumn("str","Format Version");
+			outputws->addColumn("str","Format Type");
+			outputws->addColumn("str","Create Time");
+
+			std::vector<ns1__investigation*> investVec;
+			investVec.assign(response.return_.begin(),response.return_.end());
+
+			try
+			{
+				std::vector<ns1__investigation*>::const_iterator inv_citr;
+				for (inv_citr=investVec.begin();inv_citr!=investVec.end();++inv_citr)
+				{
+					std::vector<ns1__dataset*> datasetVec;
+					datasetVec.assign((*inv_citr)->datasetCollection.begin(),(*inv_citr)->datasetCollection.end());
+
+					std::vector<ns1__dataset*>::const_iterator dataset_citr;
+					for(dataset_citr=datasetVec.begin();dataset_citr!=datasetVec.end();++dataset_citr)
+					{
+						std::vector<ns1__datafile * >datafileVec;
+						datafileVec.assign((*dataset_citr)->datafileCollection.begin(),(*dataset_citr)->datafileCollection.end());
+
+						std::vector<ns1__datafile * >::const_iterator datafile_citr;
+						for(datafile_citr=datafileVec.begin();datafile_citr!=datafileVec.end();++datafile_citr)
+						{
+
+							API::TableRow t = outputws->appendRow();
+							savetoTableWorkspace((*datafile_citr)->name,t);
+							savetoTableWorkspace((*datafile_citr)->fileSize,t);
+
+							//long long fileId=*(*datafile_citr)->id;
+							savetoTableWorkspace((*datafile_citr)->id,t);
+							ns1__datafileFormat* fileFormat=(*datafile_citr)->datafileFormat;
+							if(fileFormat)
+							{
+								if(fileFormat->datafileFormatPK)
+								{
+									savetoTableWorkspace((fileFormat->datafileFormatPK->name),t);
+									savetoTableWorkspace((fileFormat->datafileFormatPK->version),t);
+								}
+								savetoTableWorkspace((fileFormat->formatType),t);
+
+							}
+							if((*datafile_citr)->datafileCreateTime!=NULL)
+							{
+								time_t  crtime=*(*datafile_citr)->datafileCreateTime;
+								char temp [25];
+								strftime (temp,25,"%H:%M:%S %Y-%d-%b",localtime(&crtime));
+								std::string ftime(temp);
+								std::string *creationtime=new std::string ;
+								creationtime->assign(ftime);
+								savetoTableWorkspace(creationtime,t);
+							}
+			
+						}//end of for loop for data files iteration
+
+					}//end of for loop for datasets iteration
+
+
+				}// end of for loop investigations iteration.
+			}
+			catch(std::runtime_error& )
+			{
+				throw;
+			}
+
+			return outputws;
+		}
+
+		/**
+    * This method sets the request parameters for the investigations includes
+		* @param invstId :: investigation id 
+		* @param include :: enum parameter to retrieve dat from DB
+		* @param request :: request object
+		*/
+		void CICatHelper::setReqParamforInvestigationIncludes(long long invstId,ns1__investigationInclude include,ns1__getInvestigationIncludes& request)
+		{
+			//get the sessionid which is cached in session class during login
+			*request.sessionId=Session::Instance().getSessionId();;
+			*request.investigationInclude=include;
+  		    *request.investigationId=invstId;
+
+		}
+	  /**
+    * This method calls ICat API getInvestigationIncludes and returns investigation details for a given investigation Id
+		* @param invstId :: investigation id
+		* @param include :: enum parameter for selecting the response data from the db.
+		* @param responsews_sptr :: table workspace to save the response data
+		* @returns zero if success otherwise error code
+		*/
+		int CICatHelper::getDataFiles(long long invstId,ns1__investigationInclude include,
+			               API::ITableWorkspace_sptr& responsews_sptr)
+		{
+			//ICAt proxy object
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
+							))
+			{
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			ns1__getInvestigationIncludes request;
+			//get the sessionid which is cached in session class during login
+			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
+			request.sessionId=sessionId_sptr.get();
+
+			// enum include
+			boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
+			request.investigationInclude=invstInculde_sptr.get();
+
+			request.investigationId=new LONG64;
+			setReqParamforInvestigationIncludes(invstId,include,request);
+
+			ns1__getInvestigationIncludesResponse response;
+			int ret_advsearch=icat.getInvestigationIncludes(&request,&response);
+			if(ret_advsearch!=0)
+			{
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			std::stringstream stream;
+			stream<<invstId;
+			if(!response.return_)
+			{
+				g_log.information()<<"No data files exists in the ICat database for the selected investigation"<<std::endl;
+				return -1;
+			}
+			try
+			{
+				saveInvestigationIncludesResponse(response,responsews_sptr);
+			}
+			catch(std::runtime_error)
+			{				
+				throw std::runtime_error("Error when selecting the investigation data with inestigation id "+ stream.str());
+			}
+			return ret_advsearch;
+		}
+
+		 /**
+     * This method loops through the response return_vector and saves the datafile details to a table workspace
+		 * @param response :: const reference to response object
+		 * @param outputws :: shared pointer to table workspace which stores the data
+		 */
+		void  CICatHelper::saveInvestigationIncludesResponse(const ns1__getInvestigationIncludesResponse& response,
+			API::ITableWorkspace_sptr& outputws)
+		{
+			
+			outputws->addColumn("str","Name");//File name
+			outputws->addColumn("int","File Size (B)");//File Size
+			outputws->addColumn("long64","File Id");//File id
+			outputws->addColumn("str","Format");//File Format
+			outputws->addColumn("str","Format Version");//File Version
+			outputws->addColumn("str","Format Type");// File Format Type
+			outputws->addColumn("str","Create Time");// File Creation Time
+
+			try
+			{		std::vector<ns1__dataset*> datasetVec;
+					datasetVec.assign((response.return_)->datasetCollection.begin(),(response.return_)->datasetCollection.end());
+					if(datasetVec.empty())
+					{
+						throw std::runtime_error("No data files exists in the ICAT database for the selected investigation");
+					}
+					std::vector<ns1__dataset*>::const_iterator dataset_citr;
+					for(dataset_citr=datasetVec.begin();dataset_citr!=datasetVec.end();++dataset_citr)
+					{
+						std::vector<ns1__datafile * >datafileVec;
+						datafileVec.assign((*dataset_citr)->datafileCollection.begin(),(*dataset_citr)->datafileCollection.end());
+						if(datafileVec.empty())
+						{
+							throw std::runtime_error("No data files exists in the ICAT database for the selected  investigation ");
+						}
+
+						std::vector<ns1__datafile * >::const_iterator datafile_citr;
+						for(datafile_citr=datafileVec.begin();datafile_citr!=datafileVec.end();++datafile_citr)
+						{
+
+							API::TableRow t = outputws->appendRow();
+										
+							// File Name
+							savetoTableWorkspace((*datafile_citr)->name,t);
+						    // File Size
+							savetoTableWorkspace((*datafile_citr)->fileSize,t);
+							//File Id
+							savetoTableWorkspace((*datafile_citr)->id,t);
+							ns1__datafileFormat* fileFormat=(*datafile_citr)->datafileFormat;
+							if(fileFormat)
+							{
+								if(fileFormat->datafileFormatPK)
+								{
+									// File Format
+									savetoTableWorkspace((fileFormat->datafileFormatPK->name),t);
+									// File Format Version
+									savetoTableWorkspace((fileFormat->datafileFormatPK->version),t);
+								}
+								else
+								{
+									std::string *s=NULL;
+									savetoTableWorkspace(s,t);
+									savetoTableWorkspace(s,t);
+								}
+								// File format Type
+								savetoTableWorkspace((fileFormat->formatType),t);
+							}
+							else
+							{
+								//i've to see a better way to write empty columns if the data is empty
+								std::string *s=NULL;
+								savetoTableWorkspace(s,t);
+								savetoTableWorkspace(s,t);
+								savetoTableWorkspace(s,t);
+							}
+														
+							//File creation Time.
+							std::string *creationtime=NULL;
+							if((*datafile_citr)->datafileCreateTime!=NULL)
+							{
+								time_t  crtime=*(*datafile_citr)->datafileCreateTime;
+								char temp [25];
+								strftime (temp,25,"%H:%M:%S %Y-%d-%b",localtime(&crtime));
+								std::string ftime(temp);
+								creationtime=new std::string ;
+								creationtime->assign(ftime);
+							}
+							savetoTableWorkspace(creationtime,t);
+
+						}
+
+					}
+
+			}
+			catch(std::runtime_error& )
+			{
+				throw ;
+			}
+
+		}
+
+	   /**This checks the datafile boolean  selected
+		 * @param fileName :: pointer to file name
+		 * @return bool - returns true if it's a raw file or nexus file
+		 */
+
+		bool CICatHelper::isDataFile(const std::string* fileName)
+		{	
+			if(!fileName)
+			{
+				return false;
+			}
+			std::basic_string <char>::size_type dotIndex;
+			//find the position of '.' in raw/nexus file name
+			dotIndex = (*fileName).find_last_of (".");
+			std::string fextn=(*fileName).substr(dotIndex+1,(*fileName).size()-dotIndex);
+			std::transform(fextn.begin(),fextn.end(),fextn.begin(),tolower);
+			
+			return((!fextn.compare("raw")|| !fextn.compare("nxs")) ? true :  false);
+		}
+
+		/**This method calls ICat API getInvestigationIncludes and returns datasets details for a given investigation Id
+		 * @param invstId :: investigation id
+		 * @param include :: enum parameter for selecting the response data from iact db.
+		 * @param responsews_sptr :: table workspace to save the response data
+     * @returns an integer zero if success if not an error number.
+		 */
+		int CICatHelper::doDataSetsSearch(long long invstId,ns1__investigationInclude include,
+			               API::ITableWorkspace_sptr& responsews_sptr)
+		{
+			//ICAt proxy object
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to 
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */ 
+							))
+			{ 
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			// request object
+			ns1__getInvestigationIncludes request;
+			//get the sessionid which is cached in session class during login
+			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
+			request.sessionId=sessionId_sptr.get();
+
+			// enum include 
+			boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
+			request.investigationInclude=invstInculde_sptr.get();
+
+			request.investigationId=new LONG64;
+			setReqParamforInvestigationIncludes(invstId,include,request);
+            
+			//response object
+			ns1__getInvestigationIncludesResponse response;
+			// Calling Icat api 
+			int ret_advsearch=icat.getInvestigationIncludes(&request,&response);
+			if(ret_advsearch!=0)
+			{
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			std::stringstream stream;
+			stream<<invstId;
+			if(!(response.return_)|| (response.return_)->datasetCollection.empty())
+			{
+				g_log.information()<<"No datasets  exists in the ICat database for the inevstigation id "+ stream.str()<<std::endl;
+				return -1 ;
+			}
+			try
+			{
+				saveDataSets(response,responsews_sptr);
+			}
+			catch(std::runtime_error)
+			{
+				
+				throw std::runtime_error("Error when loading the datasets for the investigation id "+ stream.str());
+			}
+
+			return ret_advsearch;
+		}
+
+		/** This method loops through the response return_vector and saves the datasets details to a table workspace
+		 * @param response :: const reference to response object
+		 * @param outputws ::  shred pointer to workspace
+		 * @returns shared pointer to table workspace which stores the data
+		 */
+		void  CICatHelper::saveDataSets(const ns1__getInvestigationIncludesResponse& response,API::ITableWorkspace_sptr& outputws)
+		{
+			//create table workspace
+			//adding columns
+			outputws->addColumn("str","Name");//File name
+			outputws->addColumn("str","Status");
+			outputws->addColumn("str","Type");
+			outputws->addColumn("str","Description");
+			outputws->addColumn("long64","Sample Id");
+			
+			try
+			{	
+				
+				std::vector<ns1__dataset*> datasetVec;
+				datasetVec.assign((response.return_)->datasetCollection.begin(),(response.return_)->datasetCollection.end());
+
+				std::vector<ns1__dataset*>::const_iterator dataset_citr;
+				for(dataset_citr=datasetVec.begin();dataset_citr!=datasetVec.end();++dataset_citr)
+				{						
+					API::TableRow t = outputws->appendRow();
+
+					// DataSet Name
+					savetoTableWorkspace((*dataset_citr)->name,t);
+					// DataSet Status
+					savetoTableWorkspace((*dataset_citr)->datasetStatus,t);
+					//DataSet Type
+					savetoTableWorkspace((*dataset_citr)->datasetType,t);
+					//DataSet Type
+					savetoTableWorkspace((*dataset_citr)->description,t);
+					//DataSet Type
+					savetoTableWorkspace((*dataset_citr)->sampleId,t);
+				}
+			}
+
+			catch(std::runtime_error& )
+			{
+				throw;
+			}
+
+			//return outputws;
+		}
+
+		/**This method calls ICat api listruments and returns the list of instruments a table workspace
+		 *@param instruments ::  list of instruments
+		 */
+		void CICatHelper::listInstruments(std::vector<std::string>& instruments)
+		{		
+			//ICAt proxy object
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to 
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */ 
+							))
+			{ 
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			
+			ns1__listInstruments request;
+			//get the sessionid which is cached in session class during login
+			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
+			request.sessionId=sessionId_sptr.get();
+			//setting the request parameters
+			setReqparamforlistInstruments(request);
+
+			// response object
+			 ns1__listInstrumentsResponse response;
+
+			 int ret=icat.listInstruments(&request,&response);
+			 if(ret!=0)
+			 {				
+				// 
+				 if(isvalidSession())
+				 {					
+					 CErrorHandling::throwErrorMessages(icat);
+				 }
+				 else
+				 {					
+					 throw SessionException("Please login to the information catalog using the login dialog provided.");
+				 }
+
+			 }
+			 if(response.return_.empty())
+			 {
+				 g_log.error()<<"Instruments List is empty"<<std::endl;
+				 return ;
+			 }
+			 
+			 instruments.assign(response.return_.begin(),response.return_.end());
+			 						
+		}
+
+	  /**This method sets the request parameter for ICat api list isnturments
+		* @param request :: reference to request object
+		*/
+		void CICatHelper::setReqparamforlistInstruments(ns1__listInstruments& request)
+		{
+			*request.sessionId=Session::Instance().getSessionId();
+		}
+
+		
+		/**This method calls ICat api listruments and returns the list of instruments a table workspace
+		  *@param investTypes ::  list of investigationtypes
+		 */
+		void  CICatHelper::listInvestigationTypes(std::vector<std::string>& investTypes)
+		{		
+			//ICAt proxy object
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to 
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */ 
+							))
+			{ 
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			
+			ns1__listInvestigationTypes request;
+			//get the sessionid which is cached in session class during login
+			boost::shared_ptr<std::string >sessionId_sptr(new std::string);
+			request.sessionId=sessionId_sptr.get();
+			*request.sessionId=Session::Instance().getSessionId();
+			
+			// response object
+			 ns1__listInvestigationTypesResponse response;
+
+			int ret=icat.listInvestigationTypes(&request,&response);
+			 if(ret!=0)
+			 {
+				// 
+				 if(isvalidSession())
+				 {					
+					 CErrorHandling::throwErrorMessages(icat);
+				 }
+				 else
+				 {					
+					 throw SessionException("Please login to the information catalog using the login dialog provided.");
+				 }
+			 }
+			 if(response.return_.empty())
+			 {
+				 g_log.information()<<"Investigation types is empty"<<std::endl;
+				 return ;
+			 }
+	    	 investTypes.assign(response.return_.begin(),response.return_.end());
+		}
+
+  
+	  /** This method creates table workspace
+		  * @returns the table workspace created
+		 */
+		API::ITableWorkspace_sptr CICatHelper::createTableWorkspace()
+		{
+			//create table workspace
+			API::ITableWorkspace_sptr outputws ;
+			try
+			{
+				outputws=WorkspaceFactory::Instance().createTable("TableWorkspace");
+			}
+			catch(Mantid::Kernel::Exception::NotFoundError& )
+			{
+				throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
+			}
+			catch(std::runtime_error)
+			{
+				throw std::runtime_error("Error when saving  the ICat Search Results data to Workspace");
+			}
+			return outputws;
+		}
+    
+
+    /** 
+    *This method calls ICat api logout and disconnects from ICat DB
+    * @returns zero if successful otherwise error code
+    */
+		int CICatHelper::doLogout()
+		{
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
+							))
+			{
+				
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			ns1__logout request;
+			ns1__logoutResponse response;
+			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
+			*sessionId_sptr=Session::Instance().getSessionId();
+			request.sessionId=sessionId_sptr.get();
+			int ret=icat.logout(&request,&response);
+			if(ret!=0)
+			{				
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			
+			return ret;
+		}
+
+		 /**
+     * This method calls ICat api getmyinvestigations and do returns the investigations of the logged in user
+		 * @param ws_sptr :: shared pointer to table workspace which stores the investigations search result
+		 */
+		void CICatHelper::doMyDataSearch(API::ITableWorkspace_sptr& ws_sptr)
+		{
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
+							))
+			{
+				
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			ns1__getMyInvestigationsIncludes request;
+			ns1__getMyInvestigationsIncludesResponse response;
+			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
+			*sessionId_sptr=Session::Instance().getSessionId();
+			request.sessionId=sessionId_sptr.get();
+			// investigation include
+            boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
+			request.investigationInclude=invstInculde_sptr.get();
+			*request.investigationInclude = ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES;
+
+			int ret=icat.getMyInvestigationsIncludes(&request,&response);
+			if(ret!=0)
+			{				
+         if(isvalidSession())
+				 {					
+					 CErrorHandling::throwErrorMessages(icat);
+				 }
+				 else
+				 {					
+					 throw SessionException("Please login to the information catalog using the login dialog provided.");
+				 }
+			}
+			if(response.return_.empty())
+			{	
+				g_log.information()<<"ICat Mydata search is complete.There are no results to display"<<std::endl;
+				return ;
+			}
+			//save response to a table workspace
+			saveMyInvestigations(response,ws_sptr);
+				
+		}
+
+		/**This method calls ICat api getmyinvestigations and do returns the investigations of the logged in user
+		 * @param response :: reference to response  object 
+		 * @param outputws :: shared pointer to table workspace which stores the investigations search result
+		 */
+		void CICatHelper::saveMyInvestigations( const ns1__getMyInvestigationsIncludesResponse& response,API::ITableWorkspace_sptr& outputws)
+		{
+			outputws->addColumn("long64","InvestigationId");
+			outputws->addColumn("str","RbNumber");
+			outputws->addColumn("str","Title");
+			outputws->addColumn("str","Type");
+			outputws->addColumn("str","Instrument");
+			outputws->addColumn("str","Investigator");
+			outputws->addColumn("str","RunRange");
+			outputws->addColumn("str","Year");
+			outputws->addColumn("str","Abstract");
+			outputws->addColumn("str","Investigators Name ");
+			outputws->addColumn("str","Samples Name");
+
+			saveInvestigations(response.return_,outputws);
+
+		}
+
+
+		/* This method does advanced search and returns investigation data
+		 * @param inputs :: reference to class containing search inputs
+		 * @param outputws :: shared pointer to output workspace
+		 */
+		void CICatHelper::doAdvancedSearch(CSearchParam& inputs,API::ITableWorkspace_sptr &outputws)
+		{
+
+			//ICAt proxy object
+			ICATPortBindingProxy icat;
+			// request object
+			boost::shared_ptr<ns1__searchByAdvanced> req_sptr(new ns1__searchByAdvanced );
+
+			//session id
+			boost::shared_ptr<std::string > sessionId_sptr(new std::string);
+			req_sptr->sessionId=sessionId_sptr.get();
+			//get the sessionid which is cached in session class during login
+			*req_sptr->sessionId=Session::Instance().getSessionId();
+
+			boost::shared_ptr<ns1__advancedSearchDetails>adv_sptr(new ns1__advancedSearchDetails);
+			req_sptr->advancedSearchDetails=adv_sptr.get();
+			//run start
+			boost::shared_ptr<double>runstart_sptr(new double);
+			if(inputs.getRunStart()>0)
+			{
+				req_sptr->advancedSearchDetails->runStart = runstart_sptr.get();
+			   *req_sptr->advancedSearchDetails->runStart = inputs.getRunStart();
+			}
+			//run end
+			boost::shared_ptr<double>runend_sptr(new double);
+			if(inputs.getRunEnd()>0)
+			{
+				req_sptr->advancedSearchDetails->runEnd = runend_sptr.get();
+			    *req_sptr->advancedSearchDetails->runEnd = inputs.getRunEnd();
+			}
+            //start date
+			boost::shared_ptr<time_t> startdate_sptr(new time_t);
+			if(inputs.getStartDate()!=0)
+			{				
+				req_sptr->advancedSearchDetails->dateRangeStart = startdate_sptr.get();
+				*req_sptr->advancedSearchDetails->dateRangeStart = inputs.getStartDate();
+			}
+			//end date
+      boost::shared_ptr<time_t> enddate_sptr(new time_t);
+			if(inputs.getEndDate()!=0)
+			{				
+				req_sptr->advancedSearchDetails->dateRangeEnd =  enddate_sptr.get();
+				*req_sptr->advancedSearchDetails->dateRangeEnd = inputs.getEndDate();
+			}
+
+			req_sptr->advancedSearchDetails->caseSensitive=inputs.getCaseSensitive();
+
+			// investigation include
+      boost::shared_ptr<ns1__investigationInclude>invstInculde_sptr(new ns1__investigationInclude);
+			req_sptr->advancedSearchDetails->investigationInclude = invstInculde_sptr.get();
+			*req_sptr->advancedSearchDetails->investigationInclude = ns1__investigationInclude__INVESTIGATORS_USCORESHIFTS_USCOREAND_USCORESAMPLES;
+
+			//instrument name
+			if(!inputs.getInstrument().empty())
+			{
+				req_sptr->advancedSearchDetails->instruments.push_back(inputs.getInstrument());
+			}
+			// keywords
+			if(!inputs.getKeywords().empty())
+			{
+				req_sptr->advancedSearchDetails->keywords.push_back(inputs.getKeywords());
+			}
+
+			//invetigation name
+			boost::shared_ptr<std::string > investName_sptr(new std::string);
+			if(!inputs.getInvestigationName().empty())
+			{
+				req_sptr->advancedSearchDetails->investigationName = investName_sptr.get();
+				*req_sptr->advancedSearchDetails->investigationName = inputs.getInvestigationName();
+			}
+
+			//invetigation abstarct
+			boost::shared_ptr<std::string > investAbstract_sptr(new std::string);
+			if(!inputs.getInvestigationAbstract().empty())
+			{
+				req_sptr->advancedSearchDetails->investigationAbstract = investAbstract_sptr.get();
+				*req_sptr->advancedSearchDetails->investigationAbstract = inputs.getInvestigationAbstract();
+			}
+			std::string invstType=inputs.getInvestigationType();
+			req_sptr->advancedSearchDetails->investigationType = &invstType;
+			
+
+			//sample name
+			boost::shared_ptr<std::string > sample_sptr(new std::string);
+			if(!inputs.getSampleName().empty())
+			{
+				req_sptr->advancedSearchDetails->sampleName = sample_sptr.get();
+				*req_sptr->advancedSearchDetails->sampleName = inputs.getSampleName();
+			}
+
+			//investigator's surname
+			boost::shared_ptr<std::string > investigator_sptr(new std::string);
+			if(!inputs.getInvestigatorSurName().empty())
+			{
+				req_sptr->advancedSearchDetails->investigators.push_back(inputs.getInvestigatorSurName());
+			}
+
+			//datafile name
+			boost::shared_ptr<std::string > datafilename_sptr(new std::string);
+			if(!inputs.getDatafileName().empty())
+			{
+				req_sptr->advancedSearchDetails->datafileName = datafilename_sptr.get();
+				*req_sptr->advancedSearchDetails->datafileName = inputs.getDatafileName();
+			}
+
+			//rb number 
+			boost::shared_ptr<std::string > RbNumber_sptr(new std::string);
+			if(!inputs.getRbNumber().empty())
+			{
+				req_sptr->advancedSearchDetails->experimentNumber = RbNumber_sptr.get();
+				*req_sptr->advancedSearchDetails->experimentNumber = inputs.getRbNumber();
+			}
+
+
+			//response object
+			ns1__searchByAdvancedResponse response;
+			// do  search
+			int ret_search=doSearch(icat,req_sptr,response);
+			if(ret_search!=0)
+			{
+				//replace with mantid error routine
+				CErrorHandling::throwErrorMessages(icat);
+			}
+			if(response.return_.empty())
+			{	
+				g_log.information()<<"ICat investigations search is complete.There are no results to display"<<std::endl;
+				return ;
+        	}
+			//save response to a table workspace
+			saveSearchRessults(response,outputws);
+	
+		}
+
+	   /**This method saves the date components to C library struct tm
+		 *@param sDate :: string containing the date 
+		 *@return time_t value of date 
+		 */
+		time_t CICatHelper::getTimevalue(const std::string& sDate)
+		{
+
+			if(!sDate.compare(""))
+			{
+				return 0;
+			}
+			struct tm  timeinfo;
+			std::basic_string <char>::size_type index,off=0;
+			int day,month,year;
+
+			//look for the first '/' to extract day part from the date string
+			index=sDate.find('/',off);
+			if(index == std::string::npos)
+			{			
+				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
+			}
+			//get day part of the date
+			try
+			{
+				day=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
+			}
+			catch(boost::bad_lexical_cast&)
+			{
+				throw std::runtime_error("Invalid Date");
+			}
+			timeinfo.tm_mday=day;
+
+			//change the offset to the next position after "/"
+			off=index+1;
+			//look for 2nd '/' to get month part from  the date string
+			index=sDate.find('/',off);
+			if(index == std::string::npos)
+			{			
+				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
+			}
+			//now get the month part
+			try
+			{
+				month=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
+			}
+			catch(boost::bad_lexical_cast&)
+			{
+				throw std::runtime_error("Invalid Date");
+			}
+			timeinfo.tm_mon=month-1;
+
+			//change the offset to the position after "/"
+			off=index+1;
+			//now get the year part from the date string
+			try
+			{
+				year=boost::lexical_cast<int>(sDate.substr(off,4).c_str());
+
+			}
+			catch(boost::bad_lexical_cast&)
+			{
+				throw std::runtime_error("Invalid Date");
+			}
+
+			timeinfo.tm_year=year-1900;
+			timeinfo.tm_min=0;
+			timeinfo.tm_sec=0;
+			timeinfo.tm_hour=0;
+			//timeinfo->tm_isdst=-1;
+			return std::mktime (&timeinfo );
+		}
+		/**This method checks the given session is valid
+		  *@return returns true if the session id is valid,otherwise false;
+		 */
+		bool CICatHelper::isvalidSession()
+		{
+			
+			ICATPortBindingProxy icat;
+			// Define ssl authentication scheme
+			if (soap_ssl_client_context(&icat,
+				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
+				NULL,       /* keyfile: required only when client must authenticate to
+							server (see SSL docs on how to obtain this file) */
+							NULL,       /* password to read the keyfile */
+							NULL,      /* optional cacert file to store trusted certificates */
+							NULL,      /* optional capath to directory with trusted certificates */
+							NULL      /* if randfile!=NULL: use a file with random data to seed randomness */
+							))
+			{
+				
+				CErrorHandling::throwErrorMessages(icat);
+			}
+
+			ns1__isSessionValid request;
+			ns1__isSessionValidResponse response;
+			std::string sessionId=Session::Instance().getSessionId();
+			request.sessionId = &sessionId;
+			
+			return (response.return_? true: false);
+			
+
+		}
+		
+		/**This method uses ICat API login to connect to catalog 
+		  *@param name :: login name of the user
+		  *@param password :: of the user
+		  *@param url :: endpoint url of the catalog
+		*/
+		void CICatHelper::doLogin(const std::string& name,const std::string& password,const std::string & url)
+		{
+			ICATPortBindingProxy icat;
 			// Define ssl authentication scheme
 			if (soap_ssl_client_context(&icat,
 				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
@@ -1260,8 +1260,8 @@ namespace Mantid
 							))
 			{ 
 				CErrorHandling::throwErrorMessages(icat);
-			}
-
+			}
+
 			// Login to icat
 			ns1__login login;
 			ns1__loginResponse loginResponse;
@@ -1269,31 +1269,31 @@ namespace Mantid
 			std::string userName(name);
 			std::string passWord(password);
 			login.username = &userName;
-			login.password = &passWord;
-			
+			login.password = &passWord;
+			
 			std::string session_id;
 
 			int query_id = icat.login(&login, &loginResponse);
 			if( query_id == 0 )
 			{
-				session_id = *(loginResponse.return_);
-				//save session id
-				ICat::Session::Instance().setSessionId(session_id);
-				//save user name
+				session_id = *(loginResponse.return_);
+				//save session id
+				ICat::Session::Instance().setSessionId(session_id);
+				//save user name
 				ICat::Session::Instance().setUserName(userName);
 			}
 			else
 			{ 
 				CErrorHandling::throwErrorMessages(icat);
 				return;
-			}
-			
-		}
-
-		void CICatHelper::getdownloadURL(const long long& fileId,std::string& url)
-		{
-
-			ICATPortBindingProxy icat;
+			}
+			
+		}
+
+		void CICatHelper::getdownloadURL(const long long& fileId,std::string& url)
+		{
+
+			ICATPortBindingProxy icat;
 			// Define ssl authentication scheme
 			if (soap_ssl_client_context(&icat,
 				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
@@ -1306,39 +1306,39 @@ namespace Mantid
 							))
 			{ 
 				CErrorHandling::throwErrorMessages(icat);
-			}
-
-			    ns1__downloadDatafile request;
-
-				boost::shared_ptr<std::string >sessionId_sptr(new std::string);
-				request.sessionId = sessionId_sptr.get();
-				*request.sessionId = Session::Instance().getSessionId();
-
-				boost::shared_ptr<LONG64>fileId_sptr(new LONG64 );
-				request.datafileId=fileId_sptr.get();
-				*request.datafileId= fileId;
-
-				//set request parameters
-				
-				ns1__downloadDatafileResponse response;
-				// get the URL using ICAT API
-				int ret=icat.downloadDatafile(&request,&response);
-				if(ret!=0)
-				{
-					CErrorHandling::throwErrorMessages(icat);
-				}
-				if(!response.URL)
-				{
-					throw std::runtime_error("Empty URL returned from ICat3 Catalog");
-				}
-				url=*response.URL;
-
-		}
-
-		void CICatHelper::getlocationString(const long long& fileid,std::string& filelocation)
-		{
-
-			    ICATPortBindingProxy icat;
+			}
+
+			    ns1__downloadDatafile request;
+
+				boost::shared_ptr<std::string >sessionId_sptr(new std::string);
+				request.sessionId = sessionId_sptr.get();
+				*request.sessionId = Session::Instance().getSessionId();
+
+				boost::shared_ptr<LONG64>fileId_sptr(new LONG64 );
+				request.datafileId=fileId_sptr.get();
+				*request.datafileId= fileId;
+
+				//set request parameters
+				
+				ns1__downloadDatafileResponse response;
+				// get the URL using ICAT API
+				int ret=icat.downloadDatafile(&request,&response);
+				if(ret!=0)
+				{
+					CErrorHandling::throwErrorMessages(icat);
+				}
+				if(!response.URL)
+				{
+					throw std::runtime_error("Empty URL returned from ICat3 Catalog");
+				}
+				url=*response.URL;
+
+		}
+
+		void CICatHelper::getlocationString(const long long& fileid,std::string& filelocation)
+		{
+
+			    ICATPortBindingProxy icat;
 			// Define ssl authentication scheme
 			if (soap_ssl_client_context(&icat,
 				SOAP_SSL_NO_AUTHENTICATION, /* use SOAP_SSL_DEFAULT in production code */
@@ -1351,38 +1351,38 @@ namespace Mantid
 							))
 			   { 
 						CErrorHandling::throwErrorMessages(icat);
-			    }
-
-			    ns1__getDatafile request;
-
-				boost::shared_ptr<std::string >sessionId_sptr(new std::string);
-				request.sessionId=sessionId_sptr.get();
-				*request.sessionId = Session::Instance().getSessionId();
-
-				boost::shared_ptr<LONG64>fileId_sptr(new LONG64 );
-				request.datafileId=fileId_sptr.get();
-				*request.datafileId=fileid;
-					
-				ns1__getDatafileResponse response;
-				int ret=icat.getDatafile(&request,&response);
-				if(ret==0)
-				{
-					if(response.return_->location)
-					{
-						filelocation=*response.return_->location;
-					}
-				}
-			   std::basic_string <char>::iterator iter;
-			   for(iter=filelocation.begin();iter!=filelocation.end();++iter)
-			   {
-				  if((*iter)=='\\')
-				  {
-					(*iter)='/';
-				  }
-			  }
-		}
-
-
-		 		
-	}
-}
+			    }
+
+			    ns1__getDatafile request;
+
+				boost::shared_ptr<std::string >sessionId_sptr(new std::string);
+				request.sessionId=sessionId_sptr.get();
+				*request.sessionId = Session::Instance().getSessionId();
+
+				boost::shared_ptr<LONG64>fileId_sptr(new LONG64 );
+				request.datafileId=fileId_sptr.get();
+				*request.datafileId=fileid;
+					
+				ns1__getDatafileResponse response;
+				int ret=icat.getDatafile(&request,&response);
+				if(ret==0)
+				{
+					if(response.return_->location)
+					{
+						filelocation=*response.return_->location;
+					}
+				}
+			   std::basic_string <char>::iterator iter;
+			   for(iter=filelocation.begin();iter!=filelocation.end();++iter)
+			   {
+				  if((*iter)=='\\')
+				  {
+					(*iter)='/';
+				  }
+			  }
+		}
+
+
+		 		
+	}
+}
diff --git a/Code/Mantid/Framework/ICat/src/ListInstruments.cpp b/Code/Mantid/Framework/ICat/src/ListInstruments.cpp
index 85d53cca2f9b09102a78cedb64780a6c8b7c254e..6dcdfe6ca2cb8b11aa17bc5f320b0903480711ab 100644
--- a/Code/Mantid/Framework/ICat/src/ListInstruments.cpp
+++ b/Code/Mantid/Framework/ICat/src/ListInstruments.cpp
@@ -1,67 +1,67 @@
-#include "MantidICat/ListInstruments.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-#include "MantidKernel/ArrayProperty.h"
-#include "MantidICat/ErrorHandling.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-
-		DECLARE_ALGORITHM(CListInstruments)
-
-		/// Sets documentation strings for this algorithm
-		void CListInstruments::initDocs()
-		{
-		  this->setWikiSummary("Lists the name of instruments from Information catalog. ");
-		  this->setOptionalMessage("Lists the name of instruments from Information catalog.");
-		}
-
-		/// Init method
-		void CListInstruments::init()
-		{
-			declareProperty( new ArrayProperty<std::string>("InstrumentList",std::vector<std::string>(),new NullValidator<std::vector<std::string> >, 
-				Direction::Output),"A list containing instrument names");
-			declareProperty("isValid",true,"Boolean option used to check the validity of login session", Direction::Output);
-		}
-
-		/// exec method
-		void CListInstruments::exec()
-		{			
-			ICatalog_sptr catalog_sptr;
-			try
-			{
-			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-		    std::vector<std::string> intruments;
-			try
-			{
-			catalog_sptr->listInstruments(intruments);
-			}
-			catch(SessionException& e )
-			{			   
-				setProperty("isValid",false);
-        throw std::runtime_error(e.what());
-			}
-			setProperty("InstrumentList",intruments);
-		}
-				
-
-	}
-}
-
+#include "MantidICat/ListInstruments.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+#include "MantidKernel/ArrayProperty.h"
+#include "MantidICat/ErrorHandling.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+
+		DECLARE_ALGORITHM(CListInstruments)
+
+		/// Sets documentation strings for this algorithm
+		void CListInstruments::initDocs()
+		{
+		  this->setWikiSummary("Lists the name of instruments from Information catalog. ");
+		  this->setOptionalMessage("Lists the name of instruments from Information catalog.");
+		}
+
+		/// Init method
+		void CListInstruments::init()
+		{
+			declareProperty( new ArrayProperty<std::string>("InstrumentList",std::vector<std::string>(),new NullValidator<std::vector<std::string> >, 
+				Direction::Output),"A list containing instrument names");
+			declareProperty("isValid",true,"Boolean option used to check the validity of login session", Direction::Output);
+		}
+
+		/// exec method
+		void CListInstruments::exec()
+		{			
+			ICatalog_sptr catalog_sptr;
+			try
+			{
+			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+		    std::vector<std::string> intruments;
+			try
+			{
+			catalog_sptr->listInstruments(intruments);
+			}
+			catch(SessionException& e )
+			{			   
+				setProperty("isValid",false);
+        throw std::runtime_error(e.what());
+			}
+			setProperty("InstrumentList",intruments);
+		}
+				
+
+	}
+}
+
diff --git a/Code/Mantid/Framework/ICat/src/ListInvestigationTypes.cpp b/Code/Mantid/Framework/ICat/src/ListInvestigationTypes.cpp
index 51da8d0e14624469138d8610ad9e1e0bbd7d805f..11d771d388df4bef2fc7cee9e6cb9d05c0f2edfd 100644
--- a/Code/Mantid/Framework/ICat/src/ListInvestigationTypes.cpp
+++ b/Code/Mantid/Framework/ICat/src/ListInvestigationTypes.cpp
@@ -1,62 +1,62 @@
-#include "MantidICat/ListInvestigationTypes.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-#include "MantidKernel/ArrayProperty.h"
-#include "MantidICat/ErrorHandling.h"
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-
-		DECLARE_ALGORITHM(CListInvestigationTypes)
-
-		/// Sets documentation strings for this algorithm
-		void CListInvestigationTypes::initDocs()
-		{
-		  this->setWikiSummary("Lists the name of investigationtypes from the Information catalog. ");
-		  this->setOptionalMessage("Lists the name of investigationtypes from the Information catalog.");
-		}
-
-		/// Init method
-		void CListInvestigationTypes::init()
-		{
-			declareProperty( new ArrayProperty<std::string>("InvestigationTypes",std::vector<std::string>(),new NullValidator<std::vector<std::string> >, 
-				Direction::Output),"List of investigation types obtained from Catalog");
-			declareProperty("isValid",true,"Boolean option used to check the validity of login session", Direction::Output);
-		}
-
-		/// exec method
-		void CListInvestigationTypes::exec()
-		{
-			ICatalog_sptr catalog_sptr;
-			try
-			{
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}	
-			std::vector<std::string> investTypes;
-			try
-			{
-			catalog_sptr->listInvestigationTypes(investTypes);
-			}
-			catch(SessionException& e)
-			{			   
-				setProperty("isValid",false);
-        throw std::runtime_error(e.what());
-			}
-			setProperty("InvestigationTypes",investTypes);
-		}
-		
-	}
-}
+#include "MantidICat/ListInvestigationTypes.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+#include "MantidKernel/ArrayProperty.h"
+#include "MantidICat/ErrorHandling.h"
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+
+		DECLARE_ALGORITHM(CListInvestigationTypes)
+
+		/// Sets documentation strings for this algorithm
+		void CListInvestigationTypes::initDocs()
+		{
+		  this->setWikiSummary("Lists the name of investigationtypes from the Information catalog. ");
+		  this->setOptionalMessage("Lists the name of investigationtypes from the Information catalog.");
+		}
+
+		/// Init method
+		void CListInvestigationTypes::init()
+		{
+			declareProperty( new ArrayProperty<std::string>("InvestigationTypes",std::vector<std::string>(),new NullValidator<std::vector<std::string> >, 
+				Direction::Output),"List of investigation types obtained from Catalog");
+			declareProperty("isValid",true,"Boolean option used to check the validity of login session", Direction::Output);
+		}
+
+		/// exec method
+		void CListInvestigationTypes::exec()
+		{
+			ICatalog_sptr catalog_sptr;
+			try
+			{
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}	
+			std::vector<std::string> investTypes;
+			try
+			{
+			catalog_sptr->listInvestigationTypes(investTypes);
+			}
+			catch(SessionException& e)
+			{			   
+				setProperty("isValid",false);
+        throw std::runtime_error(e.what());
+			}
+			setProperty("InvestigationTypes",investTypes);
+		}
+		
+	}
+}
diff --git a/Code/Mantid/Framework/ICat/src/Login.cpp b/Code/Mantid/Framework/ICat/src/Login.cpp
index 2888f166dcf65a485d4a875dc6c7b387dd39cba4..6e422a03f61938b9fcf4d59614c1df287058d927 100644
--- a/Code/Mantid/Framework/ICat/src/Login.cpp
+++ b/Code/Mantid/Framework/ICat/src/Login.cpp
@@ -1,19 +1,19 @@
-#include "MantidICat/Login.h"
-#include "MantidKernel/MandatoryValidator.h"
-#include "MantidKernel/MaskedProperty.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-
-		DECLARE_ALGORITHM(Login)
+#include "MantidICat/Login.h"
+#include "MantidKernel/MandatoryValidator.h"
+#include "MantidKernel/MaskedProperty.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+
+		DECLARE_ALGORITHM(Login)
 
 /// Sets documentation strings for this algorithm
 void Login::initDocs()
@@ -22,42 +22,42 @@ void Login::initDocs()
   this->setOptionalMessage("Connects to information catalog using user name and password.");
 }
 
-
-		/// Init method to declare algorithm properties
-		void Login::init()
-		{
+
+		/// Init method to declare algorithm properties
+		void Login::init()
+		{
 			declareProperty("Username","", new Kernel::MandatoryValidator<std::string>(),
-				"The name of the logged in user");
-			declareProperty(new MaskedProperty<std::string>("Password","",new Kernel::MandatoryValidator<std::string>()),
-				"The password of the logged in user ");
-
-			//declareProperty("DBServer","","Parameter that will identify the ICat DB server URL");
-		}
-		/// execute the algorithm
-		void Login::exec()
-		{
-			std::string username=getProperty("Username");
-			std::string password=getProperty("Password");
-			ICatalog_sptr catalog_sptr;
-			try
-			{
-			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-			catalog_sptr->login(username,password,"");
-			
-		}
-
-	  
-	}
-}
-
+				"The name of the logged in user");
+			declareProperty(new MaskedProperty<std::string>("Password","",new Kernel::MandatoryValidator<std::string>()),
+				"The password of the logged in user ");
+
+			//declareProperty("DBServer","","Parameter that will identify the ICat DB server URL");
+		}
+		/// execute the algorithm
+		void Login::exec()
+		{
+			std::string username=getProperty("Username");
+			std::string password=getProperty("Password");
+			ICatalog_sptr catalog_sptr;
+			try
+			{
+			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+			catalog_sptr->login(username,password,"");
+			
+		}
+
+	  
+	}
+}
+
diff --git a/Code/Mantid/Framework/ICat/src/Logout.cpp b/Code/Mantid/Framework/ICat/src/Logout.cpp
index 5bc14a9a83ff19cdb06fb2f2b1c9d1f8489b1217..4e24f6906a35f081f7c26c51475f1cfc78c1d913 100644
--- a/Code/Mantid/Framework/ICat/src/Logout.cpp
+++ b/Code/Mantid/Framework/ICat/src/Logout.cpp
@@ -1,16 +1,16 @@
-#include  "MantidICat/Logout.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-		DECLARE_ALGORITHM(CLogout)
+#include  "MantidICat/Logout.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+		DECLARE_ALGORITHM(CLogout)
 
 /// Sets documentation strings for this algorithm
 void CLogout::initDocs()
@@ -19,31 +19,31 @@ void CLogout::initDocs()
   this->setOptionalMessage("Disconnects from information catalog .");
 }
 
-
-		/// Init method to declare algorithm properties
-		void CLogout::init()
-		{			
-		}
-		/// execute the algorithm
-		void CLogout::exec()
-		{
-			ICatalog_sptr catalog_sptr;
-			try
-			{			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-			catalog_sptr->logout();
-	
-		}
-
-	 }
-}
+
+		/// Init method to declare algorithm properties
+		void CLogout::init()
+		{			
+		}
+		/// execute the algorithm
+		void CLogout::exec()
+		{
+			ICatalog_sptr catalog_sptr;
+			try
+			{			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+			catalog_sptr->logout();
+	
+		}
+
+	 }
+}
diff --git a/Code/Mantid/Framework/ICat/src/MyDataSearch.cpp b/Code/Mantid/Framework/ICat/src/MyDataSearch.cpp
index b4bdcfc78cfd921b087570ca3f166bd0fcc1eecf..bca3a9591624ce6702f5256477cc53f62150b33e 100644
--- a/Code/Mantid/Framework/ICat/src/MyDataSearch.cpp
+++ b/Code/Mantid/Framework/ICat/src/MyDataSearch.cpp
@@ -1,67 +1,67 @@
-#include "MantidICat/MyDataSearch.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-#include "MantidICat/ErrorHandling.h"
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-
-		DECLARE_ALGORITHM(CMyDataSearch)
-
-		/// Sets documentation strings for this algorithm
-		void CMyDataSearch::initDocs()
-		{
-		  this->setWikiSummary("This algorithm  loads the logged in users investigations . ");
-		  this->setOptionalMessage("This algorithm  loads the logged in users investigations .");
-		}
-
-		/// Initialisation method.
-		void CMyDataSearch::init()
-		{
+#include "MantidICat/MyDataSearch.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+#include "MantidICat/ErrorHandling.h"
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+
+		DECLARE_ALGORITHM(CMyDataSearch)
+
+		/// Sets documentation strings for this algorithm
+		void CMyDataSearch::initDocs()
+		{
+		  this->setWikiSummary("This algorithm  loads the logged in users investigations . ");
+		  this->setOptionalMessage("This algorithm  loads the logged in users investigations .");
+		}
+
+		/// Initialisation method.
+		void CMyDataSearch::init()
+		{
 			declareProperty(new WorkspaceProperty<API::ITableWorkspace> ("OutputWorkspace", "", Direction::Output),
-                            "The name of the workspace to store the result of MyData search ");
-      declareProperty("isValid",true,"Boolean option used to check the validity of login session", Direction::Output);
-		}
-
-		/// Execution method.
-		void CMyDataSearch::exec()
-		{
-
-						
-			ICatalog_sptr catalog_sptr;
-			try
-			{			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-			
-			API::ITableWorkspace_sptr outputws = WorkspaceFactory::Instance().createTable("TableWorkspace");
-      try
-      {
-			catalog_sptr->myData(outputws);
-      }
-      catch(SessionException& e)
-      {
-        setProperty("isValid",false);
-        throw std::runtime_error(e.what());
-      }
-			setProperty("OutputWorkspace",outputws);
-		
-		}
-		
-	}
-}
+                            "The name of the workspace to store the result of MyData search ");
+      declareProperty("isValid",true,"Boolean option used to check the validity of login session", Direction::Output);
+		}
+
+		/// Execution method.
+		void CMyDataSearch::exec()
+		{
+
+						
+			ICatalog_sptr catalog_sptr;
+			try
+			{			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+			
+			API::ITableWorkspace_sptr outputws = WorkspaceFactory::Instance().createTable("TableWorkspace");
+      try
+      {
+			catalog_sptr->myData(outputws);
+      }
+      catch(SessionException& e)
+      {
+        setProperty("isValid",false);
+        throw std::runtime_error(e.what());
+      }
+			setProperty("OutputWorkspace",outputws);
+		
+		}
+		
+	}
+}
diff --git a/Code/Mantid/Framework/ICat/src/Search.cpp b/Code/Mantid/Framework/ICat/src/Search.cpp
index 2efb87f8e67065cde0b49a7a948877a30185103e..81ec42b2b6c18ba3774803e6d16550507f3fe197 100644
--- a/Code/Mantid/Framework/ICat/src/Search.cpp
+++ b/Code/Mantid/Framework/ICat/src/Search.cpp
@@ -1,170 +1,170 @@
-#include "MantidICat/Search.h"
-#include "MantidKernel/PropertyWithValue.h"
-#include "MantidKernel/BoundedValidator.h"
-#include "MantidAPI/WorkspaceProperty.h"
-#include "MantidKernel/DateValidator.h"
-#include "MantidAPI/CatalogFactory.h"
-#include "MantidKernel/ConfigService.h"
-#include "MantidKernel/FacilityInfo.h"
-#include "MantidAPI/ICatalog.h"
-
-
-#include<limits>
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		using namespace Kernel;
-		using namespace API;
-
-		DECLARE_ALGORITHM(CSearch)
-
-		/// Sets documentation strings for this algorithm
-		void CSearch::initDocs()
-		{
-		  this->setWikiSummary("Searches investigations ");
-		  this->setOptionalMessage("Searches investigations");
-		}
-
-		/// Initialisation method.
-		void CSearch::init()
-		{
-			BoundedValidator<double>* mustBePositive = new BoundedValidator<double>();
-			mustBePositive->setLower(0.0);
-
-
-			
-			declareProperty("StartRun",0.0,mustBePositive,"The start run number for the range of investigations to be searched.");
-			declareProperty("EndRun",0.0,mustBePositive->clone(),"The end run number for the range of investigations to be searched.");
-			declareProperty("Instrument","","The name of the insurument used for investigation search.");
-			declareProperty("StartDate","",new DateValidator(),"The start date for the range of investigations to be searched.The format is DD/MM/YYYY.");
-			declareProperty("EndDate","",new DateValidator(),"The end date for the range of investigations to be searched.The format is DD/MM/YYYY.");
-			declareProperty("Keywords","","An option to search investigations data");
-			declareProperty("Case Sensitive", false, "Boolean option to do case sensitive ICat investigations search.");
-
-			declareProperty("Investigation Name", "", "The name of the investigation to search.");
-			declareProperty("Investigation Type", "", "The type  of the investigation to search.");
-			declareProperty("Investigation Abstract", "", "The abstract of the investigation to search.");
-			declareProperty("Sample Name", "", "The name of the sample used in the investigation to search.");
-			declareProperty("Investigator SurName", "", "The sur name of the investigator associated to the investigation.");
-			declareProperty("DataFile Name","", "The name of the data file to search.");
-
+#include "MantidICat/Search.h"
+#include "MantidKernel/PropertyWithValue.h"
+#include "MantidKernel/BoundedValidator.h"
+#include "MantidAPI/WorkspaceProperty.h"
+#include "MantidKernel/DateValidator.h"
+#include "MantidAPI/CatalogFactory.h"
+#include "MantidKernel/ConfigService.h"
+#include "MantidKernel/FacilityInfo.h"
+#include "MantidAPI/ICatalog.h"
+
+
+#include<limits>
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		using namespace Kernel;
+		using namespace API;
+
+		DECLARE_ALGORITHM(CSearch)
+
+		/// Sets documentation strings for this algorithm
+		void CSearch::initDocs()
+		{
+		  this->setWikiSummary("Searches investigations ");
+		  this->setOptionalMessage("Searches investigations");
+		}
+
+		/// Initialisation method.
+		void CSearch::init()
+		{
+			BoundedValidator<double>* mustBePositive = new BoundedValidator<double>();
+			mustBePositive->setLower(0.0);
+
+
+			
+			declareProperty("StartRun",0.0,mustBePositive,"The start run number for the range of investigations to be searched.");
+			declareProperty("EndRun",0.0,mustBePositive->clone(),"The end run number for the range of investigations to be searched.");
+			declareProperty("Instrument","","The name of the insurument used for investigation search.");
+			declareProperty("StartDate","",new DateValidator(),"The start date for the range of investigations to be searched.The format is DD/MM/YYYY.");
+			declareProperty("EndDate","",new DateValidator(),"The end date for the range of investigations to be searched.The format is DD/MM/YYYY.");
+			declareProperty("Keywords","","An option to search investigations data");
+			declareProperty("Case Sensitive", false, "Boolean option to do case sensitive ICat investigations search.");
+
+			declareProperty("Investigation Name", "", "The name of the investigation to search.");
+			declareProperty("Investigation Type", "", "The type  of the investigation to search.");
+			declareProperty("Investigation Abstract", "", "The abstract of the investigation to search.");
+			declareProperty("Sample Name", "", "The name of the sample used in the investigation to search.");
+			declareProperty("Investigator SurName", "", "The sur name of the investigator associated to the investigation.");
+			declareProperty("DataFile Name","", "The name of the data file to search.");
+
 			declareProperty(new WorkspaceProperty<API::ITableWorkspace> ("OutputWorkspace", "", Direction::Output),
-				"The name of the workspace that will be created to store the ICat investigations search result.");
-			
-		}
-		/// Execution method.
-		void CSearch::exec()
-		{				
-			ICatalog_sptr catalog_sptr;
-			try
-			{			
-			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
-			
-			}
-			catch(Kernel::Exception::NotFoundError&)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
-			} 
-			if(!catalog_sptr)
-			{
-				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
-			}
-			
-			//get the inputs
-			CSearchParam params;
-			getInputProperties(params);
-			//create output workspace
-			ITableWorkspace_sptr ws_sptr = WorkspaceFactory::Instance().createTable("TableWorkspace"); 
-			// search for investigations
-			catalog_sptr->search(params,ws_sptr);
-			//set output workspace
-			setProperty("OutputWorkspace",ws_sptr);
-			
-		}
-				
-		/**This method gets the input properties for the algorithm.
-		  * @param params :: reference to inputs object
-		 */
-		void CSearch::getInputProperties(CSearchParam& params)
-		{
-			double dstartRun=getProperty("StartRun");
-			if(dstartRun<0)
-			{
-				throw std::runtime_error("Invalid Start Run Number.Enter a valid run number to do investigations search");
-			}
-			double dendRun=getProperty("EndRun");
-			if(dendRun<0)
-			{
-				throw std::runtime_error("Invalid End Run Number.Enter a valid run number to do investigations search");
-			}
-			if(dstartRun>dendRun)
-			{
-				throw std::runtime_error("Run end number cannot be lower than run start number");
-			}
-			params.setRunStart(dstartRun);
-			params.setRunEnd(dendRun);
-
-			std::string instrument = getPropertyValue("Instrument");
-			// as ICat API is expecting instrument name in uppercase 
-			std::transform(instrument.begin(),instrument.end(),instrument.begin(),toupper);
-			
-			if(!instrument.empty())
-			{
-				params.setInstrument(instrument);
-			}
-
-			std::string date = getPropertyValue("StartDate");
-			time_t startDate = params.getTimevalue(date);
-			if(startDate==-1)
-			{
-				throw std::runtime_error("Invalid date.Enter a valid date in DD/MM/YYYY format");
-			}
-			date = getPropertyValue("EndDate");
-			time_t endDate = params.getTimevalue(date);
-			if(endDate==-1)
-			{
-				throw std::runtime_error("Invalid date.Enter a valid date in DD/MM/YYYY format");
-			}
-
-			if(startDate>endDate)
-			{
-				throw std::runtime_error("End date cannot be lower than Start date");
-			}
-			
-			params.setStartDate(startDate);
-
-			params.setEndDate(endDate);
-
-			std::string keyWords=getPropertyValue("Keywords");
-			params.setKeywords(keyWords);
-
-			bool bCase=getProperty("Case Sensitive");
-			params.setCaseSensitive(bCase);
-
-			std::string invstName=getPropertyValue("Investigation Name");
-			params.setInvestigationName(invstName);
-
-			std::string invstType=getPropertyValue("Investigation Type");
-			params.setInvestigationType(invstType);
-
-			std::string invstAbstarct=getPropertyValue("Investigation Abstract");
-			params.setInvestigationAbstract(invstAbstarct);
-
-			std::string sampleName=getPropertyValue("Sample Name");
-			params.setSampleName(sampleName);
-
-			std::string invstSurname=getPropertyValue("Investigator SurName");
-			params.setInvestigatorSurName(invstSurname);
-
-			std::string dataFileName=getPropertyValue("DataFile Name");
-			params.setDatafileName(dataFileName);
-
-
-		}
-
-	
-	}
-}
-
+				"The name of the workspace that will be created to store the ICat investigations search result.");
+			
+		}
+		/// Execution method.
+		void CSearch::exec()
+		{				
+			ICatalog_sptr catalog_sptr;
+			try
+			{			
+			 catalog_sptr=CatalogFactory::Instance().create(ConfigService::Instance().Facility().catalogName());
+			
+			}
+			catch(Kernel::Exception::NotFoundError&)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file.");
+			} 
+			if(!catalog_sptr)
+			{
+				throw std::runtime_error("Error when getting the catalog information from the Facilities.xml file");
+			}
+			
+			//get the inputs
+			CSearchParam params;
+			getInputProperties(params);
+			//create output workspace
+			ITableWorkspace_sptr ws_sptr = WorkspaceFactory::Instance().createTable("TableWorkspace"); 
+			// search for investigations
+			catalog_sptr->search(params,ws_sptr);
+			//set output workspace
+			setProperty("OutputWorkspace",ws_sptr);
+			
+		}
+				
+		/**This method gets the input properties for the algorithm.
+		  * @param params :: reference to inputs object
+		 */
+		void CSearch::getInputProperties(CSearchParam& params)
+		{
+			double dstartRun=getProperty("StartRun");
+			if(dstartRun<0)
+			{
+				throw std::runtime_error("Invalid Start Run Number.Enter a valid run number to do investigations search");
+			}
+			double dendRun=getProperty("EndRun");
+			if(dendRun<0)
+			{
+				throw std::runtime_error("Invalid End Run Number.Enter a valid run number to do investigations search");
+			}
+			if(dstartRun>dendRun)
+			{
+				throw std::runtime_error("Run end number cannot be lower than run start number");
+			}
+			params.setRunStart(dstartRun);
+			params.setRunEnd(dendRun);
+
+			std::string instrument = getPropertyValue("Instrument");
+			// as ICat API is expecting instrument name in uppercase 
+			std::transform(instrument.begin(),instrument.end(),instrument.begin(),toupper);
+			
+			if(!instrument.empty())
+			{
+				params.setInstrument(instrument);
+			}
+
+			std::string date = getPropertyValue("StartDate");
+			time_t startDate = params.getTimevalue(date);
+			if(startDate==-1)
+			{
+				throw std::runtime_error("Invalid date.Enter a valid date in DD/MM/YYYY format");
+			}
+			date = getPropertyValue("EndDate");
+			time_t endDate = params.getTimevalue(date);
+			if(endDate==-1)
+			{
+				throw std::runtime_error("Invalid date.Enter a valid date in DD/MM/YYYY format");
+			}
+
+			if(startDate>endDate)
+			{
+				throw std::runtime_error("End date cannot be lower than Start date");
+			}
+			
+			params.setStartDate(startDate);
+
+			params.setEndDate(endDate);
+
+			std::string keyWords=getPropertyValue("Keywords");
+			params.setKeywords(keyWords);
+
+			bool bCase=getProperty("Case Sensitive");
+			params.setCaseSensitive(bCase);
+
+			std::string invstName=getPropertyValue("Investigation Name");
+			params.setInvestigationName(invstName);
+
+			std::string invstType=getPropertyValue("Investigation Type");
+			params.setInvestigationType(invstType);
+
+			std::string invstAbstarct=getPropertyValue("Investigation Abstract");
+			params.setInvestigationAbstract(invstAbstarct);
+
+			std::string sampleName=getPropertyValue("Sample Name");
+			params.setSampleName(sampleName);
+
+			std::string invstSurname=getPropertyValue("Investigator SurName");
+			params.setInvestigatorSurName(invstSurname);
+
+			std::string dataFileName=getPropertyValue("DataFile Name");
+			params.setDatafileName(dataFileName);
+
+
+		}
+
+	
+	}
+}
+
diff --git a/Code/Mantid/Framework/ICat/src/SearchParam.cpp b/Code/Mantid/Framework/ICat/src/SearchParam.cpp
index 2ce8d155f0e0085f37da7bd29ae841c46e8bdb5c..d88791e51c54812328d5cb56c8d00c6e576a0b12 100644
--- a/Code/Mantid/Framework/ICat/src/SearchParam.cpp
+++ b/Code/Mantid/Framework/ICat/src/SearchParam.cpp
@@ -1,218 +1,218 @@
-#include "MantidICat/SearchParam.h"
+#include "MantidICat/SearchParam.h"
 #include <boost/lexical_cast.hpp> 
-
-namespace Mantid
-{
-	namespace ICat
-	{
-		/// constructor
-			CSearchParam::CSearchParam():m_startRun(0),m_endRun(0),m_caseSensitive(false),
-				m_startDate(0),m_endDate(0)
-			{}
-			/// Destructor
-			CSearchParam::~CSearchParam(){}
-			/** This method  sets start date
-        *  @param startRun start run number
-			 */
-			void CSearchParam::setRunStart(const double& startRun){m_startRun=startRun;}
-			/** This method  sets end date
-        *  @param endRun  end run number
-			 */
-			void CSearchParam::setRunEnd(const double& endRun){m_endRun=endRun;}
-			/** This method  sets isntrument name
-           	 *  @param instrName  name of the instrument
-			 */
-			void CSearchParam::setInstrument(const std::string& instrName){m_instrName=instrName;}
-			/** This method  sets the start date
-       *  @param startDate  start date for search
-			 */
-			void CSearchParam::setStartDate(const time_t& startDate){m_startDate=startDate;}
-			/** This method  sets the end date
-        *  @param endDate end date for search
-			 */
-			void CSearchParam::setEndDate(const time_t& endDate){m_endDate=endDate;}
-			/** This method  sets the CaseSensitive
-        *  @param bCase  flag to do case sensitive  search
-			 */
-			void CSearchParam::setCaseSensitive(bool bCase){m_caseSensitive=bCase;}
-			
-			/** This method  sets the InvestigationInclude
-        *  @param keywords keywords used for search
-			 */
-			void CSearchParam::setKeywords(const std::string& keywords){m_keywords=keywords;}
-
-			/** This method  sets investigationName used for searching
-        *  @param instName  name of the investigation
-			 */
-			void  CSearchParam::setInvestigationName(const std::string& instName){ m_investigationName = instName;}
-
-			/** This method  sets investigationAbstract used for searching
-        *  @param invstabstract  abstract of the investigation
-			 */
-			 void CSearchParam::setInvestigationAbstract(const std::string& invstabstract){ m_investigationAbstract=invstabstract;}
-
-			/** This method  sets sample used for searching
-        *  @param sampleName name of the sample
-			 */
-			void CSearchParam::setSampleName(const std::string& sampleName){ m_sampleName = sampleName;}
-
-			/** This method  sets Investigator surname
-        *@param investigatorName  surname of the investigator
-			 */
-			void  CSearchParam::setInvestigatorSurName(const std::string& investigatorName){m_investigatorSurname = investigatorName;}
-
-			/** This method  sets Rb Number
-        *@param RbNumber rutherford board number
-			 */
-			 void CSearchParam::setRbNumber(const std::string& RbNumber){m_RbNumber = RbNumber;}
-
-			/** This method  sets Investigation Type
-        * @param invstType type of investigation
-			 */
-			 void CSearchParam::setInvestigationType(const std::string& invstType){m_investigationType = invstType;}
-
-			/** This method  sets datafileName
-        *@param datafileName name of the file
-			 */
-			void CSearchParam::setDatafileName(const std::string& datafileName ){ m_datafileName =datafileName;}
-
-			/** This method  returns the start run number
-        *  @returns  run start number
-			 */
-			const double& CSearchParam::getRunStart()const {return m_startRun; }
-			/** This method  returns the end run number
-        *  @returns  run end number
-			 */
-			const double& CSearchParam::getRunEnd() const {return m_endRun;}
-			/** This method  returns the instrument name
-           	 *  @returns  instrument name
-			 */
-			const std::string& CSearchParam::getInstrument() const{return m_instrName;}
-			/**This method  returns the start date
-        * @returns  start date
-			 */
-           
-			const time_t& CSearchParam::getStartDate()const{return m_startDate;}
-			/** This method  returns the end date
-           	 *  @returns end date for investigations serch
-			 */
-			const time_t& CSearchParam::getEndDate()const{return m_endDate;}
-
-			/** This method  returns case sensitive flag
-        *  @returns  case sensitive flag
-			 */
-			bool CSearchParam::getCaseSensitive()const{return m_caseSensitive;}
-			/** This method  returns the enum for data search in icat db
-        *  @returns  investigation include
-			 */
-			
-			const std::string& CSearchParam::getKeywords()const{return m_keywords;}
-
-			/** This method  returns investigationName used for searching
-           	 *  @ returns investigation name
-			 */
-			const std::string& CSearchParam::getInvestigationName()const{return m_investigationName;}
-
-			/** This method  returns investigationAbstract used for searching
-        *  @returns investigation abstract
-			 */
-			const std::string&  CSearchParam::getInvestigationAbstract()const{return m_investigationAbstract;}
-
-			/** This method  returns sample used for searching
-        *  @returns samplename
-			 */
-			const std::string& CSearchParam::getSampleName()const{return m_sampleName;}
-
-			/** This method  returns Investigator surname
-        *@returns surname of the investigator
-			 */
-			const std::string& CSearchParam::getInvestigatorSurName()const{return m_investigatorSurname;}
-
-			/** This method  returns Rb Number
-        * @returns Rb number
-			 */
-			const std::string& CSearchParam::getRbNumber()const{return m_RbNumber;}
-
-			/** This method  returns Investigation Type
-        @ returns type of the investigation
-			 */
-			const std::string& CSearchParam::getInvestigationType()const{return m_investigationType;}
-
-			/** This method  returns datafileName
-        * @returns name of the data file
-			 */
-			const std::string& CSearchParam::getDatafileName()const{return m_datafileName;}
-
-		/**This method saves the date components to C library struct tm
-		 *@param sDate :: string containing the date 
-		 *@return time_t value of date 
-		 */
-		time_t CSearchParam::getTimevalue(const std::string& sDate)
-		{
-
-			if(!sDate.compare(""))
-			{
-				return 0;
-			}
-			struct tm  timeinfo;
-			std::basic_string <char>::size_type index,off=0;
-			int day,month,year;
-
-			//look for the first '/' to extract day part from the date string
-			index=sDate.find('/',off);
-			if(index == std::string::npos)
-			{			
-				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
-			}
-			//get day part of the date
-			try
-			{
-				day=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
-			}
-			catch(boost::bad_lexical_cast&)
-			{
-				throw std::runtime_error("Invalid Date");
-			}
-			timeinfo.tm_mday=day;
-
-			//change the offset to the next position after "/"
-			off=index+1;
-			//look for 2nd '/' to get month part from  the date string
-			index=sDate.find('/',off);
-			if(index == std::string::npos)
-			{			
-				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
-			}
-			//now get the month part
-			try
-			{
-				month=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
-			}
-			catch(boost::bad_lexical_cast&)
-			{
-				throw std::runtime_error("Invalid Date");
-			}
-			timeinfo.tm_mon=month-1;
-
-			//change the offset to the position after "/"
-			off=index+1;
-			//now get the year part from the date string
-			try
-			{
-				year=boost::lexical_cast<int>(sDate.substr(off,4).c_str());
-
-			}
-			catch(boost::bad_lexical_cast&)
-			{
-				throw std::runtime_error("Invalid Date");
-			}
-
-			timeinfo.tm_year=year-1900;
-			timeinfo.tm_min=0;
-			timeinfo.tm_sec=0;
-			timeinfo.tm_hour=0;
-			return std::mktime (&timeinfo );
-		}
-
-	}
-}
+
+namespace Mantid
+{
+	namespace ICat
+	{
+		/// constructor
+			CSearchParam::CSearchParam():m_startRun(0),m_endRun(0),m_caseSensitive(false),
+				m_startDate(0),m_endDate(0)
+			{}
+			/// Destructor
+			CSearchParam::~CSearchParam(){}
+			/** This method  sets start date
+        *  @param startRun start run number
+			 */
+			void CSearchParam::setRunStart(const double& startRun){m_startRun=startRun;}
+			/** This method  sets end date
+        *  @param endRun  end run number
+			 */
+			void CSearchParam::setRunEnd(const double& endRun){m_endRun=endRun;}
+			/** This method  sets isntrument name
+           	 *  @param instrName  name of the instrument
+			 */
+			void CSearchParam::setInstrument(const std::string& instrName){m_instrName=instrName;}
+			/** This method  sets the start date
+       *  @param startDate  start date for search
+			 */
+			void CSearchParam::setStartDate(const time_t& startDate){m_startDate=startDate;}
+			/** This method  sets the end date
+        *  @param endDate end date for search
+			 */
+			void CSearchParam::setEndDate(const time_t& endDate){m_endDate=endDate;}
+			/** This method  sets the CaseSensitive
+        *  @param bCase  flag to do case sensitive  search
+			 */
+			void CSearchParam::setCaseSensitive(bool bCase){m_caseSensitive=bCase;}
+			
+			/** This method  sets the InvestigationInclude
+        *  @param keywords keywords used for search
+			 */
+			void CSearchParam::setKeywords(const std::string& keywords){m_keywords=keywords;}
+
+			/** This method  sets investigationName used for searching
+        *  @param instName  name of the investigation
+			 */
+			void  CSearchParam::setInvestigationName(const std::string& instName){ m_investigationName = instName;}
+
+			/** This method  sets investigationAbstract used for searching
+        *  @param invstabstract  abstract of the investigation
+			 */
+			 void CSearchParam::setInvestigationAbstract(const std::string& invstabstract){ m_investigationAbstract=invstabstract;}
+
+			/** This method  sets sample used for searching
+        *  @param sampleName name of the sample
+			 */
+			void CSearchParam::setSampleName(const std::string& sampleName){ m_sampleName = sampleName;}
+
+			/** This method  sets Investigator surname
+        *@param investigatorName  surname of the investigator
+			 */
+			void  CSearchParam::setInvestigatorSurName(const std::string& investigatorName){m_investigatorSurname = investigatorName;}
+
+			/** This method  sets Rb Number
+        *@param RbNumber rutherford board number
+			 */
+			 void CSearchParam::setRbNumber(const std::string& RbNumber){m_RbNumber = RbNumber;}
+
+			/** This method  sets Investigation Type
+        * @param invstType type of investigation
+			 */
+			 void CSearchParam::setInvestigationType(const std::string& invstType){m_investigationType = invstType;}
+
+			/** This method  sets datafileName
+        *@param datafileName name of the file
+			 */
+			void CSearchParam::setDatafileName(const std::string& datafileName ){ m_datafileName =datafileName;}
+
+			/** This method  returns the start run number
+        *  @returns  run start number
+			 */
+			const double& CSearchParam::getRunStart()const {return m_startRun; }
+			/** This method  returns the end run number
+        *  @returns  run end number
+			 */
+			const double& CSearchParam::getRunEnd() const {return m_endRun;}
+			/** This method  returns the instrument name
+           	 *  @returns  instrument name
+			 */
+			const std::string& CSearchParam::getInstrument() const{return m_instrName;}
+			/**This method  returns the start date
+        * @returns  start date
+			 */
+           
+			const time_t& CSearchParam::getStartDate()const{return m_startDate;}
+			/** This method  returns the end date
+           	 *  @returns end date for investigations serch
+			 */
+			const time_t& CSearchParam::getEndDate()const{return m_endDate;}
+
+			/** This method  returns case sensitive flag
+        *  @returns  case sensitive flag
+			 */
+			bool CSearchParam::getCaseSensitive()const{return m_caseSensitive;}
+			/** This method  returns the enum for data search in icat db
+        *  @returns  investigation include
+			 */
+			
+			const std::string& CSearchParam::getKeywords()const{return m_keywords;}
+
+			/** This method  returns investigationName used for searching
+           	 *  @ returns investigation name
+			 */
+			const std::string& CSearchParam::getInvestigationName()const{return m_investigationName;}
+
+			/** This method  returns investigationAbstract used for searching
+        *  @returns investigation abstract
+			 */
+			const std::string&  CSearchParam::getInvestigationAbstract()const{return m_investigationAbstract;}
+
+			/** This method  returns sample used for searching
+        *  @returns samplename
+			 */
+			const std::string& CSearchParam::getSampleName()const{return m_sampleName;}
+
+			/** This method  returns Investigator surname
+        *@returns surname of the investigator
+			 */
+			const std::string& CSearchParam::getInvestigatorSurName()const{return m_investigatorSurname;}
+
+			/** This method  returns Rb Number
+        * @returns Rb number
+			 */
+			const std::string& CSearchParam::getRbNumber()const{return m_RbNumber;}
+
+			/** This method  returns Investigation Type
+        @ returns type of the investigation
+			 */
+			const std::string& CSearchParam::getInvestigationType()const{return m_investigationType;}
+
+			/** This method  returns datafileName
+        * @returns name of the data file
+			 */
+			const std::string& CSearchParam::getDatafileName()const{return m_datafileName;}
+
+		/**This method saves the date components to C library struct tm
+		 *@param sDate :: string containing the date 
+		 *@return time_t value of date 
+		 */
+		time_t CSearchParam::getTimevalue(const std::string& sDate)
+		{
+
+			if(!sDate.compare(""))
+			{
+				return 0;
+			}
+			struct tm  timeinfo;
+			std::basic_string <char>::size_type index,off=0;
+			int day,month,year;
+
+			//look for the first '/' to extract day part from the date string
+			index=sDate.find('/',off);
+			if(index == std::string::npos)
+			{			
+				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
+			}
+			//get day part of the date
+			try
+			{
+				day=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
+			}
+			catch(boost::bad_lexical_cast&)
+			{
+				throw std::runtime_error("Invalid Date");
+			}
+			timeinfo.tm_mday=day;
+
+			//change the offset to the next position after "/"
+			off=index+1;
+			//look for 2nd '/' to get month part from  the date string
+			index=sDate.find('/',off);
+			if(index == std::string::npos)
+			{			
+				throw std::runtime_error("Invalid Date:date format must be DD/MM/YYYY");
+			}
+			//now get the month part
+			try
+			{
+				month=boost::lexical_cast<int>(sDate.substr(off,index-off).c_str());
+			}
+			catch(boost::bad_lexical_cast&)
+			{
+				throw std::runtime_error("Invalid Date");
+			}
+			timeinfo.tm_mon=month-1;
+
+			//change the offset to the position after "/"
+			off=index+1;
+			//now get the year part from the date string
+			try
+			{
+				year=boost::lexical_cast<int>(sDate.substr(off,4).c_str());
+
+			}
+			catch(boost::bad_lexical_cast&)
+			{
+				throw std::runtime_error("Invalid Date");
+			}
+
+			timeinfo.tm_year=year-1900;
+			timeinfo.tm_min=0;
+			timeinfo.tm_sec=0;
+			timeinfo.tm_hour=0;
+			return std::mktime (&timeinfo );
+		}
+
+	}
+}
diff --git a/Code/Mantid/Framework/ICat/test/DownloadDataFileTest.h b/Code/Mantid/Framework/ICat/test/DownloadDataFileTest.h
index d0f3031e7103c0eb61c86abf4c6ca36c26181b93..bc7da4554de5d4d87e60782196dc436684595119 100644
--- a/Code/Mantid/Framework/ICat/test/DownloadDataFileTest.h
+++ b/Code/Mantid/Framework/ICat/test/DownloadDataFileTest.h
@@ -1,12 +1,12 @@
-#ifndef DOWNLOADDATAFILE_H_
-#define DOWNLOADDATAFILE_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/DownloadDataFile.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
-#include "MantidICat/GetDataFiles.h"
-#include "MantidICat/Search.h"
+#ifndef DOWNLOADDATAFILE_H_
+#define DOWNLOADDATAFILE_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/DownloadDataFile.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
+#include "MantidICat/GetDataFiles.h"
+#include "MantidICat/Search.h"
 #include "MantidDataObjects/WorkspaceSingleValue.h"
 #include "MantidKernel/ConfigService.h"
 #include "MantidAPI/AnalysisDataService.h"
@@ -14,216 +14,216 @@
 #include <fstream>
 
 using namespace Mantid;
-using namespace Mantid::ICat;
-using namespace Mantid::API;
-class DownloadDataFileTest: public CxxTest::TestSuite
-{
-public:
-	void testInit()
-	{
-		TS_ASSERT_THROWS_NOTHING( downloadobj.initialize());
-		TS_ASSERT( downloadobj.isInitialized() );
-	}
-	void xtestDownLoadDataFile()
-	{		
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-	
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-				
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		searchobj.setPropertyValue("StartRun", "100.0");
-		searchobj.setPropertyValue("EndRun", "102.0");
-		searchobj.setPropertyValue("Instrument","HET");
-		searchobj.setPropertyValue("OutputWorkspace","investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-		if ( !invstObj.isInitialized() ) invstObj.initialize();
-		invstObj.setPropertyValue("InvestigationId","13539191");
-		invstObj.setPropertyValue("OutputWorkspace","investigation");//selected invesigation
-		//		
-		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
-		TS_ASSERT( invstObj.isExecuted() );
-		
-		clock_t start=clock();
-		if ( !downloadobj.isInitialized() ) downloadobj.initialize();
-
-		downloadobj.setPropertyValue("Filenames","HET00097.RAW");
-		
-		TS_ASSERT_THROWS_NOTHING(downloadobj.execute());
-
-		clock_t end=clock();
-		float diff = float(end - start)/CLOCKS_PER_SEC;
-
-		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
-		filepath += "download_time.txt";
-
-		std::ofstream ofs(filepath.c_str(), std::ios_base::out );
-		if ( ofs.rdstate() & std::ios::failbit )
-		{
-			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
-		}
-		ofs<<"Time taken to  download files with investigation id 12576918 is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
-		
-						
-		TS_ASSERT( downloadobj.isExecuted() );
-		//delete the file after execution
-		//remove("HET00097.RAW");
-
-		AnalysisDataService::Instance().remove("investigations");
-		AnalysisDataService::Instance().remove("investigation");
-
-	}
-
-	void xtestDownLoadNexusFile()
-	{				
-		Session::Instance();
-
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		// Now set it...
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-			
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-				
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		searchobj.setPropertyValue("StartRun", "17440.0");
-		searchobj.setPropertyValue("EndRun", "17556.0");
-		searchobj.setPropertyValue("Instrument","EMU");
-		searchobj.setPropertyValue("OutputWorkspace","investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-		if ( !invstObj.isInitialized() ) invstObj.initialize();
-	
-		invstObj.setPropertyValue("InvestigationId", "24070400");
-
-		invstObj.setPropertyValue("OutputWorkspace","investigation");
-		//		
-		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
-		TS_ASSERT( invstObj.isExecuted() );
-		
-		clock_t start=clock();
-		if ( !downloadobj.isInitialized() ) downloadobj.initialize();
-
-		downloadobj.setPropertyValue("Filenames","EMU00017452.nxs");
-		TS_ASSERT_THROWS_NOTHING(downloadobj.execute());
-
-		clock_t end=clock();
-		float diff = float(end -start)/CLOCKS_PER_SEC;
-		
-		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
+using namespace Mantid::ICat;
+using namespace Mantid::API;
+class DownloadDataFileTest: public CxxTest::TestSuite
+{
+public:
+	void testInit()
+	{
+		TS_ASSERT_THROWS_NOTHING( downloadobj.initialize());
+		TS_ASSERT( downloadobj.isInitialized() );
+	}
+	void xtestDownLoadDataFile()
+	{		
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+	
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+				
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		searchobj.setPropertyValue("StartRun", "100.0");
+		searchobj.setPropertyValue("EndRun", "102.0");
+		searchobj.setPropertyValue("Instrument","HET");
+		searchobj.setPropertyValue("OutputWorkspace","investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+		if ( !invstObj.isInitialized() ) invstObj.initialize();
+		invstObj.setPropertyValue("InvestigationId","13539191");
+		invstObj.setPropertyValue("OutputWorkspace","investigation");//selected invesigation
+		//		
+		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
+		TS_ASSERT( invstObj.isExecuted() );
+		
+		clock_t start=clock();
+		if ( !downloadobj.isInitialized() ) downloadobj.initialize();
+
+		downloadobj.setPropertyValue("Filenames","HET00097.RAW");
+		
+		TS_ASSERT_THROWS_NOTHING(downloadobj.execute());
+
+		clock_t end=clock();
+		float diff = float(end - start)/CLOCKS_PER_SEC;
+
+		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
+		filepath += "download_time.txt";
+
+		std::ofstream ofs(filepath.c_str(), std::ios_base::out );
+		if ( ofs.rdstate() & std::ios::failbit )
+		{
+			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
+		}
+		ofs<<"Time taken to  download files with investigation id 12576918 is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
+		
+						
+		TS_ASSERT( downloadobj.isExecuted() );
+		//delete the file after execution
+		//remove("HET00097.RAW");
+
+		AnalysisDataService::Instance().remove("investigations");
+		AnalysisDataService::Instance().remove("investigation");
+
+	}
+
+	void xtestDownLoadNexusFile()
+	{				
+		Session::Instance();
+
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		// Now set it...
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+			
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+				
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		searchobj.setPropertyValue("StartRun", "17440.0");
+		searchobj.setPropertyValue("EndRun", "17556.0");
+		searchobj.setPropertyValue("Instrument","EMU");
+		searchobj.setPropertyValue("OutputWorkspace","investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+		if ( !invstObj.isInitialized() ) invstObj.initialize();
+	
+		invstObj.setPropertyValue("InvestigationId", "24070400");
+
+		invstObj.setPropertyValue("OutputWorkspace","investigation");
+		//		
+		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
+		TS_ASSERT( invstObj.isExecuted() );
+		
+		clock_t start=clock();
+		if ( !downloadobj.isInitialized() ) downloadobj.initialize();
+
+		downloadobj.setPropertyValue("Filenames","EMU00017452.nxs");
+		TS_ASSERT_THROWS_NOTHING(downloadobj.execute());
+
+		clock_t end=clock();
+		float diff = float(end -start)/CLOCKS_PER_SEC;
+		
+		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
 		filepath += "download_time.txt";
-		
-		std::ofstream ofs(filepath.c_str(), std::ios_base::out | std::ios_base::app);
-		if ( ofs.rdstate() & std::ios::failbit )
-		{
-			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
-		}
-		ofs<<"Time taken to download files with investigation id 24070400 is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
-		//ofs.close();
-		
-		TS_ASSERT( downloadobj.isExecuted() );
-		//delete the file after execution
-		//remove("EMU00017452.nxs");
-		AnalysisDataService::Instance().remove("investigations");
-		AnalysisDataService::Instance().remove("investigation");
-	}
-
-	void xtestDownLoadDataFile_Merlin()
-	{
-		
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-	
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-				
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		searchobj.setPropertyValue("StartRun", "600.0");
-		searchobj.setPropertyValue("EndRun", "601.0");
-		searchobj.setPropertyValue("Instrument","MERLIN");
-		searchobj.setPropertyValue("OutputWorkspace","investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-		if ( !invstObj.isInitialized() ) invstObj.initialize();
-		invstObj.setPropertyValue("InvestigationId","24022007");
-		invstObj.setPropertyValue("OutputWorkspace","investigation");//selected invesigation
-		//		
-		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
-		TS_ASSERT( invstObj.isExecuted() );
-		
-		clock_t start=clock();
-		if ( !downloadobj.isInitialized() ) downloadobj.initialize();
-
-		downloadobj.setPropertyValue("Filenames","MER00599.raw");
-			
-		TS_ASSERT_THROWS_NOTHING(downloadobj.execute());
-
-		clock_t end=clock();
-		float diff = float(end - start)/CLOCKS_PER_SEC;
-
-		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
-		filepath += "download_time.txt";
-
-		std::ofstream ofs(filepath.c_str(), std::ios_base::out | std::ios_base::app);
-		if ( ofs.rdstate() & std::ios::failbit )
-		{
-			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
-		}
-		ofs<<"Time taken to download files with investigation id 24022007 is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
-		
-						
-		TS_ASSERT( downloadobj.isExecuted() );
-		AnalysisDataService::Instance().remove("investigations");
-		AnalysisDataService::Instance().remove("investigation");
-
-	}
-	void testDownloaddataFile1()
-	{	
-		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
-		filepath += "download_time.txt";
-		std::ofstream ofs(filepath.c_str(), std::ios_base::out | std::ios_base::app);
-		if ( ofs.rdstate() & std::ios::failbit )
-		{
-			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
-		}
-
-		CDownloadDataFile downloadobj1;
-		clock_t start=clock();
-		downloadobj1.testDownload("http://download.mantidproject.org/videos/Installation.htm","test.htm");
-		clock_t end=clock();
-		float diff = float(end -start)/CLOCKS_PER_SEC;
-
-		ofs<<"Time taken for http download from mantidwebserver over internet for a small file of size 1KB is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
-
-        //delete the file after execution
-		remove("test.htm");
-
-	}
-private:
-	    CSearch searchobj;
-	    CGetDataFiles invstObj;
-		CDownloadDataFile downloadobj;
-		Login loginobj;
-};
-#endif
+		
+		std::ofstream ofs(filepath.c_str(), std::ios_base::out | std::ios_base::app);
+		if ( ofs.rdstate() & std::ios::failbit )
+		{
+			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
+		}
+		ofs<<"Time taken to download files with investigation id 24070400 is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
+		//ofs.close();
+		
+		TS_ASSERT( downloadobj.isExecuted() );
+		//delete the file after execution
+		//remove("EMU00017452.nxs");
+		AnalysisDataService::Instance().remove("investigations");
+		AnalysisDataService::Instance().remove("investigation");
+	}
+
+	void xtestDownLoadDataFile_Merlin()
+	{
+		
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+	
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+				
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		searchobj.setPropertyValue("StartRun", "600.0");
+		searchobj.setPropertyValue("EndRun", "601.0");
+		searchobj.setPropertyValue("Instrument","MERLIN");
+		searchobj.setPropertyValue("OutputWorkspace","investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+		if ( !invstObj.isInitialized() ) invstObj.initialize();
+		invstObj.setPropertyValue("InvestigationId","24022007");
+		invstObj.setPropertyValue("OutputWorkspace","investigation");//selected invesigation
+		//		
+		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
+		TS_ASSERT( invstObj.isExecuted() );
+		
+		clock_t start=clock();
+		if ( !downloadobj.isInitialized() ) downloadobj.initialize();
+
+		downloadobj.setPropertyValue("Filenames","MER00599.raw");
+			
+		TS_ASSERT_THROWS_NOTHING(downloadobj.execute());
+
+		clock_t end=clock();
+		float diff = float(end - start)/CLOCKS_PER_SEC;
+
+		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
+		filepath += "download_time.txt";
+
+		std::ofstream ofs(filepath.c_str(), std::ios_base::out | std::ios_base::app);
+		if ( ofs.rdstate() & std::ios::failbit )
+		{
+			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
+		}
+		ofs<<"Time taken to download files with investigation id 24022007 is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
+		
+						
+		TS_ASSERT( downloadobj.isExecuted() );
+		AnalysisDataService::Instance().remove("investigations");
+		AnalysisDataService::Instance().remove("investigation");
+
+	}
+	void testDownloaddataFile1()
+	{	
+		std::string filepath=Kernel::ConfigService::Instance().getString("defaultsave.directory");
+		filepath += "download_time.txt";
+		std::ofstream ofs(filepath.c_str(), std::ios_base::out | std::ios_base::app);
+		if ( ofs.rdstate() & std::ios::failbit )
+		{
+			throw Mantid::Kernel::Exception::FileError("Error on creating File","download_time.txt");
+		}
+
+		CDownloadDataFile downloadobj1;
+		clock_t start=clock();
+		downloadobj1.testDownload("http://download.mantidproject.org/videos/Installation.htm","test.htm");
+		clock_t end=clock();
+		float diff = float(end -start)/CLOCKS_PER_SEC;
+
+		ofs<<"Time taken for http download from mantidwebserver over internet for a small file of size 1KB is "<<std::fixed << std::setprecision(2) << diff << " seconds" << std::endl;
+
+        //delete the file after execution
+		remove("test.htm");
+
+	}
+private:
+	    CSearch searchobj;
+	    CGetDataFiles invstObj;
+		CDownloadDataFile downloadobj;
+		Login loginobj;
+};
+#endif
diff --git a/Code/Mantid/Framework/ICat/test/GetDataFilesTest.h b/Code/Mantid/Framework/ICat/test/GetDataFilesTest.h
index 885927f609750e951d53f0f8b893dea7c8a94dc2..7c69be432572459e3fdeb53c61b7e3b90427a1b7 100644
--- a/Code/Mantid/Framework/ICat/test/GetDataFilesTest.h
+++ b/Code/Mantid/Framework/ICat/test/GetDataFilesTest.h
@@ -1,60 +1,60 @@
-#ifndef GETINVESTIGATION_H_
-#define GETINVESTIGATION_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/GetDataFiles.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
-#include "MantidICat/Search.h"
-#include "MantidDataObjects/WorkspaceSingleValue.h"
-
+#ifndef GETINVESTIGATION_H_
+#define GETINVESTIGATION_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/GetDataFiles.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
+#include "MantidICat/Search.h"
+#include "MantidDataObjects/WorkspaceSingleValue.h"
+
 using namespace Mantid;
-using namespace Mantid::ICat;
-
-class GetDataFilesTest: public CxxTest::TestSuite
-{
-public:
-	void testInit()
-	{
-		TS_ASSERT_THROWS_NOTHING( invstObj.initialize());
-		TS_ASSERT( invstObj.isInitialized() );
-	}
-
-	void testgetDataFiles()
-	{	
-		/*std::string str;
-		std::getline(std::cin,str);*/
-	
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-	
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		searchobj.setPropertyValue("StartRun", "100.0");
-		searchobj.setPropertyValue("EndRun", "102.0");
-		searchobj.setPropertyValue("Instrument","LOQ");
-		searchobj.setPropertyValue("OutputWorkspace","investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-		if (!invstObj.isInitialized() ) invstObj.initialize();
-		invstObj.setPropertyValue("InvestigationId","12576918");
-		//invstObj.setPropertyValue("InputWorkspace", "investigations");//records of investigations
-		invstObj.setPropertyValue("OutputWorkspace","investigation");//selected invesigation data files
-		//		
-		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
-		TS_ASSERT( invstObj.isExecuted() );
-	}
-private:
-	Login loginobj;
-	CSearch searchobj;
-	CGetDataFiles invstObj;
-};
+using namespace Mantid::ICat;
+
+class GetDataFilesTest: public CxxTest::TestSuite
+{
+public:
+	void testInit()
+	{
+		TS_ASSERT_THROWS_NOTHING( invstObj.initialize());
+		TS_ASSERT( invstObj.isInitialized() );
+	}
+
+	void testgetDataFiles()
+	{	
+		/*std::string str;
+		std::getline(std::cin,str);*/
+	
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+	
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		searchobj.setPropertyValue("StartRun", "100.0");
+		searchobj.setPropertyValue("EndRun", "102.0");
+		searchobj.setPropertyValue("Instrument","LOQ");
+		searchobj.setPropertyValue("OutputWorkspace","investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+		if (!invstObj.isInitialized() ) invstObj.initialize();
+		invstObj.setPropertyValue("InvestigationId","12576918");
+		//invstObj.setPropertyValue("InputWorkspace", "investigations");//records of investigations
+		invstObj.setPropertyValue("OutputWorkspace","investigation");//selected invesigation data files
+		//		
+		TS_ASSERT_THROWS_NOTHING(invstObj.execute());
+		TS_ASSERT( invstObj.isExecuted() );
+	}
+private:
+	Login loginobj;
+	CSearch searchobj;
+	CGetDataFiles invstObj;
+};
 #endif
diff --git a/Code/Mantid/Framework/ICat/test/GetDataSetsTest.h b/Code/Mantid/Framework/ICat/test/GetDataSetsTest.h
index 1ec03d319969d1dcea5155acf184615470ff3c45..dae0bb3331e8c1448e5c16cfd10497b2a126f81a 100644
--- a/Code/Mantid/Framework/ICat/test/GetDataSetsTest.h
+++ b/Code/Mantid/Framework/ICat/test/GetDataSetsTest.h
@@ -1,60 +1,60 @@
-#ifndef GETIDATASETS_H_
-#define GETIDATASETS_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/GetDataSets.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
-#include "MantidICat/Search.h"
-#include "MantidDataObjects/WorkspaceSingleValue.h"
-
+#ifndef GETIDATASETS_H_
+#define GETIDATASETS_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/GetDataSets.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
+#include "MantidICat/Search.h"
+#include "MantidDataObjects/WorkspaceSingleValue.h"
+
 using namespace Mantid;
-using namespace Mantid::ICat;
-
-class GetDataSetsTest: public CxxTest::TestSuite
-{
-public:
-	void testInit()
-	{
-		TS_ASSERT_THROWS_NOTHING( datasets.initialize());
-		TS_ASSERT( datasets.isInitialized() );
-	}
-
-	void testgetDataFiles()
-	{	
-		/*std::string str;
-		std::getline(std::cin,str);*/
-	
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-	
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		searchobj.setPropertyValue("StartRun", "100.0");
-		searchobj.setPropertyValue("EndRun", "102.0");
-		searchobj.setPropertyValue("Instrument","LOQ");
-		searchobj.setPropertyValue("OutputWorkspace","investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-		if(!datasets.isInitialized()) datasets.initialize();
-		datasets.setPropertyValue("InvestigationId","12576918");
-		datasets.setPropertyValue("OutputWorkspace","investigation");//selected invesigation
-		//		
-		TS_ASSERT_THROWS_NOTHING(datasets.execute());
-		TS_ASSERT( datasets.isExecuted() );
-	}
-private:
-	Login loginobj;
-	CSearch searchobj;
-	//CGetDataFiles datafiles;
-	CGetDataSets datasets;
-};
+using namespace Mantid::ICat;
+
+class GetDataSetsTest: public CxxTest::TestSuite
+{
+public:
+	void testInit()
+	{
+		TS_ASSERT_THROWS_NOTHING( datasets.initialize());
+		TS_ASSERT( datasets.isInitialized() );
+	}
+
+	void testgetDataFiles()
+	{	
+		/*std::string str;
+		std::getline(std::cin,str);*/
+	
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+	
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		searchobj.setPropertyValue("StartRun", "100.0");
+		searchobj.setPropertyValue("EndRun", "102.0");
+		searchobj.setPropertyValue("Instrument","LOQ");
+		searchobj.setPropertyValue("OutputWorkspace","investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+		if(!datasets.isInitialized()) datasets.initialize();
+		datasets.setPropertyValue("InvestigationId","12576918");
+		datasets.setPropertyValue("OutputWorkspace","investigation");//selected invesigation
+		//		
+		TS_ASSERT_THROWS_NOTHING(datasets.execute());
+		TS_ASSERT( datasets.isExecuted() );
+	}
+private:
+	Login loginobj;
+	CSearch searchobj;
+	//CGetDataFiles datafiles;
+	CGetDataSets datasets;
+};
 #endif
diff --git a/Code/Mantid/Framework/ICat/test/ListInstrumentsTest.h b/Code/Mantid/Framework/ICat/test/ListInstrumentsTest.h
index 4f9140c5c4592f62f2fd5ec5c5f5108316cf4dc2..277457d51672affa48ad39da46ca923dc7191805 100644
--- a/Code/Mantid/Framework/ICat/test/ListInstrumentsTest.h
+++ b/Code/Mantid/Framework/ICat/test/ListInstrumentsTest.h
@@ -1,51 +1,51 @@
-#ifndef LISTINSTRUMENTS_H_
-# define LISTINSTRUMENTS_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/ListInstruments.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
-#include "MantidDataObjects/WorkspaceSingleValue.h"// why this is required to register table workspace.
-
-
+#ifndef LISTINSTRUMENTS_H_
+# define LISTINSTRUMENTS_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/ListInstruments.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
+#include "MantidDataObjects/WorkspaceSingleValue.h"// why this is required to register table workspace.
+
+
 using namespace Mantid;
-using namespace Mantid::ICat;
-
-class ListInstrumentsTest: public CxxTest::TestSuite
-{
-public:
-	void testInit()
-	{
-		TS_ASSERT_THROWS_NOTHING( instrList.initialize());
-		TS_ASSERT( instrList.isInitialized() );
-	}
-
-	void testListInstruments()
-	{
-		/*std::string s;
-		std::getline(std::cin,s);*/
-	
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-			
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if (!instrList.isInitialized() ) instrList.initialize();
-		//instrList.setPropertyValue("OutputWorkspace","instrument_list");
-						
-		TS_ASSERT_THROWS_NOTHING(instrList.execute());
-		TS_ASSERT( instrList.isExecuted() );
-
-
-	}
-private:
-	CListInstruments instrList;
-	Login loginobj;
-};
-
- 
-#endif
+using namespace Mantid::ICat;
+
+class ListInstrumentsTest: public CxxTest::TestSuite
+{
+public:
+	void testInit()
+	{
+		TS_ASSERT_THROWS_NOTHING( instrList.initialize());
+		TS_ASSERT( instrList.isInitialized() );
+	}
+
+	void testListInstruments()
+	{
+		/*std::string s;
+		std::getline(std::cin,s);*/
+	
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+			
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if (!instrList.isInitialized() ) instrList.initialize();
+		//instrList.setPropertyValue("OutputWorkspace","instrument_list");
+						
+		TS_ASSERT_THROWS_NOTHING(instrList.execute());
+		TS_ASSERT( instrList.isExecuted() );
+
+
+	}
+private:
+	CListInstruments instrList;
+	Login loginobj;
+};
+
+ 
+#endif
diff --git a/Code/Mantid/Framework/ICat/test/ListInvestigationTypesTest.h b/Code/Mantid/Framework/ICat/test/ListInvestigationTypesTest.h
index 9757b7610106c0b5a4419a50f714d037f0de7904..1bf5fbb0ca78b5b077b236fabb26456c1c5cb18f 100644
--- a/Code/Mantid/Framework/ICat/test/ListInvestigationTypesTest.h
+++ b/Code/Mantid/Framework/ICat/test/ListInvestigationTypesTest.h
@@ -1,49 +1,49 @@
-#ifndef  LISTINVESTIGATIONTYPES_H_
-# define LISTINVESTIGATIONTYPES_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/ListInvestigationTypes.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
-#include "MantidDataObjects/WorkspaceSingleValue.h"// why this is required to register table workspace.
-
-
+#ifndef  LISTINVESTIGATIONTYPES_H_
+# define LISTINVESTIGATIONTYPES_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/ListInvestigationTypes.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
+#include "MantidDataObjects/WorkspaceSingleValue.h"// why this is required to register table workspace.
+
+
 using namespace Mantid;
-using namespace Mantid::ICat;
-
-class ListInvestigationTypesTest: public CxxTest::TestSuite
-{
-public:
-	void testInit()
-	{
-		TS_ASSERT_THROWS_NOTHING( invstTypesList.initialize());
-		TS_ASSERT( invstTypesList.isInitialized() );
-	}
-
-	void testListInvestigationTypes()
-	{
-	
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-			
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if (!invstTypesList.isInitialized() ) invstTypesList.initialize();
-		//invstTypesList.setPropertyValue("OutputWorkspace","investigationtypes_list");
-						
-		TS_ASSERT_THROWS_NOTHING(invstTypesList.execute());
-		TS_ASSERT( invstTypesList.isExecuted() );
-
-
-	}
-private:
-	CListInvestigationTypes invstTypesList;
-	Login loginobj;
-};
-
- 
-#endif
+using namespace Mantid::ICat;
+
+class ListInvestigationTypesTest: public CxxTest::TestSuite
+{
+public:
+	void testInit()
+	{
+		TS_ASSERT_THROWS_NOTHING( invstTypesList.initialize());
+		TS_ASSERT( invstTypesList.isInitialized() );
+	}
+
+	void testListInvestigationTypes()
+	{
+	
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+			
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if (!invstTypesList.isInitialized() ) invstTypesList.initialize();
+		//invstTypesList.setPropertyValue("OutputWorkspace","investigationtypes_list");
+						
+		TS_ASSERT_THROWS_NOTHING(invstTypesList.execute());
+		TS_ASSERT( invstTypesList.isExecuted() );
+
+
+	}
+private:
+	CListInvestigationTypes invstTypesList;
+	Login loginobj;
+};
+
+ 
+#endif
diff --git a/Code/Mantid/Framework/ICat/test/MyDataSearchTest.h b/Code/Mantid/Framework/ICat/test/MyDataSearchTest.h
index 1784a47afbc991e9c24001ff8db651c47d56a148..1a4c2e996b5c060b90440f71e80cea490dc959ec 100644
--- a/Code/Mantid/Framework/ICat/test/MyDataSearchTest.h
+++ b/Code/Mantid/Framework/ICat/test/MyDataSearchTest.h
@@ -1,51 +1,51 @@
-#ifndef MYDATASEARCH_H_
-#define MYDATASEARCH_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/MyDataSearch.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
-#include "MantidDataObjects/WorkspaceSingleValue.h"
-
+#ifndef MYDATASEARCH_H_
+#define MYDATASEARCH_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/MyDataSearch.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
+#include "MantidDataObjects/WorkspaceSingleValue.h"
+
 
 using namespace Mantid;
-using namespace Mantid::ICat;
-
-class MyDataSearchTest: public CxxTest::TestSuite
-{
-public:
-	
-	void testInit()
-	{
-		CMyDataSearch mydata;
-		TS_ASSERT_THROWS_NOTHING( mydata.initialize());
-		TS_ASSERT( mydata.isInitialized() );
-	}
-	void testMyDataSearch()
-	{
-		/*std::string s;
-		std::getline(std::cin,s);*/
-
-		CMyDataSearch mydata;
-		Login loginobj;
-		Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-	
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !mydata.isInitialized() ) mydata.initialize();
-			
-		mydata.setPropertyValue("OutputWorkspace","MyInvestigations");
-				
-		TS_ASSERT_THROWS_NOTHING(mydata.execute());
-		TS_ASSERT( mydata.isExecuted() );
-
-	}
-			
-};
+using namespace Mantid::ICat;
+
+class MyDataSearchTest: public CxxTest::TestSuite
+{
+public:
+	
+	void testInit()
+	{
+		CMyDataSearch mydata;
+		TS_ASSERT_THROWS_NOTHING( mydata.initialize());
+		TS_ASSERT( mydata.isInitialized() );
+	}
+	void testMyDataSearch()
+	{
+		/*std::string s;
+		std::getline(std::cin,s);*/
+
+		CMyDataSearch mydata;
+		Login loginobj;
+		Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+	
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !mydata.isInitialized() ) mydata.initialize();
+			
+		mydata.setPropertyValue("OutputWorkspace","MyInvestigations");
+				
+		TS_ASSERT_THROWS_NOTHING(mydata.execute());
+		TS_ASSERT( mydata.isExecuted() );
+
+	}
+			
+};
 #endif
diff --git a/Code/Mantid/Framework/ICat/test/SearchTest.h b/Code/Mantid/Framework/ICat/test/SearchTest.h
index c7cff014ebdfa2f096649e4f3723baf8096d9443..6de8d6c7f382e1d88ffa6211fb587de10cead0a9 100644
--- a/Code/Mantid/Framework/ICat/test/SearchTest.h
+++ b/Code/Mantid/Framework/ICat/test/SearchTest.h
@@ -1,176 +1,176 @@
-#ifndef SEARCHBYADVANCED_H_
-#define SEARCHBYADVANCED_H_
-
-#include <cxxtest/TestSuite.h>
-#include "MantidICat/Search.h"
-#include "MantidICat/Session.h"
-#include "MantidICat/Login.h"
+#ifndef SEARCHBYADVANCED_H_
+#define SEARCHBYADVANCED_H_
+
+#include <cxxtest/TestSuite.h>
+#include "MantidICat/Search.h"
+#include "MantidICat/Session.h"
+#include "MantidICat/Login.h"
 #include "MantidDataObjects/WorkspaceSingleValue.h"
 
 using namespace Mantid;
-using namespace Mantid::ICat;
-class SearchTest: public CxxTest::TestSuite
-{
-public:
-	
-	void testInit()
-	{
-		CSearch searchobj;
-		Login loginobj;
-		TS_ASSERT_THROWS_NOTHING( searchobj.initialize());
-		TS_ASSERT( searchobj.isInitialized() );
-	}
-	void testSearchByRunNumberandInstrument()
-	{
-		
-		CSearch searchobj;
-		Login loginobj;
-		ICat::Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-		//loginobj.setPropertyValue("DBServer", "");
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		
-		searchobj.setPropertyValue("StartRun", "100.0");
-		searchobj.setPropertyValue("EndRun", "109.0");
-		searchobj.setPropertyValue("Instrument","LOQ");
-		searchobj.setPropertyValue("OutputWorkspace","Investigations");
-					
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-	}
-	void testSearchByKeywords()
-	{
-		
-		CSearch searchobj;
-		Login loginobj;
-		ICat::Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-		//loginobj.setPropertyValue("DBServer", "");
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-				
-		searchobj.setPropertyValue("Keywords","000117");
-		searchobj.setPropertyValue("Instrument","HRPD");
-		searchobj.setPropertyValue("OutputWorkspace","Investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-	}
-	void testSearchByStartDateEndDate()
-	{
-		CSearch searchobj;
-		Login loginobj;
-		ICat::Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-			
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		
-		searchobj.setPropertyValue("StartDate","10/08/2008");
-		searchobj.setPropertyValue("EndDate","22/08/2008");
-		searchobj.setPropertyValue("OutputWorkspace","Investigations");
-				
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		TS_ASSERT( searchobj.isExecuted() );
-
-	}
-	void testSearchByRunNumberInvalidInput()
-	{		
-		Login loginobj;
-		ICat::Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		// Now set it...
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-		//loginobj.setPropertyValue("DBServer", "");
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-		CSearch searchobj;
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		
-		// start run number > end run number
-		searchobj.setPropertyValue("StartRun", "150.0");
-		searchobj.setPropertyValue("EndRun", "102.0");
-		searchobj.setPropertyValue("Instrument","LOQ");
-				
-    	searchobj.setPropertyValue("OutputWorkspace","Investigations");
-		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
-		//should fail
-		TS_ASSERT( !searchobj.isExecuted() );
-
-	}
-
-	void testSearchByInvalidDates1()
-	{
-		CSearch searchobj;
-		Login loginobj;
-		ICat::Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-		std::string errorMsg="Invalid value for property StartDate (string) ""sssss"": Invalid Date:date format must be DD/MM/YYYY";
-
-		TS_ASSERT_THROWS(searchobj.setPropertyValue("StartDate","sssss"),std::invalid_argument(errorMsg));
-		
-		errorMsg="Invalid value for property StartDate (string) ""aaaaa"": Invalid Date:date format must be DD/MM/YYYY";
-		TS_ASSERT_THROWS(searchobj.setPropertyValue("EndDate","aaaaa"),std::invalid_argument(errorMsg));
-
-	}
-
-	void xtestSearchByInvalidDates2()
-	{
-
-		CSearch searchobj;
-		Login loginobj;
-		ICat::Session::Instance();
-		if ( !loginobj.isInitialized() ) loginobj.initialize();
-
-		loginobj.setPropertyValue("Username", "mantid_test");
-		loginobj.setPropertyValue("Password", "mantidtestuser");
-		
-		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
-		TS_ASSERT( loginobj.isExecuted() );
-
-		if ( !searchobj.isInitialized() ) searchobj.initialize();
-				
-		TS_ASSERT_THROWS(searchobj.setPropertyValue("StartDate","39/22/2009"),std::runtime_error);
-		TS_ASSERT_THROWS(searchobj.setPropertyValue("EndDate","aaaaa"),std::runtime_error);
-		searchobj.setPropertyValue("OutputWorkspace","Investigations");
-		
-		TS_ASSERT_THROWS(searchobj.execute(),std::runtime_error);
-
-		//should fail
-		TS_ASSERT(! searchobj.isExecuted() );
-
-	}
-		
-};
+using namespace Mantid::ICat;
+class SearchTest: public CxxTest::TestSuite
+{
+public:
+	
+	void testInit()
+	{
+		CSearch searchobj;
+		Login loginobj;
+		TS_ASSERT_THROWS_NOTHING( searchobj.initialize());
+		TS_ASSERT( searchobj.isInitialized() );
+	}
+	void testSearchByRunNumberandInstrument()
+	{
+		
+		CSearch searchobj;
+		Login loginobj;
+		ICat::Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+		//loginobj.setPropertyValue("DBServer", "");
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		
+		searchobj.setPropertyValue("StartRun", "100.0");
+		searchobj.setPropertyValue("EndRun", "109.0");
+		searchobj.setPropertyValue("Instrument","LOQ");
+		searchobj.setPropertyValue("OutputWorkspace","Investigations");
+					
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+	}
+	void testSearchByKeywords()
+	{
+		
+		CSearch searchobj;
+		Login loginobj;
+		ICat::Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+		//loginobj.setPropertyValue("DBServer", "");
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+				
+		searchobj.setPropertyValue("Keywords","000117");
+		searchobj.setPropertyValue("Instrument","HRPD");
+		searchobj.setPropertyValue("OutputWorkspace","Investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+	}
+	void testSearchByStartDateEndDate()
+	{
+		CSearch searchobj;
+		Login loginobj;
+		ICat::Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+			
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		
+		searchobj.setPropertyValue("StartDate","10/08/2008");
+		searchobj.setPropertyValue("EndDate","22/08/2008");
+		searchobj.setPropertyValue("OutputWorkspace","Investigations");
+				
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		TS_ASSERT( searchobj.isExecuted() );
+
+	}
+	void testSearchByRunNumberInvalidInput()
+	{		
+		Login loginobj;
+		ICat::Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		// Now set it...
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+		//loginobj.setPropertyValue("DBServer", "");
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+		CSearch searchobj;
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		
+		// start run number > end run number
+		searchobj.setPropertyValue("StartRun", "150.0");
+		searchobj.setPropertyValue("EndRun", "102.0");
+		searchobj.setPropertyValue("Instrument","LOQ");
+				
+    	searchobj.setPropertyValue("OutputWorkspace","Investigations");
+		TS_ASSERT_THROWS_NOTHING(searchobj.execute());
+		//should fail
+		TS_ASSERT( !searchobj.isExecuted() );
+
+	}
+
+	void testSearchByInvalidDates1()
+	{
+		CSearch searchobj;
+		Login loginobj;
+		ICat::Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+		std::string errorMsg="Invalid value for property StartDate (string) ""sssss"": Invalid Date:date format must be DD/MM/YYYY";
+
+		TS_ASSERT_THROWS(searchobj.setPropertyValue("StartDate","sssss"),std::invalid_argument(errorMsg));
+		
+		errorMsg="Invalid value for property StartDate (string) ""aaaaa"": Invalid Date:date format must be DD/MM/YYYY";
+		TS_ASSERT_THROWS(searchobj.setPropertyValue("EndDate","aaaaa"),std::invalid_argument(errorMsg));
+
+	}
+
+	void xtestSearchByInvalidDates2()
+	{
+
+		CSearch searchobj;
+		Login loginobj;
+		ICat::Session::Instance();
+		if ( !loginobj.isInitialized() ) loginobj.initialize();
+
+		loginobj.setPropertyValue("Username", "mantid_test");
+		loginobj.setPropertyValue("Password", "mantidtestuser");
+		
+		TS_ASSERT_THROWS_NOTHING(loginobj.execute());
+		TS_ASSERT( loginobj.isExecuted() );
+
+		if ( !searchobj.isInitialized() ) searchobj.initialize();
+				
+		TS_ASSERT_THROWS(searchobj.setPropertyValue("StartDate","39/22/2009"),std::runtime_error);
+		TS_ASSERT_THROWS(searchobj.setPropertyValue("EndDate","aaaaa"),std::runtime_error);
+		searchobj.setPropertyValue("OutputWorkspace","Investigations");
+		
+		TS_ASSERT_THROWS(searchobj.execute(),std::runtime_error);
+
+		//should fail
+		TS_ASSERT(! searchobj.isExecuted() );
+
+	}
+		
+};
 #endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxFunctionBuilder.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxFunctionBuilder.h
index 25b9e9d3c6bd45e268454e19aba5c49160467808..444202cc788f3be8d79b28ca3a00f165016206be 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxFunctionBuilder.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxFunctionBuilder.h
@@ -1,67 +1,67 @@
-#ifndef BOX_FUNCTONBUILDER_H_
-#define BOX_FUNCTONBUILDER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include <memory>
-#include "MantidKernel/System.h"
-#include "MantidMDAlgorithms/BoxImplicitFunction.h"
-#include "MantidAPI/ImplicitFunctionBuilder.h"
-
-namespace Mantid
-{
-
-    namespace MDAlgorithms
-    {
-        /**
-
-        This class is the abstract type for building BoxImplicitFunctions
-
-        @author Owen Arnold, Tessella plc
-        @date 09/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport BoxFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
-        {
-        private:
-            mutable OriginParameter m_origin;
-            mutable WidthParameter m_width;
-            mutable HeightParameter m_height;
-            mutable DepthParameter m_depth;
-        public:
-            BoxFunctionBuilder();
-
-            void addOriginParameter(const OriginParameter& parameter);
-            void addDepthParameter(const DepthParameter& depthParam);
-            void addWidthParameter(const WidthParameter& widthParam);
-            void addHeightParameter(const HeightParameter& heightParam);
-            Mantid::API::ImplicitFunction* create() const;
-            ~BoxFunctionBuilder();
-        };
-
-    }
-}
-
-#endif
+#ifndef BOX_FUNCTONBUILDER_H_
+#define BOX_FUNCTONBUILDER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include <memory>
+#include "MantidKernel/System.h"
+#include "MantidMDAlgorithms/BoxImplicitFunction.h"
+#include "MantidAPI/ImplicitFunctionBuilder.h"
+
+namespace Mantid
+{
+
+    namespace MDAlgorithms
+    {
+        /**
+
+        This class is the abstract type for building BoxImplicitFunctions
+
+        @author Owen Arnold, Tessella plc
+        @date 09/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport BoxFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
+        {
+        private:
+            mutable OriginParameter m_origin;
+            mutable WidthParameter m_width;
+            mutable HeightParameter m_height;
+            mutable DepthParameter m_depth;
+        public:
+            BoxFunctionBuilder();
+
+            void addOriginParameter(const OriginParameter& parameter);
+            void addDepthParameter(const DepthParameter& depthParam);
+            void addWidthParameter(const WidthParameter& widthParam);
+            void addHeightParameter(const HeightParameter& heightParam);
+            Mantid::API::ImplicitFunction* create() const;
+            ~BoxFunctionBuilder();
+        };
+
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunction.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunction.h
index 479708a3f08aa71e113878d627e43894a3fc07dd..011ea161d7860972de012043c7c4b48151f3670b 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunction.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunction.h
@@ -1,94 +1,94 @@
-#ifndef MANTID_ALGORITHMS_BOXIMPLICITFUNCTION_H_
-#define MANTID_ALGORITHMS_BOXIMPLICITFUNCTION_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunction.h"
-#include "MantidMDAlgorithms/WidthParameter.h"
-#include "MantidMDAlgorithms/DepthParameter.h"
-#include "MantidMDAlgorithms/HeightParameter.h"
-#include "MantidMDAlgorithms/OriginParameter.h" 
-
-namespace Mantid
-{
-    namespace MDDataObjects
-    {
-        class point3D;
-    }
-    namespace MDAlgorithms
-    {
-        /**
-
-        This class represents a box for making slices orthogonal to the cartesian axes set.
-
-        @author Owen Arnold, Tessella plc
-        @date 09/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport BoxImplicitFunction : public Mantid::API::ImplicitFunction
-        {
-        public:
-            BoxImplicitFunction(WidthParameter& width, HeightParameter& height, DepthParameter& depth, OriginParameter& origin);
-            ~BoxImplicitFunction();
-            std::string getName() const;
-            std::string toXMLString() const;
-            bool evaluate(const API::Point3D* pPoint) const;
-            double getUpperX() const;
-            double getLowerX() const;
-            double getUpperY() const;
-            double getLowerY() const;
-            double getUpperZ() const;
-            double getLowerZ() const;
-            bool operator==(const BoxImplicitFunction &other) const;
-            bool operator!=(const BoxImplicitFunction &other) const;
-
-            static std::string functionName()
-            {
-                return "BoxImplicitFunction";
-            }
-
-        private:
-
-            //from raw inputs.
-            OriginParameter m_origin;
-            HeightParameter m_height;
-            WidthParameter m_width;
-            DepthParameter m_depth;
-
-            //calculated and cached.
-            double m_upperX;
-            double m_lowerX;
-            double m_upperY;
-            double m_lowerY;
-            double m_upperZ;
-            double m_lowerZ;
-
-        };
-    }
-}
-
-
-#endif
+#ifndef MANTID_ALGORITHMS_BOXIMPLICITFUNCTION_H_
+#define MANTID_ALGORITHMS_BOXIMPLICITFUNCTION_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunction.h"
+#include "MantidMDAlgorithms/WidthParameter.h"
+#include "MantidMDAlgorithms/DepthParameter.h"
+#include "MantidMDAlgorithms/HeightParameter.h"
+#include "MantidMDAlgorithms/OriginParameter.h" 
+
+namespace Mantid
+{
+    namespace MDDataObjects
+    {
+        class point3D;
+    }
+    namespace MDAlgorithms
+    {
+        /**
+
+        This class represents a box for making slices orthogonal to the cartesian axes set.
+
+        @author Owen Arnold, Tessella plc
+        @date 09/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport BoxImplicitFunction : public Mantid::API::ImplicitFunction
+        {
+        public:
+            BoxImplicitFunction(WidthParameter& width, HeightParameter& height, DepthParameter& depth, OriginParameter& origin);
+            ~BoxImplicitFunction();
+            std::string getName() const;
+            std::string toXMLString() const;
+            bool evaluate(const API::Point3D* pPoint) const;
+            double getUpperX() const;
+            double getLowerX() const;
+            double getUpperY() const;
+            double getLowerY() const;
+            double getUpperZ() const;
+            double getLowerZ() const;
+            bool operator==(const BoxImplicitFunction &other) const;
+            bool operator!=(const BoxImplicitFunction &other) const;
+
+            static std::string functionName()
+            {
+                return "BoxImplicitFunction";
+            }
+
+        private:
+
+            //from raw inputs.
+            OriginParameter m_origin;
+            HeightParameter m_height;
+            WidthParameter m_width;
+            DepthParameter m_depth;
+
+            //calculated and cached.
+            double m_upperX;
+            double m_lowerX;
+            double m_upperY;
+            double m_lowerY;
+            double m_upperZ;
+            double m_lowerZ;
+
+        };
+    }
+}
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunctionParser.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunctionParser.h
index 66528e18f13e26da92023e07d3a841036f91c655..9aea0eb4037669d6a770080513aba3e5747d9033 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunctionParser.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/BoxImplicitFunctionParser.h
@@ -1,69 +1,69 @@
-#ifndef MANTID_ALGORITHMS_BOX_IMPLICITFUNCTION_PARSER_H_
-#define MANTID_ALGORITHMS_BOX_IMPLICITFUNCTION_PARSER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include <boost/shared_ptr.hpp>
-#include "MantidMDAlgorithms/BoxFunctionBuilder.h"
-#include "MantidAPI/ImplicitFunctionParser.h"
-#include "MantidAPI/ImplicitFunctionParameterParser.h"
-
-namespace Mantid
-{
-    namespace MDDataObjects
-    {
-        class point3D;
-    }
-    namespace MDAlgorithms
-    {
-        /**
-        This class to parse plane type functions and generate the associated builders.
-
-        @author Owen Arnold, Tessella plc
-        @date 09/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport BoxImplicitFunctionParser : public Mantid::API::ImplicitFunctionParser
-        {
-
-        public:
-            BoxImplicitFunctionParser();
-
-            Mantid::API::ImplicitFunctionBuilder* createFunctionBuilder(Poco::XML::Element* functionElement);
-
-            void setSuccessorParser(Mantid::API::ImplicitFunctionParser* parser);
-
-            void setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser);
-
-            BoxFunctionBuilder* parseBoxFunction(Poco::XML::Element* functionElement);
-
-            ~BoxImplicitFunctionParser();
-        };
-    }
-}
-
-
-#endif
+#ifndef MANTID_ALGORITHMS_BOX_IMPLICITFUNCTION_PARSER_H_
+#define MANTID_ALGORITHMS_BOX_IMPLICITFUNCTION_PARSER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include <boost/shared_ptr.hpp>
+#include "MantidMDAlgorithms/BoxFunctionBuilder.h"
+#include "MantidAPI/ImplicitFunctionParser.h"
+#include "MantidAPI/ImplicitFunctionParameterParser.h"
+
+namespace Mantid
+{
+    namespace MDDataObjects
+    {
+        class point3D;
+    }
+    namespace MDAlgorithms
+    {
+        /**
+        This class to parse plane type functions and generate the associated builders.
+
+        @author Owen Arnold, Tessella plc
+        @date 09/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport BoxImplicitFunctionParser : public Mantid::API::ImplicitFunctionParser
+        {
+
+        public:
+            BoxImplicitFunctionParser();
+
+            Mantid::API::ImplicitFunctionBuilder* createFunctionBuilder(Poco::XML::Element* functionElement);
+
+            void setSuccessorParser(Mantid::API::ImplicitFunctionParser* parser);
+
+            void setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser);
+
+            BoxFunctionBuilder* parseBoxFunction(Poco::XML::Element* functionElement);
+
+            ~BoxImplicitFunctionParser();
+        };
+    }
+}
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CenterpieceRebinning.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CenterpieceRebinning.h
index 841340f7c5f5b25324be4cab353f69539fb42554..d0600aab0b6393534814a423cf25dd4ed41fe35a 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CenterpieceRebinning.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CenterpieceRebinning.h
@@ -1,84 +1,84 @@
-#ifndef H_CENTERPIECE_REBINNING
-#define H_CENTERPIECE_REBINNING
-
-
-#include "MantidAPI/MDPropertyGeometry.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MantidAPI/Algorithm.h"
-#include "MantidAPI/FileProperty.h"
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidAPI/ImplicitFunction.h"
-
-    /**  The algorithm implements centerpiece rebinning  for multidimensional workspaces
-
-
-
-        @author  Alex Buts,  ISIS RAL 
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-{
-
-class DLLExport CenterpieceRebinning: public API::Algorithm
-{
-    
-public:
-
-    CenterpieceRebinning(void);
-
-    virtual ~CenterpieceRebinning(void);
-
-  /// Algorithm's name for identification overriding a virtual method
-      virtual const std::string name() const { return "CenterpieceRebinning";}
-      /// Algorithm's version for identification overriding a virtual method
-      virtual int version() const { return 1;}
-      /// Algorithm's category for identification overriding a virtual method
-      virtual const std::string category() const { return "MD-Algorithms";}
-
-
-      /// set up slicing property as to the state of input workspace e.g. the rebinning would be
-      /// done on the whole workspace and would provide a workspace, which is equivalent to the input workspace
-      void setTargetGeomDescrEqSource();
-    
-private:
-      /// Calculate the reporting occurance.
-      unsigned int reportOccurance(const unsigned int nSteps);
-    // Overridden Pivate Algorithm methods
-      void init();
-      void exec();
-
-  
-protected:
- /// logger -> to provide logging, for MD dataset file operations
-    static Mantid::Kernel::Logger& bin_log; 
-
-};
-}
-}
-
-#endif
+#ifndef H_CENTERPIECE_REBINNING
+#define H_CENTERPIECE_REBINNING
+
+
+#include "MantidAPI/MDPropertyGeometry.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MantidAPI/Algorithm.h"
+#include "MantidAPI/FileProperty.h"
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidAPI/ImplicitFunction.h"
+
+    /**  The algorithm implements centerpiece rebinning  for multidimensional workspaces
+
+
+
+        @author  Alex Buts,  ISIS RAL 
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+{
+
+class DLLExport CenterpieceRebinning: public API::Algorithm
+{
+    
+public:
+
+    CenterpieceRebinning(void);
+
+    virtual ~CenterpieceRebinning(void);
+
+  /// Algorithm's name for identification overriding a virtual method
+      virtual const std::string name() const { return "CenterpieceRebinning";}
+      /// Algorithm's version for identification overriding a virtual method
+      virtual int version() const { return 1;}
+      /// Algorithm's category for identification overriding a virtual method
+      virtual const std::string category() const { return "MD-Algorithms";}
+
+
+      /// set up slicing property as to the state of input workspace e.g. the rebinning would be
+      /// done on the whole workspace and would provide a workspace, which is equivalent to the input workspace
+      void setTargetGeomDescrEqSource();
+    
+private:
+      /// Calculate the reporting occurance.
+      unsigned int reportOccurance(const unsigned int nSteps);
+    // Overridden Pivate Algorithm methods
+      void init();
+      void exec();
+
+  
+protected:
+ /// logger -> to provide logging, for MD dataset file operations
+    static Mantid::Kernel::Logger& bin_log; 
+
+};
+}
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeFunctionBuilder.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeFunctionBuilder.h
index df63a55cf52628d13ff20de2dde04f538c9365ed..f8c54132226e8a814dc3edd6acdbea5592b064a7 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeFunctionBuilder.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeFunctionBuilder.h
@@ -1,62 +1,62 @@
-#ifndef COMPOSITEFUNCTONBUILDER_H_
-#define COMPOSITEFUNCTONBUILDER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include <boost/shared_ptr.hpp>
-#include "MantidAPI/ImplicitFunctionParameter.h"
-#include "MantidAPI/ImplicitFunction.h"
-#include "MantidAPI/ImplicitFunctionBuilder.h"
-
-namespace Mantid
-{
-
-    namespace MDAlgorithms
-    {
-        /**
-
-        This builder is for constructing composite functions.
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-
-        class DLLExport CompositeFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
-        {
-        private:
-            std::vector<boost::shared_ptr<ImplicitFunctionBuilder> > m_functionBuilders;
-        public:
-            CompositeFunctionBuilder();
-            void addFunctionBuilder(ImplicitFunctionBuilder* funcBuilder);
-            Mantid::API::ImplicitFunction* create() const;
-            ~CompositeFunctionBuilder();
-        };
-
-    }
-}
-
-#endif
+#ifndef COMPOSITEFUNCTONBUILDER_H_
+#define COMPOSITEFUNCTONBUILDER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include <boost/shared_ptr.hpp>
+#include "MantidAPI/ImplicitFunctionParameter.h"
+#include "MantidAPI/ImplicitFunction.h"
+#include "MantidAPI/ImplicitFunctionBuilder.h"
+
+namespace Mantid
+{
+
+    namespace MDAlgorithms
+    {
+        /**
+
+        This builder is for constructing composite functions.
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+
+        class DLLExport CompositeFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
+        {
+        private:
+            std::vector<boost::shared_ptr<ImplicitFunctionBuilder> > m_functionBuilders;
+        public:
+            CompositeFunctionBuilder();
+            void addFunctionBuilder(ImplicitFunctionBuilder* funcBuilder);
+            Mantid::API::ImplicitFunction* create() const;
+            ~CompositeFunctionBuilder();
+        };
+
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunction.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunction.h
index 964293ad74d8f725dc96f8a7dfe36e5b3485bffc..4bdd499a32316ea85bb792f5e8da6d4d2832823b 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunction.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunction.h
@@ -1,76 +1,76 @@
-#ifndef MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_H_
-#define MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include <boost/shared_ptr.hpp>
-#include "MantidAPI/ImplicitFunction.h"
-
-namespace Mantid
-{
-namespace API
-{
-class Point3D;
-}
-namespace MDAlgorithms
-{
-/**
-
- This class represents a composite implicit function used for communicating and implementing an operation against
- an MDWorkspace.
-
- @author Owen Arnold, Tessella plc
- @date 01/10/2010
-
- Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
- This file is part of Mantid.
-
- Mantid is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- Mantid is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
- File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
- Code Documentation is available at: <http://doxygen.mantidproject.org>
- */
-
-class DLLExport CompositeImplicitFunction: public Mantid::API::ImplicitFunction
-{
-public:
-  CompositeImplicitFunction();
-
-  ~CompositeImplicitFunction();
-  void addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction> constituentFunction);
-  bool evaluate(const Mantid::API::Point3D* pPoint3D) const;
-  std::string getName() const;
-  std::string toXMLString() const;
-  int getNFunctions() const;
-  bool operator==(const CompositeImplicitFunction &other) const;
-  bool operator!=(const CompositeImplicitFunction &other) const;
-  static std::string functionName()
-  {
-    return "CompositeImplicitFunction";
-  }
-  std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > getFunctions() const;
-protected:
-  std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > m_Functions;
-  typedef std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> >::const_iterator
-      FunctionIterator;
-
-};
-}
-}
-
-#endif
+#ifndef MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_H_
+#define MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include <boost/shared_ptr.hpp>
+#include "MantidAPI/ImplicitFunction.h"
+
+namespace Mantid
+{
+namespace API
+{
+class Point3D;
+}
+namespace MDAlgorithms
+{
+/**
+
+ This class represents a composite implicit function used for communicating and implementing an operation against
+ an MDWorkspace.
+
+ @author Owen Arnold, Tessella plc
+ @date 01/10/2010
+
+ Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+ This file is part of Mantid.
+
+ Mantid is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ Mantid is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+ Code Documentation is available at: <http://doxygen.mantidproject.org>
+ */
+
+class DLLExport CompositeImplicitFunction: public Mantid::API::ImplicitFunction
+{
+public:
+  CompositeImplicitFunction();
+
+  ~CompositeImplicitFunction();
+  void addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction> constituentFunction);
+  bool evaluate(const Mantid::API::Point3D* pPoint3D) const;
+  std::string getName() const;
+  std::string toXMLString() const;
+  int getNFunctions() const;
+  bool operator==(const CompositeImplicitFunction &other) const;
+  bool operator!=(const CompositeImplicitFunction &other) const;
+  static std::string functionName()
+  {
+    return "CompositeImplicitFunction";
+  }
+  std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > getFunctions() const;
+protected:
+  std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > m_Functions;
+  typedef std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> >::const_iterator
+      FunctionIterator;
+
+};
+}
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunctionParser.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunctionParser.h
index 71d43d950c5ab4fc2c62fc20983ec9c5203af08d..184acc7620d4051fbd79e1763aac6f2663f598da 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunctionParser.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CompositeImplicitFunctionParser.h
@@ -1,70 +1,70 @@
-#ifndef MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_PARSER_H_
-#define MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_PARSER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include <boost/shared_ptr.hpp>
-#include "MantidMDAlgorithms/CompositeFunctionBuilder.h"
-#include "MantidAPI/ImplicitFunctionParser.h"
-
-
-namespace Mantid
-{
-    namespace MDDataObjects
-    {
-        class point3D;
-    }
-    namespace MDAlgorithms
-    {
-        /**
-
-        This class to parse composite type functions and generate the associated builders.
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport CompositeImplicitFunctionParser : public Mantid::API::ImplicitFunctionParser
-        {
-
-        public:
-            CompositeImplicitFunctionParser();
-
-            Mantid::API::ImplicitFunctionBuilder* createFunctionBuilder(Poco::XML::Element* functionElement);
-
-            void setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser);
-
-            void setSuccessorParser(ImplicitFunctionParser* parser);
-
-            CompositeFunctionBuilder* parseCompositeFunction(Poco::XML::Element* functionElement);
-
-            ~CompositeImplicitFunctionParser();
-        };
-    }
-}
-
-
-#endif
+#ifndef MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_PARSER_H_
+#define MANTID_ALGORITHMS_COMPOSITEIMPLICITFUNCTION_PARSER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include <boost/shared_ptr.hpp>
+#include "MantidMDAlgorithms/CompositeFunctionBuilder.h"
+#include "MantidAPI/ImplicitFunctionParser.h"
+
+
+namespace Mantid
+{
+    namespace MDDataObjects
+    {
+        class point3D;
+    }
+    namespace MDAlgorithms
+    {
+        /**
+
+        This class to parse composite type functions and generate the associated builders.
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport CompositeImplicitFunctionParser : public Mantid::API::ImplicitFunctionParser
+        {
+
+        public:
+            CompositeImplicitFunctionParser();
+
+            Mantid::API::ImplicitFunctionBuilder* createFunctionBuilder(Poco::XML::Element* functionElement);
+
+            void setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser);
+
+            void setSuccessorParser(ImplicitFunctionParser* parser);
+
+            CompositeFunctionBuilder* parseCompositeFunction(Poco::XML::Element* functionElement);
+
+            ~CompositeImplicitFunctionParser();
+        };
+    }
+}
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CpRebinningNx3.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CpRebinningNx3.h
index 00fe891b81b4b001c6a8b4b507fbe8caae4d7793..345947f64bdb595a1a9044edc2e2da85b0850294 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CpRebinningNx3.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/CpRebinningNx3.h
@@ -1,108 +1,108 @@
-#ifndef CP_REBINNING_Nx3_H
-#define CP_REBINNING_Nx3_H
-#include "MantidMDAlgorithms/DynamicCPRRebinning.h"
-namespace Mantid
-{
-namespace MDAlgorithms 
-{
- 
-    /**   Class does actual rebinning on N by 3 dataset 
-       where N is number of dimensions and 3 -- number of reciprocal dimensions and calculates multidimensional 
-       image and the locations of the points 
-
-       Algorithm expects the target image to be clean and nullified -> strange results for
-       signals (and incorrect errors) if not. 
-
-
-        @author  Alex Buts,  ISIS RAL 
-        @date 16/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-class DLLExport CpRebinningNx3: public DynamicCPRRebinning
-{
-public:
-
-  CpRebinningNx3(const MDDataObjects::MDWorkspace_const_sptr &pSourceWS, 
-                 Geometry::MDGeometryDescription const * const pTargetDescr,
-                 const MDDataObjects::MDWorkspace_sptr  & TargetWS ,bool keep_pixels);
-
-  /** function takes input multidimensional data points (pixels, events) stored in the source data buffer and 
-     *  rebins these data (adds them) to MD image of the taget workspace;
-     * Alternative (USA)vdescription: Identifies the locations of the datapoints in the multidimensional grid of the target workspace
-    */
-   virtual bool rebin_data_chunk();
-  /** The same as just rebin_data_chunk above but the indexes returned as the last parameter specify the locations of the pixels
-      * stored in the imput buffer;    */
-   virtual bool rebin_data_chunk_keep_pixels();
-  /** returns the estimate for number of data chunks may be used to rebin the selection within a dataset.
-     Used by algorithms to indicate progress*/
-    virtual unsigned int getNumDataChunks()const;
-
-
-  ~CpRebinningNx3();
-protected:
-// the variables used during rebinning operation
-    int nDimensions;                     //< real number of dimensions in a dataset
-    int nRecDims;                        //< number of reciprocal dimensions
-    double rotations[9];                 //< rotation matrix for qx,qy,qz coordinates; 
-    bool ignore_nan,ignore_inf;
-    std::vector<double> shifts;          //< shift in all directions (tans_elo is 4th element of transf_bott_left
-    std::vector<double> cut_min;         //< min limits to extract data;
-    std::vector<double> cut_max;         //< max limits to extract data;
-    std::vector<double> axis_step;       //< (cut_max-cut_min)/(nBins);
-    std::vector<double> axis_step_inv;   //< 1/axis_step
-
-    std::vector<size_t>  strides;
-    std::vector<unsigned int> rec_dim_indexes; // the indexes of the reciprocal dimensions in the array of the target dimensions
-
-    bool keep_pixels;
-
-    /// working buffer to keep input data pixels, initialized by the pointer to buffer from the input workspace;
-    std::vector<char  > *pix_buf;
-
- // these variables are initated if keep pixels option has been selected;
-    /// the buffer to keep the indexes of the outpit pixels within the target lattice
-    std::vector<size_t> retained_cell_indexes;
-    /// the buffer of boolean to mark input pixels which contribute into the ouptut data;
-    std::vector<bool>   pixel_valid;
-
-// working and auxiliary variables;
-    /// build transformation matrix from the slicing data --> filled in all operation variables above
-    virtual void build_scaled_transformation_matrix(const Geometry::MDGeometry &Source,const Geometry::MDGeometryDescription &target);
-     /// first cell the rebinning process should begin
-    size_t n_starting_cell;
-    /// nuber of pixels read(processed) when rebinning 
-    size_t n_pixels_read;
-    /// (running) number of pixels selected to contribute into new dataset;
-    size_t n_pixels_selected;
-    /// number of pixels (datapoints, events) availible for rebinning
-    size_t n_pix_in_buffer;
-private:
-  /// the subroutine doing actual rebinning
-    size_t rebin_Nx3dataset();
-  /// pointer to target data points class
-   MDDataObjects::MDDataPoints        *const pTargetDataPoints;  
-};
-} // end namespaces
-}
-
+#ifndef CP_REBINNING_Nx3_H
+#define CP_REBINNING_Nx3_H
+#include "MantidMDAlgorithms/DynamicCPRRebinning.h"
+namespace Mantid
+{
+namespace MDAlgorithms 
+{
+ 
+    /**   Class does actual rebinning on N by 3 dataset 
+       where N is number of dimensions and 3 -- number of reciprocal dimensions and calculates multidimensional 
+       image and the locations of the points 
+
+       Algorithm expects the target image to be clean and nullified -> strange results for
+       signals (and incorrect errors) if not. 
+
+
+        @author  Alex Buts,  ISIS RAL 
+        @date 16/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+class DLLExport CpRebinningNx3: public DynamicCPRRebinning
+{
+public:
+
+  CpRebinningNx3(const MDDataObjects::MDWorkspace_const_sptr &pSourceWS, 
+                 Geometry::MDGeometryDescription const * const pTargetDescr,
+                 const MDDataObjects::MDWorkspace_sptr  & TargetWS ,bool keep_pixels);
+
+  /** function takes input multidimensional data points (pixels, events) stored in the source data buffer and 
+     *  rebins these data (adds them) to MD image of the taget workspace;
+     * Alternative (USA)vdescription: Identifies the locations of the datapoints in the multidimensional grid of the target workspace
+    */
+   virtual bool rebin_data_chunk();
+  /** The same as just rebin_data_chunk above but the indexes returned as the last parameter specify the locations of the pixels
+      * stored in the imput buffer;    */
+   virtual bool rebin_data_chunk_keep_pixels();
+  /** returns the estimate for number of data chunks may be used to rebin the selection within a dataset.
+     Used by algorithms to indicate progress*/
+    virtual unsigned int getNumDataChunks()const;
+
+
+  ~CpRebinningNx3();
+protected:
+// the variables used during rebinning operation
+    int nDimensions;                     //< real number of dimensions in a dataset
+    int nRecDims;                        //< number of reciprocal dimensions
+    double rotations[9];                 //< rotation matrix for qx,qy,qz coordinates; 
+    bool ignore_nan,ignore_inf;
+    std::vector<double> shifts;          //< shift in all directions (tans_elo is 4th element of transf_bott_left
+    std::vector<double> cut_min;         //< min limits to extract data;
+    std::vector<double> cut_max;         //< max limits to extract data;
+    std::vector<double> axis_step;       //< (cut_max-cut_min)/(nBins);
+    std::vector<double> axis_step_inv;   //< 1/axis_step
+
+    std::vector<size_t>  strides;
+    std::vector<unsigned int> rec_dim_indexes; // the indexes of the reciprocal dimensions in the array of the target dimensions
+
+    bool keep_pixels;
+
+    /// working buffer to keep input data pixels, initialized by the pointer to buffer from the input workspace;
+    std::vector<char  > *pix_buf;
+
+ // these variables are initated if keep pixels option has been selected;
+    /// the buffer to keep the indexes of the outpit pixels within the target lattice
+    std::vector<size_t> retained_cell_indexes;
+    /// the buffer of boolean to mark input pixels which contribute into the ouptut data;
+    std::vector<bool>   pixel_valid;
+
+// working and auxiliary variables;
+    /// build transformation matrix from the slicing data --> filled in all operation variables above
+    virtual void build_scaled_transformation_matrix(const Geometry::MDGeometry &Source,const Geometry::MDGeometryDescription &target);
+     /// first cell the rebinning process should begin
+    size_t n_starting_cell;
+    /// nuber of pixels read(processed) when rebinning 
+    size_t n_pixels_read;
+    /// (running) number of pixels selected to contribute into new dataset;
+    size_t n_pixels_selected;
+    /// number of pixels (datapoints, events) availible for rebinning
+    size_t n_pix_in_buffer;
+private:
+  /// the subroutine doing actual rebinning
+    size_t rebin_Nx3dataset();
+  /// pointer to target data points class
+   MDDataObjects::MDDataPoints        *const pTargetDataPoints;  
+};
+} // end namespaces
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DepthParameter.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DepthParameter.h
index a2f71e6622ca0f25b8e71cf6538cb2f05d42b199..d7ad11d7c369724cfefab09391a70667df5e54f8 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DepthParameter.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DepthParameter.h
@@ -1,83 +1,83 @@
-#ifndef DEPTH_PARAMETER_H_
-#define DEPTH_PARAMETER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        /**
-
-        DepthParameter. Wraps a vector expressing origin location.
-
-        @author Owen Arnold, Tessella plc
-        @date 09/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        
-        class DLLExport DepthParameter :public Mantid::API::ImplicitFunctionParameter
-        {
-        private:
-
-           double m_depth;
-
-        public:
-
-            DepthParameter(double depth);
-            
-            DepthParameter();
-            
-            DepthParameter(const DepthParameter & other);
-            
-            DepthParameter& operator=(const DepthParameter& other);
-
-            bool operator==(const DepthParameter &other) const;
-
-            bool operator!=(const DepthParameter &other) const;
-
-            bool isValid() const;
-
-            std::string getName() const;
-
-            DepthParameter* clone() const;
-
-            double getValue() const;
-
-            std::string toXMLString() const;
-
-            ~DepthParameter();
-
-            static std::string parameterName()
-            {
-                return "DepthParameter";
-            }
-        };
-    }
-}
-
+#ifndef DEPTH_PARAMETER_H_
+#define DEPTH_PARAMETER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        /**
+
+        DepthParameter. Wraps a vector expressing origin location.
+
+        @author Owen Arnold, Tessella plc
+        @date 09/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        
+        class DLLExport DepthParameter :public Mantid::API::ImplicitFunctionParameter
+        {
+        private:
+
+           double m_depth;
+
+        public:
+
+            DepthParameter(double depth);
+            
+            DepthParameter();
+            
+            DepthParameter(const DepthParameter & other);
+            
+            DepthParameter& operator=(const DepthParameter& other);
+
+            bool operator==(const DepthParameter &other) const;
+
+            bool operator!=(const DepthParameter &other) const;
+
+            bool isValid() const;
+
+            std::string getName() const;
+
+            DepthParameter* clone() const;
+
+            double getValue() const;
+
+            std::string toXMLString() const;
+
+            ~DepthParameter();
+
+            static std::string parameterName()
+            {
+                return "DepthParameter";
+            }
+        };
+    }
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicCPRRebinning.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicCPRRebinning.h
index 1327c2687e580ee20499d619a6cfcbafc7015ac6..f9460e2c5db0ec844fbf26955b0329ac68f1d1f0 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicCPRRebinning.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicCPRRebinning.h
@@ -1,154 +1,154 @@
-#ifndef DYNAMIC_CPR_REBINNING_H
-#define DYNAMIC_CPR_REBINNING_H
-
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidMDAlgorithms/IDynamicRebinning.h"
-//
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-      /**  Class provides interface for centerpiece rebinning operations 
-           and instantiates methods, common for centerpiece rebinning on regular grids
-           CPR centerpiece, R- for regular, preselection  routine for irregular should certainly change
-  
-
-        @author  Alex Buts,  ISIS RAL 
-        @date 16/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-class DLLExport DynamicCPRRebinning: public IDynamicRebinning
-{
-
-    
-public:
- /** preselect cells is the method to identify the cells, which refer to the points may contribute into the class
-  * 
-  *  the function works with class private variables, bit these variables are defined as follows:
-  *
-  *  function returns the list of the cell numbers which can contribute into the cut described by the output geometry description
-  *  Input arguments:
-     @param source ::           -- the geometry of the initial workspace
-     @param target ::           --  the geometry description of the final WS
-  *  Output arguments:
-     @param cells_to_select ::  -- the list of the cell indexes, which can contribute into the cut
-     @param n_preselected_pix-- number of pixels(DataPoints, events) contributed into the cells. 
-
-     As all rebinning classes currently use this function, it is here and not abstract at all; May change in a future as, say, sparce images 
-     would like to overload it.
-
-     virtual void preselect_cells(const MDDataObjects::MDWorkspace &Source, const Geometry::MDGeometryDescription &target, std::vector<MDDataObjects::MD_image_point *> &cells_to_select,size_t &n_preselected_pix);
-   */
-
-
-    virtual size_t preselect_cells(); 
-    /** function returns the number of pixels which can contribute into a cut (Number of pixels in selected cells -- become valid after 
-     *  preselection is done and precelected cells buffer is valid */
-    virtual uint64_t getNumPreselectedPixels()const{return n_preselected_pix;}
-    //
-    virtual bool rebin_data_chunk()=0;
-    virtual bool rebin_data_chunk_keep_pixels()=0;
-   /** Calculates signals and errors of the MD image, obtained as the result of one or more rebin_dataset operations
-     * and (in some implementations) the locations of the points in the final MDDatapoints array 
-     *
-     *   Returns the number of points (events, pixels) contributed into the image;    */
-    uint64_t finalize_rebinning();
- 
-    /** the constructor takes source workspace and the rebinning request and initiate proper target workspace, obtained from the dataservice
-       It also retains shared pointers to source and target workspaces to work with; Childs will mainly work with parts of these workspaces
-     */
-    DynamicCPRRebinning(const MDDataObjects::MDWorkspace_const_sptr &pSourceWS, 
-                        Geometry::MDGeometryDescription const * const pTargetDescr,
-                        const MDDataObjects::MDWorkspace_sptr  & TargetWS );
-      /// destructor 
-    virtual ~DynamicCPRRebinning(){};
-protected:
-    //Do we need these? they can always be obtained from Mantid services;
-    /// source workspace:
-    MDDataObjects::MDWorkspace_const_sptr pSourceWS;
-    /// target workspace
-    MDDataObjects::MDWorkspace_sptr       pTargetWS;
-    /** the description class, which describes final geometry and the cut. Necessary as 
-     *  preselection works on the basis of this property and final geometry may not be initiated by constructor
-     *  or can be entirely different */
-    Geometry::MDGeometryDescription const * const pTargetDescr;
-
-   /// Number of pixels which contributed into the target image
-    uint64_t n_preselected_pix;
-   /** The indexes of the sells of the source image that can contribute into the target image */
-    //std::vector<const MDDataObjects::MD_image_point *const> preselected_cells;
-    std::vector<size_t> preselected_cells;
- 
- /// pointer to the source image data --> provides number of pixels which may contribute into the cut;
-    MDDataObjects::MDImage        const *const pSourceImg;
-    /// these are the parts of the source workspace
-    Geometry::MDGeometry  const         *const pSourceGeom;  
-   /// pointer to the MD array of source image points
-    MDDataObjects::MD_image_point const *const pSourceImgData; 
-
-    /// pointer to the class which provides MDDataPoints (DataPixels, events);
-    MDDataObjects::MDDataPoints        *const pSourceDataPoints;
-    /// pointer to the target geometry
-    Geometry::MDGeometry                *      pTargetGeom;  
-	/// target image
-	boost::shared_ptr<MDDataObjects::MDImage>  spTargetImage;
-   /// number of the cells in the target image 
-    size_t    n_target_cells;
-    /// pointer to the MD array of target image points
-    MDDataObjects::MD_image_point        *     pTargetImgData;
-
-  
- ///** function takes input multidimensional data points (pixels, events) stored in the source data buffer and 
- //    *  rebins these data (adds them) to MD image of the taget workspace;
- //    * Alternative (USA)vdescription: Identifies the locations of the datapoints in the multidimensional grid of the target workspace
- //    * and calculates the statistical properties of these points
-
- //    * Input arguments:
- //    @param source_pix_buf ::  -- the buffer where the data are stored as sequences of bytes;
- //    @param nPix ::            -- number of data points (pixels) contained in the buffer; 
- //                              The user of the rebinning class supposes to organise the interpretation of these bytes. 
- //     * Output arguments: 
- //       Returns              -- number of pixels(MDpoints, events) contribiting into the final dataset and retained from the initial data
- //   */
- //   virtual size_t rebin_data_chunk(const char *source_pix_buf, size_t nPix)=0;
- //   /** The same as just rebin_data_chunk with 2 arguments but the indexes returned as the last parameter specify the locations of the 
- //     * contribiting pixels in the cells of the target image; 
- //     TODO: There are different possibilities to identify the contributing points themselves: 
- //     1) put them into source buffer corrupting input data (nightmare for parralesation)
- //     2) introduce an "valid" bit on input data 
- //     3) Return an auxiliary boolean array specifying the valid pixels
- //     4) Rebin directly to target "pages" 
- //     All possibilities vary by complexety and efficiency so the best to identify 
- //   */
- //   virtual size_t rebin_data(const char *source_pix_buf, size_t nPix, MDDataObjects::MDWorkspace &TargetWorkspace, 
- //                                   char * target_pix_buf, std::vector<size_t> &indexes)=0;
-
- //
- // 
-
- 
-}; // end DynamicCPRRebinning
-
-}
-}
-
+#ifndef DYNAMIC_CPR_REBINNING_H
+#define DYNAMIC_CPR_REBINNING_H
+
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidMDAlgorithms/IDynamicRebinning.h"
+//
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+      /**  Class provides interface for centerpiece rebinning operations 
+           and instantiates methods, common for centerpiece rebinning on regular grids
+           CPR centerpiece, R- for regular, preselection  routine for irregular should certainly change
+  
+
+        @author  Alex Buts,  ISIS RAL 
+        @date 16/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+class DLLExport DynamicCPRRebinning: public IDynamicRebinning
+{
+
+    
+public:
+ /** preselect cells is the method to identify the cells, which refer to the points may contribute into the class
+  * 
+  *  the function works with class private variables, bit these variables are defined as follows:
+  *
+  *  function returns the list of the cell numbers which can contribute into the cut described by the output geometry description
+  *  Input arguments:
+     @param source ::           -- the geometry of the initial workspace
+     @param target ::           --  the geometry description of the final WS
+  *  Output arguments:
+     @param cells_to_select ::  -- the list of the cell indexes, which can contribute into the cut
+     @param n_preselected_pix-- number of pixels(DataPoints, events) contributed into the cells. 
+
+     As all rebinning classes currently use this function, it is here and not abstract at all; May change in a future as, say, sparce images 
+     would like to overload it.
+
+     virtual void preselect_cells(const MDDataObjects::MDWorkspace &Source, const Geometry::MDGeometryDescription &target, std::vector<MDDataObjects::MD_image_point *> &cells_to_select,size_t &n_preselected_pix);
+   */
+
+
+    virtual size_t preselect_cells(); 
+    /** function returns the number of pixels which can contribute into a cut (Number of pixels in selected cells -- become valid after 
+     *  preselection is done and precelected cells buffer is valid */
+    virtual uint64_t getNumPreselectedPixels()const{return n_preselected_pix;}
+    //
+    virtual bool rebin_data_chunk()=0;
+    virtual bool rebin_data_chunk_keep_pixels()=0;
+   /** Calculates signals and errors of the MD image, obtained as the result of one or more rebin_dataset operations
+     * and (in some implementations) the locations of the points in the final MDDatapoints array 
+     *
+     *   Returns the number of points (events, pixels) contributed into the image;    */
+    uint64_t finalize_rebinning();
+ 
+    /** the constructor takes source workspace and the rebinning request and initiate proper target workspace, obtained from the dataservice
+       It also retains shared pointers to source and target workspaces to work with; Childs will mainly work with parts of these workspaces
+     */
+    DynamicCPRRebinning(const MDDataObjects::MDWorkspace_const_sptr &pSourceWS, 
+                        Geometry::MDGeometryDescription const * const pTargetDescr,
+                        const MDDataObjects::MDWorkspace_sptr  & TargetWS );
+      /// destructor 
+    virtual ~DynamicCPRRebinning(){};
+protected:
+    //Do we need these? they can always be obtained from Mantid services;
+    /// source workspace:
+    MDDataObjects::MDWorkspace_const_sptr pSourceWS;
+    /// target workspace
+    MDDataObjects::MDWorkspace_sptr       pTargetWS;
+    /** the description class, which describes final geometry and the cut. Necessary as 
+     *  preselection works on the basis of this property and final geometry may not be initiated by constructor
+     *  or can be entirely different */
+    Geometry::MDGeometryDescription const * const pTargetDescr;
+
+   /// Number of pixels which contributed into the target image
+    uint64_t n_preselected_pix;
+   /** The indexes of the sells of the source image that can contribute into the target image */
+    //std::vector<const MDDataObjects::MD_image_point *const> preselected_cells;
+    std::vector<size_t> preselected_cells;
+ 
+ /// pointer to the source image data --> provides number of pixels which may contribute into the cut;
+    MDDataObjects::MDImage        const *const pSourceImg;
+    /// these are the parts of the source workspace
+    Geometry::MDGeometry  const         *const pSourceGeom;  
+   /// pointer to the MD array of source image points
+    MDDataObjects::MD_image_point const *const pSourceImgData; 
+
+    /// pointer to the class which provides MDDataPoints (DataPixels, events);
+    MDDataObjects::MDDataPoints        *const pSourceDataPoints;
+    /// pointer to the target geometry
+    Geometry::MDGeometry                *      pTargetGeom;  
+	/// target image
+	boost::shared_ptr<MDDataObjects::MDImage>  spTargetImage;
+   /// number of the cells in the target image 
+    size_t    n_target_cells;
+    /// pointer to the MD array of target image points
+    MDDataObjects::MD_image_point        *     pTargetImgData;
+
+  
+ ///** function takes input multidimensional data points (pixels, events) stored in the source data buffer and 
+ //    *  rebins these data (adds them) to MD image of the taget workspace;
+ //    * Alternative (USA)vdescription: Identifies the locations of the datapoints in the multidimensional grid of the target workspace
+ //    * and calculates the statistical properties of these points
+
+ //    * Input arguments:
+ //    @param source_pix_buf ::  -- the buffer where the data are stored as sequences of bytes;
+ //    @param nPix ::            -- number of data points (pixels) contained in the buffer; 
+ //                              The user of the rebinning class supposes to organise the interpretation of these bytes. 
+ //     * Output arguments: 
+ //       Returns              -- number of pixels(MDpoints, events) contribiting into the final dataset and retained from the initial data
+ //   */
+ //   virtual size_t rebin_data_chunk(const char *source_pix_buf, size_t nPix)=0;
+ //   /** The same as just rebin_data_chunk with 2 arguments but the indexes returned as the last parameter specify the locations of the 
+ //     * contribiting pixels in the cells of the target image; 
+ //     TODO: There are different possibilities to identify the contributing points themselves: 
+ //     1) put them into source buffer corrupting input data (nightmare for parralesation)
+ //     2) introduce an "valid" bit on input data 
+ //     3) Return an auxiliary boolean array specifying the valid pixels
+ //     4) Rebin directly to target "pages" 
+ //     All possibilities vary by complexety and efficiency so the best to identify 
+ //   */
+ //   virtual size_t rebin_data(const char *source_pix_buf, size_t nPix, MDDataObjects::MDWorkspace &TargetWorkspace, 
+ //                                   char * target_pix_buf, std::vector<size_t> &indexes)=0;
+
+ //
+ // 
+
+ 
+}; // end DynamicCPRRebinning
+
+}
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicRebinFromXML.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicRebinFromXML.h
index 99c9f5f8b9d0343c779124389187ff93521dd59a..bf645453a4fd790a9d2ca333a5017f38c68925de 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicRebinFromXML.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/DynamicRebinFromXML.h
@@ -1,98 +1,98 @@
-#ifndef MD_MANTID_ALGORITHMS_DYNAMICREBINFROMXML_H
-#define MD_MANTID_ALGORITHMS_DYNAMICREBINFROMXML_H
-
-#include "MantidAPI/Algorithm.h"
-#include "MantidMDAlgorithms/BoxImplicitFunction.h"
-
-namespace Mantid
-{
-
-//Forward declaration.
-namespace API
-{
-  class ImplicitFunction;
-}
-
-namespace Geometry
-{
-  class MDGeometryDescription;
-}
-
-namespace MDAlgorithms
-{
-/**
-*  DynamicRebinFromXML Algorithm
-*
-*  This algorithm performs dynamic rebinning driven by the xml string passed as an input.
-*
-*  
-*  @date 07/12/2010
-*  @author Owen Arnold
-*
-*  Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-*   
-*  This file is part of Mantid.
-*
-*  Mantid is free software; you can redistribute it and/or modify
-*  it under the terms of the GNU General Public License as published by
-*  the Free Software Foundation; either version 3 of the License, or
-*  (at your option) any later version.
-*    
-*  Mantid is distributed in the hope that it will be useful,
-*  but WITHOUT ANY WARRANTY; without even the implied warranty of
-*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-*  GNU General Public License for more details.
-*
-*  You should have received a copy of the GNU General Public License
-*  along with this program.  If not, see <http://www.gnu.org/licenses/>.
-*
-*  File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-*  Code Documentation is available at: <http://doxygen.mantidproject.org>    
-*/
-
-class DLLExport DynamicRebinFromXML : public API::Algorithm
-{
-public:
-  /// Default constructor
-  DynamicRebinFromXML();
-  /// Default desctructor
-  virtual ~DynamicRebinFromXML();
-
-  virtual const std::string name() const { return "DynamicRebinFromXML"; } ///< @return the algorithms name
-  virtual const std::string category() const { return "General"; } ///< @return the algorithms category
-  virtual int version() const { return (1); } ///< @return version number of algorithm
-
-protected:
-      /// Get the name of the workspace from xml.
-    virtual std::string getWorkspaceName(Poco::XML::Element* pRootElem) const;
-
-    /// Get the file location of the workspace from xml.
-    virtual std::string getWorkspaceLocation(Poco::XML::Element* pRootElem) const;
-
-    /// Get the implicit function from xml.
-    virtual Mantid::API::ImplicitFunction* getImplicitFunction(Poco::XML::Element* pRootElem) const;
-
-    /// Get the geometry description from the xml.
-    virtual Mantid::Geometry::MDGeometryDescription* getMDGeometryDescriptionWithoutCuts(Poco::XML::Element* pRootElem, Mantid::API::ImplicitFunction* impFunction) const;
-
-    /// Create a dimension from the xml.
-    virtual Mantid::Geometry::IMDDimension* createDimension(Poco::XML::Element* dimensionXML) const;
-
-    /// Current implementation of geometry description requires cut information associated with dimensions.
-    virtual void ApplyImplicitFunctionToMDGeometryDescription(Mantid::Geometry::MDGeometryDescription* description, Mantid::API::ImplicitFunction* impFunction) const;
-
-private:
-  /// Initialise the Algorithm (declare properties)
-  void init();
-  /// Execute the Algorithm
-  void exec();
-
-};
-
-typedef std::vector<boost::shared_ptr<Mantid::MDAlgorithms::BoxImplicitFunction> > boxVec;
-typedef std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > functionVec;
-
-
-} // namespace Algorithms
-} // namespace Mantid
-#endif // MANTID_ALGORITHMS_CREATEWORKSPACE_H_
+#ifndef MD_MANTID_ALGORITHMS_DYNAMICREBINFROMXML_H
+#define MD_MANTID_ALGORITHMS_DYNAMICREBINFROMXML_H
+
+#include "MantidAPI/Algorithm.h"
+#include "MantidMDAlgorithms/BoxImplicitFunction.h"
+
+namespace Mantid
+{
+
+//Forward declaration.
+namespace API
+{
+  class ImplicitFunction;
+}
+
+namespace Geometry
+{
+  class MDGeometryDescription;
+}
+
+namespace MDAlgorithms
+{
+/**
+*  DynamicRebinFromXML Algorithm
+*
+*  This algorithm performs dynamic rebinning driven by the xml string passed as an input.
+*
+*  
+*  @date 07/12/2010
+*  @author Owen Arnold
+*
+*  Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+*   
+*  This file is part of Mantid.
+*
+*  Mantid is free software; you can redistribute it and/or modify
+*  it under the terms of the GNU General Public License as published by
+*  the Free Software Foundation; either version 3 of the License, or
+*  (at your option) any later version.
+*    
+*  Mantid is distributed in the hope that it will be useful,
+*  but WITHOUT ANY WARRANTY; without even the implied warranty of
+*  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+*  GNU General Public License for more details.
+*
+*  You should have received a copy of the GNU General Public License
+*  along with this program.  If not, see <http://www.gnu.org/licenses/>.
+*
+*  File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+*  Code Documentation is available at: <http://doxygen.mantidproject.org>    
+*/
+
+class DLLExport DynamicRebinFromXML : public API::Algorithm
+{
+public:
+  /// Default constructor
+  DynamicRebinFromXML();
+  /// Default desctructor
+  virtual ~DynamicRebinFromXML();
+
+  virtual const std::string name() const { return "DynamicRebinFromXML"; } ///< @return the algorithms name
+  virtual const std::string category() const { return "General"; } ///< @return the algorithms category
+  virtual int version() const { return (1); } ///< @return version number of algorithm
+
+protected:
+      /// Get the name of the workspace from xml.
+    virtual std::string getWorkspaceName(Poco::XML::Element* pRootElem) const;
+
+    /// Get the file location of the workspace from xml.
+    virtual std::string getWorkspaceLocation(Poco::XML::Element* pRootElem) const;
+
+    /// Get the implicit function from xml.
+    virtual Mantid::API::ImplicitFunction* getImplicitFunction(Poco::XML::Element* pRootElem) const;
+
+    /// Get the geometry description from the xml.
+    virtual Mantid::Geometry::MDGeometryDescription* getMDGeometryDescriptionWithoutCuts(Poco::XML::Element* pRootElem, Mantid::API::ImplicitFunction* impFunction) const;
+
+    /// Create a dimension from the xml.
+    virtual Mantid::Geometry::IMDDimension* createDimension(Poco::XML::Element* dimensionXML) const;
+
+    /// Current implementation of geometry description requires cut information associated with dimensions.
+    virtual void ApplyImplicitFunctionToMDGeometryDescription(Mantid::Geometry::MDGeometryDescription* description, Mantid::API::ImplicitFunction* impFunction) const;
+
+private:
+  /// Initialise the Algorithm (declare properties)
+  void init();
+  /// Execute the Algorithm
+  void exec();
+
+};
+
+typedef std::vector<boost::shared_ptr<Mantid::MDAlgorithms::BoxImplicitFunction> > boxVec;
+typedef std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > functionVec;
+
+
+} // namespace Algorithms
+} // namespace Mantid
+#endif // MANTID_ALGORITHMS_CREATEWORKSPACE_H_
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/HeightParameter.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/HeightParameter.h
index cd4c63578d7d5d8e96e180fdb88ac57e1b1100e9..98704000ab1796b80a0bea3c1452e886e56cd5c6 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/HeightParameter.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/HeightParameter.h
@@ -1,83 +1,83 @@
-#ifndef HeightParameter_H_
-#define HeightParameter_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        /**
-
-        HeightParameter. Wraps a vector expressing origin location.
-
-        @author Owen Arnold, Tessella plc
-        @date 09/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        
-        class DLLExport HeightParameter :public Mantid::API::ImplicitFunctionParameter
-        {
-        private:
-
-           double m_height;
-
-        public:
-
-            HeightParameter(double width);
-            
-            HeightParameter();
-            
-            HeightParameter(const HeightParameter & other);
-            
-            HeightParameter& operator=(const HeightParameter& other);
-
-            bool operator==(const HeightParameter &other) const;
-
-            bool operator!=(const HeightParameter &other) const;
-
-            bool isValid() const;
-
-            std::string getName() const;
-
-            HeightParameter* clone() const;
-
-            double getValue() const;
-
-            std::string toXMLString() const;
-
-            ~HeightParameter();
-
-            static std::string parameterName()
-            {
-                return "HeightParameter";
-            }
-        };
-    }
-}
-
+#ifndef HeightParameter_H_
+#define HeightParameter_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        /**
+
+        HeightParameter. Wraps a vector expressing origin location.
+
+        @author Owen Arnold, Tessella plc
+        @date 09/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        
+        class DLLExport HeightParameter :public Mantid::API::ImplicitFunctionParameter
+        {
+        private:
+
+           double m_height;
+
+        public:
+
+            HeightParameter(double width);
+            
+            HeightParameter();
+            
+            HeightParameter(const HeightParameter & other);
+            
+            HeightParameter& operator=(const HeightParameter& other);
+
+            bool operator==(const HeightParameter &other) const;
+
+            bool operator!=(const HeightParameter &other) const;
+
+            bool isValid() const;
+
+            std::string getName() const;
+
+            HeightParameter* clone() const;
+
+            double getValue() const;
+
+            std::string toXMLString() const;
+
+            ~HeightParameter();
+
+            static std::string parameterName()
+            {
+                return "HeightParameter";
+            }
+        };
+    }
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/IDynamicRebinning.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/IDynamicRebinning.h
index 1ffcacdab78864fd91c5dfa696022c1855a57e4d..67b9b73d446b5d5ce43542d41d651b170bc3b062 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/IDynamicRebinning.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/IDynamicRebinning.h
@@ -1,87 +1,87 @@
-#ifndef IDYNAMIC_REBINNING_H
-#define IDYNAMIC_REBINNING_H
-#include "MantidKernel/Logger.h"
-//
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-      /**   Class provides commont interface for various classes performing rebinning operations;
-
-       A rebinning class is selected from availible classes which do rebinning operations on  
-       user request and the ability to do the job. 
-       
-       TODO: A factory should analyse the demands for the job and user requests and return the method best suitable for the operations
-             but the common interface for the rebinning can be identified and is described here. 
-
-
-        @author  Alex Buts,  ISIS RAL 
-        @date 16/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-class IDynamicRebinning
-{
-
-    
-public:
-    /** Function identifies the indexes of the sells of the source image that can contribute into the target image
-     *  returns number of selected cells and the number of pixels (datapoints, events) contained in these cells which can contribute
-     * into the cut.     */
-    virtual size_t preselect_cells()=0; 
-  /** function takes input multidimensional data points (pixels, events) stored in the source data buffer and 
-     *  rebins these data (adds them) to MD image of the taget workspace;
-     * Alternative (USA)vdescription: Identifies the locations of the datapoints in the multidimensional grid of the target workspace
-     * and calculates the statistical properties of these points
-
-      * Outputs: 
-        Returns    true if more data availible and need to be rebinned;
-    */
-    virtual bool rebin_data_chunk()=0;
-    /** The same as rebin_data_chunk but retains the datapoints (pixels) contributed in the image. This allows to save the image and
-     *  further rebinning on basis of new MD workspace instead of the old one;
-    */
-    virtual bool rebin_data_chunk_keep_pixels()=0;
-    /** returns the estimate for number of data chunks may be used to rebin the dataset Used by algorithms to 
-        estimate the time to complete the rebinning*/
-    virtual unsigned int getNumDataChunks()const=0;
-    /** function returns the number of pixels which can contribute into a cut (Number of pixels in selected cells -- become valid after 
-     *  preselection is done and precelected cells buffer is valid */
-    virtual uint64_t getNumPreselectedPixels()const=0;
-
-
-    /** Calculates signals and errors of the MD image, obtained as the result of one or more rebin_dataset operations
-       and (in some implementations) the locations of the points in the final MDDatapoints array 
-
-       Returns the number of points (events, pixels) contributed into the image;
-     */
-    virtual uint64_t finalize_rebinning()=0;
-    /// destructor
-    virtual ~IDynamicRebinning(){};
-protected:
-   /// logger -> to provide logging, for MD dataset file operations
-    static Mantid::Kernel::Logger& bin_log;
-}; // end IDynamicRebinning
-
-}
-}
-
+#ifndef IDYNAMIC_REBINNING_H
+#define IDYNAMIC_REBINNING_H
+#include "MantidKernel/Logger.h"
+//
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+      /**   Class provides commont interface for various classes performing rebinning operations;
+
+       A rebinning class is selected from availible classes which do rebinning operations on  
+       user request and the ability to do the job. 
+       
+       TODO: A factory should analyse the demands for the job and user requests and return the method best suitable for the operations
+             but the common interface for the rebinning can be identified and is described here. 
+
+
+        @author  Alex Buts,  ISIS RAL 
+        @date 16/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+class IDynamicRebinning
+{
+
+    
+public:
+    /** Function identifies the indexes of the sells of the source image that can contribute into the target image
+     *  returns number of selected cells and the number of pixels (datapoints, events) contained in these cells which can contribute
+     * into the cut.     */
+    virtual size_t preselect_cells()=0; 
+  /** function takes input multidimensional data points (pixels, events) stored in the source data buffer and 
+     *  rebins these data (adds them) to MD image of the taget workspace;
+     * Alternative (USA)vdescription: Identifies the locations of the datapoints in the multidimensional grid of the target workspace
+     * and calculates the statistical properties of these points
+
+      * Outputs: 
+        Returns    true if more data availible and need to be rebinned;
+    */
+    virtual bool rebin_data_chunk()=0;
+    /** The same as rebin_data_chunk but retains the datapoints (pixels) contributed in the image. This allows to save the image and
+     *  further rebinning on basis of new MD workspace instead of the old one;
+    */
+    virtual bool rebin_data_chunk_keep_pixels()=0;
+    /** returns the estimate for number of data chunks may be used to rebin the dataset Used by algorithms to 
+        estimate the time to complete the rebinning*/
+    virtual unsigned int getNumDataChunks()const=0;
+    /** function returns the number of pixels which can contribute into a cut (Number of pixels in selected cells -- become valid after 
+     *  preselection is done and precelected cells buffer is valid */
+    virtual uint64_t getNumPreselectedPixels()const=0;
+
+
+    /** Calculates signals and errors of the MD image, obtained as the result of one or more rebin_dataset operations
+       and (in some implementations) the locations of the points in the final MDDatapoints array 
+
+       Returns the number of points (events, pixels) contributed into the image;
+     */
+    virtual uint64_t finalize_rebinning()=0;
+    /// destructor
+    virtual ~IDynamicRebinning(){};
+protected:
+   /// logger -> to provide logging, for MD dataset file operations
+    static Mantid::Kernel::Logger& bin_log;
+}; // end IDynamicRebinning
+
+}
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameter.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameter.h
index c9ba244acec651fdcff17e7ff07cf95ce2814abe..a81d5457a64c3a2aae71aa28465423bfd2c7ea7a 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameter.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameter.h
@@ -1,72 +1,72 @@
-#ifndef INVALIDPARAMETER_H
-#define INVALIDPARAMETER_H
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        /**  Invalid parameter type. Modelled from Null object pattern.
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport InvalidParameter : public Mantid::API::ImplicitFunctionParameter
-        {
-        private:
-            std::string m_value;
-
-        public:
-
-            InvalidParameter();
-
-            InvalidParameter(std::string value);
-
-            std::string getName() const;
-
-            std::string getValue() const;
-
-            bool isValid() const;
-
-            Mantid::MDAlgorithms::InvalidParameter* clone() const;
-
-            std::string toXMLString() const;
-
-            ~InvalidParameter();
-
-            static std::string parameterName()
-            {
-                return "InvalidParameter";
-            }
-        };
-    }
-}
-
-#endif
+#ifndef INVALIDPARAMETER_H
+#define INVALIDPARAMETER_H
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        /**  Invalid parameter type. Modelled from Null object pattern.
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport InvalidParameter : public Mantid::API::ImplicitFunctionParameter
+        {
+        private:
+            std::string m_value;
+
+        public:
+
+            InvalidParameter();
+
+            InvalidParameter(std::string value);
+
+            std::string getName() const;
+
+            std::string getValue() const;
+
+            bool isValid() const;
+
+            Mantid::MDAlgorithms::InvalidParameter* clone() const;
+
+            std::string toXMLString() const;
+
+            ~InvalidParameter();
+
+            static std::string parameterName()
+            {
+                return "InvalidParameter";
+            }
+        };
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameterParser.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameterParser.h
index 9dbf899c60773e29961c5db153fbe6fe5f14959d..3809d6fcca696756361bf5243c997361a0f7cb70 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameterParser.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/InvalidParameterParser.h
@@ -1,68 +1,68 @@
-#ifndef INVALID_PARAMETER_PARSER_H_
-#define INVALID_PARAMETER_PARSER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-#include "MantidKernel/System.h"
-#include "MantidKernel/ArrayProperty.h"
-#include "MantidMDAlgorithms/InvalidParameter.h"
-#include "MantidAPI/ImplicitFunctionParameterParser.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        /** A base class for absorption correction algorithms.
-
-        XML Parser for invalid parameter types
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport InvalidParameterParser : public Mantid::API::ImplicitFunctionParameterParser
-        {
-        public:
-            InvalidParameterParser();
-            Mantid::API::ImplicitFunctionParameter* createParameter(Poco::XML::Element* parameterElement);
-            void setSuccessorParser(Mantid::API::ImplicitFunctionParameterParser* paramParser);
-        protected:
-            std::auto_ptr<ImplicitFunctionParameterParser> m_successor;
-            InvalidParameter* parseInvalidParameter(std::string value);
-        };
-    }
-}
-
-#endif
+#ifndef INVALID_PARAMETER_PARSER_H_
+#define INVALID_PARAMETER_PARSER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+#include "MantidKernel/System.h"
+#include "MantidKernel/ArrayProperty.h"
+#include "MantidMDAlgorithms/InvalidParameter.h"
+#include "MantidAPI/ImplicitFunctionParameterParser.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        /** A base class for absorption correction algorithms.
+
+        XML Parser for invalid parameter types
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport InvalidParameterParser : public Mantid::API::ImplicitFunctionParameterParser
+        {
+        public:
+            InvalidParameterParser();
+            Mantid::API::ImplicitFunctionParameter* createParameter(Poco::XML::Element* parameterElement);
+            void setSuccessorParser(Mantid::API::ImplicitFunctionParameterParser* paramParser);
+        protected:
+            std::auto_ptr<ImplicitFunctionParameterParser> m_successor;
+            InvalidParameter* parseInvalidParameter(std::string value);
+        };
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Load_MDWorkspace.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Load_MDWorkspace.h
index f4886d2bbd3ecc026bfd4b5c31559edbd5fb9a85..8c4ae9efc64352ef38e077ba86b6d3961aa22d1d 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Load_MDWorkspace.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Load_MDWorkspace.h
@@ -1,80 +1,80 @@
-#ifndef LOAD_MD_WORKSPACE_H
-#define LOAD_MD_WORKSPACE_H
-
-
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MantidAPI/Algorithm.h"
-#include "MantidAPI/FileProperty.h"
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MDDataObjects/MD_FileFormatFactory.h"
-
-    /** Algorithm loads main part of existing multidimensional workspace and initate workspace for future operations
-
-        TODO: when MDDataPoints class is completed this workspace should also load MDDataPoints lookup tables and other 
-        service information, which is not implemented at the moment 
-
-        Another prospective feature would be initate a workspace from a swap file (probably not by this algorithm)
-
-
-        @author  Alex Buts,  ISIS RAL 
-        @date 23/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-
-
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-
-class DLLExport Load_MDWorkspace: public API::Algorithm
-{
-    
-public:
-
-    Load_MDWorkspace(void);
-
-    virtual ~Load_MDWorkspace(void);
-
-  /// Algorithm's name for identification overriding a virtual method
-      virtual const std::string name() const { return "LoadMDworkspace";}
-      /// Algorithm's version for identification overriding a virtual method
-      virtual int version() const { return 1;}
-      /// Algorithm's category for identification overriding a virtual method
-      virtual const std::string category() const { return "MD-Algorithms";}
-  
-private:
-    // Overridden Algorithm methods
-      void init();
-      void exec();
-
-
-protected:
-   /// logger -> to provide logging, for MD dataset file operations
-    static Mantid::Kernel::Logger& ldmdws_log;
-};
-} // end namespaces
-}
-
-#endif
+#ifndef LOAD_MD_WORKSPACE_H
+#define LOAD_MD_WORKSPACE_H
+
+
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MantidAPI/Algorithm.h"
+#include "MantidAPI/FileProperty.h"
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MDDataObjects/MD_FileFormatFactory.h"
+
+    /** Algorithm loads main part of existing multidimensional workspace and initate workspace for future operations
+
+        TODO: when MDDataPoints class is completed this workspace should also load MDDataPoints lookup tables and other 
+        service information, which is not implemented at the moment 
+
+        Another prospective feature would be initate a workspace from a swap file (probably not by this algorithm)
+
+
+        @author  Alex Buts,  ISIS RAL 
+        @date 23/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+
+
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+
+class DLLExport Load_MDWorkspace: public API::Algorithm
+{
+    
+public:
+
+    Load_MDWorkspace(void);
+
+    virtual ~Load_MDWorkspace(void);
+
+  /// Algorithm's name for identification overriding a virtual method
+      virtual const std::string name() const { return "LoadMDworkspace";}
+      /// Algorithm's version for identification overriding a virtual method
+      virtual int version() const { return 1;}
+      /// Algorithm's category for identification overriding a virtual method
+      virtual const std::string category() const { return "MD-Algorithms";}
+  
+private:
+    // Overridden Algorithm methods
+      void init();
+      void exec();
+
+
+protected:
+   /// logger -> to provide logging, for MD dataset file operations
+    static Mantid::Kernel::Logger& ldmdws_log;
+};
+} // end namespaces
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/NormalParameter.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/NormalParameter.h
index 9a63a32ad886dcee4b60cec47586c92495f4ceb0..fbbe756144f4a539463a62a81dab26b31c0779be 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/NormalParameter.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/NormalParameter.h
@@ -1,97 +1,97 @@
-#ifndef NORMALPARAMETER_H
-#define NORMALPARAMETER_H
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-/**
-
- Implementation of a parameter expressing normal vector information.
-
- @author Owen Arnold, Tessella plc
- @date 01/10/2010
-
- Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
- This file is part of Mantid.
-
- Mantid is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- Mantid is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
- File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
- Code Documentation is available at: <http://doxygen.mantidproject.org>
- */
-
-class DLLExport NormalParameter: public Mantid::API::ImplicitFunctionParameter
-{
-
-private:
-
-  std::vector<double> m_normal;
-
-  /// Get the normal vector magnitude.
-  double magnitude() const;
-
-public:
-
-  NormalParameter(double n1, double n2, double n3);
-
-  NormalParameter();
-
-  NormalParameter(const NormalParameter& other);
-
-  NormalParameter& operator=(const NormalParameter& other);
-
-  bool operator==(const NormalParameter &other) const;
-
-  bool operator!=(const NormalParameter &other) const;
-
-  std::string getName() const;
-
-  bool isValid() const;
-
-  NormalParameter reflect() const;
-
-  NormalParameter* clone() const;
-
-  ~NormalParameter();
-
-  double getX() const;
-
-  double getY() const;
-
-  double getZ() const;
-
-  NormalParameter asUnitVector() const;
-
-  bool isUnitVector() const;
-
-  std::string toXMLString() const;
-
-  static std::string parameterName()
-  {
-    return "NormalParameter";
-  }
-};
-}
-}
-
-#endif
+#ifndef NORMALPARAMETER_H
+#define NORMALPARAMETER_H
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+/**
+
+ Implementation of a parameter expressing normal vector information.
+
+ @author Owen Arnold, Tessella plc
+ @date 01/10/2010
+
+ Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+ This file is part of Mantid.
+
+ Mantid is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ Mantid is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+ Code Documentation is available at: <http://doxygen.mantidproject.org>
+ */
+
+class DLLExport NormalParameter: public Mantid::API::ImplicitFunctionParameter
+{
+
+private:
+
+  std::vector<double> m_normal;
+
+  /// Get the normal vector magnitude.
+  double magnitude() const;
+
+public:
+
+  NormalParameter(double n1, double n2, double n3);
+
+  NormalParameter();
+
+  NormalParameter(const NormalParameter& other);
+
+  NormalParameter& operator=(const NormalParameter& other);
+
+  bool operator==(const NormalParameter &other) const;
+
+  bool operator!=(const NormalParameter &other) const;
+
+  std::string getName() const;
+
+  bool isValid() const;
+
+  NormalParameter reflect() const;
+
+  NormalParameter* clone() const;
+
+  ~NormalParameter();
+
+  double getX() const;
+
+  double getY() const;
+
+  double getZ() const;
+
+  NormalParameter asUnitVector() const;
+
+  bool isUnitVector() const;
+
+  std::string toXMLString() const;
+
+  static std::string parameterName()
+  {
+    return "NormalParameter";
+  }
+};
+}
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/OriginParameter.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/OriginParameter.h
index a474b139e58add8917a3f6fbd9e855e515f78423..6f1ea0488feac8dd5a503f72b5fbcf325e68c2eb 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/OriginParameter.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/OriginParameter.h
@@ -1,89 +1,89 @@
-#ifndef ORIGINPARAMETER_H_
-#define ORIGINPARAMETER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        /**
-
-        OriginParameter. Wraps a vector expressing origin location.
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport OriginParameter :public Mantid::API::ImplicitFunctionParameter
-        {
-        private:
-
-           std::vector<double> m_origin;
-
-        public:
-
-            OriginParameter(double o1, double o2, double o3);
-            
-            OriginParameter();
-            
-            OriginParameter(const OriginParameter & other);
-            
-            OriginParameter& operator=(const OriginParameter& other);
-
-            bool operator==(const OriginParameter &other) const;
-
-            bool operator!=(const OriginParameter &other) const;
-
-            bool isValid() const;
-
-            std::string getName() const;
-
-            void asVector(std::vector<double>& origin) const;
-
-            OriginParameter* clone() const;
-
-            double getX() const;
-
-            double getY() const;
-
-            double getZ() const;
-
-            std::string toXMLString() const;
-
-            ~OriginParameter();
-
-            static std::string parameterName()
-            {
-                return "OriginParameter";
-            }
-        };
-    }
-}
-
-#endif
+#ifndef ORIGINPARAMETER_H_
+#define ORIGINPARAMETER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        /**
+
+        OriginParameter. Wraps a vector expressing origin location.
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport OriginParameter :public Mantid::API::ImplicitFunctionParameter
+        {
+        private:
+
+           std::vector<double> m_origin;
+
+        public:
+
+            OriginParameter(double o1, double o2, double o3);
+            
+            OriginParameter();
+            
+            OriginParameter(const OriginParameter & other);
+            
+            OriginParameter& operator=(const OriginParameter& other);
+
+            bool operator==(const OriginParameter &other) const;
+
+            bool operator!=(const OriginParameter &other) const;
+
+            bool isValid() const;
+
+            std::string getName() const;
+
+            void asVector(std::vector<double>& origin) const;
+
+            OriginParameter* clone() const;
+
+            double getX() const;
+
+            double getY() const;
+
+            double getZ() const;
+
+            std::string toXMLString() const;
+
+            ~OriginParameter();
+
+            static std::string parameterName()
+            {
+                return "OriginParameter";
+            }
+        };
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneFunctionBuilder.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneFunctionBuilder.h
index face79c3647bb273d393d56b2207b4d72fd0e77c..e4032f67868e4bf375ec23fc548124b42a27f033 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneFunctionBuilder.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneFunctionBuilder.h
@@ -1,69 +1,69 @@
-#ifndef PLANEFUNCTONBUILDER_H_
-#define PLANEFUNCTONBUILDER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include <memory>
-#include "MantidKernel/System.h"
-#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
-#include "MantidAPI/ImplicitFunctionBuilder.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-#include "MantidMDAlgorithms/NormalParameter.h"
-#include "MantidMDAlgorithms/OriginParameter.h"
-
-namespace Mantid
-{
-
-    namespace MDAlgorithms
-    {
-        /**
-
-        This class is for building PlaneImplicitFunction
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport PlaneFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
-        {
-        private:
-            mutable OriginParameter m_origin;
-            mutable NormalParameter m_normal;
-            mutable WidthParameter m_width;
-            mutable UpParameter m_up;
-        public:
-            PlaneFunctionBuilder();
-            void addNormalParameter(const NormalParameter& parameter);
-            void addOriginParameter(const OriginParameter& parameter);
-            void addWidthParameter(const WidthParameter& width);
-            void addUpParameter(const UpParameter& up);
-            Mantid::API::ImplicitFunction* create() const;
-            ~PlaneFunctionBuilder();
-        };
-
-    }
-}
-
-#endif
+#ifndef PLANEFUNCTONBUILDER_H_
+#define PLANEFUNCTONBUILDER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include <memory>
+#include "MantidKernel/System.h"
+#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
+#include "MantidAPI/ImplicitFunctionBuilder.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+#include "MantidMDAlgorithms/NormalParameter.h"
+#include "MantidMDAlgorithms/OriginParameter.h"
+
+namespace Mantid
+{
+
+    namespace MDAlgorithms
+    {
+        /**
+
+        This class is for building PlaneImplicitFunction
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport PlaneFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
+        {
+        private:
+            mutable OriginParameter m_origin;
+            mutable NormalParameter m_normal;
+            mutable WidthParameter m_width;
+            mutable UpParameter m_up;
+        public:
+            PlaneFunctionBuilder();
+            void addNormalParameter(const NormalParameter& parameter);
+            void addOriginParameter(const OriginParameter& parameter);
+            void addWidthParameter(const WidthParameter& width);
+            void addUpParameter(const UpParameter& up);
+            Mantid::API::ImplicitFunction* create() const;
+            ~PlaneFunctionBuilder();
+        };
+
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunction.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunction.h
index cb39b2398acb24da4af842b4213e836e7534bb01..84b5aadc2f56cd9d6f22e355a93d5c326b77a37f 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunction.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunction.h
@@ -1,106 +1,106 @@
-#ifndef MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_H_
-#define MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include <gsl/gsl_blas.h>
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunction.h"
-#include "MantidGeometry/Math/Matrix.h"
-#include "MantidMDAlgorithms/OriginParameter.h"
-#include "MantidMDAlgorithms/NormalParameter.h"
-#include "MantidMDAlgorithms/UpParameter.h"
-#include "MantidMDAlgorithms/WidthParameter.h"
-#include "MantidMDAlgorithms/PerpendicularParameter.h"
-#include "MantidMDAlgorithms/VectorMathematics.h"
-
-namespace Mantid
-{
-    namespace MDDataObjects
-    {
-        class point3D;
-    }
-    namespace MDAlgorithms
-    {
-        /**
-
-        This class represents a plane implicit function used for communicating and implementing an operation against 
-        an MDWorkspace.
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport PlaneImplicitFunction : public Mantid::API::ImplicitFunction
-        {
-        public:
-            PlaneImplicitFunction(NormalParameter& normal, OriginParameter& origin, UpParameter& up, WidthParameter& width);
-            ~PlaneImplicitFunction();
-            std::string getName() const;
-            std::string toXMLString() const;
-            bool evaluate(const API::Point3D* pPoint) const;
-            double getOriginX() const;
-            double getOriginY() const;
-            double getOriginZ() const;
-            double getNormalX() const;
-            double getNormalY() const;
-            double getNormalZ() const;
-            double getUpX() const;
-            double getUpY() const;
-            double getUpZ() const;
-            double getWidth() const;
-            bool operator==(const PlaneImplicitFunction &other) const;
-            bool operator!=(const PlaneImplicitFunction &other) const;
-
-            //Interpret the plane as a rotation matrix.
-            std::vector<double> asRotationMatrixVector() const;
-            static std::string functionName()
-            {
-                return "PlaneImplicitFunction";
-            }
-
-        private:
-
-            OriginParameter m_origin;
-            NormalParameter m_normal;
-            UpParameter m_up;
-            WidthParameter m_width;
-
-            /// Calculate the width applied to the normal direction resolved into the specified axis.
-            inline double calculateNormContributionAlongAxisComponent(const Mantid::Geometry::V3D& axis) const;
-            /// Determine whether the point is bounded by the plane described by the parameters.
-            inline bool isBoundedByPlane(const OriginParameter& origin, const NormalParameter& normal, const Mantid::API::Point3D* pPoint) const;
-            /// Get the effective normal vector to use in calculation.
-            inline NormalParameter calculateEffectiveNormal(const OriginParameter& forwardOrigin) const;
-
-        };
-
-        //Non-member helper.
-        DLLExport Mantid::Geometry::Matrix<double> extractRotationMatrix(const PlaneImplicitFunction& plane);
-    }
-}
-
-
-#endif
+#ifndef MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_H_
+#define MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include <gsl/gsl_blas.h>
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunction.h"
+#include "MantidGeometry/Math/Matrix.h"
+#include "MantidMDAlgorithms/OriginParameter.h"
+#include "MantidMDAlgorithms/NormalParameter.h"
+#include "MantidMDAlgorithms/UpParameter.h"
+#include "MantidMDAlgorithms/WidthParameter.h"
+#include "MantidMDAlgorithms/PerpendicularParameter.h"
+#include "MantidMDAlgorithms/VectorMathematics.h"
+
+namespace Mantid
+{
+    namespace MDDataObjects
+    {
+        class point3D;
+    }
+    namespace MDAlgorithms
+    {
+        /**
+
+        This class represents a plane implicit function used for communicating and implementing an operation against 
+        an MDWorkspace.
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport PlaneImplicitFunction : public Mantid::API::ImplicitFunction
+        {
+        public:
+            PlaneImplicitFunction(NormalParameter& normal, OriginParameter& origin, UpParameter& up, WidthParameter& width);
+            ~PlaneImplicitFunction();
+            std::string getName() const;
+            std::string toXMLString() const;
+            bool evaluate(const API::Point3D* pPoint) const;
+            double getOriginX() const;
+            double getOriginY() const;
+            double getOriginZ() const;
+            double getNormalX() const;
+            double getNormalY() const;
+            double getNormalZ() const;
+            double getUpX() const;
+            double getUpY() const;
+            double getUpZ() const;
+            double getWidth() const;
+            bool operator==(const PlaneImplicitFunction &other) const;
+            bool operator!=(const PlaneImplicitFunction &other) const;
+
+            //Interpret the plane as a rotation matrix.
+            std::vector<double> asRotationMatrixVector() const;
+            static std::string functionName()
+            {
+                return "PlaneImplicitFunction";
+            }
+
+        private:
+
+            OriginParameter m_origin;
+            NormalParameter m_normal;
+            UpParameter m_up;
+            WidthParameter m_width;
+
+            /// Calculate the width applied to the normal direction resolved into the specified axis.
+            inline double calculateNormContributionAlongAxisComponent(const Mantid::Geometry::V3D& axis) const;
+            /// Determine whether the point is bounded by the plane described by the parameters.
+            inline bool isBoundedByPlane(const OriginParameter& origin, const NormalParameter& normal, const Mantid::API::Point3D* pPoint) const;
+            /// Get the effective normal vector to use in calculation.
+            inline NormalParameter calculateEffectiveNormal(const OriginParameter& forwardOrigin) const;
+
+        };
+
+        //Non-member helper.
+        DLLExport Mantid::Geometry::Matrix<double> extractRotationMatrix(const PlaneImplicitFunction& plane);
+    }
+}
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunctionParser.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunctionParser.h
index eddee61b51204065d4fee89e6dbe5bd686188af4..3b0caf971e8b2c5c4fc9c479a1c9d8de92a527c3 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunctionParser.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/PlaneImplicitFunctionParser.h
@@ -1,69 +1,69 @@
-#ifndef MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_PARSER_H_
-#define MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_PARSER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include "MantidKernel/System.h"
-#include <boost/shared_ptr.hpp>
-#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
-#include "MantidAPI/ImplicitFunctionParser.h"
-#include "MantidAPI/ImplicitFunctionParameterParser.h"
-
-namespace Mantid
-{
-    namespace MDDataObjects
-    {
-        class point3D;
-    }
-    namespace MDAlgorithms
-    {
-        /**
-        This class to parse plane type functions and generate the associated builders.
-
-        @author Owen Arnold, Tessella plc
-        @date 01/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport PlaneImplicitFunctionParser : public Mantid::API::ImplicitFunctionParser
-        {
-
-        public:
-            PlaneImplicitFunctionParser();
-
-            Mantid::API::ImplicitFunctionBuilder* createFunctionBuilder(Poco::XML::Element* functionElement);
-
-            void setSuccessorParser(Mantid::API::ImplicitFunctionParser* parser);
-
-            void setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser);
-
-            PlaneFunctionBuilder* parsePlaneFunction(Poco::XML::Element* functionElement);
-
-            ~PlaneImplicitFunctionParser();
-        };
-    }
-}
-
-
-#endif
+#ifndef MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_PARSER_H_
+#define MANTID_ALGORITHMS_PLANEIMPLICITFUNCTION_PARSER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include "MantidKernel/System.h"
+#include <boost/shared_ptr.hpp>
+#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
+#include "MantidAPI/ImplicitFunctionParser.h"
+#include "MantidAPI/ImplicitFunctionParameterParser.h"
+
+namespace Mantid
+{
+    namespace MDDataObjects
+    {
+        class point3D;
+    }
+    namespace MDAlgorithms
+    {
+        /**
+        This class to parse plane type functions and generate the associated builders.
+
+        @author Owen Arnold, Tessella plc
+        @date 01/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport PlaneImplicitFunctionParser : public Mantid::API::ImplicitFunctionParser
+        {
+
+        public:
+            PlaneImplicitFunctionParser();
+
+            Mantid::API::ImplicitFunctionBuilder* createFunctionBuilder(Poco::XML::Element* functionElement);
+
+            void setSuccessorParser(Mantid::API::ImplicitFunctionParser* parser);
+
+            void setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser);
+
+            PlaneFunctionBuilder* parsePlaneFunction(Poco::XML::Element* functionElement);
+
+            ~PlaneImplicitFunctionParser();
+        };
+    }
+}
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/SingleValueParameterParser.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/SingleValueParameterParser.h
index 2958572b1a118d4b512751df1c505035552f5d27..a6f7d6e404d443bbd54397c8e3f0f393aa518f13 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/SingleValueParameterParser.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/SingleValueParameterParser.h
@@ -1,112 +1,112 @@
-#ifndef SINGLE_VALUE_PARAMETER_PARSER_H_
-#define SINGLE_VALUE_PARAMETER_PARSER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameterParser.h"
-
-#include "MantidMDAlgorithms/WidthParameter.h"
-#include "MantidMDAlgorithms/HeightParameter.h"
-#include "MantidMDAlgorithms/DepthParameter.h"
-
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-/**
-
- XML Parser for single value parameter types
-
- @author Owen Arnold, Tessella plc
- @date 01/10/2010
-
- Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
- This file is part of Mantid.
-
- Mantid is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- Mantid is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
- File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
- Code Documentation is available at: <http://doxygen.mantidproject.org>
- */
-
-template<class SingleValueParameterType>
-class DLLExport SingleValueParameterParser: public Mantid::API::ImplicitFunctionParameterParser
-{
-public:
-
-  SingleValueParameterParser();
-
-  Mantid::API::ImplicitFunctionParameter* createParameter(Poco::XML::Element* parameterElement);
-
-  void setSuccessorParser(Mantid::API::ImplicitFunctionParameterParser* paramParser);
-
-  ~SingleValueParameterParser();
-};
-
-//////////////////////////////////////////////////////////////////////////////////
-
-template<class SingleValueParameterType>
-SingleValueParameterParser<SingleValueParameterType>::SingleValueParameterParser()
-{
-}
-
-template<class SingleValueParameterType>
-Mantid::API::ImplicitFunctionParameter* SingleValueParameterParser<SingleValueParameterType>::createParameter(
-    Poco::XML::Element* parameterElement)
-{
-  std::string typeName = parameterElement->getChildElement("Type")->innerText();
-  if (SingleValueParameterType::parameterName() != typeName)
-  {
-    return m_successor->createParameter(parameterElement);
-  }
-  else
-  {
-    std::string sParameterValue = parameterElement->getChildElement("Value")->innerText();
-    double value = atof(sParameterValue.c_str());
-    return new SingleValueParameterType(value);
-  }
-}
-
-template<class SingleValueParameterType>
-void SingleValueParameterParser<SingleValueParameterType>::setSuccessorParser(
-    Mantid::API::ImplicitFunctionParameterParser* paramParser)
-{
-  m_successor = std::auto_ptr<ImplicitFunctionParameterParser>(paramParser);
-}
-
-template<class SingleValueParameterType>
-SingleValueParameterParser<SingleValueParameterType>::~SingleValueParameterParser()
-{
-}
-
-typedef SingleValueParameterParser<WidthParameter> WidthParameterParser;
-typedef SingleValueParameterParser<HeightParameter> HeightParameterParser;
-typedef SingleValueParameterParser<DepthParameter> DepthParameterParser;
-}
-}
-
-#endif
+#ifndef SINGLE_VALUE_PARAMETER_PARSER_H_
+#define SINGLE_VALUE_PARAMETER_PARSER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameterParser.h"
+
+#include "MantidMDAlgorithms/WidthParameter.h"
+#include "MantidMDAlgorithms/HeightParameter.h"
+#include "MantidMDAlgorithms/DepthParameter.h"
+
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+/**
+
+ XML Parser for single value parameter types
+
+ @author Owen Arnold, Tessella plc
+ @date 01/10/2010
+
+ Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+ This file is part of Mantid.
+
+ Mantid is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ Mantid is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+ Code Documentation is available at: <http://doxygen.mantidproject.org>
+ */
+
+template<class SingleValueParameterType>
+class DLLExport SingleValueParameterParser: public Mantid::API::ImplicitFunctionParameterParser
+{
+public:
+
+  SingleValueParameterParser();
+
+  Mantid::API::ImplicitFunctionParameter* createParameter(Poco::XML::Element* parameterElement);
+
+  void setSuccessorParser(Mantid::API::ImplicitFunctionParameterParser* paramParser);
+
+  ~SingleValueParameterParser();
+};
+
+//////////////////////////////////////////////////////////////////////////////////
+
+template<class SingleValueParameterType>
+SingleValueParameterParser<SingleValueParameterType>::SingleValueParameterParser()
+{
+}
+
+template<class SingleValueParameterType>
+Mantid::API::ImplicitFunctionParameter* SingleValueParameterParser<SingleValueParameterType>::createParameter(
+    Poco::XML::Element* parameterElement)
+{
+  std::string typeName = parameterElement->getChildElement("Type")->innerText();
+  if (SingleValueParameterType::parameterName() != typeName)
+  {
+    return m_successor->createParameter(parameterElement);
+  }
+  else
+  {
+    std::string sParameterValue = parameterElement->getChildElement("Value")->innerText();
+    double value = atof(sParameterValue.c_str());
+    return new SingleValueParameterType(value);
+  }
+}
+
+template<class SingleValueParameterType>
+void SingleValueParameterParser<SingleValueParameterType>::setSuccessorParser(
+    Mantid::API::ImplicitFunctionParameterParser* paramParser)
+{
+  m_successor = std::auto_ptr<ImplicitFunctionParameterParser>(paramParser);
+}
+
+template<class SingleValueParameterType>
+SingleValueParameterParser<SingleValueParameterType>::~SingleValueParameterParser()
+{
+}
+
+typedef SingleValueParameterParser<WidthParameter> WidthParameterParser;
+typedef SingleValueParameterParser<HeightParameter> HeightParameterParser;
+typedef SingleValueParameterParser<DepthParameter> DepthParameterParser;
+}
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Topology.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Topology.h
index f2d31bcd3d22b1e29f9407d3b5c7c503381be425..732fbbb1bd2d5ecd663df44d23b848ffe1c89b9e 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Topology.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/Topology.h
@@ -1,63 +1,63 @@
-#ifndef VIS_TOPOLOGY_H_
-#define VIS_TOPOLOGY_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-
-#include <vector>
-#include "MantidKernel/System.h"
-
-namespace Mantid
-{
-    
-    namespace API
-    {
-        class Point3D;
-    }
-
-    namespace API
-    {
-        /**
-
-        Abstract type represents topology for visualisation.
-
-        @author Owen Arnold, Tessella plc
-        @date 27/10/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        class DLLExport Topology
-        {
-
-        public:
-
-            virtual void applyOrdering(Mantid::API::Point3D** unOrderedPoints) const = 0;
-
-            virtual std::string getName() const = 0;
-
-            virtual std::string toXMLString() const = 0;
-        };
-    }
-}
-
-#endif
+#ifndef VIS_TOPOLOGY_H_
+#define VIS_TOPOLOGY_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+
+#include <vector>
+#include "MantidKernel/System.h"
+
+namespace Mantid
+{
+    
+    namespace API
+    {
+        class Point3D;
+    }
+
+    namespace API
+    {
+        /**
+
+        Abstract type represents topology for visualisation.
+
+        @author Owen Arnold, Tessella plc
+        @date 27/10/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        class DLLExport Topology
+        {
+
+        public:
+
+            virtual void applyOrdering(Mantid::API::Point3D** unOrderedPoints) const = 0;
+
+            virtual std::string getName() const = 0;
+
+            virtual std::string toXMLString() const = 0;
+        };
+    }
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/VectorMathematics.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/VectorMathematics.h
index 3e4627a8d431a7826dd12cf5e3888e5921af9d45..855280e5fdeedb920c6b92e2dbfb95aded7eb0fe 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/VectorMathematics.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/VectorMathematics.h
@@ -1,62 +1,62 @@
-#ifndef MANTID_ALGORITHMS_VECTORMATHEMATICS
-#define MANTID_ALGORITHMS_VECTORMATHEMATICS
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include <vector>
-#include <cmath>
-#include "MantidGeometry/V3D.h"
-
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-/**
-
- Grouping of static methods used to perform vector mathematics required for MDAlgorithm support.
-
- Convenience functions wrap V3D mathematical functions without the need to create temporaries.
-
- @author Owen Arnold, Tessella plc
- @date 19/10/2010
-
- Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
- This file is part of Mantid.
-
- Mantid is free software; you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation; either version 3 of the License, or
- (at your option) any later version.
-
- Mantid is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
- File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
- Code Documentation is available at: <http://doxygen.mantidproject.org>
- */
-//TODO: consider replacing with something more Mantid generic.
-
-
-DLLExport double dotProduct(Mantid::Geometry::V3D a, Mantid::Geometry::V3D b);
-
-DLLExport double dotProduct(double a1, double a2, double a3, double b1, double b2, double b3);
-
-DLLExport Mantid::Geometry::V3D crossProduct(Mantid::Geometry::V3D a, Mantid::Geometry::V3D b);
-
-DLLExport Mantid::Geometry::V3D crossProduct(double a1, double a2, double a3, double b1, double b2,
-    double b3);
-
-DLLExport double absolute(double a1, double a2, double a3);
-
-}
-}
-
-
-#endif
+#ifndef MANTID_ALGORITHMS_VECTORMATHEMATICS
+#define MANTID_ALGORITHMS_VECTORMATHEMATICS
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include <vector>
+#include <cmath>
+#include "MantidGeometry/V3D.h"
+
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+/**
+
+ Grouping of static methods used to perform vector mathematics required for MDAlgorithm support.
+
+ Convenience functions wrap V3D mathematical functions without the need to create temporaries.
+
+ @author Owen Arnold, Tessella plc
+ @date 19/10/2010
+
+ Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+ This file is part of Mantid.
+
+ Mantid is free software; you can redistribute it and/or modify
+ it under the terms of the GNU General Public License as published by
+ the Free Software Foundation; either version 3 of the License, or
+ (at your option) any later version.
+
+ Mantid is distributed in the hope that it will be useful,
+ but WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ GNU General Public License for more details.
+
+ You should have received a copy of the GNU General Public License
+ along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+ File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+ Code Documentation is available at: <http://doxygen.mantidproject.org>
+ */
+//TODO: consider replacing with something more Mantid generic.
+
+
+DLLExport double dotProduct(Mantid::Geometry::V3D a, Mantid::Geometry::V3D b);
+
+DLLExport double dotProduct(double a1, double a2, double a3, double b1, double b2, double b3);
+
+DLLExport Mantid::Geometry::V3D crossProduct(Mantid::Geometry::V3D a, Mantid::Geometry::V3D b);
+
+DLLExport Mantid::Geometry::V3D crossProduct(double a1, double a2, double a3, double b1, double b2,
+    double b3);
+
+DLLExport double absolute(double a1, double a2, double a3);
+
+}
+}
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/WidthParameter.h b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/WidthParameter.h
index 9f80d161986b6db93b7dd12acc75dd6de58f687f..19f3ecea29d51f6d3e1865d5e9b3bdbe743f1d87 100644
--- a/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/WidthParameter.h
+++ b/Code/Mantid/Framework/MDAlgorithms/inc/MantidMDAlgorithms/WidthParameter.h
@@ -1,83 +1,83 @@
-#ifndef WIDTHPARAMETER_H_
-#define WIDTHPARAMETER_H_
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        /**
-
-        WidthParameter. Wraps a vector expressing origin location.
-
-        @author Owen Arnold, Tessella plc
-        @date 09/12/2010
-
-        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-        This file is part of Mantid.
-
-        Mantid is free software; you can redistribute it and/or modify
-        it under the terms of the GNU General Public License as published by
-        the Free Software Foundation; either version 3 of the License, or
-        (at your option) any later version.
-
-        Mantid is distributed in the hope that it will be useful,
-        but WITHOUT ANY WARRANTY; without even the implied warranty of
-        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-        GNU General Public License for more details.
-
-        You should have received a copy of the GNU General Public License
-        along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
-        Code Documentation is available at: <http://doxygen.mantidproject.org>
-        */
-
-        
-        class DLLExport WidthParameter :public Mantid::API::ImplicitFunctionParameter
-        {
-        private:
-
-           double m_width;
-
-        public:
-
-            WidthParameter(double width);
-            
-            WidthParameter();
-            
-            WidthParameter(const WidthParameter & other);
-            
-            WidthParameter& operator=(const WidthParameter& other);
-
-            bool operator==(const WidthParameter &other) const;
-
-            bool operator!=(const WidthParameter &other) const;
-
-            bool isValid() const;
-
-            std::string getName() const;
-
-            WidthParameter* clone() const;
-
-            double getValue() const;
-
-            std::string toXMLString() const;
-
-            ~WidthParameter();
-
-            static std::string parameterName()
-            {
-                return "WidthParameter";
-            }
-        };
-    }
-}
-
+#ifndef WIDTHPARAMETER_H_
+#define WIDTHPARAMETER_H_
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        /**
+
+        WidthParameter. Wraps a vector expressing origin location.
+
+        @author Owen Arnold, Tessella plc
+        @date 09/12/2010
+
+        Copyright &copy; 2010 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+        This file is part of Mantid.
+
+        Mantid is free software; you can redistribute it and/or modify
+        it under the terms of the GNU General Public License as published by
+        the Free Software Foundation; either version 3 of the License, or
+        (at your option) any later version.
+
+        Mantid is distributed in the hope that it will be useful,
+        but WITHOUT ANY WARRANTY; without even the implied warranty of
+        MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+        GNU General Public License for more details.
+
+        You should have received a copy of the GNU General Public License
+        along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+        File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>
+        Code Documentation is available at: <http://doxygen.mantidproject.org>
+        */
+
+        
+        class DLLExport WidthParameter :public Mantid::API::ImplicitFunctionParameter
+        {
+        private:
+
+           double m_width;
+
+        public:
+
+            WidthParameter(double width);
+            
+            WidthParameter();
+            
+            WidthParameter(const WidthParameter & other);
+            
+            WidthParameter& operator=(const WidthParameter& other);
+
+            bool operator==(const WidthParameter &other) const;
+
+            bool operator!=(const WidthParameter &other) const;
+
+            bool isValid() const;
+
+            std::string getName() const;
+
+            WidthParameter* clone() const;
+
+            double getValue() const;
+
+            std::string toXMLString() const;
+
+            ~WidthParameter();
+
+            static std::string parameterName()
+            {
+                return "WidthParameter";
+            }
+        };
+    }
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/rebinninginfoschema.h b/Code/Mantid/Framework/MDAlgorithms/rebinninginfoschema.h
index 9e7e9482babff918f0b59743d4bd429678f84779..56fe7c65d0fb789893e6bd593b8f7347014ba3b8 100644
--- a/Code/Mantid/Framework/MDAlgorithms/rebinninginfoschema.h
+++ b/Code/Mantid/Framework/MDAlgorithms/rebinninginfoschema.h
@@ -1,6770 +1,6770 @@
-#pragma once
-
-#using <mscorlib.dll>
-#using <System.dll>
-#using <System.Data.dll>
-#using <System.Xml.dll>
-
-using namespace System::Security::Permissions;
-[assembly:SecurityPermissionAttribute(SecurityAction::RequestMinimum, SkipVerification=false)];
-// 
-// This source code was auto-generated by xsd, Version=4.0.30319.1.
-// 
-using namespace System;
-ref class NewDataSet;
-
-
-/// <summary>
-///Represents a strongly typed in-memory cache of data.
-///</summary>
-[System::Serializable, 
-System::ComponentModel::DesignerCategoryAttribute(L"code"), 
-System::ComponentModel::ToolboxItem(true), 
-System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedDataSetSchema"), 
-System::Xml::Serialization::XmlRootAttribute(L"NewDataSet"), 
-System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.DataSet")]
-public ref class NewDataSet : public ::System::Data::DataSet {
-    public : ref class FunctionDataTable;
-    public : ref class ParameterListDataTable;
-    public : ref class ParameterDataTable;
-    public : ref class DimensionDataTable;
-    public : ref class IntegratedDataTable;
-    public : ref class CompositeInstructionDataTable;
-    public : ref class GeometryDataTable;
-    public : ref class XDimensionDataTable;
-    public : ref class YDimensionDataTable;
-    public : ref class ZDimensionDataTable;
-    public : ref class TDimensionDataTable;
-    public : ref class OperationDataTable;
-    public : ref class FunctionRow;
-    public : ref class ParameterListRow;
-    public : ref class ParameterRow;
-    public : ref class DimensionRow;
-    public : ref class IntegratedRow;
-    public : ref class CompositeInstructionRow;
-    public : ref class GeometryRow;
-    public : ref class XDimensionRow;
-    public : ref class YDimensionRow;
-    public : ref class ZDimensionRow;
-    public : ref class TDimensionRow;
-    public : ref class OperationRow;
-    public : ref class FunctionRowChangeEvent;
-    public : ref class ParameterListRowChangeEvent;
-    public : ref class ParameterRowChangeEvent;
-    public : ref class DimensionRowChangeEvent;
-    public : ref class IntegratedRowChangeEvent;
-    public : ref class CompositeInstructionRowChangeEvent;
-    public : ref class GeometryRowChangeEvent;
-    public : ref class XDimensionRowChangeEvent;
-    public : ref class YDimensionRowChangeEvent;
-    public : ref class ZDimensionRowChangeEvent;
-    public : ref class TDimensionRowChangeEvent;
-    public : ref class OperationRowChangeEvent;
-    
-    private: NewDataSet::FunctionDataTable^  tableFunction;
-    
-    private: NewDataSet::ParameterListDataTable^  tableParameterList;
-    
-    private: NewDataSet::ParameterDataTable^  tableParameter;
-    
-    private: NewDataSet::DimensionDataTable^  tableDimension;
-    
-    private: NewDataSet::IntegratedDataTable^  tableIntegrated;
-    
-    private: NewDataSet::CompositeInstructionDataTable^  tableCompositeInstruction;
-    
-    private: NewDataSet::GeometryDataTable^  tableGeometry;
-    
-    private: NewDataSet::XDimensionDataTable^  tableXDimension;
-    
-    private: NewDataSet::YDimensionDataTable^  tableYDimension;
-    
-    private: NewDataSet::ZDimensionDataTable^  tableZDimension;
-    
-    private: NewDataSet::TDimensionDataTable^  tableTDimension;
-    
-    private: NewDataSet::OperationDataTable^  tableOperation;
-    
-    private: ::System::Data::DataRelation^  relationFunction_Function;
-    
-    private: ::System::Data::DataRelation^  relationCompositeInstruction_Function;
-    
-    private: ::System::Data::DataRelation^  relationFunction_ParameterList;
-    
-    private: ::System::Data::DataRelation^  relationParameterList_Parameter;
-    
-    private: ::System::Data::DataRelation^  relationGeometry_Dimension;
-    
-    private: ::System::Data::DataRelation^  relationDimension_Integrated;
-    
-    private: ::System::Data::DataRelation^  relationCompositeInstruction_Geometry;
-    
-    private: ::System::Data::DataRelation^  relationGeometry_XDimension;
-    
-    private: ::System::Data::DataRelation^  relationGeometry_YDimension;
-    
-    private: ::System::Data::DataRelation^  relationGeometry_ZDimension;
-    
-    private: ::System::Data::DataRelation^  relationGeometry_TDimension;
-    
-    private: ::System::Data::DataRelation^  relationCompositeInstruction_Operation;
-    
-    private: ::System::Data::SchemaSerializationMode _schemaSerializationMode;
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void FunctionRowChangeEventHandler(::System::Object^  sender, NewDataSet::FunctionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void ParameterListRowChangeEventHandler(::System::Object^  sender, NewDataSet::ParameterListRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void ParameterRowChangeEventHandler(::System::Object^  sender, NewDataSet::ParameterRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void DimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::DimensionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void IntegratedRowChangeEventHandler(::System::Object^  sender, NewDataSet::IntegratedRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void CompositeInstructionRowChangeEventHandler(::System::Object^  sender, NewDataSet::CompositeInstructionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void GeometryRowChangeEventHandler(::System::Object^  sender, NewDataSet::GeometryRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void XDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::XDimensionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void YDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::YDimensionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void ZDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::ZDimensionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void TDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::TDimensionRowChangeEvent^  e);
-    
-    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    delegate System::Void OperationRowChangeEventHandler(::System::Object^  sender, NewDataSet::OperationRowChangeEvent^  e);
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    NewDataSet();
-    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    NewDataSet(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::FunctionDataTable^  Function {
-        NewDataSet::FunctionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::ParameterListDataTable^  ParameterList {
-        NewDataSet::ParameterListDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::ParameterDataTable^  Parameter {
-        NewDataSet::ParameterDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::DimensionDataTable^  Dimension {
-        NewDataSet::DimensionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::IntegratedDataTable^  Integrated {
-        NewDataSet::IntegratedDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::CompositeInstructionDataTable^  CompositeInstruction {
-        NewDataSet::CompositeInstructionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::GeometryDataTable^  Geometry {
-        NewDataSet::GeometryDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::XDimensionDataTable^  XDimension {
-        NewDataSet::XDimensionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::YDimensionDataTable^  YDimension {
-        NewDataSet::YDimensionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::ZDimensionDataTable^  ZDimension {
-        NewDataSet::ZDimensionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::TDimensionDataTable^  TDimension {
-        NewDataSet::TDimensionDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::Browsable(false), 
-    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
-    property NewDataSet::OperationDataTable^  Operation {
-        NewDataSet::OperationDataTable^  get();
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::BrowsableAttribute(true), 
-    System::ComponentModel::DesignerSerializationVisibilityAttribute(::System::ComponentModel::DesignerSerializationVisibility::Visible)]
-    virtual property ::System::Data::SchemaSerializationMode SchemaSerializationMode {
-        ::System::Data::SchemaSerializationMode get() override;
-        System::Void set(::System::Data::SchemaSerializationMode value) override;
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::DesignerSerializationVisibilityAttribute(::System::ComponentModel::DesignerSerializationVisibility::Hidden)]
-    property ::System::Data::DataTableCollection^  Tables {
-        ::System::Data::DataTableCollection^  get() new;
-    }
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-    System::ComponentModel::DesignerSerializationVisibilityAttribute(::System::ComponentModel::DesignerSerializationVisibility::Hidden)]
-    property ::System::Data::DataRelationCollection^  Relations {
-        ::System::Data::DataRelationCollection^  get() new;
-    }
-    
-    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    virtual ::System::Void InitializeDerivedDataSet() override;
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    virtual ::System::Data::DataSet^  Clone() override;
-    
-    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    virtual ::System::Boolean ShouldSerializeTables() override;
-    
-    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    virtual ::System::Boolean ShouldSerializeRelations() override;
-    
-    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    virtual ::System::Void ReadXmlSerializable(::System::Xml::XmlReader^  reader) override;
-    
-    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    virtual ::System::Xml::Schema::XmlSchema^  GetSchemaSerializable() override;
-    
-    internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Void InitVars();
-    
-    internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Void InitVars(::System::Boolean initTable);
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Void InitClass();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeFunction();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeParameterList();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeParameter();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeDimension();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeIntegrated();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeCompositeInstruction();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeGeometry();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeXDimension();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeYDimension();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeZDimension();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeTDimension();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Boolean ShouldSerializeOperation();
-    
-    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ::System::Void SchemaChanged(::System::Object^  sender, ::System::ComponentModel::CollectionChangeEventArgs^  e);
-    
-    public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedDataSetSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class FunctionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnName;
-        
-        private: ::System::Data::DataColumn^  columnFunction_Id;
-        
-        private: ::System::Data::DataColumn^  columnFunction_Id_0;
-        
-        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        FunctionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        FunctionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        FunctionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  NameColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Function_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Function_Id_0Column {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::FunctionRow^  default [::System::Int32 ] {
-            NewDataSet::FunctionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddFunctionRow(NewDataSet::FunctionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::FunctionRow^  AddFunctionRow(System::String^  Name, NewDataSet::FunctionRow^  parentFunctionRowByFunction_Function, 
-                    NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Function);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::FunctionRow^  NewFunctionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveFunctionRow(NewDataSet::FunctionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class ParameterListDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnParameterList_Id;
-        
-        private: ::System::Data::DataColumn^  columnFunction_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterListDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterListDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterListDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  ParameterList_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Function_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ParameterListRow^  default [::System::Int32 ] {
-            NewDataSet::ParameterListRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddParameterListRow(NewDataSet::ParameterListRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::ParameterListRow^  AddParameterListRow(NewDataSet::FunctionRow^  parentFunctionRowByFunction_ParameterList);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::ParameterListRow^  NewParameterListRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveParameterListRow(NewDataSet::ParameterListRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class ParameterDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnName;
-        
-        private: ::System::Data::DataColumn^  columnType;
-        
-        private: ::System::Data::DataColumn^  columnValue;
-        
-        private: ::System::Data::DataColumn^  columnParameterList_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  NameColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  TypeColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  ValueColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  ParameterList_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ParameterRow^  default [::System::Int32 ] {
-            NewDataSet::ParameterRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddParameterRow(NewDataSet::ParameterRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::ParameterRow^  AddParameterRow(System::String^  Name, System::String^  Type, System::String^  Value, 
-                    NewDataSet::ParameterListRow^  parentParameterListRowByParameterList_Parameter);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::ParameterRow^  NewParameterRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveParameterRow(NewDataSet::ParameterRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class DimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnID;
-        
-        private: ::System::Data::DataColumn^  columnName;
-        
-        private: ::System::Data::DataColumn^  columnUpperBounds;
-        
-        private: ::System::Data::DataColumn^  columnLowerBounds;
-        
-        private: ::System::Data::DataColumn^  columnDimension_Id;
-        
-        private: ::System::Data::DataColumn^  columnGeometry_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        DimensionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        DimensionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        DimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  IDColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  NameColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  UpperBoundsColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  LowerBoundsColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Dimension_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Geometry_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::DimensionRow^  default [::System::Int32 ] {
-            NewDataSet::DimensionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddDimensionRow(NewDataSet::DimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::DimensionRow^  AddDimensionRow(System::Int64 ID, System::String^  Name, System::Int64 UpperBounds, System::Int64 LowerBounds, 
-                    NewDataSet::GeometryRow^  parentGeometryRowByGeometry_Dimension);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::DimensionRow^  NewDimensionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveDimensionRow(NewDataSet::DimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class IntegratedDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnUpperLimit;
-        
-        private: ::System::Data::DataColumn^  columnLowerLimit;
-        
-        private: ::System::Data::DataColumn^  columnDimension_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        IntegratedDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        IntegratedDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        IntegratedDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  UpperLimitColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  LowerLimitColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Dimension_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::IntegratedRow^  default [::System::Int32 ] {
-            NewDataSet::IntegratedRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddIntegratedRow(NewDataSet::IntegratedRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::IntegratedRow^  AddIntegratedRow(System::Int64 UpperLimit, System::Int64 LowerLimit, NewDataSet::DimensionRow^  parentDimensionRowByDimension_Integrated);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::IntegratedRow^  NewIntegratedRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveIntegratedRow(NewDataSet::IntegratedRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class CompositeInstructionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnMDWorkspaceName;
-        
-        private: ::System::Data::DataColumn^  columnMDWorkspaceLocation;
-        
-        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        CompositeInstructionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        CompositeInstructionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        CompositeInstructionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  MDWorkspaceNameColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  MDWorkspaceLocationColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::CompositeInstructionRow^  default [::System::Int32 ] {
-            NewDataSet::CompositeInstructionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::CompositeInstructionRow^  AddCompositeInstructionRow(System::String^  MDWorkspaceName, System::String^  MDWorkspaceLocation);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::CompositeInstructionRow^  NewCompositeInstructionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class GeometryDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnGeometry_Id;
-        
-        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        GeometryDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        GeometryDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        GeometryDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Geometry_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  default [::System::Int32 ] {
-            NewDataSet::GeometryRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddGeometryRow(NewDataSet::GeometryRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::GeometryRow^  AddGeometryRow(NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Geometry);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::GeometryRow^  NewGeometryRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveGeometryRow(NewDataSet::GeometryRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class XDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnRefDimensionId;
-        
-        private: ::System::Data::DataColumn^  columnGeometry_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        XDimensionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        XDimensionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        XDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  RefDimensionIdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Geometry_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::XDimensionRow^  default [::System::Int32 ] {
-            NewDataSet::XDimensionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddXDimensionRow(NewDataSet::XDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::XDimensionRow^  AddXDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_XDimension);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::XDimensionRow^  NewXDimensionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveXDimensionRow(NewDataSet::XDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class YDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnRefDimensionId;
-        
-        private: ::System::Data::DataColumn^  columnGeometry_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        YDimensionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        YDimensionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        YDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  RefDimensionIdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Geometry_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::YDimensionRow^  default [::System::Int32 ] {
-            NewDataSet::YDimensionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddYDimensionRow(NewDataSet::YDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::YDimensionRow^  AddYDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_YDimension);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::YDimensionRow^  NewYDimensionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveYDimensionRow(NewDataSet::YDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class ZDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnRefDimensionId;
-        
-        private: ::System::Data::DataColumn^  columnGeometry_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ZDimensionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ZDimensionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ZDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  RefDimensionIdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Geometry_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ZDimensionRow^  default [::System::Int32 ] {
-            NewDataSet::ZDimensionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddZDimensionRow(NewDataSet::ZDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::ZDimensionRow^  AddZDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_ZDimension);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::ZDimensionRow^  NewZDimensionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveZDimensionRow(NewDataSet::ZDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class TDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnRefDimensionId;
-        
-        private: ::System::Data::DataColumn^  columnGeometry_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        TDimensionDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        TDimensionDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        TDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  RefDimensionIdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  Geometry_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::TDimensionRow^  default [::System::Int32 ] {
-            NewDataSet::TDimensionRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddTDimensionRow(NewDataSet::TDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::TDimensionRow^  AddTDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_TDimension);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::TDimensionRow^  NewTDimensionRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveTDimensionRow(NewDataSet::TDimensionRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents the strongly named DataTable class.
-///</summary>
-    [System::Serializable, 
-    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
-    ref class OperationDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
-        
-        private: ::System::Data::DataColumn^  columnType;
-        
-        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::OperationRowChangeEventHandler^  OperationRowChanging;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::OperationRowChangeEventHandler^  OperationRowChanged;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::OperationRowChangeEventHandler^  OperationRowDeleting;
-        
-        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        event NewDataSet::OperationRowChangeEventHandler^  OperationRowDeleted;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        OperationDataTable();
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        OperationDataTable(::System::Data::DataTable^  table);
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        OperationDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  TypeColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
-            ::System::Data::DataColumn^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
-        System::ComponentModel::Browsable(false)]
-        property ::System::Int32 Count {
-            ::System::Int32 get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::OperationRow^  default [::System::Int32 ] {
-            NewDataSet::OperationRow^  get(::System::Int32 index);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void AddOperationRow(NewDataSet::OperationRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::OperationRow^  AddOperationRow(System::String^  Type, NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Operation);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Collections::IEnumerator^  GetEnumerator();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  Clone() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataTable^  CreateInstance() override;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitVars();
-        
-        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void InitClass();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        NewDataSet::OperationRow^  NewOperationRow();
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Type^  GetRowType() override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void RemoveOperationRow(NewDataSet::OperationRow^  row);
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class FunctionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::FunctionDataTable^  tableFunction;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        FunctionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  Name {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Function_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Function_Id_0 {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 CompositeInstruction_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::FunctionRow^  FunctionRowParent {
-            NewDataSet::FunctionRow^  get();
-            System::Void set(NewDataSet::FunctionRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::CompositeInstructionRow^  CompositeInstructionRow {
-            NewDataSet::CompositeInstructionRow^  get();
-            System::Void set(NewDataSet::CompositeInstructionRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsFunction_Id_0Null();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetFunction_Id_0Null();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsCompositeInstruction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetCompositeInstruction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::ParameterListRow^  >^  GetParameterListRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::FunctionRow^  >^  GetFunctionRows();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class ParameterListRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::ParameterListDataTable^  tableParameterList;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterListRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 ParameterList_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Function_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::FunctionRow^  FunctionRow {
-            NewDataSet::FunctionRow^  get();
-            System::Void set(NewDataSet::FunctionRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsFunction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetFunction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::ParameterRow^  >^  GetParameterRows();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class ParameterRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::ParameterDataTable^  tableParameter;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  Name {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  Type {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  Value {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 ParameterList_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ParameterListRow^  ParameterListRow {
-            NewDataSet::ParameterListRow^  get();
-            System::Void set(NewDataSet::ParameterListRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsParameterList_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetParameterList_IdNull();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class DimensionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::DimensionDataTable^  tableDimension;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        DimensionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 ID {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  Name {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 UpperBounds {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 LowerBounds {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Dimension_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Geometry_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  GeometryRow {
-            NewDataSet::GeometryRow^  get();
-            System::Void set(NewDataSet::GeometryRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsGeometry_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetGeometry_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::IntegratedRow^  >^  GetIntegratedRows();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class IntegratedRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::IntegratedDataTable^  tableIntegrated;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        IntegratedRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 UpperLimit {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 LowerLimit {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Dimension_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::DimensionRow^  DimensionRow {
-            NewDataSet::DimensionRow^  get();
-            System::Void set(NewDataSet::DimensionRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsDimension_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetDimension_IdNull();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class CompositeInstructionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::CompositeInstructionDataTable^  tableCompositeInstruction;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        CompositeInstructionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  MDWorkspaceName {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  MDWorkspaceLocation {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 CompositeInstruction_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::GeometryRow^  >^  GetGeometryRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::OperationRow^  >^  GetOperationRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::FunctionRow^  >^  GetFunctionRows();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class GeometryRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::GeometryDataTable^  tableGeometry;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        GeometryRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Geometry_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 CompositeInstruction_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::CompositeInstructionRow^  CompositeInstructionRow {
-            NewDataSet::CompositeInstructionRow^  get();
-            System::Void set(NewDataSet::CompositeInstructionRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsCompositeInstruction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetCompositeInstruction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::DimensionRow^  >^  GetDimensionRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::XDimensionRow^  >^  GetXDimensionRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::YDimensionRow^  >^  GetYDimensionRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::ZDimensionRow^  >^  GetZDimensionRows();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        cli::array< NewDataSet::TDimensionRow^  >^  GetTDimensionRows();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class XDimensionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::XDimensionDataTable^  tableXDimension;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        XDimensionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 RefDimensionId {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Geometry_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  GeometryRow {
-            NewDataSet::GeometryRow^  get();
-            System::Void set(NewDataSet::GeometryRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsGeometry_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetGeometry_IdNull();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class YDimensionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::YDimensionDataTable^  tableYDimension;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        YDimensionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 RefDimensionId {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Geometry_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  GeometryRow {
-            NewDataSet::GeometryRow^  get();
-            System::Void set(NewDataSet::GeometryRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsGeometry_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetGeometry_IdNull();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class ZDimensionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::ZDimensionDataTable^  tableZDimension;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ZDimensionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 RefDimensionId {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Geometry_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  GeometryRow {
-            NewDataSet::GeometryRow^  get();
-            System::Void set(NewDataSet::GeometryRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsGeometry_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetGeometry_IdNull();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class TDimensionRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::TDimensionDataTable^  tableTDimension;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        TDimensionRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int64 RefDimensionId {
-            System::Int64 get();
-            System::Void set(System::Int64 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 Geometry_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  GeometryRow {
-            NewDataSet::GeometryRow^  get();
-            System::Void set(NewDataSet::GeometryRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetRefDimensionIdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsGeometry_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetGeometry_IdNull();
-    };
-    
-    public : /// <summary>
-///Represents strongly named DataRow class.
-///</summary>
-    ref class OperationRow : public ::System::Data::DataRow {
-        
-        private: NewDataSet::OperationDataTable^  tableOperation;
-        
-        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        OperationRow(::System::Data::DataRowBuilder^  rb);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::String^  Type {
-            System::String^  get();
-            System::Void set(System::String^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property System::Int32 CompositeInstruction_Id {
-            System::Int32 get();
-            System::Void set(System::Int32 value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::CompositeInstructionRow^  CompositeInstructionRow {
-            NewDataSet::CompositeInstructionRow^  get();
-            System::Void set(NewDataSet::CompositeInstructionRow^  value);
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Boolean IsCompositeInstruction_IdNull();
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ::System::Void SetCompositeInstruction_IdNull();
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class FunctionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::FunctionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        FunctionRowChangeEvent(NewDataSet::FunctionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::FunctionRow^  Row {
-            NewDataSet::FunctionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class ParameterListRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::ParameterListRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterListRowChangeEvent(NewDataSet::ParameterListRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ParameterListRow^  Row {
-            NewDataSet::ParameterListRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class ParameterRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::ParameterRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ParameterRowChangeEvent(NewDataSet::ParameterRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ParameterRow^  Row {
-            NewDataSet::ParameterRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class DimensionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::DimensionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        DimensionRowChangeEvent(NewDataSet::DimensionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::DimensionRow^  Row {
-            NewDataSet::DimensionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class IntegratedRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::IntegratedRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        IntegratedRowChangeEvent(NewDataSet::IntegratedRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::IntegratedRow^  Row {
-            NewDataSet::IntegratedRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class CompositeInstructionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::CompositeInstructionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        CompositeInstructionRowChangeEvent(NewDataSet::CompositeInstructionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::CompositeInstructionRow^  Row {
-            NewDataSet::CompositeInstructionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class GeometryRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::GeometryRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        GeometryRowChangeEvent(NewDataSet::GeometryRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::GeometryRow^  Row {
-            NewDataSet::GeometryRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class XDimensionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::XDimensionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        XDimensionRowChangeEvent(NewDataSet::XDimensionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::XDimensionRow^  Row {
-            NewDataSet::XDimensionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class YDimensionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::YDimensionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        YDimensionRowChangeEvent(NewDataSet::YDimensionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::YDimensionRow^  Row {
-            NewDataSet::YDimensionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class ZDimensionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::ZDimensionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        ZDimensionRowChangeEvent(NewDataSet::ZDimensionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::ZDimensionRow^  Row {
-            NewDataSet::ZDimensionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class TDimensionRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::TDimensionRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        TDimensionRowChangeEvent(NewDataSet::TDimensionRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::TDimensionRow^  Row {
-            NewDataSet::TDimensionRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-    
-    public : /// <summary>
-///Row event argument class
-///</summary>
-    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-    ref class OperationRowChangeEvent : public ::System::EventArgs {
-        
-        private: NewDataSet::OperationRow^  eventRow;
-        
-        private: ::System::Data::DataRowAction eventAction;
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
-        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        OperationRowChangeEvent(NewDataSet::OperationRow^  row, ::System::Data::DataRowAction action);
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property NewDataSet::OperationRow^  Row {
-            NewDataSet::OperationRow^  get();
-        }
-        
-        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
-        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
-        property ::System::Data::DataRowAction Action {
-            ::System::Data::DataRowAction get();
-        }
-    };
-};
-
-
-inline NewDataSet::NewDataSet() {
-    this->BeginInit();
-    this->InitClass();
-    ::System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler = gcnew ::System::ComponentModel::CollectionChangeEventHandler(this, &NewDataSet::SchemaChanged);
-    __super::Tables->CollectionChanged += schemaChangedHandler;
-    __super::Relations->CollectionChanged += schemaChangedHandler;
-    this->EndInit();
-}
-
-inline NewDataSet::NewDataSet(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataSet(info, context, false) {
-    if (this->IsBinarySerialized(info, context) == true) {
-        this->InitVars(false);
-        ::System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler1 = gcnew ::System::ComponentModel::CollectionChangeEventHandler(this, &NewDataSet::SchemaChanged);
-        this->Tables->CollectionChanged += schemaChangedHandler1;
-        this->Relations->CollectionChanged += schemaChangedHandler1;
-        return;
-    }
-    ::System::String^  strSchema = (cli::safe_cast<::System::String^  >(info->GetValue(L"XmlSchema", ::System::String::typeid)));
-    if (this->DetermineSchemaSerializationMode(info, context) == ::System::Data::SchemaSerializationMode::IncludeSchema) {
-        ::System::Data::DataSet^  ds = (gcnew ::System::Data::DataSet());
-        ds->ReadXmlSchema((gcnew ::System::Xml::XmlTextReader((gcnew ::System::IO::StringReader(strSchema)))));
-        if (ds->Tables[L"Function"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::FunctionDataTable(ds->Tables[L"Function"])));
-        }
-        if (ds->Tables[L"ParameterList"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::ParameterListDataTable(ds->Tables[L"ParameterList"])));
-        }
-        if (ds->Tables[L"Parameter"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::ParameterDataTable(ds->Tables[L"Parameter"])));
-        }
-        if (ds->Tables[L"Dimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::DimensionDataTable(ds->Tables[L"Dimension"])));
-        }
-        if (ds->Tables[L"Integrated"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::IntegratedDataTable(ds->Tables[L"Integrated"])));
-        }
-        if (ds->Tables[L"CompositeInstruction"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::CompositeInstructionDataTable(ds->Tables[L"CompositeInstruction"])));
-        }
-        if (ds->Tables[L"Geometry"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::GeometryDataTable(ds->Tables[L"Geometry"])));
-        }
-        if (ds->Tables[L"XDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::XDimensionDataTable(ds->Tables[L"XDimension"])));
-        }
-        if (ds->Tables[L"YDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::YDimensionDataTable(ds->Tables[L"YDimension"])));
-        }
-        if (ds->Tables[L"ZDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::ZDimensionDataTable(ds->Tables[L"ZDimension"])));
-        }
-        if (ds->Tables[L"TDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::TDimensionDataTable(ds->Tables[L"TDimension"])));
-        }
-        if (ds->Tables[L"Operation"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::OperationDataTable(ds->Tables[L"Operation"])));
-        }
-        this->DataSetName = ds->DataSetName;
-        this->Prefix = ds->Prefix;
-        this->Namespace = ds->Namespace;
-        this->Locale = ds->Locale;
-        this->CaseSensitive = ds->CaseSensitive;
-        this->EnforceConstraints = ds->EnforceConstraints;
-        this->Merge(ds, false, ::System::Data::MissingSchemaAction::Add);
-        this->InitVars();
-    }
-    else {
-        this->ReadXmlSchema((gcnew ::System::Xml::XmlTextReader((gcnew ::System::IO::StringReader(strSchema)))));
-    }
-    this->GetSerializationData(info, context);
-    ::System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler = gcnew ::System::ComponentModel::CollectionChangeEventHandler(this, &NewDataSet::SchemaChanged);
-    __super::Tables->CollectionChanged += schemaChangedHandler;
-    this->Relations->CollectionChanged += schemaChangedHandler;
-}
-
-inline NewDataSet::FunctionDataTable^  NewDataSet::Function::get() {
-    return this->tableFunction;
-}
-
-inline NewDataSet::ParameterListDataTable^  NewDataSet::ParameterList::get() {
-    return this->tableParameterList;
-}
-
-inline NewDataSet::ParameterDataTable^  NewDataSet::Parameter::get() {
-    return this->tableParameter;
-}
-
-inline NewDataSet::DimensionDataTable^  NewDataSet::Dimension::get() {
-    return this->tableDimension;
-}
-
-inline NewDataSet::IntegratedDataTable^  NewDataSet::Integrated::get() {
-    return this->tableIntegrated;
-}
-
-inline NewDataSet::CompositeInstructionDataTable^  NewDataSet::CompositeInstruction::get() {
-    return this->tableCompositeInstruction;
-}
-
-inline NewDataSet::GeometryDataTable^  NewDataSet::Geometry::get() {
-    return this->tableGeometry;
-}
-
-inline NewDataSet::XDimensionDataTable^  NewDataSet::XDimension::get() {
-    return this->tableXDimension;
-}
-
-inline NewDataSet::YDimensionDataTable^  NewDataSet::YDimension::get() {
-    return this->tableYDimension;
-}
-
-inline NewDataSet::ZDimensionDataTable^  NewDataSet::ZDimension::get() {
-    return this->tableZDimension;
-}
-
-inline NewDataSet::TDimensionDataTable^  NewDataSet::TDimension::get() {
-    return this->tableTDimension;
-}
-
-inline NewDataSet::OperationDataTable^  NewDataSet::Operation::get() {
-    return this->tableOperation;
-}
-
-inline ::System::Data::SchemaSerializationMode NewDataSet::SchemaSerializationMode::get() {
-    return this->_schemaSerializationMode;
-}
-inline System::Void NewDataSet::SchemaSerializationMode::set(::System::Data::SchemaSerializationMode value) {
-    this->_schemaSerializationMode = __identifier(value);
-}
-
-inline ::System::Data::DataTableCollection^  NewDataSet::Tables::get() {
-    return __super::Tables;
-}
-
-inline ::System::Data::DataRelationCollection^  NewDataSet::Relations::get() {
-    return __super::Relations;
-}
-
-inline ::System::Void NewDataSet::InitializeDerivedDataSet() {
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline ::System::Data::DataSet^  NewDataSet::Clone() {
-    NewDataSet^  cln = (cli::safe_cast<NewDataSet^  >(__super::Clone()));
-    cln->InitVars();
-    cln->SchemaSerializationMode = this->SchemaSerializationMode;
-    return cln;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeTables() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeRelations() {
-    return false;
-}
-
-inline ::System::Void NewDataSet::ReadXmlSerializable(::System::Xml::XmlReader^  reader) {
-    if (this->DetermineSchemaSerializationMode(reader) == ::System::Data::SchemaSerializationMode::IncludeSchema) {
-        this->Reset();
-        ::System::Data::DataSet^  ds = (gcnew ::System::Data::DataSet());
-        ds->ReadXml(reader);
-        if (ds->Tables[L"Function"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::FunctionDataTable(ds->Tables[L"Function"])));
-        }
-        if (ds->Tables[L"ParameterList"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::ParameterListDataTable(ds->Tables[L"ParameterList"])));
-        }
-        if (ds->Tables[L"Parameter"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::ParameterDataTable(ds->Tables[L"Parameter"])));
-        }
-        if (ds->Tables[L"Dimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::DimensionDataTable(ds->Tables[L"Dimension"])));
-        }
-        if (ds->Tables[L"Integrated"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::IntegratedDataTable(ds->Tables[L"Integrated"])));
-        }
-        if (ds->Tables[L"CompositeInstruction"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::CompositeInstructionDataTable(ds->Tables[L"CompositeInstruction"])));
-        }
-        if (ds->Tables[L"Geometry"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::GeometryDataTable(ds->Tables[L"Geometry"])));
-        }
-        if (ds->Tables[L"XDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::XDimensionDataTable(ds->Tables[L"XDimension"])));
-        }
-        if (ds->Tables[L"YDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::YDimensionDataTable(ds->Tables[L"YDimension"])));
-        }
-        if (ds->Tables[L"ZDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::ZDimensionDataTable(ds->Tables[L"ZDimension"])));
-        }
-        if (ds->Tables[L"TDimension"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::TDimensionDataTable(ds->Tables[L"TDimension"])));
-        }
-        if (ds->Tables[L"Operation"] != nullptr) {
-            __super::Tables->Add((gcnew NewDataSet::OperationDataTable(ds->Tables[L"Operation"])));
-        }
-        this->DataSetName = ds->DataSetName;
-        this->Prefix = ds->Prefix;
-        this->Namespace = ds->Namespace;
-        this->Locale = ds->Locale;
-        this->CaseSensitive = ds->CaseSensitive;
-        this->EnforceConstraints = ds->EnforceConstraints;
-        this->Merge(ds, false, ::System::Data::MissingSchemaAction::Add);
-        this->InitVars();
-    }
-    else {
-        this->ReadXml(reader);
-        this->InitVars();
-    }
-}
-
-inline ::System::Xml::Schema::XmlSchema^  NewDataSet::GetSchemaSerializable() {
-    ::System::IO::MemoryStream^  stream = (gcnew ::System::IO::MemoryStream());
-    this->WriteXmlSchema((gcnew ::System::Xml::XmlTextWriter(stream, nullptr)));
-    stream->Position = 0;
-    return ::System::Xml::Schema::XmlSchema::Read((gcnew ::System::Xml::XmlTextReader(stream)), nullptr);
-}
-
-inline ::System::Void NewDataSet::InitVars() {
-    this->InitVars(true);
-}
-
-inline ::System::Void NewDataSet::InitVars(::System::Boolean initTable) {
-    this->tableFunction = (cli::safe_cast<NewDataSet::FunctionDataTable^  >(__super::Tables[L"Function"]));
-    if (initTable == true) {
-        if (this->tableFunction != nullptr) {
-            this->tableFunction->InitVars();
-        }
-    }
-    this->tableParameterList = (cli::safe_cast<NewDataSet::ParameterListDataTable^  >(__super::Tables[L"ParameterList"]));
-    if (initTable == true) {
-        if (this->tableParameterList != nullptr) {
-            this->tableParameterList->InitVars();
-        }
-    }
-    this->tableParameter = (cli::safe_cast<NewDataSet::ParameterDataTable^  >(__super::Tables[L"Parameter"]));
-    if (initTable == true) {
-        if (this->tableParameter != nullptr) {
-            this->tableParameter->InitVars();
-        }
-    }
-    this->tableDimension = (cli::safe_cast<NewDataSet::DimensionDataTable^  >(__super::Tables[L"Dimension"]));
-    if (initTable == true) {
-        if (this->tableDimension != nullptr) {
-            this->tableDimension->InitVars();
-        }
-    }
-    this->tableIntegrated = (cli::safe_cast<NewDataSet::IntegratedDataTable^  >(__super::Tables[L"Integrated"]));
-    if (initTable == true) {
-        if (this->tableIntegrated != nullptr) {
-            this->tableIntegrated->InitVars();
-        }
-    }
-    this->tableCompositeInstruction = (cli::safe_cast<NewDataSet::CompositeInstructionDataTable^  >(__super::Tables[L"CompositeInstruction"]));
-    if (initTable == true) {
-        if (this->tableCompositeInstruction != nullptr) {
-            this->tableCompositeInstruction->InitVars();
-        }
-    }
-    this->tableGeometry = (cli::safe_cast<NewDataSet::GeometryDataTable^  >(__super::Tables[L"Geometry"]));
-    if (initTable == true) {
-        if (this->tableGeometry != nullptr) {
-            this->tableGeometry->InitVars();
-        }
-    }
-    this->tableXDimension = (cli::safe_cast<NewDataSet::XDimensionDataTable^  >(__super::Tables[L"XDimension"]));
-    if (initTable == true) {
-        if (this->tableXDimension != nullptr) {
-            this->tableXDimension->InitVars();
-        }
-    }
-    this->tableYDimension = (cli::safe_cast<NewDataSet::YDimensionDataTable^  >(__super::Tables[L"YDimension"]));
-    if (initTable == true) {
-        if (this->tableYDimension != nullptr) {
-            this->tableYDimension->InitVars();
-        }
-    }
-    this->tableZDimension = (cli::safe_cast<NewDataSet::ZDimensionDataTable^  >(__super::Tables[L"ZDimension"]));
-    if (initTable == true) {
-        if (this->tableZDimension != nullptr) {
-            this->tableZDimension->InitVars();
-        }
-    }
-    this->tableTDimension = (cli::safe_cast<NewDataSet::TDimensionDataTable^  >(__super::Tables[L"TDimension"]));
-    if (initTable == true) {
-        if (this->tableTDimension != nullptr) {
-            this->tableTDimension->InitVars();
-        }
-    }
-    this->tableOperation = (cli::safe_cast<NewDataSet::OperationDataTable^  >(__super::Tables[L"Operation"]));
-    if (initTable == true) {
-        if (this->tableOperation != nullptr) {
-            this->tableOperation->InitVars();
-        }
-    }
-    this->relationFunction_Function = this->Relations[L"Function_Function"];
-    this->relationCompositeInstruction_Function = this->Relations[L"CompositeInstruction_Function"];
-    this->relationFunction_ParameterList = this->Relations[L"Function_ParameterList"];
-    this->relationParameterList_Parameter = this->Relations[L"ParameterList_Parameter"];
-    this->relationGeometry_Dimension = this->Relations[L"Geometry_Dimension"];
-    this->relationDimension_Integrated = this->Relations[L"Dimension_Integrated"];
-    this->relationCompositeInstruction_Geometry = this->Relations[L"CompositeInstruction_Geometry"];
-    this->relationGeometry_XDimension = this->Relations[L"Geometry_XDimension"];
-    this->relationGeometry_YDimension = this->Relations[L"Geometry_YDimension"];
-    this->relationGeometry_ZDimension = this->Relations[L"Geometry_ZDimension"];
-    this->relationGeometry_TDimension = this->Relations[L"Geometry_TDimension"];
-    this->relationCompositeInstruction_Operation = this->Relations[L"CompositeInstruction_Operation"];
-}
-
-inline ::System::Void NewDataSet::InitClass() {
-    this->DataSetName = L"NewDataSet";
-    this->Prefix = L"";
-    this->Locale = (gcnew ::System::Globalization::CultureInfo(L""));
-    this->EnforceConstraints = true;
-    this->SchemaSerializationMode = ::System::Data::SchemaSerializationMode::IncludeSchema;
-    this->tableFunction = (gcnew NewDataSet::FunctionDataTable());
-    __super::Tables->Add(this->tableFunction);
-    this->tableParameterList = (gcnew NewDataSet::ParameterListDataTable());
-    __super::Tables->Add(this->tableParameterList);
-    this->tableParameter = (gcnew NewDataSet::ParameterDataTable());
-    __super::Tables->Add(this->tableParameter);
-    this->tableDimension = (gcnew NewDataSet::DimensionDataTable());
-    __super::Tables->Add(this->tableDimension);
-    this->tableIntegrated = (gcnew NewDataSet::IntegratedDataTable());
-    __super::Tables->Add(this->tableIntegrated);
-    this->tableCompositeInstruction = (gcnew NewDataSet::CompositeInstructionDataTable());
-    __super::Tables->Add(this->tableCompositeInstruction);
-    this->tableGeometry = (gcnew NewDataSet::GeometryDataTable());
-    __super::Tables->Add(this->tableGeometry);
-    this->tableXDimension = (gcnew NewDataSet::XDimensionDataTable());
-    __super::Tables->Add(this->tableXDimension);
-    this->tableYDimension = (gcnew NewDataSet::YDimensionDataTable());
-    __super::Tables->Add(this->tableYDimension);
-    this->tableZDimension = (gcnew NewDataSet::ZDimensionDataTable());
-    __super::Tables->Add(this->tableZDimension);
-    this->tableTDimension = (gcnew NewDataSet::TDimensionDataTable());
-    __super::Tables->Add(this->tableTDimension);
-    this->tableOperation = (gcnew NewDataSet::OperationDataTable());
-    __super::Tables->Add(this->tableOperation);
-    ::System::Data::ForeignKeyConstraint^  fkc;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Function_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_Id_0Column}));
-    this->tableFunction->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"CompositeInstruction_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->CompositeInstruction_IdColumn}));
-    this->tableFunction->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Function_ParameterList", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->Function_IdColumn}));
-    this->tableParameterList->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"ParameterList_Parameter", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->ParameterList_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameter->ParameterList_IdColumn}));
-    this->tableParameter->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_Dimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Geometry_IdColumn}));
-    this->tableDimension->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Dimension_Integrated", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Dimension_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableIntegrated->Dimension_IdColumn}));
-    this->tableIntegrated->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"CompositeInstruction_Geometry", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->CompositeInstruction_IdColumn}));
-    this->tableGeometry->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_XDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableXDimension->Geometry_IdColumn}));
-    this->tableXDimension->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_YDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableYDimension->Geometry_IdColumn}));
-    this->tableYDimension->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_ZDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableZDimension->Geometry_IdColumn}));
-    this->tableZDimension->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_TDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableTDimension->Geometry_IdColumn}));
-    this->tableTDimension->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"CompositeInstruction_Operation", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableOperation->CompositeInstruction_IdColumn}));
-    this->tableOperation->Constraints->Add(fkc);
-    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
-    fkc->DeleteRule = ::System::Data::Rule::Cascade;
-    fkc->UpdateRule = ::System::Data::Rule::Cascade;
-    this->relationFunction_Function = (gcnew ::System::Data::DataRelation(L"Function_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_Id_0Column}, false));
-    this->relationFunction_Function->Nested = true;
-    this->Relations->Add(this->relationFunction_Function);
-    this->relationCompositeInstruction_Function = (gcnew ::System::Data::DataRelation(L"CompositeInstruction_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->CompositeInstruction_IdColumn}, false));
-    this->relationCompositeInstruction_Function->Nested = true;
-    this->Relations->Add(this->relationCompositeInstruction_Function);
-    this->relationFunction_ParameterList = (gcnew ::System::Data::DataRelation(L"Function_ParameterList", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->Function_IdColumn}, false));
-    this->relationFunction_ParameterList->Nested = true;
-    this->Relations->Add(this->relationFunction_ParameterList);
-    this->relationParameterList_Parameter = (gcnew ::System::Data::DataRelation(L"ParameterList_Parameter", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->ParameterList_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameter->ParameterList_IdColumn}, false));
-    this->relationParameterList_Parameter->Nested = true;
-    this->Relations->Add(this->relationParameterList_Parameter);
-    this->relationGeometry_Dimension = (gcnew ::System::Data::DataRelation(L"Geometry_Dimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Geometry_IdColumn}, false));
-    this->relationGeometry_Dimension->Nested = true;
-    this->Relations->Add(this->relationGeometry_Dimension);
-    this->relationDimension_Integrated = (gcnew ::System::Data::DataRelation(L"Dimension_Integrated", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Dimension_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableIntegrated->Dimension_IdColumn}, false));
-    this->relationDimension_Integrated->Nested = true;
-    this->Relations->Add(this->relationDimension_Integrated);
-    this->relationCompositeInstruction_Geometry = (gcnew ::System::Data::DataRelation(L"CompositeInstruction_Geometry", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->CompositeInstruction_IdColumn}, false));
-    this->relationCompositeInstruction_Geometry->Nested = true;
-    this->Relations->Add(this->relationCompositeInstruction_Geometry);
-    this->relationGeometry_XDimension = (gcnew ::System::Data::DataRelation(L"Geometry_XDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableXDimension->Geometry_IdColumn}, false));
-    this->relationGeometry_XDimension->Nested = true;
-    this->Relations->Add(this->relationGeometry_XDimension);
-    this->relationGeometry_YDimension = (gcnew ::System::Data::DataRelation(L"Geometry_YDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableYDimension->Geometry_IdColumn}, false));
-    this->relationGeometry_YDimension->Nested = true;
-    this->Relations->Add(this->relationGeometry_YDimension);
-    this->relationGeometry_ZDimension = (gcnew ::System::Data::DataRelation(L"Geometry_ZDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableZDimension->Geometry_IdColumn}, false));
-    this->relationGeometry_ZDimension->Nested = true;
-    this->Relations->Add(this->relationGeometry_ZDimension);
-    this->relationGeometry_TDimension = (gcnew ::System::Data::DataRelation(L"Geometry_TDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableTDimension->Geometry_IdColumn}, false));
-    this->relationGeometry_TDimension->Nested = true;
-    this->Relations->Add(this->relationGeometry_TDimension);
-    this->relationCompositeInstruction_Operation = (gcnew ::System::Data::DataRelation(L"CompositeInstruction_Operation", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
-        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableOperation->CompositeInstruction_IdColumn}, false));
-    this->relationCompositeInstruction_Operation->Nested = true;
-    this->Relations->Add(this->relationCompositeInstruction_Operation);
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeFunction() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeParameterList() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeParameter() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeDimension() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeIntegrated() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeCompositeInstruction() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeGeometry() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeXDimension() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeYDimension() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeZDimension() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeTDimension() {
-    return false;
-}
-
-inline ::System::Boolean NewDataSet::ShouldSerializeOperation() {
-    return false;
-}
-
-inline ::System::Void NewDataSet::SchemaChanged(::System::Object^  sender, ::System::ComponentModel::CollectionChangeEventArgs^  e) {
-    if (e->Action == ::System::ComponentModel::CollectionChangeAction::Remove) {
-        this->InitVars();
-    }
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::GetTypedDataSetSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    ::System::Xml::Schema::XmlSchemaAny^  any = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any->Namespace = ds->Namespace;
-    sequence->Items->Add(any);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::FunctionDataTable::FunctionDataTable() {
-    this->TableName = L"Function";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::FunctionDataTable::FunctionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::FunctionDataTable::FunctionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::NameColumn::get() {
-    return this->columnName;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::Function_IdColumn::get() {
-    return this->columnFunction_Id;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::Function_Id_0Column::get() {
-    return this->columnFunction_Id_0;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::CompositeInstruction_IdColumn::get() {
-    return this->columnCompositeInstruction_Id;
-}
-
-inline ::System::Int32 NewDataSet::FunctionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::FunctionRow^  NewDataSet::FunctionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::AddFunctionRow(NewDataSet::FunctionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::FunctionRow^  NewDataSet::FunctionDataTable::AddFunctionRow(System::String^  Name, NewDataSet::FunctionRow^  parentFunctionRowByFunction_Function, 
-            NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Function) {
-    NewDataSet::FunctionRow^  rowFunctionRow = (cli::safe_cast<NewDataSet::FunctionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(4) {Name, nullptr, nullptr, 
-        nullptr};
-    if (parentFunctionRowByFunction_Function != nullptr) {
-        columnValuesArray[2] = parentFunctionRowByFunction_Function[1];
-    }
-    if (parentCompositeInstructionRowByCompositeInstruction_Function != nullptr) {
-        columnValuesArray[3] = parentCompositeInstructionRowByCompositeInstruction_Function[2];
-    }
-    rowFunctionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowFunctionRow);
-    return rowFunctionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::FunctionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::FunctionDataTable::Clone() {
-    NewDataSet::FunctionDataTable^  cln = (cli::safe_cast<NewDataSet::FunctionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::FunctionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::FunctionDataTable());
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::InitVars() {
-    this->columnName = __super::Columns[L"Name"];
-    this->columnFunction_Id = __super::Columns[L"Function_Id"];
-    this->columnFunction_Id_0 = __super::Columns[L"Function_Id_0"];
-    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::InitClass() {
-    this->columnName = (gcnew ::System::Data::DataColumn(L"Name", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnName);
-    this->columnFunction_Id = (gcnew ::System::Data::DataColumn(L"Function_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnFunction_Id);
-    this->columnFunction_Id_0 = (gcnew ::System::Data::DataColumn(L"Function_Id_0", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnFunction_Id_0);
-    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
-        nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnCompositeInstruction_Id);
-    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnFunction_Id}, 
-            true)));
-    this->columnName->AllowDBNull = false;
-    this->columnFunction_Id->AutoIncrement = true;
-    this->columnFunction_Id->AllowDBNull = false;
-    this->columnFunction_Id->Unique = true;
-}
-
-inline NewDataSet::FunctionRow^  NewDataSet::FunctionDataTable::NewFunctionRow() {
-    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::FunctionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::FunctionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::FunctionDataTable::GetRowType() {
-    return NewDataSet::FunctionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->FunctionRowChanged(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->FunctionRowChanging(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->FunctionRowDeleted(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->FunctionRowDeleting(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::FunctionDataTable::RemoveFunctionRow(NewDataSet::FunctionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::FunctionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"FunctionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::ParameterListDataTable::ParameterListDataTable() {
-    this->TableName = L"ParameterList";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::ParameterListDataTable::ParameterListDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::ParameterListDataTable::ParameterListDataTable(::System::Runtime::Serialization::SerializationInfo^  info, 
-            ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ParameterListDataTable::ParameterList_IdColumn::get() {
-    return this->columnParameterList_Id;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ParameterListDataTable::Function_IdColumn::get() {
-    return this->columnFunction_Id;
-}
-
-inline ::System::Int32 NewDataSet::ParameterListDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::AddParameterListRow(NewDataSet::ParameterListRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListDataTable::AddParameterListRow(NewDataSet::FunctionRow^  parentFunctionRowByFunction_ParameterList) {
-    NewDataSet::ParameterListRow^  rowParameterListRow = (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {nullptr, nullptr};
-    if (parentFunctionRowByFunction_ParameterList != nullptr) {
-        columnValuesArray[1] = parentFunctionRowByFunction_ParameterList[1];
-    }
-    rowParameterListRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowParameterListRow);
-    return rowParameterListRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::ParameterListDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::ParameterListDataTable::Clone() {
-    NewDataSet::ParameterListDataTable^  cln = (cli::safe_cast<NewDataSet::ParameterListDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::ParameterListDataTable::CreateInstance() {
-    return (gcnew NewDataSet::ParameterListDataTable());
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::InitVars() {
-    this->columnParameterList_Id = __super::Columns[L"ParameterList_Id"];
-    this->columnFunction_Id = __super::Columns[L"Function_Id"];
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::InitClass() {
-    this->columnParameterList_Id = (gcnew ::System::Data::DataColumn(L"ParameterList_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnParameterList_Id);
-    this->columnFunction_Id = (gcnew ::System::Data::DataColumn(L"Function_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnFunction_Id);
-    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnParameterList_Id}, 
-            true)));
-    this->columnParameterList_Id->AutoIncrement = true;
-    this->columnParameterList_Id->AllowDBNull = false;
-    this->columnParameterList_Id->Unique = true;
-}
-
-inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListDataTable::NewParameterListRow() {
-    return (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::ParameterListDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::ParameterListRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::ParameterListDataTable::GetRowType() {
-    return NewDataSet::ParameterListRow::typeid;
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->ParameterListRowChanged(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->ParameterListRowChanging(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->ParameterListRowDeleted(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->ParameterListRowDeleting(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterListDataTable::RemoveParameterListRow(NewDataSet::ParameterListRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::ParameterListDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"ParameterListDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::ParameterDataTable::ParameterDataTable() {
-    this->TableName = L"Parameter";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::ParameterDataTable::ParameterDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::ParameterDataTable::ParameterDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::NameColumn::get() {
-    return this->columnName;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::TypeColumn::get() {
-    return this->columnType;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::ValueColumn::get() {
-    return this->columnValue;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::ParameterList_IdColumn::get() {
-    return this->columnParameterList_Id;
-}
-
-inline ::System::Int32 NewDataSet::ParameterDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::ParameterRow^  NewDataSet::ParameterDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::ParameterRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::AddParameterRow(NewDataSet::ParameterRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::ParameterRow^  NewDataSet::ParameterDataTable::AddParameterRow(System::String^  Name, System::String^  Type, 
-            System::String^  Value, NewDataSet::ParameterListRow^  parentParameterListRowByParameterList_Parameter) {
-    NewDataSet::ParameterRow^  rowParameterRow = (cli::safe_cast<NewDataSet::ParameterRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(4) {Name, Type, Value, nullptr};
-    if (parentParameterListRowByParameterList_Parameter != nullptr) {
-        columnValuesArray[3] = parentParameterListRowByParameterList_Parameter[0];
-    }
-    rowParameterRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowParameterRow);
-    return rowParameterRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::ParameterDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::ParameterDataTable::Clone() {
-    NewDataSet::ParameterDataTable^  cln = (cli::safe_cast<NewDataSet::ParameterDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::ParameterDataTable::CreateInstance() {
-    return (gcnew NewDataSet::ParameterDataTable());
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::InitVars() {
-    this->columnName = __super::Columns[L"Name"];
-    this->columnType = __super::Columns[L"Type"];
-    this->columnValue = __super::Columns[L"Value"];
-    this->columnParameterList_Id = __super::Columns[L"ParameterList_Id"];
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::InitClass() {
-    this->columnName = (gcnew ::System::Data::DataColumn(L"Name", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnName);
-    this->columnType = (gcnew ::System::Data::DataColumn(L"Type", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnType);
-    this->columnValue = (gcnew ::System::Data::DataColumn(L"Value", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnValue);
-    this->columnParameterList_Id = (gcnew ::System::Data::DataColumn(L"ParameterList_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnParameterList_Id);
-    this->columnName->AllowDBNull = false;
-    this->columnType->AllowDBNull = false;
-    this->columnValue->AllowDBNull = false;
-}
-
-inline NewDataSet::ParameterRow^  NewDataSet::ParameterDataTable::NewParameterRow() {
-    return (cli::safe_cast<NewDataSet::ParameterRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::ParameterDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::ParameterRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::ParameterDataTable::GetRowType() {
-    return NewDataSet::ParameterRow::typeid;
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->ParameterRowChanged(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->ParameterRowChanging(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->ParameterRowDeleted(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->ParameterRowDeleting(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ParameterDataTable::RemoveParameterRow(NewDataSet::ParameterRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::ParameterDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"ParameterDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::DimensionDataTable::DimensionDataTable() {
-    this->TableName = L"Dimension";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::DimensionDataTable::DimensionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::DimensionDataTable::DimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::IDColumn::get() {
-    return this->columnID;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::NameColumn::get() {
-    return this->columnName;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::UpperBoundsColumn::get() {
-    return this->columnUpperBounds;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::LowerBoundsColumn::get() {
-    return this->columnLowerBounds;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::Dimension_IdColumn::get() {
-    return this->columnDimension_Id;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::Geometry_IdColumn::get() {
-    return this->columnGeometry_Id;
-}
-
-inline ::System::Int32 NewDataSet::DimensionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::DimensionRow^  NewDataSet::DimensionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::DimensionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::AddDimensionRow(NewDataSet::DimensionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::DimensionRow^  NewDataSet::DimensionDataTable::AddDimensionRow(System::Int64 ID, System::String^  Name, 
-            System::Int64 UpperBounds, System::Int64 LowerBounds, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_Dimension) {
-    NewDataSet::DimensionRow^  rowDimensionRow = (cli::safe_cast<NewDataSet::DimensionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(6) {ID, Name, UpperBounds, 
-        LowerBounds, nullptr, nullptr};
-    if (parentGeometryRowByGeometry_Dimension != nullptr) {
-        columnValuesArray[5] = parentGeometryRowByGeometry_Dimension[0];
-    }
-    rowDimensionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowDimensionRow);
-    return rowDimensionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::DimensionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::DimensionDataTable::Clone() {
-    NewDataSet::DimensionDataTable^  cln = (cli::safe_cast<NewDataSet::DimensionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::DimensionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::DimensionDataTable());
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::InitVars() {
-    this->columnID = __super::Columns[L"ID"];
-    this->columnName = __super::Columns[L"Name"];
-    this->columnUpperBounds = __super::Columns[L"UpperBounds"];
-    this->columnLowerBounds = __super::Columns[L"LowerBounds"];
-    this->columnDimension_Id = __super::Columns[L"Dimension_Id"];
-    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::InitClass() {
-    this->columnID = (gcnew ::System::Data::DataColumn(L"ID", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Attribute));
-    __super::Columns->Add(this->columnID);
-    this->columnName = (gcnew ::System::Data::DataColumn(L"Name", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnName);
-    this->columnUpperBounds = (gcnew ::System::Data::DataColumn(L"UpperBounds", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnUpperBounds);
-    this->columnLowerBounds = (gcnew ::System::Data::DataColumn(L"LowerBounds", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnLowerBounds);
-    this->columnDimension_Id = (gcnew ::System::Data::DataColumn(L"Dimension_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnDimension_Id);
-    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnGeometry_Id);
-    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnDimension_Id}, 
-            true)));
-    this->columnID->AllowDBNull = false;
-    this->columnID->Namespace = L"";
-    this->columnName->AllowDBNull = false;
-    this->columnUpperBounds->AllowDBNull = false;
-    this->columnLowerBounds->AllowDBNull = false;
-    this->columnDimension_Id->AutoIncrement = true;
-    this->columnDimension_Id->AllowDBNull = false;
-    this->columnDimension_Id->Unique = true;
-}
-
-inline NewDataSet::DimensionRow^  NewDataSet::DimensionDataTable::NewDimensionRow() {
-    return (cli::safe_cast<NewDataSet::DimensionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::DimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::DimensionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::DimensionDataTable::GetRowType() {
-    return NewDataSet::DimensionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->DimensionRowChanged(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->DimensionRowChanging(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->DimensionRowDeleted(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->DimensionRowDeleting(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::DimensionDataTable::RemoveDimensionRow(NewDataSet::DimensionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::DimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"DimensionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::IntegratedDataTable::IntegratedDataTable() {
-    this->TableName = L"Integrated";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::IntegratedDataTable::IntegratedDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::IntegratedDataTable::IntegratedDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::IntegratedDataTable::UpperLimitColumn::get() {
-    return this->columnUpperLimit;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::IntegratedDataTable::LowerLimitColumn::get() {
-    return this->columnLowerLimit;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::IntegratedDataTable::Dimension_IdColumn::get() {
-    return this->columnDimension_Id;
-}
-
-inline ::System::Int32 NewDataSet::IntegratedDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::IntegratedRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::AddIntegratedRow(NewDataSet::IntegratedRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedDataTable::AddIntegratedRow(System::Int64 UpperLimit, System::Int64 LowerLimit, 
-            NewDataSet::DimensionRow^  parentDimensionRowByDimension_Integrated) {
-    NewDataSet::IntegratedRow^  rowIntegratedRow = (cli::safe_cast<NewDataSet::IntegratedRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(3) {UpperLimit, LowerLimit, 
-        nullptr};
-    if (parentDimensionRowByDimension_Integrated != nullptr) {
-        columnValuesArray[2] = parentDimensionRowByDimension_Integrated[4];
-    }
-    rowIntegratedRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowIntegratedRow);
-    return rowIntegratedRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::IntegratedDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::IntegratedDataTable::Clone() {
-    NewDataSet::IntegratedDataTable^  cln = (cli::safe_cast<NewDataSet::IntegratedDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::IntegratedDataTable::CreateInstance() {
-    return (gcnew NewDataSet::IntegratedDataTable());
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::InitVars() {
-    this->columnUpperLimit = __super::Columns[L"UpperLimit"];
-    this->columnLowerLimit = __super::Columns[L"LowerLimit"];
-    this->columnDimension_Id = __super::Columns[L"Dimension_Id"];
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::InitClass() {
-    this->columnUpperLimit = (gcnew ::System::Data::DataColumn(L"UpperLimit", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnUpperLimit);
-    this->columnLowerLimit = (gcnew ::System::Data::DataColumn(L"LowerLimit", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnLowerLimit);
-    this->columnDimension_Id = (gcnew ::System::Data::DataColumn(L"Dimension_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnDimension_Id);
-    this->columnUpperLimit->AllowDBNull = false;
-    this->columnLowerLimit->AllowDBNull = false;
-}
-
-inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedDataTable::NewIntegratedRow() {
-    return (cli::safe_cast<NewDataSet::IntegratedRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::IntegratedDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::IntegratedRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::IntegratedDataTable::GetRowType() {
-    return NewDataSet::IntegratedRow::typeid;
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->IntegratedRowChanged(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->IntegratedRowChanging(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->IntegratedRowDeleted(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->IntegratedRowDeleting(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::IntegratedDataTable::RemoveIntegratedRow(NewDataSet::IntegratedRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::IntegratedDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"IntegratedDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::CompositeInstructionDataTable::CompositeInstructionDataTable() {
-    this->TableName = L"CompositeInstruction";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::CompositeInstructionDataTable::CompositeInstructionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::CompositeInstructionDataTable::CompositeInstructionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, 
-            ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::CompositeInstructionDataTable::MDWorkspaceNameColumn::get() {
-    return this->columnMDWorkspaceName;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::CompositeInstructionDataTable::MDWorkspaceLocationColumn::get() {
-    return this->columnMDWorkspaceLocation;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::CompositeInstructionDataTable::CompositeInstruction_IdColumn::get() {
-    return this->columnCompositeInstruction_Id;
-}
-
-inline ::System::Int32 NewDataSet::CompositeInstructionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::AddCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionDataTable::AddCompositeInstructionRow(System::String^  MDWorkspaceName, 
-            System::String^  MDWorkspaceLocation) {
-    NewDataSet::CompositeInstructionRow^  rowCompositeInstructionRow = (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(3) {MDWorkspaceName, MDWorkspaceLocation, 
-        nullptr};
-    rowCompositeInstructionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowCompositeInstructionRow);
-    return rowCompositeInstructionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::CompositeInstructionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::CompositeInstructionDataTable::Clone() {
-    NewDataSet::CompositeInstructionDataTable^  cln = (cli::safe_cast<NewDataSet::CompositeInstructionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::CompositeInstructionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::CompositeInstructionDataTable());
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::InitVars() {
-    this->columnMDWorkspaceName = __super::Columns[L"MDWorkspaceName"];
-    this->columnMDWorkspaceLocation = __super::Columns[L"MDWorkspaceLocation"];
-    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::InitClass() {
-    this->columnMDWorkspaceName = (gcnew ::System::Data::DataColumn(L"MDWorkspaceName", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnMDWorkspaceName);
-    this->columnMDWorkspaceLocation = (gcnew ::System::Data::DataColumn(L"MDWorkspaceLocation", ::System::String::typeid, nullptr, 
-        ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnMDWorkspaceLocation);
-    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
-        nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnCompositeInstruction_Id);
-    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnCompositeInstruction_Id}, 
-            true)));
-    this->columnMDWorkspaceName->AllowDBNull = false;
-    this->columnMDWorkspaceLocation->AllowDBNull = false;
-    this->columnCompositeInstruction_Id->AutoIncrement = true;
-    this->columnCompositeInstruction_Id->AllowDBNull = false;
-    this->columnCompositeInstruction_Id->Unique = true;
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionDataTable::NewCompositeInstructionRow() {
-    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::CompositeInstructionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::CompositeInstructionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::CompositeInstructionDataTable::GetRowType() {
-    return NewDataSet::CompositeInstructionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->CompositeInstructionRowChanged(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->CompositeInstructionRowChanging(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->CompositeInstructionRowDeleted(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->CompositeInstructionRowDeleting(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::CompositeInstructionDataTable::RemoveCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::CompositeInstructionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"CompositeInstructionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::GeometryDataTable::GeometryDataTable() {
-    this->TableName = L"Geometry";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::GeometryDataTable::GeometryDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::GeometryDataTable::GeometryDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::GeometryDataTable::Geometry_IdColumn::get() {
-    return this->columnGeometry_Id;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::GeometryDataTable::CompositeInstruction_IdColumn::get() {
-    return this->columnCompositeInstruction_Id;
-}
-
-inline ::System::Int32 NewDataSet::GeometryDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::GeometryDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::AddGeometryRow(NewDataSet::GeometryRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::GeometryDataTable::AddGeometryRow(NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Geometry) {
-    NewDataSet::GeometryRow^  rowGeometryRow = (cli::safe_cast<NewDataSet::GeometryRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {nullptr, nullptr};
-    if (parentCompositeInstructionRowByCompositeInstruction_Geometry != nullptr) {
-        columnValuesArray[1] = parentCompositeInstructionRowByCompositeInstruction_Geometry[2];
-    }
-    rowGeometryRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowGeometryRow);
-    return rowGeometryRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::GeometryDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::GeometryDataTable::Clone() {
-    NewDataSet::GeometryDataTable^  cln = (cli::safe_cast<NewDataSet::GeometryDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::GeometryDataTable::CreateInstance() {
-    return (gcnew NewDataSet::GeometryDataTable());
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::InitVars() {
-    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
-    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::InitClass() {
-    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnGeometry_Id);
-    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
-        nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnCompositeInstruction_Id);
-    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnGeometry_Id}, 
-            true)));
-    this->columnGeometry_Id->AutoIncrement = true;
-    this->columnGeometry_Id->AllowDBNull = false;
-    this->columnGeometry_Id->Unique = true;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::GeometryDataTable::NewGeometryRow() {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::GeometryDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::GeometryRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::GeometryDataTable::GetRowType() {
-    return NewDataSet::GeometryRow::typeid;
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->GeometryRowChanged(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->GeometryRowChanging(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->GeometryRowDeleted(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->GeometryRowDeleting(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::GeometryDataTable::RemoveGeometryRow(NewDataSet::GeometryRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::GeometryDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"GeometryDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::XDimensionDataTable::XDimensionDataTable() {
-    this->TableName = L"XDimension";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::XDimensionDataTable::XDimensionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::XDimensionDataTable::XDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::XDimensionDataTable::RefDimensionIdColumn::get() {
-    return this->columnRefDimensionId;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::XDimensionDataTable::Geometry_IdColumn::get() {
-    return this->columnGeometry_Id;
-}
-
-inline ::System::Int32 NewDataSet::XDimensionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::XDimensionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::AddXDimensionRow(NewDataSet::XDimensionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionDataTable::AddXDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_XDimension) {
-    NewDataSet::XDimensionRow^  rowXDimensionRow = (cli::safe_cast<NewDataSet::XDimensionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
-    if (parentGeometryRowByGeometry_XDimension != nullptr) {
-        columnValuesArray[1] = parentGeometryRowByGeometry_XDimension[0];
-    }
-    rowXDimensionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowXDimensionRow);
-    return rowXDimensionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::XDimensionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::XDimensionDataTable::Clone() {
-    NewDataSet::XDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::XDimensionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::XDimensionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::XDimensionDataTable());
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::InitVars() {
-    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
-    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::InitClass() {
-    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnRefDimensionId);
-    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnGeometry_Id);
-}
-
-inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionDataTable::NewXDimensionRow() {
-    return (cli::safe_cast<NewDataSet::XDimensionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::XDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::XDimensionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::XDimensionDataTable::GetRowType() {
-    return NewDataSet::XDimensionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->XDimensionRowChanged(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->XDimensionRowChanging(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->XDimensionRowDeleted(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->XDimensionRowDeleting(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::XDimensionDataTable::RemoveXDimensionRow(NewDataSet::XDimensionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::XDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"XDimensionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::YDimensionDataTable::YDimensionDataTable() {
-    this->TableName = L"YDimension";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::YDimensionDataTable::YDimensionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::YDimensionDataTable::YDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::YDimensionDataTable::RefDimensionIdColumn::get() {
-    return this->columnRefDimensionId;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::YDimensionDataTable::Geometry_IdColumn::get() {
-    return this->columnGeometry_Id;
-}
-
-inline ::System::Int32 NewDataSet::YDimensionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::YDimensionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::AddYDimensionRow(NewDataSet::YDimensionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionDataTable::AddYDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_YDimension) {
-    NewDataSet::YDimensionRow^  rowYDimensionRow = (cli::safe_cast<NewDataSet::YDimensionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
-    if (parentGeometryRowByGeometry_YDimension != nullptr) {
-        columnValuesArray[1] = parentGeometryRowByGeometry_YDimension[0];
-    }
-    rowYDimensionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowYDimensionRow);
-    return rowYDimensionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::YDimensionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::YDimensionDataTable::Clone() {
-    NewDataSet::YDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::YDimensionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::YDimensionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::YDimensionDataTable());
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::InitVars() {
-    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
-    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::InitClass() {
-    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnRefDimensionId);
-    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnGeometry_Id);
-}
-
-inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionDataTable::NewYDimensionRow() {
-    return (cli::safe_cast<NewDataSet::YDimensionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::YDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::YDimensionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::YDimensionDataTable::GetRowType() {
-    return NewDataSet::YDimensionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->YDimensionRowChanged(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->YDimensionRowChanging(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->YDimensionRowDeleted(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->YDimensionRowDeleting(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::YDimensionDataTable::RemoveYDimensionRow(NewDataSet::YDimensionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::YDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"YDimensionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::ZDimensionDataTable::ZDimensionDataTable() {
-    this->TableName = L"ZDimension";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::ZDimensionDataTable::ZDimensionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::ZDimensionDataTable::ZDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ZDimensionDataTable::RefDimensionIdColumn::get() {
-    return this->columnRefDimensionId;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::ZDimensionDataTable::Geometry_IdColumn::get() {
-    return this->columnGeometry_Id;
-}
-
-inline ::System::Int32 NewDataSet::ZDimensionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::ZDimensionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::AddZDimensionRow(NewDataSet::ZDimensionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionDataTable::AddZDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_ZDimension) {
-    NewDataSet::ZDimensionRow^  rowZDimensionRow = (cli::safe_cast<NewDataSet::ZDimensionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
-    if (parentGeometryRowByGeometry_ZDimension != nullptr) {
-        columnValuesArray[1] = parentGeometryRowByGeometry_ZDimension[0];
-    }
-    rowZDimensionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowZDimensionRow);
-    return rowZDimensionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::ZDimensionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::ZDimensionDataTable::Clone() {
-    NewDataSet::ZDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::ZDimensionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::ZDimensionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::ZDimensionDataTable());
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::InitVars() {
-    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
-    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::InitClass() {
-    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnRefDimensionId);
-    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnGeometry_Id);
-}
-
-inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionDataTable::NewZDimensionRow() {
-    return (cli::safe_cast<NewDataSet::ZDimensionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::ZDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::ZDimensionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::ZDimensionDataTable::GetRowType() {
-    return NewDataSet::ZDimensionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->ZDimensionRowChanged(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->ZDimensionRowChanging(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->ZDimensionRowDeleted(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->ZDimensionRowDeleting(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::ZDimensionDataTable::RemoveZDimensionRow(NewDataSet::ZDimensionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::ZDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"ZDimensionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::TDimensionDataTable::TDimensionDataTable() {
-    this->TableName = L"TDimension";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::TDimensionDataTable::TDimensionDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::TDimensionDataTable::TDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::TDimensionDataTable::RefDimensionIdColumn::get() {
-    return this->columnRefDimensionId;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::TDimensionDataTable::Geometry_IdColumn::get() {
-    return this->columnGeometry_Id;
-}
-
-inline ::System::Int32 NewDataSet::TDimensionDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::TDimensionRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::AddTDimensionRow(NewDataSet::TDimensionRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionDataTable::AddTDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_TDimension) {
-    NewDataSet::TDimensionRow^  rowTDimensionRow = (cli::safe_cast<NewDataSet::TDimensionRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
-    if (parentGeometryRowByGeometry_TDimension != nullptr) {
-        columnValuesArray[1] = parentGeometryRowByGeometry_TDimension[0];
-    }
-    rowTDimensionRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowTDimensionRow);
-    return rowTDimensionRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::TDimensionDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::TDimensionDataTable::Clone() {
-    NewDataSet::TDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::TDimensionDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::TDimensionDataTable::CreateInstance() {
-    return (gcnew NewDataSet::TDimensionDataTable());
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::InitVars() {
-    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
-    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::InitClass() {
-    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnRefDimensionId);
-    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnGeometry_Id);
-}
-
-inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionDataTable::NewTDimensionRow() {
-    return (cli::safe_cast<NewDataSet::TDimensionRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::TDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::TDimensionRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::TDimensionDataTable::GetRowType() {
-    return NewDataSet::TDimensionRow::typeid;
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->TDimensionRowChanged(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->TDimensionRowChanging(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->TDimensionRowDeleted(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->TDimensionRowDeleting(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::TDimensionDataTable::RemoveTDimensionRow(NewDataSet::TDimensionRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::TDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"TDimensionDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::OperationDataTable::OperationDataTable() {
-    this->TableName = L"Operation";
-    this->BeginInit();
-    this->InitClass();
-    this->EndInit();
-}
-
-inline NewDataSet::OperationDataTable::OperationDataTable(::System::Data::DataTable^  table) {
-    this->TableName = table->TableName;
-    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
-        this->CaseSensitive = table->CaseSensitive;
-    }
-    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
-        this->Locale = table->Locale;
-    }
-    if (table->Namespace != table->DataSet->Namespace) {
-        this->Namespace = table->Namespace;
-    }
-    this->Prefix = table->Prefix;
-    this->MinimumCapacity = table->MinimumCapacity;
-}
-
-inline NewDataSet::OperationDataTable::OperationDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
-        ::System::Data::DataTable(info, context) {
-    this->InitVars();
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::OperationDataTable::TypeColumn::get() {
-    return this->columnType;
-}
-
-inline ::System::Data::DataColumn^  NewDataSet::OperationDataTable::CompositeInstruction_IdColumn::get() {
-    return this->columnCompositeInstruction_Id;
-}
-
-inline ::System::Int32 NewDataSet::OperationDataTable::Count::get() {
-    return this->Rows->Count;
-}
-
-inline NewDataSet::OperationRow^  NewDataSet::OperationDataTable::default::get(::System::Int32 index) {
-    return (cli::safe_cast<NewDataSet::OperationRow^  >(this->Rows[index]));
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::AddOperationRow(NewDataSet::OperationRow^  row) {
-    this->Rows->Add(row);
-}
-
-inline NewDataSet::OperationRow^  NewDataSet::OperationDataTable::AddOperationRow(System::String^  Type, NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Operation) {
-    NewDataSet::OperationRow^  rowOperationRow = (cli::safe_cast<NewDataSet::OperationRow^  >(this->NewRow()));
-    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {Type, nullptr};
-    if (parentCompositeInstructionRowByCompositeInstruction_Operation != nullptr) {
-        columnValuesArray[1] = parentCompositeInstructionRowByCompositeInstruction_Operation[2];
-    }
-    rowOperationRow->ItemArray = columnValuesArray;
-    this->Rows->Add(rowOperationRow);
-    return rowOperationRow;
-}
-
-inline ::System::Collections::IEnumerator^  NewDataSet::OperationDataTable::GetEnumerator() {
-    return this->Rows->GetEnumerator();
-}
-
-inline ::System::Data::DataTable^  NewDataSet::OperationDataTable::Clone() {
-    NewDataSet::OperationDataTable^  cln = (cli::safe_cast<NewDataSet::OperationDataTable^  >(__super::Clone()));
-    cln->InitVars();
-    return cln;
-}
-
-inline ::System::Data::DataTable^  NewDataSet::OperationDataTable::CreateInstance() {
-    return (gcnew NewDataSet::OperationDataTable());
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::InitVars() {
-    this->columnType = __super::Columns[L"Type"];
-    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::InitClass() {
-    this->columnType = (gcnew ::System::Data::DataColumn(L"Type", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
-    __super::Columns->Add(this->columnType);
-    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
-        nullptr, ::System::Data::MappingType::Hidden));
-    __super::Columns->Add(this->columnCompositeInstruction_Id);
-    this->columnType->AllowDBNull = false;
-}
-
-inline NewDataSet::OperationRow^  NewDataSet::OperationDataTable::NewOperationRow() {
-    return (cli::safe_cast<NewDataSet::OperationRow^  >(this->NewRow()));
-}
-
-inline ::System::Data::DataRow^  NewDataSet::OperationDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
-    return (gcnew NewDataSet::OperationRow(builder));
-}
-
-inline ::System::Type^  NewDataSet::OperationDataTable::GetRowType() {
-    return NewDataSet::OperationRow::typeid;
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanged(e);
-    {
-        this->OperationRowChanged(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowChanging(e);
-    {
-        this->OperationRowChanging(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleted(e);
-    {
-        this->OperationRowDeleted(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
-    __super::OnRowDeleting(e);
-    {
-        this->OperationRowDeleting(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
-                e->Action)));
-    }
-}
-
-inline ::System::Void NewDataSet::OperationDataTable::RemoveOperationRow(NewDataSet::OperationRow^  row) {
-    this->Rows->Remove(row);
-}
-
-inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::OperationDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
-    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
-    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
-    NewDataSet^  ds = (gcnew NewDataSet());
-    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
-    any1->MinOccurs = ::System::Decimal(0);
-    any1->MaxOccurs = ::System::Decimal::MaxValue;
-    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any1);
-    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
-    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
-    any2->MinOccurs = ::System::Decimal(1);
-    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
-    sequence->Items->Add(any2);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute1->Name = L"namespace";
-    attribute1->FixedValue = ds->Namespace;
-    type->Attributes->Add(attribute1);
-    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
-    attribute2->Name = L"tableTypeName";
-    attribute2->FixedValue = L"OperationDataTable";
-    type->Attributes->Add(attribute2);
-    type->Particle = sequence;
-    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
-    if (xs->Contains(dsSchema->TargetNamespace)) {
-        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
-        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
-        try {
-            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
-            dsSchema->Write(s1);
-            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
-                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
-                s2->SetLength(0);
-                schema->Write(s2);
-                if (s1->Length == s2->Length) {
-                    s1->Position = 0;
-                    s2->Position = 0;
-                    for (                    ; ((s1->Position != s1->Length) 
-                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
-                        ;
-                    }
-                    if (s1->Position == s1->Length) {
-                        return type;
-                    }
-                }
-            }
-        }
-        finally {
-            if (s1 != nullptr) {
-                s1->Close();
-            }
-            if (s2 != nullptr) {
-                s2->Close();
-            }
-        }
-    }
-    xs->Add(dsSchema);
-    return type;
-}
-
-
-inline NewDataSet::FunctionRow::FunctionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableFunction = (cli::safe_cast<NewDataSet::FunctionDataTable^  >(this->Table));
-}
-
-inline System::String^  NewDataSet::FunctionRow::Name::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableFunction->NameColumn]));
-}
-inline System::Void NewDataSet::FunctionRow::Name::set(System::String^  value) {
-    this[this->tableFunction->NameColumn] = value;
-}
-
-inline System::Int32 NewDataSet::FunctionRow::Function_Id::get() {
-    return (cli::safe_cast<::System::Int32 >(this[this->tableFunction->Function_IdColumn]));
-}
-inline System::Void NewDataSet::FunctionRow::Function_Id::set(System::Int32 value) {
-    this[this->tableFunction->Function_IdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::FunctionRow::Function_Id_0::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableFunction->Function_Id_0Column]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Function_Id_0\' in table \'Function\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::FunctionRow::Function_Id_0::set(System::Int32 value) {
-    this[this->tableFunction->Function_Id_0Column] = value;
-}
-
-inline System::Int32 NewDataSet::FunctionRow::CompositeInstruction_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableFunction->CompositeInstruction_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'CompositeInstruction_Id\' in table \'Function\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::FunctionRow::CompositeInstruction_Id::set(System::Int32 value) {
-    this[this->tableFunction->CompositeInstruction_IdColumn] = value;
-}
-
-inline NewDataSet::FunctionRow^  NewDataSet::FunctionRow::FunctionRowParent::get() {
-    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Function_Function"])));
-}
-inline System::Void NewDataSet::FunctionRow::FunctionRowParent::set(NewDataSet::FunctionRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Function_Function"]);
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::FunctionRow::CompositeInstructionRow::get() {
-    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"CompositeInstruction_Function"])));
-}
-inline System::Void NewDataSet::FunctionRow::CompositeInstructionRow::set(NewDataSet::CompositeInstructionRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"CompositeInstruction_Function"]);
-}
-
-inline ::System::Boolean NewDataSet::FunctionRow::IsFunction_Id_0Null() {
-    return this->IsNull(this->tableFunction->Function_Id_0Column);
-}
-
-inline ::System::Void NewDataSet::FunctionRow::SetFunction_Id_0Null() {
-    this[this->tableFunction->Function_Id_0Column] = ::System::Convert::DBNull;
-}
-
-inline ::System::Boolean NewDataSet::FunctionRow::IsCompositeInstruction_IdNull() {
-    return this->IsNull(this->tableFunction->CompositeInstruction_IdColumn);
-}
-
-inline ::System::Void NewDataSet::FunctionRow::SetCompositeInstruction_IdNull() {
-    this[this->tableFunction->CompositeInstruction_IdColumn] = ::System::Convert::DBNull;
-}
-
-inline cli::array< NewDataSet::ParameterListRow^  >^  NewDataSet::FunctionRow::GetParameterListRows() {
-    if (this->Table->ChildRelations[L"Function_ParameterList"] == nullptr) {
-        return gcnew cli::array< NewDataSet::ParameterListRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::ParameterListRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Function_ParameterList"])));
-    }
-}
-
-inline cli::array< NewDataSet::FunctionRow^  >^  NewDataSet::FunctionRow::GetFunctionRows() {
-    if (this->Table->ChildRelations[L"Function_Function"] == nullptr) {
-        return gcnew cli::array< NewDataSet::FunctionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::FunctionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Function_Function"])));
-    }
-}
-
-
-inline NewDataSet::ParameterListRow::ParameterListRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableParameterList = (cli::safe_cast<NewDataSet::ParameterListDataTable^  >(this->Table));
-}
-
-inline System::Int32 NewDataSet::ParameterListRow::ParameterList_Id::get() {
-    return (cli::safe_cast<::System::Int32 >(this[this->tableParameterList->ParameterList_IdColumn]));
-}
-inline System::Void NewDataSet::ParameterListRow::ParameterList_Id::set(System::Int32 value) {
-    this[this->tableParameterList->ParameterList_IdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::ParameterListRow::Function_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableParameterList->Function_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Function_Id\' in table \'ParameterList\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::ParameterListRow::Function_Id::set(System::Int32 value) {
-    this[this->tableParameterList->Function_IdColumn] = value;
-}
-
-inline NewDataSet::FunctionRow^  NewDataSet::ParameterListRow::FunctionRow::get() {
-    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Function_ParameterList"])));
-}
-inline System::Void NewDataSet::ParameterListRow::FunctionRow::set(NewDataSet::FunctionRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Function_ParameterList"]);
-}
-
-inline ::System::Boolean NewDataSet::ParameterListRow::IsFunction_IdNull() {
-    return this->IsNull(this->tableParameterList->Function_IdColumn);
-}
-
-inline ::System::Void NewDataSet::ParameterListRow::SetFunction_IdNull() {
-    this[this->tableParameterList->Function_IdColumn] = ::System::Convert::DBNull;
-}
-
-inline cli::array< NewDataSet::ParameterRow^  >^  NewDataSet::ParameterListRow::GetParameterRows() {
-    if (this->Table->ChildRelations[L"ParameterList_Parameter"] == nullptr) {
-        return gcnew cli::array< NewDataSet::ParameterRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::ParameterRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"ParameterList_Parameter"])));
-    }
-}
-
-
-inline NewDataSet::ParameterRow::ParameterRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableParameter = (cli::safe_cast<NewDataSet::ParameterDataTable^  >(this->Table));
-}
-
-inline System::String^  NewDataSet::ParameterRow::Name::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableParameter->NameColumn]));
-}
-inline System::Void NewDataSet::ParameterRow::Name::set(System::String^  value) {
-    this[this->tableParameter->NameColumn] = value;
-}
-
-inline System::String^  NewDataSet::ParameterRow::Type::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableParameter->TypeColumn]));
-}
-inline System::Void NewDataSet::ParameterRow::Type::set(System::String^  value) {
-    this[this->tableParameter->TypeColumn] = value;
-}
-
-inline System::String^  NewDataSet::ParameterRow::Value::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableParameter->ValueColumn]));
-}
-inline System::Void NewDataSet::ParameterRow::Value::set(System::String^  value) {
-    this[this->tableParameter->ValueColumn] = value;
-}
-
-inline System::Int32 NewDataSet::ParameterRow::ParameterList_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableParameter->ParameterList_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'ParameterList_Id\' in table \'Parameter\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::ParameterRow::ParameterList_Id::set(System::Int32 value) {
-    this[this->tableParameter->ParameterList_IdColumn] = value;
-}
-
-inline NewDataSet::ParameterListRow^  NewDataSet::ParameterRow::ParameterListRow::get() {
-    return (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->GetParentRow(this->Table->ParentRelations[L"ParameterList_Parameter"])));
-}
-inline System::Void NewDataSet::ParameterRow::ParameterListRow::set(NewDataSet::ParameterListRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"ParameterList_Parameter"]);
-}
-
-inline ::System::Boolean NewDataSet::ParameterRow::IsParameterList_IdNull() {
-    return this->IsNull(this->tableParameter->ParameterList_IdColumn);
-}
-
-inline ::System::Void NewDataSet::ParameterRow::SetParameterList_IdNull() {
-    this[this->tableParameter->ParameterList_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::DimensionRow::DimensionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableDimension = (cli::safe_cast<NewDataSet::DimensionDataTable^  >(this->Table));
-}
-
-inline System::Int64 NewDataSet::DimensionRow::ID::get() {
-    return (cli::safe_cast<::System::Int64 >(this[this->tableDimension->IDColumn]));
-}
-inline System::Void NewDataSet::DimensionRow::ID::set(System::Int64 value) {
-    this[this->tableDimension->IDColumn] = value;
-}
-
-inline System::String^  NewDataSet::DimensionRow::Name::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableDimension->NameColumn]));
-}
-inline System::Void NewDataSet::DimensionRow::Name::set(System::String^  value) {
-    this[this->tableDimension->NameColumn] = value;
-}
-
-inline System::Int64 NewDataSet::DimensionRow::UpperBounds::get() {
-    return (cli::safe_cast<::System::Int64 >(this[this->tableDimension->UpperBoundsColumn]));
-}
-inline System::Void NewDataSet::DimensionRow::UpperBounds::set(System::Int64 value) {
-    this[this->tableDimension->UpperBoundsColumn] = value;
-}
-
-inline System::Int64 NewDataSet::DimensionRow::LowerBounds::get() {
-    return (cli::safe_cast<::System::Int64 >(this[this->tableDimension->LowerBoundsColumn]));
-}
-inline System::Void NewDataSet::DimensionRow::LowerBounds::set(System::Int64 value) {
-    this[this->tableDimension->LowerBoundsColumn] = value;
-}
-
-inline System::Int32 NewDataSet::DimensionRow::Dimension_Id::get() {
-    return (cli::safe_cast<::System::Int32 >(this[this->tableDimension->Dimension_IdColumn]));
-}
-inline System::Void NewDataSet::DimensionRow::Dimension_Id::set(System::Int32 value) {
-    this[this->tableDimension->Dimension_IdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::DimensionRow::Geometry_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableDimension->Geometry_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'Dimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::DimensionRow::Geometry_Id::set(System::Int32 value) {
-    this[this->tableDimension->Geometry_IdColumn] = value;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::DimensionRow::GeometryRow::get() {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_Dimension"])));
-}
-inline System::Void NewDataSet::DimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_Dimension"]);
-}
-
-inline ::System::Boolean NewDataSet::DimensionRow::IsGeometry_IdNull() {
-    return this->IsNull(this->tableDimension->Geometry_IdColumn);
-}
-
-inline ::System::Void NewDataSet::DimensionRow::SetGeometry_IdNull() {
-    this[this->tableDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
-}
-
-inline cli::array< NewDataSet::IntegratedRow^  >^  NewDataSet::DimensionRow::GetIntegratedRows() {
-    if (this->Table->ChildRelations[L"Dimension_Integrated"] == nullptr) {
-        return gcnew cli::array< NewDataSet::IntegratedRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::IntegratedRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Dimension_Integrated"])));
-    }
-}
-
-
-inline NewDataSet::IntegratedRow::IntegratedRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableIntegrated = (cli::safe_cast<NewDataSet::IntegratedDataTable^  >(this->Table));
-}
-
-inline System::Int64 NewDataSet::IntegratedRow::UpperLimit::get() {
-    return (cli::safe_cast<::System::Int64 >(this[this->tableIntegrated->UpperLimitColumn]));
-}
-inline System::Void NewDataSet::IntegratedRow::UpperLimit::set(System::Int64 value) {
-    this[this->tableIntegrated->UpperLimitColumn] = value;
-}
-
-inline System::Int64 NewDataSet::IntegratedRow::LowerLimit::get() {
-    return (cli::safe_cast<::System::Int64 >(this[this->tableIntegrated->LowerLimitColumn]));
-}
-inline System::Void NewDataSet::IntegratedRow::LowerLimit::set(System::Int64 value) {
-    this[this->tableIntegrated->LowerLimitColumn] = value;
-}
-
-inline System::Int32 NewDataSet::IntegratedRow::Dimension_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableIntegrated->Dimension_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Dimension_Id\' in table \'Integrated\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::IntegratedRow::Dimension_Id::set(System::Int32 value) {
-    this[this->tableIntegrated->Dimension_IdColumn] = value;
-}
-
-inline NewDataSet::DimensionRow^  NewDataSet::IntegratedRow::DimensionRow::get() {
-    return (cli::safe_cast<NewDataSet::DimensionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Dimension_Integrated"])));
-}
-inline System::Void NewDataSet::IntegratedRow::DimensionRow::set(NewDataSet::DimensionRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Dimension_Integrated"]);
-}
-
-inline ::System::Boolean NewDataSet::IntegratedRow::IsDimension_IdNull() {
-    return this->IsNull(this->tableIntegrated->Dimension_IdColumn);
-}
-
-inline ::System::Void NewDataSet::IntegratedRow::SetDimension_IdNull() {
-    this[this->tableIntegrated->Dimension_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::CompositeInstructionRow::CompositeInstructionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableCompositeInstruction = (cli::safe_cast<NewDataSet::CompositeInstructionDataTable^  >(this->Table));
-}
-
-inline System::String^  NewDataSet::CompositeInstructionRow::MDWorkspaceName::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableCompositeInstruction->MDWorkspaceNameColumn]));
-}
-inline System::Void NewDataSet::CompositeInstructionRow::MDWorkspaceName::set(System::String^  value) {
-    this[this->tableCompositeInstruction->MDWorkspaceNameColumn] = value;
-}
-
-inline System::String^  NewDataSet::CompositeInstructionRow::MDWorkspaceLocation::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableCompositeInstruction->MDWorkspaceLocationColumn]));
-}
-inline System::Void NewDataSet::CompositeInstructionRow::MDWorkspaceLocation::set(System::String^  value) {
-    this[this->tableCompositeInstruction->MDWorkspaceLocationColumn] = value;
-}
-
-inline System::Int32 NewDataSet::CompositeInstructionRow::CompositeInstruction_Id::get() {
-    return (cli::safe_cast<::System::Int32 >(this[this->tableCompositeInstruction->CompositeInstruction_IdColumn]));
-}
-inline System::Void NewDataSet::CompositeInstructionRow::CompositeInstruction_Id::set(System::Int32 value) {
-    this[this->tableCompositeInstruction->CompositeInstruction_IdColumn] = value;
-}
-
-inline cli::array< NewDataSet::GeometryRow^  >^  NewDataSet::CompositeInstructionRow::GetGeometryRows() {
-    if (this->Table->ChildRelations[L"CompositeInstruction_Geometry"] == nullptr) {
-        return gcnew cli::array< NewDataSet::GeometryRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::GeometryRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"CompositeInstruction_Geometry"])));
-    }
-}
-
-inline cli::array< NewDataSet::OperationRow^  >^  NewDataSet::CompositeInstructionRow::GetOperationRows() {
-    if (this->Table->ChildRelations[L"CompositeInstruction_Operation"] == nullptr) {
-        return gcnew cli::array< NewDataSet::OperationRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::OperationRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"CompositeInstruction_Operation"])));
-    }
-}
-
-inline cli::array< NewDataSet::FunctionRow^  >^  NewDataSet::CompositeInstructionRow::GetFunctionRows() {
-    if (this->Table->ChildRelations[L"CompositeInstruction_Function"] == nullptr) {
-        return gcnew cli::array< NewDataSet::FunctionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::FunctionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"CompositeInstruction_Function"])));
-    }
-}
-
-
-inline NewDataSet::GeometryRow::GeometryRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableGeometry = (cli::safe_cast<NewDataSet::GeometryDataTable^  >(this->Table));
-}
-
-inline System::Int32 NewDataSet::GeometryRow::Geometry_Id::get() {
-    return (cli::safe_cast<::System::Int32 >(this[this->tableGeometry->Geometry_IdColumn]));
-}
-inline System::Void NewDataSet::GeometryRow::Geometry_Id::set(System::Int32 value) {
-    this[this->tableGeometry->Geometry_IdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::GeometryRow::CompositeInstruction_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableGeometry->CompositeInstruction_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'CompositeInstruction_Id\' in table \'Geometry\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::GeometryRow::CompositeInstruction_Id::set(System::Int32 value) {
-    this[this->tableGeometry->CompositeInstruction_IdColumn] = value;
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::GeometryRow::CompositeInstructionRow::get() {
-    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"CompositeInstruction_Geometry"])));
-}
-inline System::Void NewDataSet::GeometryRow::CompositeInstructionRow::set(NewDataSet::CompositeInstructionRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"CompositeInstruction_Geometry"]);
-}
-
-inline ::System::Boolean NewDataSet::GeometryRow::IsCompositeInstruction_IdNull() {
-    return this->IsNull(this->tableGeometry->CompositeInstruction_IdColumn);
-}
-
-inline ::System::Void NewDataSet::GeometryRow::SetCompositeInstruction_IdNull() {
-    this[this->tableGeometry->CompositeInstruction_IdColumn] = ::System::Convert::DBNull;
-}
-
-inline cli::array< NewDataSet::DimensionRow^  >^  NewDataSet::GeometryRow::GetDimensionRows() {
-    if (this->Table->ChildRelations[L"Geometry_Dimension"] == nullptr) {
-        return gcnew cli::array< NewDataSet::DimensionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::DimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_Dimension"])));
-    }
-}
-
-inline cli::array< NewDataSet::XDimensionRow^  >^  NewDataSet::GeometryRow::GetXDimensionRows() {
-    if (this->Table->ChildRelations[L"Geometry_XDimension"] == nullptr) {
-        return gcnew cli::array< NewDataSet::XDimensionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::XDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_XDimension"])));
-    }
-}
-
-inline cli::array< NewDataSet::YDimensionRow^  >^  NewDataSet::GeometryRow::GetYDimensionRows() {
-    if (this->Table->ChildRelations[L"Geometry_YDimension"] == nullptr) {
-        return gcnew cli::array< NewDataSet::YDimensionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::YDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_YDimension"])));
-    }
-}
-
-inline cli::array< NewDataSet::ZDimensionRow^  >^  NewDataSet::GeometryRow::GetZDimensionRows() {
-    if (this->Table->ChildRelations[L"Geometry_ZDimension"] == nullptr) {
-        return gcnew cli::array< NewDataSet::ZDimensionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::ZDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_ZDimension"])));
-    }
-}
-
-inline cli::array< NewDataSet::TDimensionRow^  >^  NewDataSet::GeometryRow::GetTDimensionRows() {
-    if (this->Table->ChildRelations[L"Geometry_TDimension"] == nullptr) {
-        return gcnew cli::array< NewDataSet::TDimensionRow^  >(0);
-    }
-    else {
-        return (cli::safe_cast<cli::array< NewDataSet::TDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_TDimension"])));
-    }
-}
-
-
-inline NewDataSet::XDimensionRow::XDimensionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableXDimension = (cli::safe_cast<NewDataSet::XDimensionDataTable^  >(this->Table));
-}
-
-inline System::Int64 NewDataSet::XDimensionRow::RefDimensionId::get() {
-    try {
-        return (cli::safe_cast<::System::Int64 >(this[this->tableXDimension->RefDimensionIdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'XDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::XDimensionRow::RefDimensionId::set(System::Int64 value) {
-    this[this->tableXDimension->RefDimensionIdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::XDimensionRow::Geometry_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableXDimension->Geometry_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'XDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::XDimensionRow::Geometry_Id::set(System::Int32 value) {
-    this[this->tableXDimension->Geometry_IdColumn] = value;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::XDimensionRow::GeometryRow::get() {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_XDimension"])));
-}
-inline System::Void NewDataSet::XDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_XDimension"]);
-}
-
-inline ::System::Boolean NewDataSet::XDimensionRow::IsRefDimensionIdNull() {
-    return this->IsNull(this->tableXDimension->RefDimensionIdColumn);
-}
-
-inline ::System::Void NewDataSet::XDimensionRow::SetRefDimensionIdNull() {
-    this[this->tableXDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
-}
-
-inline ::System::Boolean NewDataSet::XDimensionRow::IsGeometry_IdNull() {
-    return this->IsNull(this->tableXDimension->Geometry_IdColumn);
-}
-
-inline ::System::Void NewDataSet::XDimensionRow::SetGeometry_IdNull() {
-    this[this->tableXDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::YDimensionRow::YDimensionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableYDimension = (cli::safe_cast<NewDataSet::YDimensionDataTable^  >(this->Table));
-}
-
-inline System::Int64 NewDataSet::YDimensionRow::RefDimensionId::get() {
-    try {
-        return (cli::safe_cast<::System::Int64 >(this[this->tableYDimension->RefDimensionIdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'YDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::YDimensionRow::RefDimensionId::set(System::Int64 value) {
-    this[this->tableYDimension->RefDimensionIdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::YDimensionRow::Geometry_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableYDimension->Geometry_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'YDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::YDimensionRow::Geometry_Id::set(System::Int32 value) {
-    this[this->tableYDimension->Geometry_IdColumn] = value;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::YDimensionRow::GeometryRow::get() {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_YDimension"])));
-}
-inline System::Void NewDataSet::YDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_YDimension"]);
-}
-
-inline ::System::Boolean NewDataSet::YDimensionRow::IsRefDimensionIdNull() {
-    return this->IsNull(this->tableYDimension->RefDimensionIdColumn);
-}
-
-inline ::System::Void NewDataSet::YDimensionRow::SetRefDimensionIdNull() {
-    this[this->tableYDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
-}
-
-inline ::System::Boolean NewDataSet::YDimensionRow::IsGeometry_IdNull() {
-    return this->IsNull(this->tableYDimension->Geometry_IdColumn);
-}
-
-inline ::System::Void NewDataSet::YDimensionRow::SetGeometry_IdNull() {
-    this[this->tableYDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::ZDimensionRow::ZDimensionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableZDimension = (cli::safe_cast<NewDataSet::ZDimensionDataTable^  >(this->Table));
-}
-
-inline System::Int64 NewDataSet::ZDimensionRow::RefDimensionId::get() {
-    try {
-        return (cli::safe_cast<::System::Int64 >(this[this->tableZDimension->RefDimensionIdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'ZDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::ZDimensionRow::RefDimensionId::set(System::Int64 value) {
-    this[this->tableZDimension->RefDimensionIdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::ZDimensionRow::Geometry_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableZDimension->Geometry_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'ZDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::ZDimensionRow::Geometry_Id::set(System::Int32 value) {
-    this[this->tableZDimension->Geometry_IdColumn] = value;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::ZDimensionRow::GeometryRow::get() {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_ZDimension"])));
-}
-inline System::Void NewDataSet::ZDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_ZDimension"]);
-}
-
-inline ::System::Boolean NewDataSet::ZDimensionRow::IsRefDimensionIdNull() {
-    return this->IsNull(this->tableZDimension->RefDimensionIdColumn);
-}
-
-inline ::System::Void NewDataSet::ZDimensionRow::SetRefDimensionIdNull() {
-    this[this->tableZDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
-}
-
-inline ::System::Boolean NewDataSet::ZDimensionRow::IsGeometry_IdNull() {
-    return this->IsNull(this->tableZDimension->Geometry_IdColumn);
-}
-
-inline ::System::Void NewDataSet::ZDimensionRow::SetGeometry_IdNull() {
-    this[this->tableZDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::TDimensionRow::TDimensionRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableTDimension = (cli::safe_cast<NewDataSet::TDimensionDataTable^  >(this->Table));
-}
-
-inline System::Int64 NewDataSet::TDimensionRow::RefDimensionId::get() {
-    try {
-        return (cli::safe_cast<::System::Int64 >(this[this->tableTDimension->RefDimensionIdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'TDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::TDimensionRow::RefDimensionId::set(System::Int64 value) {
-    this[this->tableTDimension->RefDimensionIdColumn] = value;
-}
-
-inline System::Int32 NewDataSet::TDimensionRow::Geometry_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableTDimension->Geometry_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'TDimension\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::TDimensionRow::Geometry_Id::set(System::Int32 value) {
-    this[this->tableTDimension->Geometry_IdColumn] = value;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::TDimensionRow::GeometryRow::get() {
-    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_TDimension"])));
-}
-inline System::Void NewDataSet::TDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_TDimension"]);
-}
-
-inline ::System::Boolean NewDataSet::TDimensionRow::IsRefDimensionIdNull() {
-    return this->IsNull(this->tableTDimension->RefDimensionIdColumn);
-}
-
-inline ::System::Void NewDataSet::TDimensionRow::SetRefDimensionIdNull() {
-    this[this->tableTDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
-}
-
-inline ::System::Boolean NewDataSet::TDimensionRow::IsGeometry_IdNull() {
-    return this->IsNull(this->tableTDimension->Geometry_IdColumn);
-}
-
-inline ::System::Void NewDataSet::TDimensionRow::SetGeometry_IdNull() {
-    this[this->tableTDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::OperationRow::OperationRow(::System::Data::DataRowBuilder^  rb) : 
-        ::System::Data::DataRow(rb) {
-    this->tableOperation = (cli::safe_cast<NewDataSet::OperationDataTable^  >(this->Table));
-}
-
-inline System::String^  NewDataSet::OperationRow::Type::get() {
-    return (cli::safe_cast<::System::String^  >(this[this->tableOperation->TypeColumn]));
-}
-inline System::Void NewDataSet::OperationRow::Type::set(System::String^  value) {
-    this[this->tableOperation->TypeColumn] = value;
-}
-
-inline System::Int32 NewDataSet::OperationRow::CompositeInstruction_Id::get() {
-    try {
-        return (cli::safe_cast<::System::Int32 >(this[this->tableOperation->CompositeInstruction_IdColumn]));
-    }
-    catch (::System::InvalidCastException^ e) {
-        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'CompositeInstruction_Id\' in table \'Operation\' is DBNull.", 
-            e));
-    }
-}
-inline System::Void NewDataSet::OperationRow::CompositeInstruction_Id::set(System::Int32 value) {
-    this[this->tableOperation->CompositeInstruction_IdColumn] = value;
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::OperationRow::CompositeInstructionRow::get() {
-    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"CompositeInstruction_Operation"])));
-}
-inline System::Void NewDataSet::OperationRow::CompositeInstructionRow::set(NewDataSet::CompositeInstructionRow^  value) {
-    this->SetParentRow(value, this->Table->ParentRelations[L"CompositeInstruction_Operation"]);
-}
-
-inline ::System::Boolean NewDataSet::OperationRow::IsCompositeInstruction_IdNull() {
-    return this->IsNull(this->tableOperation->CompositeInstruction_IdColumn);
-}
-
-inline ::System::Void NewDataSet::OperationRow::SetCompositeInstruction_IdNull() {
-    this[this->tableOperation->CompositeInstruction_IdColumn] = ::System::Convert::DBNull;
-}
-
-
-inline NewDataSet::FunctionRowChangeEvent::FunctionRowChangeEvent(NewDataSet::FunctionRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::FunctionRow^  NewDataSet::FunctionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::FunctionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::ParameterListRowChangeEvent::ParameterListRowChangeEvent(NewDataSet::ParameterListRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::ParameterListRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::ParameterRowChangeEvent::ParameterRowChangeEvent(NewDataSet::ParameterRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::ParameterRow^  NewDataSet::ParameterRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::ParameterRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::DimensionRowChangeEvent::DimensionRowChangeEvent(NewDataSet::DimensionRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::DimensionRow^  NewDataSet::DimensionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::DimensionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::IntegratedRowChangeEvent::IntegratedRowChangeEvent(NewDataSet::IntegratedRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::IntegratedRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::CompositeInstructionRowChangeEvent::CompositeInstructionRowChangeEvent(NewDataSet::CompositeInstructionRow^  row, 
-            ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::CompositeInstructionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::GeometryRowChangeEvent::GeometryRowChangeEvent(NewDataSet::GeometryRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::GeometryRow^  NewDataSet::GeometryRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::GeometryRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::XDimensionRowChangeEvent::XDimensionRowChangeEvent(NewDataSet::XDimensionRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::XDimensionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::YDimensionRowChangeEvent::YDimensionRowChangeEvent(NewDataSet::YDimensionRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::YDimensionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::ZDimensionRowChangeEvent::ZDimensionRowChangeEvent(NewDataSet::ZDimensionRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::ZDimensionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::TDimensionRowChangeEvent::TDimensionRowChangeEvent(NewDataSet::TDimensionRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::TDimensionRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
-
-
-inline NewDataSet::OperationRowChangeEvent::OperationRowChangeEvent(NewDataSet::OperationRow^  row, ::System::Data::DataRowAction action) {
-    this->eventRow = row;
-    this->eventAction = action;
-}
-
-inline NewDataSet::OperationRow^  NewDataSet::OperationRowChangeEvent::Row::get() {
-    return this->eventRow;
-}
-
-inline ::System::Data::DataRowAction NewDataSet::OperationRowChangeEvent::Action::get() {
-    return this->eventAction;
-}
+#pragma once
+
+#using <mscorlib.dll>
+#using <System.dll>
+#using <System.Data.dll>
+#using <System.Xml.dll>
+
+using namespace System::Security::Permissions;
+[assembly:SecurityPermissionAttribute(SecurityAction::RequestMinimum, SkipVerification=false)];
+// 
+// This source code was auto-generated by xsd, Version=4.0.30319.1.
+// 
+using namespace System;
+ref class NewDataSet;
+
+
+/// <summary>
+///Represents a strongly typed in-memory cache of data.
+///</summary>
+[System::Serializable, 
+System::ComponentModel::DesignerCategoryAttribute(L"code"), 
+System::ComponentModel::ToolboxItem(true), 
+System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedDataSetSchema"), 
+System::Xml::Serialization::XmlRootAttribute(L"NewDataSet"), 
+System::ComponentModel::Design::HelpKeywordAttribute(L"vs.data.DataSet")]
+public ref class NewDataSet : public ::System::Data::DataSet {
+    public : ref class FunctionDataTable;
+    public : ref class ParameterListDataTable;
+    public : ref class ParameterDataTable;
+    public : ref class DimensionDataTable;
+    public : ref class IntegratedDataTable;
+    public : ref class CompositeInstructionDataTable;
+    public : ref class GeometryDataTable;
+    public : ref class XDimensionDataTable;
+    public : ref class YDimensionDataTable;
+    public : ref class ZDimensionDataTable;
+    public : ref class TDimensionDataTable;
+    public : ref class OperationDataTable;
+    public : ref class FunctionRow;
+    public : ref class ParameterListRow;
+    public : ref class ParameterRow;
+    public : ref class DimensionRow;
+    public : ref class IntegratedRow;
+    public : ref class CompositeInstructionRow;
+    public : ref class GeometryRow;
+    public : ref class XDimensionRow;
+    public : ref class YDimensionRow;
+    public : ref class ZDimensionRow;
+    public : ref class TDimensionRow;
+    public : ref class OperationRow;
+    public : ref class FunctionRowChangeEvent;
+    public : ref class ParameterListRowChangeEvent;
+    public : ref class ParameterRowChangeEvent;
+    public : ref class DimensionRowChangeEvent;
+    public : ref class IntegratedRowChangeEvent;
+    public : ref class CompositeInstructionRowChangeEvent;
+    public : ref class GeometryRowChangeEvent;
+    public : ref class XDimensionRowChangeEvent;
+    public : ref class YDimensionRowChangeEvent;
+    public : ref class ZDimensionRowChangeEvent;
+    public : ref class TDimensionRowChangeEvent;
+    public : ref class OperationRowChangeEvent;
+    
+    private: NewDataSet::FunctionDataTable^  tableFunction;
+    
+    private: NewDataSet::ParameterListDataTable^  tableParameterList;
+    
+    private: NewDataSet::ParameterDataTable^  tableParameter;
+    
+    private: NewDataSet::DimensionDataTable^  tableDimension;
+    
+    private: NewDataSet::IntegratedDataTable^  tableIntegrated;
+    
+    private: NewDataSet::CompositeInstructionDataTable^  tableCompositeInstruction;
+    
+    private: NewDataSet::GeometryDataTable^  tableGeometry;
+    
+    private: NewDataSet::XDimensionDataTable^  tableXDimension;
+    
+    private: NewDataSet::YDimensionDataTable^  tableYDimension;
+    
+    private: NewDataSet::ZDimensionDataTable^  tableZDimension;
+    
+    private: NewDataSet::TDimensionDataTable^  tableTDimension;
+    
+    private: NewDataSet::OperationDataTable^  tableOperation;
+    
+    private: ::System::Data::DataRelation^  relationFunction_Function;
+    
+    private: ::System::Data::DataRelation^  relationCompositeInstruction_Function;
+    
+    private: ::System::Data::DataRelation^  relationFunction_ParameterList;
+    
+    private: ::System::Data::DataRelation^  relationParameterList_Parameter;
+    
+    private: ::System::Data::DataRelation^  relationGeometry_Dimension;
+    
+    private: ::System::Data::DataRelation^  relationDimension_Integrated;
+    
+    private: ::System::Data::DataRelation^  relationCompositeInstruction_Geometry;
+    
+    private: ::System::Data::DataRelation^  relationGeometry_XDimension;
+    
+    private: ::System::Data::DataRelation^  relationGeometry_YDimension;
+    
+    private: ::System::Data::DataRelation^  relationGeometry_ZDimension;
+    
+    private: ::System::Data::DataRelation^  relationGeometry_TDimension;
+    
+    private: ::System::Data::DataRelation^  relationCompositeInstruction_Operation;
+    
+    private: ::System::Data::SchemaSerializationMode _schemaSerializationMode;
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void FunctionRowChangeEventHandler(::System::Object^  sender, NewDataSet::FunctionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void ParameterListRowChangeEventHandler(::System::Object^  sender, NewDataSet::ParameterListRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void ParameterRowChangeEventHandler(::System::Object^  sender, NewDataSet::ParameterRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void DimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::DimensionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void IntegratedRowChangeEventHandler(::System::Object^  sender, NewDataSet::IntegratedRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void CompositeInstructionRowChangeEventHandler(::System::Object^  sender, NewDataSet::CompositeInstructionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void GeometryRowChangeEventHandler(::System::Object^  sender, NewDataSet::GeometryRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void XDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::XDimensionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void YDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::YDimensionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void ZDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::ZDimensionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void TDimensionRowChangeEventHandler(::System::Object^  sender, NewDataSet::TDimensionRowChangeEvent^  e);
+    
+    public : [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    delegate System::Void OperationRowChangeEventHandler(::System::Object^  sender, NewDataSet::OperationRowChangeEvent^  e);
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    NewDataSet();
+    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    NewDataSet(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::FunctionDataTable^  Function {
+        NewDataSet::FunctionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::ParameterListDataTable^  ParameterList {
+        NewDataSet::ParameterListDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::ParameterDataTable^  Parameter {
+        NewDataSet::ParameterDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::DimensionDataTable^  Dimension {
+        NewDataSet::DimensionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::IntegratedDataTable^  Integrated {
+        NewDataSet::IntegratedDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::CompositeInstructionDataTable^  CompositeInstruction {
+        NewDataSet::CompositeInstructionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::GeometryDataTable^  Geometry {
+        NewDataSet::GeometryDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::XDimensionDataTable^  XDimension {
+        NewDataSet::XDimensionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::YDimensionDataTable^  YDimension {
+        NewDataSet::YDimensionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::ZDimensionDataTable^  ZDimension {
+        NewDataSet::ZDimensionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::TDimensionDataTable^  TDimension {
+        NewDataSet::TDimensionDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::Browsable(false), 
+    System::ComponentModel::DesignerSerializationVisibility(::System::ComponentModel::DesignerSerializationVisibility::Content)]
+    property NewDataSet::OperationDataTable^  Operation {
+        NewDataSet::OperationDataTable^  get();
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::BrowsableAttribute(true), 
+    System::ComponentModel::DesignerSerializationVisibilityAttribute(::System::ComponentModel::DesignerSerializationVisibility::Visible)]
+    virtual property ::System::Data::SchemaSerializationMode SchemaSerializationMode {
+        ::System::Data::SchemaSerializationMode get() override;
+        System::Void set(::System::Data::SchemaSerializationMode value) override;
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::DesignerSerializationVisibilityAttribute(::System::ComponentModel::DesignerSerializationVisibility::Hidden)]
+    property ::System::Data::DataTableCollection^  Tables {
+        ::System::Data::DataTableCollection^  get() new;
+    }
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+    System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+    System::ComponentModel::DesignerSerializationVisibilityAttribute(::System::ComponentModel::DesignerSerializationVisibility::Hidden)]
+    property ::System::Data::DataRelationCollection^  Relations {
+        ::System::Data::DataRelationCollection^  get() new;
+    }
+    
+    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    virtual ::System::Void InitializeDerivedDataSet() override;
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    virtual ::System::Data::DataSet^  Clone() override;
+    
+    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    virtual ::System::Boolean ShouldSerializeTables() override;
+    
+    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    virtual ::System::Boolean ShouldSerializeRelations() override;
+    
+    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    virtual ::System::Void ReadXmlSerializable(::System::Xml::XmlReader^  reader) override;
+    
+    protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    virtual ::System::Xml::Schema::XmlSchema^  GetSchemaSerializable() override;
+    
+    internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Void InitVars();
+    
+    internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Void InitVars(::System::Boolean initTable);
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Void InitClass();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeFunction();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeParameterList();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeParameter();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeDimension();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeIntegrated();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeCompositeInstruction();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeGeometry();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeXDimension();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeYDimension();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeZDimension();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeTDimension();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Boolean ShouldSerializeOperation();
+    
+    private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ::System::Void SchemaChanged(::System::Object^  sender, ::System::ComponentModel::CollectionChangeEventArgs^  e);
+    
+    public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedDataSetSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class FunctionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnName;
+        
+        private: ::System::Data::DataColumn^  columnFunction_Id;
+        
+        private: ::System::Data::DataColumn^  columnFunction_Id_0;
+        
+        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::FunctionRowChangeEventHandler^  FunctionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        FunctionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        FunctionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        FunctionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  NameColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Function_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Function_Id_0Column {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::FunctionRow^  default [::System::Int32 ] {
+            NewDataSet::FunctionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddFunctionRow(NewDataSet::FunctionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::FunctionRow^  AddFunctionRow(System::String^  Name, NewDataSet::FunctionRow^  parentFunctionRowByFunction_Function, 
+                    NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Function);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::FunctionRow^  NewFunctionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveFunctionRow(NewDataSet::FunctionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class ParameterListDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnParameterList_Id;
+        
+        private: ::System::Data::DataColumn^  columnFunction_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterListRowChangeEventHandler^  ParameterListRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterListDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterListDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterListDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  ParameterList_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Function_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ParameterListRow^  default [::System::Int32 ] {
+            NewDataSet::ParameterListRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddParameterListRow(NewDataSet::ParameterListRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::ParameterListRow^  AddParameterListRow(NewDataSet::FunctionRow^  parentFunctionRowByFunction_ParameterList);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::ParameterListRow^  NewParameterListRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveParameterListRow(NewDataSet::ParameterListRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class ParameterDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnName;
+        
+        private: ::System::Data::DataColumn^  columnType;
+        
+        private: ::System::Data::DataColumn^  columnValue;
+        
+        private: ::System::Data::DataColumn^  columnParameterList_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ParameterRowChangeEventHandler^  ParameterRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  NameColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  TypeColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  ValueColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  ParameterList_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ParameterRow^  default [::System::Int32 ] {
+            NewDataSet::ParameterRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddParameterRow(NewDataSet::ParameterRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::ParameterRow^  AddParameterRow(System::String^  Name, System::String^  Type, System::String^  Value, 
+                    NewDataSet::ParameterListRow^  parentParameterListRowByParameterList_Parameter);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::ParameterRow^  NewParameterRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveParameterRow(NewDataSet::ParameterRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class DimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnID;
+        
+        private: ::System::Data::DataColumn^  columnName;
+        
+        private: ::System::Data::DataColumn^  columnUpperBounds;
+        
+        private: ::System::Data::DataColumn^  columnLowerBounds;
+        
+        private: ::System::Data::DataColumn^  columnDimension_Id;
+        
+        private: ::System::Data::DataColumn^  columnGeometry_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::DimensionRowChangeEventHandler^  DimensionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        DimensionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        DimensionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        DimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  IDColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  NameColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  UpperBoundsColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  LowerBoundsColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Dimension_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Geometry_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::DimensionRow^  default [::System::Int32 ] {
+            NewDataSet::DimensionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddDimensionRow(NewDataSet::DimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::DimensionRow^  AddDimensionRow(System::Int64 ID, System::String^  Name, System::Int64 UpperBounds, System::Int64 LowerBounds, 
+                    NewDataSet::GeometryRow^  parentGeometryRowByGeometry_Dimension);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::DimensionRow^  NewDimensionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveDimensionRow(NewDataSet::DimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class IntegratedDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnUpperLimit;
+        
+        private: ::System::Data::DataColumn^  columnLowerLimit;
+        
+        private: ::System::Data::DataColumn^  columnDimension_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::IntegratedRowChangeEventHandler^  IntegratedRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        IntegratedDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        IntegratedDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        IntegratedDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  UpperLimitColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  LowerLimitColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Dimension_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::IntegratedRow^  default [::System::Int32 ] {
+            NewDataSet::IntegratedRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddIntegratedRow(NewDataSet::IntegratedRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::IntegratedRow^  AddIntegratedRow(System::Int64 UpperLimit, System::Int64 LowerLimit, NewDataSet::DimensionRow^  parentDimensionRowByDimension_Integrated);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::IntegratedRow^  NewIntegratedRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveIntegratedRow(NewDataSet::IntegratedRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class CompositeInstructionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnMDWorkspaceName;
+        
+        private: ::System::Data::DataColumn^  columnMDWorkspaceLocation;
+        
+        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::CompositeInstructionRowChangeEventHandler^  CompositeInstructionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        CompositeInstructionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        CompositeInstructionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        CompositeInstructionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  MDWorkspaceNameColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  MDWorkspaceLocationColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::CompositeInstructionRow^  default [::System::Int32 ] {
+            NewDataSet::CompositeInstructionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::CompositeInstructionRow^  AddCompositeInstructionRow(System::String^  MDWorkspaceName, System::String^  MDWorkspaceLocation);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::CompositeInstructionRow^  NewCompositeInstructionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class GeometryDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnGeometry_Id;
+        
+        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::GeometryRowChangeEventHandler^  GeometryRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        GeometryDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        GeometryDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        GeometryDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Geometry_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  default [::System::Int32 ] {
+            NewDataSet::GeometryRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddGeometryRow(NewDataSet::GeometryRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::GeometryRow^  AddGeometryRow(NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Geometry);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::GeometryRow^  NewGeometryRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveGeometryRow(NewDataSet::GeometryRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class XDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnRefDimensionId;
+        
+        private: ::System::Data::DataColumn^  columnGeometry_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::XDimensionRowChangeEventHandler^  XDimensionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        XDimensionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        XDimensionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        XDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  RefDimensionIdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Geometry_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::XDimensionRow^  default [::System::Int32 ] {
+            NewDataSet::XDimensionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddXDimensionRow(NewDataSet::XDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::XDimensionRow^  AddXDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_XDimension);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::XDimensionRow^  NewXDimensionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveXDimensionRow(NewDataSet::XDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class YDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnRefDimensionId;
+        
+        private: ::System::Data::DataColumn^  columnGeometry_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::YDimensionRowChangeEventHandler^  YDimensionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        YDimensionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        YDimensionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        YDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  RefDimensionIdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Geometry_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::YDimensionRow^  default [::System::Int32 ] {
+            NewDataSet::YDimensionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddYDimensionRow(NewDataSet::YDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::YDimensionRow^  AddYDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_YDimension);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::YDimensionRow^  NewYDimensionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveYDimensionRow(NewDataSet::YDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class ZDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnRefDimensionId;
+        
+        private: ::System::Data::DataColumn^  columnGeometry_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::ZDimensionRowChangeEventHandler^  ZDimensionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ZDimensionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ZDimensionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ZDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  RefDimensionIdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Geometry_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ZDimensionRow^  default [::System::Int32 ] {
+            NewDataSet::ZDimensionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddZDimensionRow(NewDataSet::ZDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::ZDimensionRow^  AddZDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_ZDimension);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::ZDimensionRow^  NewZDimensionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveZDimensionRow(NewDataSet::ZDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class TDimensionDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnRefDimensionId;
+        
+        private: ::System::Data::DataColumn^  columnGeometry_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::TDimensionRowChangeEventHandler^  TDimensionRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        TDimensionDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        TDimensionDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        TDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  RefDimensionIdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  Geometry_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::TDimensionRow^  default [::System::Int32 ] {
+            NewDataSet::TDimensionRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddTDimensionRow(NewDataSet::TDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::TDimensionRow^  AddTDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_TDimension);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::TDimensionRow^  NewTDimensionRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveTDimensionRow(NewDataSet::TDimensionRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents the strongly named DataTable class.
+///</summary>
+    [System::Serializable, 
+    System::Xml::Serialization::XmlSchemaProviderAttribute(L"GetTypedTableSchema")]
+    ref class OperationDataTable : public ::System::Data::DataTable, public ::System::Collections::IEnumerable {
+        
+        private: ::System::Data::DataColumn^  columnType;
+        
+        private: ::System::Data::DataColumn^  columnCompositeInstruction_Id;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::OperationRowChangeEventHandler^  OperationRowChanging;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::OperationRowChangeEventHandler^  OperationRowChanged;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::OperationRowChangeEventHandler^  OperationRowDeleting;
+        
+        public: [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        event NewDataSet::OperationRowChangeEventHandler^  OperationRowDeleted;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        OperationDataTable();
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        OperationDataTable(::System::Data::DataTable^  table);
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        OperationDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  TypeColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataColumn^  CompositeInstruction_IdColumn {
+            ::System::Data::DataColumn^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0"), 
+        System::ComponentModel::Browsable(false)]
+        property ::System::Int32 Count {
+            ::System::Int32 get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::OperationRow^  default [::System::Int32 ] {
+            NewDataSet::OperationRow^  get(::System::Int32 index);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void AddOperationRow(NewDataSet::OperationRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::OperationRow^  AddOperationRow(System::String^  Type, NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Operation);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Collections::IEnumerator^  GetEnumerator();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  Clone() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataTable^  CreateInstance() override;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitVars();
+        
+        private: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void InitClass();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        NewDataSet::OperationRow^  NewOperationRow();
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Data::DataRow^  NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Type^  GetRowType() override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        protected: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        virtual ::System::Void OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) override;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void RemoveOperationRow(NewDataSet::OperationRow^  row);
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        static ::System::Xml::Schema::XmlSchemaComplexType^  GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs);
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class FunctionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::FunctionDataTable^  tableFunction;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        FunctionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  Name {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Function_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Function_Id_0 {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 CompositeInstruction_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::FunctionRow^  FunctionRowParent {
+            NewDataSet::FunctionRow^  get();
+            System::Void set(NewDataSet::FunctionRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::CompositeInstructionRow^  CompositeInstructionRow {
+            NewDataSet::CompositeInstructionRow^  get();
+            System::Void set(NewDataSet::CompositeInstructionRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsFunction_Id_0Null();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetFunction_Id_0Null();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsCompositeInstruction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetCompositeInstruction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::ParameterListRow^  >^  GetParameterListRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::FunctionRow^  >^  GetFunctionRows();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class ParameterListRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::ParameterListDataTable^  tableParameterList;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterListRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 ParameterList_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Function_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::FunctionRow^  FunctionRow {
+            NewDataSet::FunctionRow^  get();
+            System::Void set(NewDataSet::FunctionRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsFunction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetFunction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::ParameterRow^  >^  GetParameterRows();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class ParameterRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::ParameterDataTable^  tableParameter;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  Name {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  Type {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  Value {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 ParameterList_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ParameterListRow^  ParameterListRow {
+            NewDataSet::ParameterListRow^  get();
+            System::Void set(NewDataSet::ParameterListRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsParameterList_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetParameterList_IdNull();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class DimensionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::DimensionDataTable^  tableDimension;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        DimensionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 ID {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  Name {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 UpperBounds {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 LowerBounds {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Dimension_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Geometry_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  GeometryRow {
+            NewDataSet::GeometryRow^  get();
+            System::Void set(NewDataSet::GeometryRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsGeometry_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetGeometry_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::IntegratedRow^  >^  GetIntegratedRows();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class IntegratedRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::IntegratedDataTable^  tableIntegrated;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        IntegratedRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 UpperLimit {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 LowerLimit {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Dimension_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::DimensionRow^  DimensionRow {
+            NewDataSet::DimensionRow^  get();
+            System::Void set(NewDataSet::DimensionRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsDimension_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetDimension_IdNull();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class CompositeInstructionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::CompositeInstructionDataTable^  tableCompositeInstruction;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        CompositeInstructionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  MDWorkspaceName {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  MDWorkspaceLocation {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 CompositeInstruction_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::GeometryRow^  >^  GetGeometryRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::OperationRow^  >^  GetOperationRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::FunctionRow^  >^  GetFunctionRows();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class GeometryRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::GeometryDataTable^  tableGeometry;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        GeometryRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Geometry_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 CompositeInstruction_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::CompositeInstructionRow^  CompositeInstructionRow {
+            NewDataSet::CompositeInstructionRow^  get();
+            System::Void set(NewDataSet::CompositeInstructionRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsCompositeInstruction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetCompositeInstruction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::DimensionRow^  >^  GetDimensionRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::XDimensionRow^  >^  GetXDimensionRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::YDimensionRow^  >^  GetYDimensionRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::ZDimensionRow^  >^  GetZDimensionRows();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        cli::array< NewDataSet::TDimensionRow^  >^  GetTDimensionRows();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class XDimensionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::XDimensionDataTable^  tableXDimension;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        XDimensionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 RefDimensionId {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Geometry_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  GeometryRow {
+            NewDataSet::GeometryRow^  get();
+            System::Void set(NewDataSet::GeometryRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsGeometry_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetGeometry_IdNull();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class YDimensionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::YDimensionDataTable^  tableYDimension;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        YDimensionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 RefDimensionId {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Geometry_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  GeometryRow {
+            NewDataSet::GeometryRow^  get();
+            System::Void set(NewDataSet::GeometryRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsGeometry_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetGeometry_IdNull();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class ZDimensionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::ZDimensionDataTable^  tableZDimension;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ZDimensionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 RefDimensionId {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Geometry_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  GeometryRow {
+            NewDataSet::GeometryRow^  get();
+            System::Void set(NewDataSet::GeometryRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsGeometry_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetGeometry_IdNull();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class TDimensionRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::TDimensionDataTable^  tableTDimension;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        TDimensionRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int64 RefDimensionId {
+            System::Int64 get();
+            System::Void set(System::Int64 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 Geometry_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  GeometryRow {
+            NewDataSet::GeometryRow^  get();
+            System::Void set(NewDataSet::GeometryRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetRefDimensionIdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsGeometry_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetGeometry_IdNull();
+    };
+    
+    public : /// <summary>
+///Represents strongly named DataRow class.
+///</summary>
+    ref class OperationRow : public ::System::Data::DataRow {
+        
+        private: NewDataSet::OperationDataTable^  tableOperation;
+        
+        internal: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        OperationRow(::System::Data::DataRowBuilder^  rb);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::String^  Type {
+            System::String^  get();
+            System::Void set(System::String^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property System::Int32 CompositeInstruction_Id {
+            System::Int32 get();
+            System::Void set(System::Int32 value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::CompositeInstructionRow^  CompositeInstructionRow {
+            NewDataSet::CompositeInstructionRow^  get();
+            System::Void set(NewDataSet::CompositeInstructionRow^  value);
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Boolean IsCompositeInstruction_IdNull();
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ::System::Void SetCompositeInstruction_IdNull();
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class FunctionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::FunctionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        FunctionRowChangeEvent(NewDataSet::FunctionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::FunctionRow^  Row {
+            NewDataSet::FunctionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class ParameterListRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::ParameterListRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterListRowChangeEvent(NewDataSet::ParameterListRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ParameterListRow^  Row {
+            NewDataSet::ParameterListRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class ParameterRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::ParameterRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ParameterRowChangeEvent(NewDataSet::ParameterRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ParameterRow^  Row {
+            NewDataSet::ParameterRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class DimensionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::DimensionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        DimensionRowChangeEvent(NewDataSet::DimensionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::DimensionRow^  Row {
+            NewDataSet::DimensionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class IntegratedRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::IntegratedRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        IntegratedRowChangeEvent(NewDataSet::IntegratedRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::IntegratedRow^  Row {
+            NewDataSet::IntegratedRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class CompositeInstructionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::CompositeInstructionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        CompositeInstructionRowChangeEvent(NewDataSet::CompositeInstructionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::CompositeInstructionRow^  Row {
+            NewDataSet::CompositeInstructionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class GeometryRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::GeometryRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        GeometryRowChangeEvent(NewDataSet::GeometryRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::GeometryRow^  Row {
+            NewDataSet::GeometryRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class XDimensionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::XDimensionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        XDimensionRowChangeEvent(NewDataSet::XDimensionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::XDimensionRow^  Row {
+            NewDataSet::XDimensionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class YDimensionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::YDimensionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        YDimensionRowChangeEvent(NewDataSet::YDimensionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::YDimensionRow^  Row {
+            NewDataSet::YDimensionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class ZDimensionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::ZDimensionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        ZDimensionRowChangeEvent(NewDataSet::ZDimensionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::ZDimensionRow^  Row {
+            NewDataSet::ZDimensionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class TDimensionRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::TDimensionRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        TDimensionRowChangeEvent(NewDataSet::TDimensionRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::TDimensionRow^  Row {
+            NewDataSet::TDimensionRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+    
+    public : /// <summary>
+///Row event argument class
+///</summary>
+    [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+    ref class OperationRowChangeEvent : public ::System::EventArgs {
+        
+        private: NewDataSet::OperationRow^  eventRow;
+        
+        private: ::System::Data::DataRowAction eventAction;
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute]
+        [System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        OperationRowChangeEvent(NewDataSet::OperationRow^  row, ::System::Data::DataRowAction action);
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property NewDataSet::OperationRow^  Row {
+            NewDataSet::OperationRow^  get();
+        }
+        
+        public: [System::Diagnostics::DebuggerNonUserCodeAttribute, 
+        System::CodeDom::Compiler::GeneratedCodeAttribute(L"System.Data.Design.TypedDataSetGenerator", L"4.0.0.0")]
+        property ::System::Data::DataRowAction Action {
+            ::System::Data::DataRowAction get();
+        }
+    };
+};
+
+
+inline NewDataSet::NewDataSet() {
+    this->BeginInit();
+    this->InitClass();
+    ::System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler = gcnew ::System::ComponentModel::CollectionChangeEventHandler(this, &NewDataSet::SchemaChanged);
+    __super::Tables->CollectionChanged += schemaChangedHandler;
+    __super::Relations->CollectionChanged += schemaChangedHandler;
+    this->EndInit();
+}
+
+inline NewDataSet::NewDataSet(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataSet(info, context, false) {
+    if (this->IsBinarySerialized(info, context) == true) {
+        this->InitVars(false);
+        ::System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler1 = gcnew ::System::ComponentModel::CollectionChangeEventHandler(this, &NewDataSet::SchemaChanged);
+        this->Tables->CollectionChanged += schemaChangedHandler1;
+        this->Relations->CollectionChanged += schemaChangedHandler1;
+        return;
+    }
+    ::System::String^  strSchema = (cli::safe_cast<::System::String^  >(info->GetValue(L"XmlSchema", ::System::String::typeid)));
+    if (this->DetermineSchemaSerializationMode(info, context) == ::System::Data::SchemaSerializationMode::IncludeSchema) {
+        ::System::Data::DataSet^  ds = (gcnew ::System::Data::DataSet());
+        ds->ReadXmlSchema((gcnew ::System::Xml::XmlTextReader((gcnew ::System::IO::StringReader(strSchema)))));
+        if (ds->Tables[L"Function"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::FunctionDataTable(ds->Tables[L"Function"])));
+        }
+        if (ds->Tables[L"ParameterList"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::ParameterListDataTable(ds->Tables[L"ParameterList"])));
+        }
+        if (ds->Tables[L"Parameter"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::ParameterDataTable(ds->Tables[L"Parameter"])));
+        }
+        if (ds->Tables[L"Dimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::DimensionDataTable(ds->Tables[L"Dimension"])));
+        }
+        if (ds->Tables[L"Integrated"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::IntegratedDataTable(ds->Tables[L"Integrated"])));
+        }
+        if (ds->Tables[L"CompositeInstruction"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::CompositeInstructionDataTable(ds->Tables[L"CompositeInstruction"])));
+        }
+        if (ds->Tables[L"Geometry"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::GeometryDataTable(ds->Tables[L"Geometry"])));
+        }
+        if (ds->Tables[L"XDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::XDimensionDataTable(ds->Tables[L"XDimension"])));
+        }
+        if (ds->Tables[L"YDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::YDimensionDataTable(ds->Tables[L"YDimension"])));
+        }
+        if (ds->Tables[L"ZDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::ZDimensionDataTable(ds->Tables[L"ZDimension"])));
+        }
+        if (ds->Tables[L"TDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::TDimensionDataTable(ds->Tables[L"TDimension"])));
+        }
+        if (ds->Tables[L"Operation"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::OperationDataTable(ds->Tables[L"Operation"])));
+        }
+        this->DataSetName = ds->DataSetName;
+        this->Prefix = ds->Prefix;
+        this->Namespace = ds->Namespace;
+        this->Locale = ds->Locale;
+        this->CaseSensitive = ds->CaseSensitive;
+        this->EnforceConstraints = ds->EnforceConstraints;
+        this->Merge(ds, false, ::System::Data::MissingSchemaAction::Add);
+        this->InitVars();
+    }
+    else {
+        this->ReadXmlSchema((gcnew ::System::Xml::XmlTextReader((gcnew ::System::IO::StringReader(strSchema)))));
+    }
+    this->GetSerializationData(info, context);
+    ::System::ComponentModel::CollectionChangeEventHandler^  schemaChangedHandler = gcnew ::System::ComponentModel::CollectionChangeEventHandler(this, &NewDataSet::SchemaChanged);
+    __super::Tables->CollectionChanged += schemaChangedHandler;
+    this->Relations->CollectionChanged += schemaChangedHandler;
+}
+
+inline NewDataSet::FunctionDataTable^  NewDataSet::Function::get() {
+    return this->tableFunction;
+}
+
+inline NewDataSet::ParameterListDataTable^  NewDataSet::ParameterList::get() {
+    return this->tableParameterList;
+}
+
+inline NewDataSet::ParameterDataTable^  NewDataSet::Parameter::get() {
+    return this->tableParameter;
+}
+
+inline NewDataSet::DimensionDataTable^  NewDataSet::Dimension::get() {
+    return this->tableDimension;
+}
+
+inline NewDataSet::IntegratedDataTable^  NewDataSet::Integrated::get() {
+    return this->tableIntegrated;
+}
+
+inline NewDataSet::CompositeInstructionDataTable^  NewDataSet::CompositeInstruction::get() {
+    return this->tableCompositeInstruction;
+}
+
+inline NewDataSet::GeometryDataTable^  NewDataSet::Geometry::get() {
+    return this->tableGeometry;
+}
+
+inline NewDataSet::XDimensionDataTable^  NewDataSet::XDimension::get() {
+    return this->tableXDimension;
+}
+
+inline NewDataSet::YDimensionDataTable^  NewDataSet::YDimension::get() {
+    return this->tableYDimension;
+}
+
+inline NewDataSet::ZDimensionDataTable^  NewDataSet::ZDimension::get() {
+    return this->tableZDimension;
+}
+
+inline NewDataSet::TDimensionDataTable^  NewDataSet::TDimension::get() {
+    return this->tableTDimension;
+}
+
+inline NewDataSet::OperationDataTable^  NewDataSet::Operation::get() {
+    return this->tableOperation;
+}
+
+inline ::System::Data::SchemaSerializationMode NewDataSet::SchemaSerializationMode::get() {
+    return this->_schemaSerializationMode;
+}
+inline System::Void NewDataSet::SchemaSerializationMode::set(::System::Data::SchemaSerializationMode value) {
+    this->_schemaSerializationMode = __identifier(value);
+}
+
+inline ::System::Data::DataTableCollection^  NewDataSet::Tables::get() {
+    return __super::Tables;
+}
+
+inline ::System::Data::DataRelationCollection^  NewDataSet::Relations::get() {
+    return __super::Relations;
+}
+
+inline ::System::Void NewDataSet::InitializeDerivedDataSet() {
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline ::System::Data::DataSet^  NewDataSet::Clone() {
+    NewDataSet^  cln = (cli::safe_cast<NewDataSet^  >(__super::Clone()));
+    cln->InitVars();
+    cln->SchemaSerializationMode = this->SchemaSerializationMode;
+    return cln;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeTables() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeRelations() {
+    return false;
+}
+
+inline ::System::Void NewDataSet::ReadXmlSerializable(::System::Xml::XmlReader^  reader) {
+    if (this->DetermineSchemaSerializationMode(reader) == ::System::Data::SchemaSerializationMode::IncludeSchema) {
+        this->Reset();
+        ::System::Data::DataSet^  ds = (gcnew ::System::Data::DataSet());
+        ds->ReadXml(reader);
+        if (ds->Tables[L"Function"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::FunctionDataTable(ds->Tables[L"Function"])));
+        }
+        if (ds->Tables[L"ParameterList"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::ParameterListDataTable(ds->Tables[L"ParameterList"])));
+        }
+        if (ds->Tables[L"Parameter"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::ParameterDataTable(ds->Tables[L"Parameter"])));
+        }
+        if (ds->Tables[L"Dimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::DimensionDataTable(ds->Tables[L"Dimension"])));
+        }
+        if (ds->Tables[L"Integrated"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::IntegratedDataTable(ds->Tables[L"Integrated"])));
+        }
+        if (ds->Tables[L"CompositeInstruction"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::CompositeInstructionDataTable(ds->Tables[L"CompositeInstruction"])));
+        }
+        if (ds->Tables[L"Geometry"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::GeometryDataTable(ds->Tables[L"Geometry"])));
+        }
+        if (ds->Tables[L"XDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::XDimensionDataTable(ds->Tables[L"XDimension"])));
+        }
+        if (ds->Tables[L"YDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::YDimensionDataTable(ds->Tables[L"YDimension"])));
+        }
+        if (ds->Tables[L"ZDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::ZDimensionDataTable(ds->Tables[L"ZDimension"])));
+        }
+        if (ds->Tables[L"TDimension"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::TDimensionDataTable(ds->Tables[L"TDimension"])));
+        }
+        if (ds->Tables[L"Operation"] != nullptr) {
+            __super::Tables->Add((gcnew NewDataSet::OperationDataTable(ds->Tables[L"Operation"])));
+        }
+        this->DataSetName = ds->DataSetName;
+        this->Prefix = ds->Prefix;
+        this->Namespace = ds->Namespace;
+        this->Locale = ds->Locale;
+        this->CaseSensitive = ds->CaseSensitive;
+        this->EnforceConstraints = ds->EnforceConstraints;
+        this->Merge(ds, false, ::System::Data::MissingSchemaAction::Add);
+        this->InitVars();
+    }
+    else {
+        this->ReadXml(reader);
+        this->InitVars();
+    }
+}
+
+inline ::System::Xml::Schema::XmlSchema^  NewDataSet::GetSchemaSerializable() {
+    ::System::IO::MemoryStream^  stream = (gcnew ::System::IO::MemoryStream());
+    this->WriteXmlSchema((gcnew ::System::Xml::XmlTextWriter(stream, nullptr)));
+    stream->Position = 0;
+    return ::System::Xml::Schema::XmlSchema::Read((gcnew ::System::Xml::XmlTextReader(stream)), nullptr);
+}
+
+inline ::System::Void NewDataSet::InitVars() {
+    this->InitVars(true);
+}
+
+inline ::System::Void NewDataSet::InitVars(::System::Boolean initTable) {
+    this->tableFunction = (cli::safe_cast<NewDataSet::FunctionDataTable^  >(__super::Tables[L"Function"]));
+    if (initTable == true) {
+        if (this->tableFunction != nullptr) {
+            this->tableFunction->InitVars();
+        }
+    }
+    this->tableParameterList = (cli::safe_cast<NewDataSet::ParameterListDataTable^  >(__super::Tables[L"ParameterList"]));
+    if (initTable == true) {
+        if (this->tableParameterList != nullptr) {
+            this->tableParameterList->InitVars();
+        }
+    }
+    this->tableParameter = (cli::safe_cast<NewDataSet::ParameterDataTable^  >(__super::Tables[L"Parameter"]));
+    if (initTable == true) {
+        if (this->tableParameter != nullptr) {
+            this->tableParameter->InitVars();
+        }
+    }
+    this->tableDimension = (cli::safe_cast<NewDataSet::DimensionDataTable^  >(__super::Tables[L"Dimension"]));
+    if (initTable == true) {
+        if (this->tableDimension != nullptr) {
+            this->tableDimension->InitVars();
+        }
+    }
+    this->tableIntegrated = (cli::safe_cast<NewDataSet::IntegratedDataTable^  >(__super::Tables[L"Integrated"]));
+    if (initTable == true) {
+        if (this->tableIntegrated != nullptr) {
+            this->tableIntegrated->InitVars();
+        }
+    }
+    this->tableCompositeInstruction = (cli::safe_cast<NewDataSet::CompositeInstructionDataTable^  >(__super::Tables[L"CompositeInstruction"]));
+    if (initTable == true) {
+        if (this->tableCompositeInstruction != nullptr) {
+            this->tableCompositeInstruction->InitVars();
+        }
+    }
+    this->tableGeometry = (cli::safe_cast<NewDataSet::GeometryDataTable^  >(__super::Tables[L"Geometry"]));
+    if (initTable == true) {
+        if (this->tableGeometry != nullptr) {
+            this->tableGeometry->InitVars();
+        }
+    }
+    this->tableXDimension = (cli::safe_cast<NewDataSet::XDimensionDataTable^  >(__super::Tables[L"XDimension"]));
+    if (initTable == true) {
+        if (this->tableXDimension != nullptr) {
+            this->tableXDimension->InitVars();
+        }
+    }
+    this->tableYDimension = (cli::safe_cast<NewDataSet::YDimensionDataTable^  >(__super::Tables[L"YDimension"]));
+    if (initTable == true) {
+        if (this->tableYDimension != nullptr) {
+            this->tableYDimension->InitVars();
+        }
+    }
+    this->tableZDimension = (cli::safe_cast<NewDataSet::ZDimensionDataTable^  >(__super::Tables[L"ZDimension"]));
+    if (initTable == true) {
+        if (this->tableZDimension != nullptr) {
+            this->tableZDimension->InitVars();
+        }
+    }
+    this->tableTDimension = (cli::safe_cast<NewDataSet::TDimensionDataTable^  >(__super::Tables[L"TDimension"]));
+    if (initTable == true) {
+        if (this->tableTDimension != nullptr) {
+            this->tableTDimension->InitVars();
+        }
+    }
+    this->tableOperation = (cli::safe_cast<NewDataSet::OperationDataTable^  >(__super::Tables[L"Operation"]));
+    if (initTable == true) {
+        if (this->tableOperation != nullptr) {
+            this->tableOperation->InitVars();
+        }
+    }
+    this->relationFunction_Function = this->Relations[L"Function_Function"];
+    this->relationCompositeInstruction_Function = this->Relations[L"CompositeInstruction_Function"];
+    this->relationFunction_ParameterList = this->Relations[L"Function_ParameterList"];
+    this->relationParameterList_Parameter = this->Relations[L"ParameterList_Parameter"];
+    this->relationGeometry_Dimension = this->Relations[L"Geometry_Dimension"];
+    this->relationDimension_Integrated = this->Relations[L"Dimension_Integrated"];
+    this->relationCompositeInstruction_Geometry = this->Relations[L"CompositeInstruction_Geometry"];
+    this->relationGeometry_XDimension = this->Relations[L"Geometry_XDimension"];
+    this->relationGeometry_YDimension = this->Relations[L"Geometry_YDimension"];
+    this->relationGeometry_ZDimension = this->Relations[L"Geometry_ZDimension"];
+    this->relationGeometry_TDimension = this->Relations[L"Geometry_TDimension"];
+    this->relationCompositeInstruction_Operation = this->Relations[L"CompositeInstruction_Operation"];
+}
+
+inline ::System::Void NewDataSet::InitClass() {
+    this->DataSetName = L"NewDataSet";
+    this->Prefix = L"";
+    this->Locale = (gcnew ::System::Globalization::CultureInfo(L""));
+    this->EnforceConstraints = true;
+    this->SchemaSerializationMode = ::System::Data::SchemaSerializationMode::IncludeSchema;
+    this->tableFunction = (gcnew NewDataSet::FunctionDataTable());
+    __super::Tables->Add(this->tableFunction);
+    this->tableParameterList = (gcnew NewDataSet::ParameterListDataTable());
+    __super::Tables->Add(this->tableParameterList);
+    this->tableParameter = (gcnew NewDataSet::ParameterDataTable());
+    __super::Tables->Add(this->tableParameter);
+    this->tableDimension = (gcnew NewDataSet::DimensionDataTable());
+    __super::Tables->Add(this->tableDimension);
+    this->tableIntegrated = (gcnew NewDataSet::IntegratedDataTable());
+    __super::Tables->Add(this->tableIntegrated);
+    this->tableCompositeInstruction = (gcnew NewDataSet::CompositeInstructionDataTable());
+    __super::Tables->Add(this->tableCompositeInstruction);
+    this->tableGeometry = (gcnew NewDataSet::GeometryDataTable());
+    __super::Tables->Add(this->tableGeometry);
+    this->tableXDimension = (gcnew NewDataSet::XDimensionDataTable());
+    __super::Tables->Add(this->tableXDimension);
+    this->tableYDimension = (gcnew NewDataSet::YDimensionDataTable());
+    __super::Tables->Add(this->tableYDimension);
+    this->tableZDimension = (gcnew NewDataSet::ZDimensionDataTable());
+    __super::Tables->Add(this->tableZDimension);
+    this->tableTDimension = (gcnew NewDataSet::TDimensionDataTable());
+    __super::Tables->Add(this->tableTDimension);
+    this->tableOperation = (gcnew NewDataSet::OperationDataTable());
+    __super::Tables->Add(this->tableOperation);
+    ::System::Data::ForeignKeyConstraint^  fkc;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Function_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_Id_0Column}));
+    this->tableFunction->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"CompositeInstruction_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->CompositeInstruction_IdColumn}));
+    this->tableFunction->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Function_ParameterList", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->Function_IdColumn}));
+    this->tableParameterList->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"ParameterList_Parameter", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->ParameterList_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameter->ParameterList_IdColumn}));
+    this->tableParameter->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_Dimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Geometry_IdColumn}));
+    this->tableDimension->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Dimension_Integrated", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Dimension_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableIntegrated->Dimension_IdColumn}));
+    this->tableIntegrated->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"CompositeInstruction_Geometry", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->CompositeInstruction_IdColumn}));
+    this->tableGeometry->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_XDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableXDimension->Geometry_IdColumn}));
+    this->tableXDimension->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_YDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableYDimension->Geometry_IdColumn}));
+    this->tableYDimension->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_ZDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableZDimension->Geometry_IdColumn}));
+    this->tableZDimension->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"Geometry_TDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableTDimension->Geometry_IdColumn}));
+    this->tableTDimension->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    fkc = (gcnew ::System::Data::ForeignKeyConstraint(L"CompositeInstruction_Operation", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableOperation->CompositeInstruction_IdColumn}));
+    this->tableOperation->Constraints->Add(fkc);
+    fkc->AcceptRejectRule = ::System::Data::AcceptRejectRule::None;
+    fkc->DeleteRule = ::System::Data::Rule::Cascade;
+    fkc->UpdateRule = ::System::Data::Rule::Cascade;
+    this->relationFunction_Function = (gcnew ::System::Data::DataRelation(L"Function_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_Id_0Column}, false));
+    this->relationFunction_Function->Nested = true;
+    this->Relations->Add(this->relationFunction_Function);
+    this->relationCompositeInstruction_Function = (gcnew ::System::Data::DataRelation(L"CompositeInstruction_Function", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->CompositeInstruction_IdColumn}, false));
+    this->relationCompositeInstruction_Function->Nested = true;
+    this->Relations->Add(this->relationCompositeInstruction_Function);
+    this->relationFunction_ParameterList = (gcnew ::System::Data::DataRelation(L"Function_ParameterList", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableFunction->Function_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->Function_IdColumn}, false));
+    this->relationFunction_ParameterList->Nested = true;
+    this->Relations->Add(this->relationFunction_ParameterList);
+    this->relationParameterList_Parameter = (gcnew ::System::Data::DataRelation(L"ParameterList_Parameter", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameterList->ParameterList_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableParameter->ParameterList_IdColumn}, false));
+    this->relationParameterList_Parameter->Nested = true;
+    this->Relations->Add(this->relationParameterList_Parameter);
+    this->relationGeometry_Dimension = (gcnew ::System::Data::DataRelation(L"Geometry_Dimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Geometry_IdColumn}, false));
+    this->relationGeometry_Dimension->Nested = true;
+    this->Relations->Add(this->relationGeometry_Dimension);
+    this->relationDimension_Integrated = (gcnew ::System::Data::DataRelation(L"Dimension_Integrated", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableDimension->Dimension_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableIntegrated->Dimension_IdColumn}, false));
+    this->relationDimension_Integrated->Nested = true;
+    this->Relations->Add(this->relationDimension_Integrated);
+    this->relationCompositeInstruction_Geometry = (gcnew ::System::Data::DataRelation(L"CompositeInstruction_Geometry", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->CompositeInstruction_IdColumn}, false));
+    this->relationCompositeInstruction_Geometry->Nested = true;
+    this->Relations->Add(this->relationCompositeInstruction_Geometry);
+    this->relationGeometry_XDimension = (gcnew ::System::Data::DataRelation(L"Geometry_XDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableXDimension->Geometry_IdColumn}, false));
+    this->relationGeometry_XDimension->Nested = true;
+    this->Relations->Add(this->relationGeometry_XDimension);
+    this->relationGeometry_YDimension = (gcnew ::System::Data::DataRelation(L"Geometry_YDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableYDimension->Geometry_IdColumn}, false));
+    this->relationGeometry_YDimension->Nested = true;
+    this->Relations->Add(this->relationGeometry_YDimension);
+    this->relationGeometry_ZDimension = (gcnew ::System::Data::DataRelation(L"Geometry_ZDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableZDimension->Geometry_IdColumn}, false));
+    this->relationGeometry_ZDimension->Nested = true;
+    this->Relations->Add(this->relationGeometry_ZDimension);
+    this->relationGeometry_TDimension = (gcnew ::System::Data::DataRelation(L"Geometry_TDimension", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableGeometry->Geometry_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableTDimension->Geometry_IdColumn}, false));
+    this->relationGeometry_TDimension->Nested = true;
+    this->Relations->Add(this->relationGeometry_TDimension);
+    this->relationCompositeInstruction_Operation = (gcnew ::System::Data::DataRelation(L"CompositeInstruction_Operation", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableCompositeInstruction->CompositeInstruction_IdColumn}, 
+        gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->tableOperation->CompositeInstruction_IdColumn}, false));
+    this->relationCompositeInstruction_Operation->Nested = true;
+    this->Relations->Add(this->relationCompositeInstruction_Operation);
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeFunction() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeParameterList() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeParameter() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeDimension() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeIntegrated() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeCompositeInstruction() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeGeometry() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeXDimension() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeYDimension() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeZDimension() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeTDimension() {
+    return false;
+}
+
+inline ::System::Boolean NewDataSet::ShouldSerializeOperation() {
+    return false;
+}
+
+inline ::System::Void NewDataSet::SchemaChanged(::System::Object^  sender, ::System::ComponentModel::CollectionChangeEventArgs^  e) {
+    if (e->Action == ::System::ComponentModel::CollectionChangeAction::Remove) {
+        this->InitVars();
+    }
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::GetTypedDataSetSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    ::System::Xml::Schema::XmlSchemaAny^  any = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any->Namespace = ds->Namespace;
+    sequence->Items->Add(any);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::FunctionDataTable::FunctionDataTable() {
+    this->TableName = L"Function";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::FunctionDataTable::FunctionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::FunctionDataTable::FunctionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::NameColumn::get() {
+    return this->columnName;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::Function_IdColumn::get() {
+    return this->columnFunction_Id;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::Function_Id_0Column::get() {
+    return this->columnFunction_Id_0;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::FunctionDataTable::CompositeInstruction_IdColumn::get() {
+    return this->columnCompositeInstruction_Id;
+}
+
+inline ::System::Int32 NewDataSet::FunctionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::FunctionRow^  NewDataSet::FunctionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::AddFunctionRow(NewDataSet::FunctionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::FunctionRow^  NewDataSet::FunctionDataTable::AddFunctionRow(System::String^  Name, NewDataSet::FunctionRow^  parentFunctionRowByFunction_Function, 
+            NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Function) {
+    NewDataSet::FunctionRow^  rowFunctionRow = (cli::safe_cast<NewDataSet::FunctionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(4) {Name, nullptr, nullptr, 
+        nullptr};
+    if (parentFunctionRowByFunction_Function != nullptr) {
+        columnValuesArray[2] = parentFunctionRowByFunction_Function[1];
+    }
+    if (parentCompositeInstructionRowByCompositeInstruction_Function != nullptr) {
+        columnValuesArray[3] = parentCompositeInstructionRowByCompositeInstruction_Function[2];
+    }
+    rowFunctionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowFunctionRow);
+    return rowFunctionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::FunctionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::FunctionDataTable::Clone() {
+    NewDataSet::FunctionDataTable^  cln = (cli::safe_cast<NewDataSet::FunctionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::FunctionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::FunctionDataTable());
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::InitVars() {
+    this->columnName = __super::Columns[L"Name"];
+    this->columnFunction_Id = __super::Columns[L"Function_Id"];
+    this->columnFunction_Id_0 = __super::Columns[L"Function_Id_0"];
+    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::InitClass() {
+    this->columnName = (gcnew ::System::Data::DataColumn(L"Name", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnName);
+    this->columnFunction_Id = (gcnew ::System::Data::DataColumn(L"Function_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnFunction_Id);
+    this->columnFunction_Id_0 = (gcnew ::System::Data::DataColumn(L"Function_Id_0", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnFunction_Id_0);
+    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
+        nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnCompositeInstruction_Id);
+    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnFunction_Id}, 
+            true)));
+    this->columnName->AllowDBNull = false;
+    this->columnFunction_Id->AutoIncrement = true;
+    this->columnFunction_Id->AllowDBNull = false;
+    this->columnFunction_Id->Unique = true;
+}
+
+inline NewDataSet::FunctionRow^  NewDataSet::FunctionDataTable::NewFunctionRow() {
+    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::FunctionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::FunctionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::FunctionDataTable::GetRowType() {
+    return NewDataSet::FunctionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->FunctionRowChanged(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->FunctionRowChanging(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->FunctionRowDeleted(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->FunctionRowDeleting(this, (gcnew NewDataSet::FunctionRowChangeEvent((cli::safe_cast<NewDataSet::FunctionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::FunctionDataTable::RemoveFunctionRow(NewDataSet::FunctionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::FunctionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"FunctionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::ParameterListDataTable::ParameterListDataTable() {
+    this->TableName = L"ParameterList";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::ParameterListDataTable::ParameterListDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::ParameterListDataTable::ParameterListDataTable(::System::Runtime::Serialization::SerializationInfo^  info, 
+            ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ParameterListDataTable::ParameterList_IdColumn::get() {
+    return this->columnParameterList_Id;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ParameterListDataTable::Function_IdColumn::get() {
+    return this->columnFunction_Id;
+}
+
+inline ::System::Int32 NewDataSet::ParameterListDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::AddParameterListRow(NewDataSet::ParameterListRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListDataTable::AddParameterListRow(NewDataSet::FunctionRow^  parentFunctionRowByFunction_ParameterList) {
+    NewDataSet::ParameterListRow^  rowParameterListRow = (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {nullptr, nullptr};
+    if (parentFunctionRowByFunction_ParameterList != nullptr) {
+        columnValuesArray[1] = parentFunctionRowByFunction_ParameterList[1];
+    }
+    rowParameterListRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowParameterListRow);
+    return rowParameterListRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::ParameterListDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::ParameterListDataTable::Clone() {
+    NewDataSet::ParameterListDataTable^  cln = (cli::safe_cast<NewDataSet::ParameterListDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::ParameterListDataTable::CreateInstance() {
+    return (gcnew NewDataSet::ParameterListDataTable());
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::InitVars() {
+    this->columnParameterList_Id = __super::Columns[L"ParameterList_Id"];
+    this->columnFunction_Id = __super::Columns[L"Function_Id"];
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::InitClass() {
+    this->columnParameterList_Id = (gcnew ::System::Data::DataColumn(L"ParameterList_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnParameterList_Id);
+    this->columnFunction_Id = (gcnew ::System::Data::DataColumn(L"Function_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnFunction_Id);
+    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnParameterList_Id}, 
+            true)));
+    this->columnParameterList_Id->AutoIncrement = true;
+    this->columnParameterList_Id->AllowDBNull = false;
+    this->columnParameterList_Id->Unique = true;
+}
+
+inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListDataTable::NewParameterListRow() {
+    return (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::ParameterListDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::ParameterListRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::ParameterListDataTable::GetRowType() {
+    return NewDataSet::ParameterListRow::typeid;
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->ParameterListRowChanged(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->ParameterListRowChanging(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->ParameterListRowDeleted(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->ParameterListRowDeleting(this, (gcnew NewDataSet::ParameterListRowChangeEvent((cli::safe_cast<NewDataSet::ParameterListRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterListDataTable::RemoveParameterListRow(NewDataSet::ParameterListRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::ParameterListDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"ParameterListDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::ParameterDataTable::ParameterDataTable() {
+    this->TableName = L"Parameter";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::ParameterDataTable::ParameterDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::ParameterDataTable::ParameterDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::NameColumn::get() {
+    return this->columnName;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::TypeColumn::get() {
+    return this->columnType;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::ValueColumn::get() {
+    return this->columnValue;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ParameterDataTable::ParameterList_IdColumn::get() {
+    return this->columnParameterList_Id;
+}
+
+inline ::System::Int32 NewDataSet::ParameterDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::ParameterRow^  NewDataSet::ParameterDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::ParameterRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::AddParameterRow(NewDataSet::ParameterRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::ParameterRow^  NewDataSet::ParameterDataTable::AddParameterRow(System::String^  Name, System::String^  Type, 
+            System::String^  Value, NewDataSet::ParameterListRow^  parentParameterListRowByParameterList_Parameter) {
+    NewDataSet::ParameterRow^  rowParameterRow = (cli::safe_cast<NewDataSet::ParameterRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(4) {Name, Type, Value, nullptr};
+    if (parentParameterListRowByParameterList_Parameter != nullptr) {
+        columnValuesArray[3] = parentParameterListRowByParameterList_Parameter[0];
+    }
+    rowParameterRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowParameterRow);
+    return rowParameterRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::ParameterDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::ParameterDataTable::Clone() {
+    NewDataSet::ParameterDataTable^  cln = (cli::safe_cast<NewDataSet::ParameterDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::ParameterDataTable::CreateInstance() {
+    return (gcnew NewDataSet::ParameterDataTable());
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::InitVars() {
+    this->columnName = __super::Columns[L"Name"];
+    this->columnType = __super::Columns[L"Type"];
+    this->columnValue = __super::Columns[L"Value"];
+    this->columnParameterList_Id = __super::Columns[L"ParameterList_Id"];
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::InitClass() {
+    this->columnName = (gcnew ::System::Data::DataColumn(L"Name", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnName);
+    this->columnType = (gcnew ::System::Data::DataColumn(L"Type", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnType);
+    this->columnValue = (gcnew ::System::Data::DataColumn(L"Value", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnValue);
+    this->columnParameterList_Id = (gcnew ::System::Data::DataColumn(L"ParameterList_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnParameterList_Id);
+    this->columnName->AllowDBNull = false;
+    this->columnType->AllowDBNull = false;
+    this->columnValue->AllowDBNull = false;
+}
+
+inline NewDataSet::ParameterRow^  NewDataSet::ParameterDataTable::NewParameterRow() {
+    return (cli::safe_cast<NewDataSet::ParameterRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::ParameterDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::ParameterRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::ParameterDataTable::GetRowType() {
+    return NewDataSet::ParameterRow::typeid;
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->ParameterRowChanged(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->ParameterRowChanging(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->ParameterRowDeleted(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->ParameterRowDeleting(this, (gcnew NewDataSet::ParameterRowChangeEvent((cli::safe_cast<NewDataSet::ParameterRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ParameterDataTable::RemoveParameterRow(NewDataSet::ParameterRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::ParameterDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"ParameterDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::DimensionDataTable::DimensionDataTable() {
+    this->TableName = L"Dimension";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::DimensionDataTable::DimensionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::DimensionDataTable::DimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::IDColumn::get() {
+    return this->columnID;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::NameColumn::get() {
+    return this->columnName;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::UpperBoundsColumn::get() {
+    return this->columnUpperBounds;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::LowerBoundsColumn::get() {
+    return this->columnLowerBounds;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::Dimension_IdColumn::get() {
+    return this->columnDimension_Id;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::DimensionDataTable::Geometry_IdColumn::get() {
+    return this->columnGeometry_Id;
+}
+
+inline ::System::Int32 NewDataSet::DimensionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::DimensionRow^  NewDataSet::DimensionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::DimensionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::AddDimensionRow(NewDataSet::DimensionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::DimensionRow^  NewDataSet::DimensionDataTable::AddDimensionRow(System::Int64 ID, System::String^  Name, 
+            System::Int64 UpperBounds, System::Int64 LowerBounds, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_Dimension) {
+    NewDataSet::DimensionRow^  rowDimensionRow = (cli::safe_cast<NewDataSet::DimensionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(6) {ID, Name, UpperBounds, 
+        LowerBounds, nullptr, nullptr};
+    if (parentGeometryRowByGeometry_Dimension != nullptr) {
+        columnValuesArray[5] = parentGeometryRowByGeometry_Dimension[0];
+    }
+    rowDimensionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowDimensionRow);
+    return rowDimensionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::DimensionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::DimensionDataTable::Clone() {
+    NewDataSet::DimensionDataTable^  cln = (cli::safe_cast<NewDataSet::DimensionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::DimensionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::DimensionDataTable());
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::InitVars() {
+    this->columnID = __super::Columns[L"ID"];
+    this->columnName = __super::Columns[L"Name"];
+    this->columnUpperBounds = __super::Columns[L"UpperBounds"];
+    this->columnLowerBounds = __super::Columns[L"LowerBounds"];
+    this->columnDimension_Id = __super::Columns[L"Dimension_Id"];
+    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::InitClass() {
+    this->columnID = (gcnew ::System::Data::DataColumn(L"ID", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Attribute));
+    __super::Columns->Add(this->columnID);
+    this->columnName = (gcnew ::System::Data::DataColumn(L"Name", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnName);
+    this->columnUpperBounds = (gcnew ::System::Data::DataColumn(L"UpperBounds", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnUpperBounds);
+    this->columnLowerBounds = (gcnew ::System::Data::DataColumn(L"LowerBounds", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnLowerBounds);
+    this->columnDimension_Id = (gcnew ::System::Data::DataColumn(L"Dimension_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnDimension_Id);
+    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnGeometry_Id);
+    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnDimension_Id}, 
+            true)));
+    this->columnID->AllowDBNull = false;
+    this->columnID->Namespace = L"";
+    this->columnName->AllowDBNull = false;
+    this->columnUpperBounds->AllowDBNull = false;
+    this->columnLowerBounds->AllowDBNull = false;
+    this->columnDimension_Id->AutoIncrement = true;
+    this->columnDimension_Id->AllowDBNull = false;
+    this->columnDimension_Id->Unique = true;
+}
+
+inline NewDataSet::DimensionRow^  NewDataSet::DimensionDataTable::NewDimensionRow() {
+    return (cli::safe_cast<NewDataSet::DimensionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::DimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::DimensionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::DimensionDataTable::GetRowType() {
+    return NewDataSet::DimensionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->DimensionRowChanged(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->DimensionRowChanging(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->DimensionRowDeleted(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->DimensionRowDeleting(this, (gcnew NewDataSet::DimensionRowChangeEvent((cli::safe_cast<NewDataSet::DimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::DimensionDataTable::RemoveDimensionRow(NewDataSet::DimensionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::DimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"DimensionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::IntegratedDataTable::IntegratedDataTable() {
+    this->TableName = L"Integrated";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::IntegratedDataTable::IntegratedDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::IntegratedDataTable::IntegratedDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::IntegratedDataTable::UpperLimitColumn::get() {
+    return this->columnUpperLimit;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::IntegratedDataTable::LowerLimitColumn::get() {
+    return this->columnLowerLimit;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::IntegratedDataTable::Dimension_IdColumn::get() {
+    return this->columnDimension_Id;
+}
+
+inline ::System::Int32 NewDataSet::IntegratedDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::IntegratedRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::AddIntegratedRow(NewDataSet::IntegratedRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedDataTable::AddIntegratedRow(System::Int64 UpperLimit, System::Int64 LowerLimit, 
+            NewDataSet::DimensionRow^  parentDimensionRowByDimension_Integrated) {
+    NewDataSet::IntegratedRow^  rowIntegratedRow = (cli::safe_cast<NewDataSet::IntegratedRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(3) {UpperLimit, LowerLimit, 
+        nullptr};
+    if (parentDimensionRowByDimension_Integrated != nullptr) {
+        columnValuesArray[2] = parentDimensionRowByDimension_Integrated[4];
+    }
+    rowIntegratedRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowIntegratedRow);
+    return rowIntegratedRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::IntegratedDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::IntegratedDataTable::Clone() {
+    NewDataSet::IntegratedDataTable^  cln = (cli::safe_cast<NewDataSet::IntegratedDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::IntegratedDataTable::CreateInstance() {
+    return (gcnew NewDataSet::IntegratedDataTable());
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::InitVars() {
+    this->columnUpperLimit = __super::Columns[L"UpperLimit"];
+    this->columnLowerLimit = __super::Columns[L"LowerLimit"];
+    this->columnDimension_Id = __super::Columns[L"Dimension_Id"];
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::InitClass() {
+    this->columnUpperLimit = (gcnew ::System::Data::DataColumn(L"UpperLimit", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnUpperLimit);
+    this->columnLowerLimit = (gcnew ::System::Data::DataColumn(L"LowerLimit", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnLowerLimit);
+    this->columnDimension_Id = (gcnew ::System::Data::DataColumn(L"Dimension_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnDimension_Id);
+    this->columnUpperLimit->AllowDBNull = false;
+    this->columnLowerLimit->AllowDBNull = false;
+}
+
+inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedDataTable::NewIntegratedRow() {
+    return (cli::safe_cast<NewDataSet::IntegratedRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::IntegratedDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::IntegratedRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::IntegratedDataTable::GetRowType() {
+    return NewDataSet::IntegratedRow::typeid;
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->IntegratedRowChanged(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->IntegratedRowChanging(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->IntegratedRowDeleted(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->IntegratedRowDeleting(this, (gcnew NewDataSet::IntegratedRowChangeEvent((cli::safe_cast<NewDataSet::IntegratedRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::IntegratedDataTable::RemoveIntegratedRow(NewDataSet::IntegratedRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::IntegratedDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"IntegratedDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::CompositeInstructionDataTable::CompositeInstructionDataTable() {
+    this->TableName = L"CompositeInstruction";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::CompositeInstructionDataTable::CompositeInstructionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::CompositeInstructionDataTable::CompositeInstructionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, 
+            ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::CompositeInstructionDataTable::MDWorkspaceNameColumn::get() {
+    return this->columnMDWorkspaceName;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::CompositeInstructionDataTable::MDWorkspaceLocationColumn::get() {
+    return this->columnMDWorkspaceLocation;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::CompositeInstructionDataTable::CompositeInstruction_IdColumn::get() {
+    return this->columnCompositeInstruction_Id;
+}
+
+inline ::System::Int32 NewDataSet::CompositeInstructionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::AddCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionDataTable::AddCompositeInstructionRow(System::String^  MDWorkspaceName, 
+            System::String^  MDWorkspaceLocation) {
+    NewDataSet::CompositeInstructionRow^  rowCompositeInstructionRow = (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(3) {MDWorkspaceName, MDWorkspaceLocation, 
+        nullptr};
+    rowCompositeInstructionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowCompositeInstructionRow);
+    return rowCompositeInstructionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::CompositeInstructionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::CompositeInstructionDataTable::Clone() {
+    NewDataSet::CompositeInstructionDataTable^  cln = (cli::safe_cast<NewDataSet::CompositeInstructionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::CompositeInstructionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::CompositeInstructionDataTable());
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::InitVars() {
+    this->columnMDWorkspaceName = __super::Columns[L"MDWorkspaceName"];
+    this->columnMDWorkspaceLocation = __super::Columns[L"MDWorkspaceLocation"];
+    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::InitClass() {
+    this->columnMDWorkspaceName = (gcnew ::System::Data::DataColumn(L"MDWorkspaceName", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnMDWorkspaceName);
+    this->columnMDWorkspaceLocation = (gcnew ::System::Data::DataColumn(L"MDWorkspaceLocation", ::System::String::typeid, nullptr, 
+        ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnMDWorkspaceLocation);
+    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
+        nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnCompositeInstruction_Id);
+    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnCompositeInstruction_Id}, 
+            true)));
+    this->columnMDWorkspaceName->AllowDBNull = false;
+    this->columnMDWorkspaceLocation->AllowDBNull = false;
+    this->columnCompositeInstruction_Id->AutoIncrement = true;
+    this->columnCompositeInstruction_Id->AllowDBNull = false;
+    this->columnCompositeInstruction_Id->Unique = true;
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionDataTable::NewCompositeInstructionRow() {
+    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::CompositeInstructionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::CompositeInstructionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::CompositeInstructionDataTable::GetRowType() {
+    return NewDataSet::CompositeInstructionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->CompositeInstructionRowChanged(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->CompositeInstructionRowChanging(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->CompositeInstructionRowDeleted(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->CompositeInstructionRowDeleting(this, (gcnew NewDataSet::CompositeInstructionRowChangeEvent((cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::CompositeInstructionDataTable::RemoveCompositeInstructionRow(NewDataSet::CompositeInstructionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::CompositeInstructionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"CompositeInstructionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::GeometryDataTable::GeometryDataTable() {
+    this->TableName = L"Geometry";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::GeometryDataTable::GeometryDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::GeometryDataTable::GeometryDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::GeometryDataTable::Geometry_IdColumn::get() {
+    return this->columnGeometry_Id;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::GeometryDataTable::CompositeInstruction_IdColumn::get() {
+    return this->columnCompositeInstruction_Id;
+}
+
+inline ::System::Int32 NewDataSet::GeometryDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::GeometryDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::AddGeometryRow(NewDataSet::GeometryRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::GeometryDataTable::AddGeometryRow(NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Geometry) {
+    NewDataSet::GeometryRow^  rowGeometryRow = (cli::safe_cast<NewDataSet::GeometryRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {nullptr, nullptr};
+    if (parentCompositeInstructionRowByCompositeInstruction_Geometry != nullptr) {
+        columnValuesArray[1] = parentCompositeInstructionRowByCompositeInstruction_Geometry[2];
+    }
+    rowGeometryRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowGeometryRow);
+    return rowGeometryRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::GeometryDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::GeometryDataTable::Clone() {
+    NewDataSet::GeometryDataTable^  cln = (cli::safe_cast<NewDataSet::GeometryDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::GeometryDataTable::CreateInstance() {
+    return (gcnew NewDataSet::GeometryDataTable());
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::InitVars() {
+    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
+    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::InitClass() {
+    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnGeometry_Id);
+    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
+        nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnCompositeInstruction_Id);
+    this->Constraints->Add((gcnew ::System::Data::UniqueConstraint(L"Constraint1", gcnew cli::array< ::System::Data::DataColumn^  >(1) {this->columnGeometry_Id}, 
+            true)));
+    this->columnGeometry_Id->AutoIncrement = true;
+    this->columnGeometry_Id->AllowDBNull = false;
+    this->columnGeometry_Id->Unique = true;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::GeometryDataTable::NewGeometryRow() {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::GeometryDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::GeometryRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::GeometryDataTable::GetRowType() {
+    return NewDataSet::GeometryRow::typeid;
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->GeometryRowChanged(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->GeometryRowChanging(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->GeometryRowDeleted(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->GeometryRowDeleting(this, (gcnew NewDataSet::GeometryRowChangeEvent((cli::safe_cast<NewDataSet::GeometryRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::GeometryDataTable::RemoveGeometryRow(NewDataSet::GeometryRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::GeometryDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"GeometryDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::XDimensionDataTable::XDimensionDataTable() {
+    this->TableName = L"XDimension";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::XDimensionDataTable::XDimensionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::XDimensionDataTable::XDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::XDimensionDataTable::RefDimensionIdColumn::get() {
+    return this->columnRefDimensionId;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::XDimensionDataTable::Geometry_IdColumn::get() {
+    return this->columnGeometry_Id;
+}
+
+inline ::System::Int32 NewDataSet::XDimensionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::XDimensionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::AddXDimensionRow(NewDataSet::XDimensionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionDataTable::AddXDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_XDimension) {
+    NewDataSet::XDimensionRow^  rowXDimensionRow = (cli::safe_cast<NewDataSet::XDimensionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
+    if (parentGeometryRowByGeometry_XDimension != nullptr) {
+        columnValuesArray[1] = parentGeometryRowByGeometry_XDimension[0];
+    }
+    rowXDimensionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowXDimensionRow);
+    return rowXDimensionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::XDimensionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::XDimensionDataTable::Clone() {
+    NewDataSet::XDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::XDimensionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::XDimensionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::XDimensionDataTable());
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::InitVars() {
+    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
+    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::InitClass() {
+    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnRefDimensionId);
+    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnGeometry_Id);
+}
+
+inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionDataTable::NewXDimensionRow() {
+    return (cli::safe_cast<NewDataSet::XDimensionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::XDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::XDimensionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::XDimensionDataTable::GetRowType() {
+    return NewDataSet::XDimensionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->XDimensionRowChanged(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->XDimensionRowChanging(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->XDimensionRowDeleted(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->XDimensionRowDeleting(this, (gcnew NewDataSet::XDimensionRowChangeEvent((cli::safe_cast<NewDataSet::XDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::XDimensionDataTable::RemoveXDimensionRow(NewDataSet::XDimensionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::XDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"XDimensionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::YDimensionDataTable::YDimensionDataTable() {
+    this->TableName = L"YDimension";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::YDimensionDataTable::YDimensionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::YDimensionDataTable::YDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::YDimensionDataTable::RefDimensionIdColumn::get() {
+    return this->columnRefDimensionId;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::YDimensionDataTable::Geometry_IdColumn::get() {
+    return this->columnGeometry_Id;
+}
+
+inline ::System::Int32 NewDataSet::YDimensionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::YDimensionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::AddYDimensionRow(NewDataSet::YDimensionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionDataTable::AddYDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_YDimension) {
+    NewDataSet::YDimensionRow^  rowYDimensionRow = (cli::safe_cast<NewDataSet::YDimensionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
+    if (parentGeometryRowByGeometry_YDimension != nullptr) {
+        columnValuesArray[1] = parentGeometryRowByGeometry_YDimension[0];
+    }
+    rowYDimensionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowYDimensionRow);
+    return rowYDimensionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::YDimensionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::YDimensionDataTable::Clone() {
+    NewDataSet::YDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::YDimensionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::YDimensionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::YDimensionDataTable());
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::InitVars() {
+    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
+    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::InitClass() {
+    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnRefDimensionId);
+    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnGeometry_Id);
+}
+
+inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionDataTable::NewYDimensionRow() {
+    return (cli::safe_cast<NewDataSet::YDimensionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::YDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::YDimensionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::YDimensionDataTable::GetRowType() {
+    return NewDataSet::YDimensionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->YDimensionRowChanged(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->YDimensionRowChanging(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->YDimensionRowDeleted(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->YDimensionRowDeleting(this, (gcnew NewDataSet::YDimensionRowChangeEvent((cli::safe_cast<NewDataSet::YDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::YDimensionDataTable::RemoveYDimensionRow(NewDataSet::YDimensionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::YDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"YDimensionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::ZDimensionDataTable::ZDimensionDataTable() {
+    this->TableName = L"ZDimension";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::ZDimensionDataTable::ZDimensionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::ZDimensionDataTable::ZDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ZDimensionDataTable::RefDimensionIdColumn::get() {
+    return this->columnRefDimensionId;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::ZDimensionDataTable::Geometry_IdColumn::get() {
+    return this->columnGeometry_Id;
+}
+
+inline ::System::Int32 NewDataSet::ZDimensionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::ZDimensionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::AddZDimensionRow(NewDataSet::ZDimensionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionDataTable::AddZDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_ZDimension) {
+    NewDataSet::ZDimensionRow^  rowZDimensionRow = (cli::safe_cast<NewDataSet::ZDimensionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
+    if (parentGeometryRowByGeometry_ZDimension != nullptr) {
+        columnValuesArray[1] = parentGeometryRowByGeometry_ZDimension[0];
+    }
+    rowZDimensionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowZDimensionRow);
+    return rowZDimensionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::ZDimensionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::ZDimensionDataTable::Clone() {
+    NewDataSet::ZDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::ZDimensionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::ZDimensionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::ZDimensionDataTable());
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::InitVars() {
+    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
+    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::InitClass() {
+    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnRefDimensionId);
+    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnGeometry_Id);
+}
+
+inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionDataTable::NewZDimensionRow() {
+    return (cli::safe_cast<NewDataSet::ZDimensionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::ZDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::ZDimensionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::ZDimensionDataTable::GetRowType() {
+    return NewDataSet::ZDimensionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->ZDimensionRowChanged(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->ZDimensionRowChanging(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->ZDimensionRowDeleted(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->ZDimensionRowDeleting(this, (gcnew NewDataSet::ZDimensionRowChangeEvent((cli::safe_cast<NewDataSet::ZDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::ZDimensionDataTable::RemoveZDimensionRow(NewDataSet::ZDimensionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::ZDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"ZDimensionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::TDimensionDataTable::TDimensionDataTable() {
+    this->TableName = L"TDimension";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::TDimensionDataTable::TDimensionDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::TDimensionDataTable::TDimensionDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::TDimensionDataTable::RefDimensionIdColumn::get() {
+    return this->columnRefDimensionId;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::TDimensionDataTable::Geometry_IdColumn::get() {
+    return this->columnGeometry_Id;
+}
+
+inline ::System::Int32 NewDataSet::TDimensionDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::TDimensionRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::AddTDimensionRow(NewDataSet::TDimensionRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionDataTable::AddTDimensionRow(System::Int64 RefDimensionId, NewDataSet::GeometryRow^  parentGeometryRowByGeometry_TDimension) {
+    NewDataSet::TDimensionRow^  rowTDimensionRow = (cli::safe_cast<NewDataSet::TDimensionRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {RefDimensionId, nullptr};
+    if (parentGeometryRowByGeometry_TDimension != nullptr) {
+        columnValuesArray[1] = parentGeometryRowByGeometry_TDimension[0];
+    }
+    rowTDimensionRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowTDimensionRow);
+    return rowTDimensionRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::TDimensionDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::TDimensionDataTable::Clone() {
+    NewDataSet::TDimensionDataTable^  cln = (cli::safe_cast<NewDataSet::TDimensionDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::TDimensionDataTable::CreateInstance() {
+    return (gcnew NewDataSet::TDimensionDataTable());
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::InitVars() {
+    this->columnRefDimensionId = __super::Columns[L"RefDimensionId"];
+    this->columnGeometry_Id = __super::Columns[L"Geometry_Id"];
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::InitClass() {
+    this->columnRefDimensionId = (gcnew ::System::Data::DataColumn(L"RefDimensionId", ::System::Int64::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnRefDimensionId);
+    this->columnGeometry_Id = (gcnew ::System::Data::DataColumn(L"Geometry_Id", ::System::Int32::typeid, nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnGeometry_Id);
+}
+
+inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionDataTable::NewTDimensionRow() {
+    return (cli::safe_cast<NewDataSet::TDimensionRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::TDimensionDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::TDimensionRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::TDimensionDataTable::GetRowType() {
+    return NewDataSet::TDimensionRow::typeid;
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->TDimensionRowChanged(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->TDimensionRowChanging(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->TDimensionRowDeleted(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->TDimensionRowDeleting(this, (gcnew NewDataSet::TDimensionRowChangeEvent((cli::safe_cast<NewDataSet::TDimensionRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::TDimensionDataTable::RemoveTDimensionRow(NewDataSet::TDimensionRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::TDimensionDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"TDimensionDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::OperationDataTable::OperationDataTable() {
+    this->TableName = L"Operation";
+    this->BeginInit();
+    this->InitClass();
+    this->EndInit();
+}
+
+inline NewDataSet::OperationDataTable::OperationDataTable(::System::Data::DataTable^  table) {
+    this->TableName = table->TableName;
+    if (table->CaseSensitive != table->DataSet->CaseSensitive) {
+        this->CaseSensitive = table->CaseSensitive;
+    }
+    if (table->Locale->ToString() != table->DataSet->Locale->ToString()) {
+        this->Locale = table->Locale;
+    }
+    if (table->Namespace != table->DataSet->Namespace) {
+        this->Namespace = table->Namespace;
+    }
+    this->Prefix = table->Prefix;
+    this->MinimumCapacity = table->MinimumCapacity;
+}
+
+inline NewDataSet::OperationDataTable::OperationDataTable(::System::Runtime::Serialization::SerializationInfo^  info, ::System::Runtime::Serialization::StreamingContext context) : 
+        ::System::Data::DataTable(info, context) {
+    this->InitVars();
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::OperationDataTable::TypeColumn::get() {
+    return this->columnType;
+}
+
+inline ::System::Data::DataColumn^  NewDataSet::OperationDataTable::CompositeInstruction_IdColumn::get() {
+    return this->columnCompositeInstruction_Id;
+}
+
+inline ::System::Int32 NewDataSet::OperationDataTable::Count::get() {
+    return this->Rows->Count;
+}
+
+inline NewDataSet::OperationRow^  NewDataSet::OperationDataTable::default::get(::System::Int32 index) {
+    return (cli::safe_cast<NewDataSet::OperationRow^  >(this->Rows[index]));
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::AddOperationRow(NewDataSet::OperationRow^  row) {
+    this->Rows->Add(row);
+}
+
+inline NewDataSet::OperationRow^  NewDataSet::OperationDataTable::AddOperationRow(System::String^  Type, NewDataSet::CompositeInstructionRow^  parentCompositeInstructionRowByCompositeInstruction_Operation) {
+    NewDataSet::OperationRow^  rowOperationRow = (cli::safe_cast<NewDataSet::OperationRow^  >(this->NewRow()));
+    cli::array< ::System::Object^  >^  columnValuesArray = gcnew cli::array< ::System::Object^  >(2) {Type, nullptr};
+    if (parentCompositeInstructionRowByCompositeInstruction_Operation != nullptr) {
+        columnValuesArray[1] = parentCompositeInstructionRowByCompositeInstruction_Operation[2];
+    }
+    rowOperationRow->ItemArray = columnValuesArray;
+    this->Rows->Add(rowOperationRow);
+    return rowOperationRow;
+}
+
+inline ::System::Collections::IEnumerator^  NewDataSet::OperationDataTable::GetEnumerator() {
+    return this->Rows->GetEnumerator();
+}
+
+inline ::System::Data::DataTable^  NewDataSet::OperationDataTable::Clone() {
+    NewDataSet::OperationDataTable^  cln = (cli::safe_cast<NewDataSet::OperationDataTable^  >(__super::Clone()));
+    cln->InitVars();
+    return cln;
+}
+
+inline ::System::Data::DataTable^  NewDataSet::OperationDataTable::CreateInstance() {
+    return (gcnew NewDataSet::OperationDataTable());
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::InitVars() {
+    this->columnType = __super::Columns[L"Type"];
+    this->columnCompositeInstruction_Id = __super::Columns[L"CompositeInstruction_Id"];
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::InitClass() {
+    this->columnType = (gcnew ::System::Data::DataColumn(L"Type", ::System::String::typeid, nullptr, ::System::Data::MappingType::Element));
+    __super::Columns->Add(this->columnType);
+    this->columnCompositeInstruction_Id = (gcnew ::System::Data::DataColumn(L"CompositeInstruction_Id", ::System::Int32::typeid, 
+        nullptr, ::System::Data::MappingType::Hidden));
+    __super::Columns->Add(this->columnCompositeInstruction_Id);
+    this->columnType->AllowDBNull = false;
+}
+
+inline NewDataSet::OperationRow^  NewDataSet::OperationDataTable::NewOperationRow() {
+    return (cli::safe_cast<NewDataSet::OperationRow^  >(this->NewRow()));
+}
+
+inline ::System::Data::DataRow^  NewDataSet::OperationDataTable::NewRowFromBuilder(::System::Data::DataRowBuilder^  builder) {
+    return (gcnew NewDataSet::OperationRow(builder));
+}
+
+inline ::System::Type^  NewDataSet::OperationDataTable::GetRowType() {
+    return NewDataSet::OperationRow::typeid;
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::OnRowChanged(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanged(e);
+    {
+        this->OperationRowChanged(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::OnRowChanging(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowChanging(e);
+    {
+        this->OperationRowChanging(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::OnRowDeleted(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleted(e);
+    {
+        this->OperationRowDeleted(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::OnRowDeleting(::System::Data::DataRowChangeEventArgs^  e) {
+    __super::OnRowDeleting(e);
+    {
+        this->OperationRowDeleting(this, (gcnew NewDataSet::OperationRowChangeEvent((cli::safe_cast<NewDataSet::OperationRow^  >(e->Row)), 
+                e->Action)));
+    }
+}
+
+inline ::System::Void NewDataSet::OperationDataTable::RemoveOperationRow(NewDataSet::OperationRow^  row) {
+    this->Rows->Remove(row);
+}
+
+inline ::System::Xml::Schema::XmlSchemaComplexType^  NewDataSet::OperationDataTable::GetTypedTableSchema(::System::Xml::Schema::XmlSchemaSet^  xs) {
+    ::System::Xml::Schema::XmlSchemaComplexType^  type = (gcnew ::System::Xml::Schema::XmlSchemaComplexType());
+    ::System::Xml::Schema::XmlSchemaSequence^  sequence = (gcnew ::System::Xml::Schema::XmlSchemaSequence());
+    NewDataSet^  ds = (gcnew NewDataSet());
+    ::System::Xml::Schema::XmlSchemaAny^  any1 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any1->Namespace = L"http://www.w3.org/2001/XMLSchema";
+    any1->MinOccurs = ::System::Decimal(0);
+    any1->MaxOccurs = ::System::Decimal::MaxValue;
+    any1->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any1);
+    ::System::Xml::Schema::XmlSchemaAny^  any2 = (gcnew ::System::Xml::Schema::XmlSchemaAny());
+    any2->Namespace = L"urn:schemas-microsoft-com:xml-diffgram-v1";
+    any2->MinOccurs = ::System::Decimal(1);
+    any2->ProcessContents = ::System::Xml::Schema::XmlSchemaContentProcessing::Lax;
+    sequence->Items->Add(any2);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute1 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute1->Name = L"namespace";
+    attribute1->FixedValue = ds->Namespace;
+    type->Attributes->Add(attribute1);
+    ::System::Xml::Schema::XmlSchemaAttribute^  attribute2 = (gcnew ::System::Xml::Schema::XmlSchemaAttribute());
+    attribute2->Name = L"tableTypeName";
+    attribute2->FixedValue = L"OperationDataTable";
+    type->Attributes->Add(attribute2);
+    type->Particle = sequence;
+    ::System::Xml::Schema::XmlSchema^  dsSchema = ds->GetSchemaSerializable();
+    if (xs->Contains(dsSchema->TargetNamespace)) {
+        ::System::IO::MemoryStream^  s1 = (gcnew ::System::IO::MemoryStream());
+        ::System::IO::MemoryStream^  s2 = (gcnew ::System::IO::MemoryStream());
+        try {
+            ::System::Xml::Schema::XmlSchema^  schema = nullptr;
+            dsSchema->Write(s1);
+            for (            ::System::Collections::IEnumerator^  schemas = xs->Schemas(dsSchema->TargetNamespace)->GetEnumerator(); schemas->MoveNext();             ) {
+                schema = (cli::safe_cast<::System::Xml::Schema::XmlSchema^  >(schemas->Current));
+                s2->SetLength(0);
+                schema->Write(s2);
+                if (s1->Length == s2->Length) {
+                    s1->Position = 0;
+                    s2->Position = 0;
+                    for (                    ; ((s1->Position != s1->Length) 
+                                && (s1->ReadByte() == s2->ReadByte()));                     ) {
+                        ;
+                    }
+                    if (s1->Position == s1->Length) {
+                        return type;
+                    }
+                }
+            }
+        }
+        finally {
+            if (s1 != nullptr) {
+                s1->Close();
+            }
+            if (s2 != nullptr) {
+                s2->Close();
+            }
+        }
+    }
+    xs->Add(dsSchema);
+    return type;
+}
+
+
+inline NewDataSet::FunctionRow::FunctionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableFunction = (cli::safe_cast<NewDataSet::FunctionDataTable^  >(this->Table));
+}
+
+inline System::String^  NewDataSet::FunctionRow::Name::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableFunction->NameColumn]));
+}
+inline System::Void NewDataSet::FunctionRow::Name::set(System::String^  value) {
+    this[this->tableFunction->NameColumn] = value;
+}
+
+inline System::Int32 NewDataSet::FunctionRow::Function_Id::get() {
+    return (cli::safe_cast<::System::Int32 >(this[this->tableFunction->Function_IdColumn]));
+}
+inline System::Void NewDataSet::FunctionRow::Function_Id::set(System::Int32 value) {
+    this[this->tableFunction->Function_IdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::FunctionRow::Function_Id_0::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableFunction->Function_Id_0Column]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Function_Id_0\' in table \'Function\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::FunctionRow::Function_Id_0::set(System::Int32 value) {
+    this[this->tableFunction->Function_Id_0Column] = value;
+}
+
+inline System::Int32 NewDataSet::FunctionRow::CompositeInstruction_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableFunction->CompositeInstruction_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'CompositeInstruction_Id\' in table \'Function\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::FunctionRow::CompositeInstruction_Id::set(System::Int32 value) {
+    this[this->tableFunction->CompositeInstruction_IdColumn] = value;
+}
+
+inline NewDataSet::FunctionRow^  NewDataSet::FunctionRow::FunctionRowParent::get() {
+    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Function_Function"])));
+}
+inline System::Void NewDataSet::FunctionRow::FunctionRowParent::set(NewDataSet::FunctionRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Function_Function"]);
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::FunctionRow::CompositeInstructionRow::get() {
+    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"CompositeInstruction_Function"])));
+}
+inline System::Void NewDataSet::FunctionRow::CompositeInstructionRow::set(NewDataSet::CompositeInstructionRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"CompositeInstruction_Function"]);
+}
+
+inline ::System::Boolean NewDataSet::FunctionRow::IsFunction_Id_0Null() {
+    return this->IsNull(this->tableFunction->Function_Id_0Column);
+}
+
+inline ::System::Void NewDataSet::FunctionRow::SetFunction_Id_0Null() {
+    this[this->tableFunction->Function_Id_0Column] = ::System::Convert::DBNull;
+}
+
+inline ::System::Boolean NewDataSet::FunctionRow::IsCompositeInstruction_IdNull() {
+    return this->IsNull(this->tableFunction->CompositeInstruction_IdColumn);
+}
+
+inline ::System::Void NewDataSet::FunctionRow::SetCompositeInstruction_IdNull() {
+    this[this->tableFunction->CompositeInstruction_IdColumn] = ::System::Convert::DBNull;
+}
+
+inline cli::array< NewDataSet::ParameterListRow^  >^  NewDataSet::FunctionRow::GetParameterListRows() {
+    if (this->Table->ChildRelations[L"Function_ParameterList"] == nullptr) {
+        return gcnew cli::array< NewDataSet::ParameterListRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::ParameterListRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Function_ParameterList"])));
+    }
+}
+
+inline cli::array< NewDataSet::FunctionRow^  >^  NewDataSet::FunctionRow::GetFunctionRows() {
+    if (this->Table->ChildRelations[L"Function_Function"] == nullptr) {
+        return gcnew cli::array< NewDataSet::FunctionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::FunctionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Function_Function"])));
+    }
+}
+
+
+inline NewDataSet::ParameterListRow::ParameterListRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableParameterList = (cli::safe_cast<NewDataSet::ParameterListDataTable^  >(this->Table));
+}
+
+inline System::Int32 NewDataSet::ParameterListRow::ParameterList_Id::get() {
+    return (cli::safe_cast<::System::Int32 >(this[this->tableParameterList->ParameterList_IdColumn]));
+}
+inline System::Void NewDataSet::ParameterListRow::ParameterList_Id::set(System::Int32 value) {
+    this[this->tableParameterList->ParameterList_IdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::ParameterListRow::Function_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableParameterList->Function_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Function_Id\' in table \'ParameterList\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::ParameterListRow::Function_Id::set(System::Int32 value) {
+    this[this->tableParameterList->Function_IdColumn] = value;
+}
+
+inline NewDataSet::FunctionRow^  NewDataSet::ParameterListRow::FunctionRow::get() {
+    return (cli::safe_cast<NewDataSet::FunctionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Function_ParameterList"])));
+}
+inline System::Void NewDataSet::ParameterListRow::FunctionRow::set(NewDataSet::FunctionRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Function_ParameterList"]);
+}
+
+inline ::System::Boolean NewDataSet::ParameterListRow::IsFunction_IdNull() {
+    return this->IsNull(this->tableParameterList->Function_IdColumn);
+}
+
+inline ::System::Void NewDataSet::ParameterListRow::SetFunction_IdNull() {
+    this[this->tableParameterList->Function_IdColumn] = ::System::Convert::DBNull;
+}
+
+inline cli::array< NewDataSet::ParameterRow^  >^  NewDataSet::ParameterListRow::GetParameterRows() {
+    if (this->Table->ChildRelations[L"ParameterList_Parameter"] == nullptr) {
+        return gcnew cli::array< NewDataSet::ParameterRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::ParameterRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"ParameterList_Parameter"])));
+    }
+}
+
+
+inline NewDataSet::ParameterRow::ParameterRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableParameter = (cli::safe_cast<NewDataSet::ParameterDataTable^  >(this->Table));
+}
+
+inline System::String^  NewDataSet::ParameterRow::Name::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableParameter->NameColumn]));
+}
+inline System::Void NewDataSet::ParameterRow::Name::set(System::String^  value) {
+    this[this->tableParameter->NameColumn] = value;
+}
+
+inline System::String^  NewDataSet::ParameterRow::Type::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableParameter->TypeColumn]));
+}
+inline System::Void NewDataSet::ParameterRow::Type::set(System::String^  value) {
+    this[this->tableParameter->TypeColumn] = value;
+}
+
+inline System::String^  NewDataSet::ParameterRow::Value::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableParameter->ValueColumn]));
+}
+inline System::Void NewDataSet::ParameterRow::Value::set(System::String^  value) {
+    this[this->tableParameter->ValueColumn] = value;
+}
+
+inline System::Int32 NewDataSet::ParameterRow::ParameterList_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableParameter->ParameterList_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'ParameterList_Id\' in table \'Parameter\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::ParameterRow::ParameterList_Id::set(System::Int32 value) {
+    this[this->tableParameter->ParameterList_IdColumn] = value;
+}
+
+inline NewDataSet::ParameterListRow^  NewDataSet::ParameterRow::ParameterListRow::get() {
+    return (cli::safe_cast<NewDataSet::ParameterListRow^  >(this->GetParentRow(this->Table->ParentRelations[L"ParameterList_Parameter"])));
+}
+inline System::Void NewDataSet::ParameterRow::ParameterListRow::set(NewDataSet::ParameterListRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"ParameterList_Parameter"]);
+}
+
+inline ::System::Boolean NewDataSet::ParameterRow::IsParameterList_IdNull() {
+    return this->IsNull(this->tableParameter->ParameterList_IdColumn);
+}
+
+inline ::System::Void NewDataSet::ParameterRow::SetParameterList_IdNull() {
+    this[this->tableParameter->ParameterList_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::DimensionRow::DimensionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableDimension = (cli::safe_cast<NewDataSet::DimensionDataTable^  >(this->Table));
+}
+
+inline System::Int64 NewDataSet::DimensionRow::ID::get() {
+    return (cli::safe_cast<::System::Int64 >(this[this->tableDimension->IDColumn]));
+}
+inline System::Void NewDataSet::DimensionRow::ID::set(System::Int64 value) {
+    this[this->tableDimension->IDColumn] = value;
+}
+
+inline System::String^  NewDataSet::DimensionRow::Name::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableDimension->NameColumn]));
+}
+inline System::Void NewDataSet::DimensionRow::Name::set(System::String^  value) {
+    this[this->tableDimension->NameColumn] = value;
+}
+
+inline System::Int64 NewDataSet::DimensionRow::UpperBounds::get() {
+    return (cli::safe_cast<::System::Int64 >(this[this->tableDimension->UpperBoundsColumn]));
+}
+inline System::Void NewDataSet::DimensionRow::UpperBounds::set(System::Int64 value) {
+    this[this->tableDimension->UpperBoundsColumn] = value;
+}
+
+inline System::Int64 NewDataSet::DimensionRow::LowerBounds::get() {
+    return (cli::safe_cast<::System::Int64 >(this[this->tableDimension->LowerBoundsColumn]));
+}
+inline System::Void NewDataSet::DimensionRow::LowerBounds::set(System::Int64 value) {
+    this[this->tableDimension->LowerBoundsColumn] = value;
+}
+
+inline System::Int32 NewDataSet::DimensionRow::Dimension_Id::get() {
+    return (cli::safe_cast<::System::Int32 >(this[this->tableDimension->Dimension_IdColumn]));
+}
+inline System::Void NewDataSet::DimensionRow::Dimension_Id::set(System::Int32 value) {
+    this[this->tableDimension->Dimension_IdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::DimensionRow::Geometry_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableDimension->Geometry_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'Dimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::DimensionRow::Geometry_Id::set(System::Int32 value) {
+    this[this->tableDimension->Geometry_IdColumn] = value;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::DimensionRow::GeometryRow::get() {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_Dimension"])));
+}
+inline System::Void NewDataSet::DimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_Dimension"]);
+}
+
+inline ::System::Boolean NewDataSet::DimensionRow::IsGeometry_IdNull() {
+    return this->IsNull(this->tableDimension->Geometry_IdColumn);
+}
+
+inline ::System::Void NewDataSet::DimensionRow::SetGeometry_IdNull() {
+    this[this->tableDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
+}
+
+inline cli::array< NewDataSet::IntegratedRow^  >^  NewDataSet::DimensionRow::GetIntegratedRows() {
+    if (this->Table->ChildRelations[L"Dimension_Integrated"] == nullptr) {
+        return gcnew cli::array< NewDataSet::IntegratedRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::IntegratedRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Dimension_Integrated"])));
+    }
+}
+
+
+inline NewDataSet::IntegratedRow::IntegratedRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableIntegrated = (cli::safe_cast<NewDataSet::IntegratedDataTable^  >(this->Table));
+}
+
+inline System::Int64 NewDataSet::IntegratedRow::UpperLimit::get() {
+    return (cli::safe_cast<::System::Int64 >(this[this->tableIntegrated->UpperLimitColumn]));
+}
+inline System::Void NewDataSet::IntegratedRow::UpperLimit::set(System::Int64 value) {
+    this[this->tableIntegrated->UpperLimitColumn] = value;
+}
+
+inline System::Int64 NewDataSet::IntegratedRow::LowerLimit::get() {
+    return (cli::safe_cast<::System::Int64 >(this[this->tableIntegrated->LowerLimitColumn]));
+}
+inline System::Void NewDataSet::IntegratedRow::LowerLimit::set(System::Int64 value) {
+    this[this->tableIntegrated->LowerLimitColumn] = value;
+}
+
+inline System::Int32 NewDataSet::IntegratedRow::Dimension_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableIntegrated->Dimension_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Dimension_Id\' in table \'Integrated\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::IntegratedRow::Dimension_Id::set(System::Int32 value) {
+    this[this->tableIntegrated->Dimension_IdColumn] = value;
+}
+
+inline NewDataSet::DimensionRow^  NewDataSet::IntegratedRow::DimensionRow::get() {
+    return (cli::safe_cast<NewDataSet::DimensionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Dimension_Integrated"])));
+}
+inline System::Void NewDataSet::IntegratedRow::DimensionRow::set(NewDataSet::DimensionRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Dimension_Integrated"]);
+}
+
+inline ::System::Boolean NewDataSet::IntegratedRow::IsDimension_IdNull() {
+    return this->IsNull(this->tableIntegrated->Dimension_IdColumn);
+}
+
+inline ::System::Void NewDataSet::IntegratedRow::SetDimension_IdNull() {
+    this[this->tableIntegrated->Dimension_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::CompositeInstructionRow::CompositeInstructionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableCompositeInstruction = (cli::safe_cast<NewDataSet::CompositeInstructionDataTable^  >(this->Table));
+}
+
+inline System::String^  NewDataSet::CompositeInstructionRow::MDWorkspaceName::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableCompositeInstruction->MDWorkspaceNameColumn]));
+}
+inline System::Void NewDataSet::CompositeInstructionRow::MDWorkspaceName::set(System::String^  value) {
+    this[this->tableCompositeInstruction->MDWorkspaceNameColumn] = value;
+}
+
+inline System::String^  NewDataSet::CompositeInstructionRow::MDWorkspaceLocation::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableCompositeInstruction->MDWorkspaceLocationColumn]));
+}
+inline System::Void NewDataSet::CompositeInstructionRow::MDWorkspaceLocation::set(System::String^  value) {
+    this[this->tableCompositeInstruction->MDWorkspaceLocationColumn] = value;
+}
+
+inline System::Int32 NewDataSet::CompositeInstructionRow::CompositeInstruction_Id::get() {
+    return (cli::safe_cast<::System::Int32 >(this[this->tableCompositeInstruction->CompositeInstruction_IdColumn]));
+}
+inline System::Void NewDataSet::CompositeInstructionRow::CompositeInstruction_Id::set(System::Int32 value) {
+    this[this->tableCompositeInstruction->CompositeInstruction_IdColumn] = value;
+}
+
+inline cli::array< NewDataSet::GeometryRow^  >^  NewDataSet::CompositeInstructionRow::GetGeometryRows() {
+    if (this->Table->ChildRelations[L"CompositeInstruction_Geometry"] == nullptr) {
+        return gcnew cli::array< NewDataSet::GeometryRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::GeometryRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"CompositeInstruction_Geometry"])));
+    }
+}
+
+inline cli::array< NewDataSet::OperationRow^  >^  NewDataSet::CompositeInstructionRow::GetOperationRows() {
+    if (this->Table->ChildRelations[L"CompositeInstruction_Operation"] == nullptr) {
+        return gcnew cli::array< NewDataSet::OperationRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::OperationRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"CompositeInstruction_Operation"])));
+    }
+}
+
+inline cli::array< NewDataSet::FunctionRow^  >^  NewDataSet::CompositeInstructionRow::GetFunctionRows() {
+    if (this->Table->ChildRelations[L"CompositeInstruction_Function"] == nullptr) {
+        return gcnew cli::array< NewDataSet::FunctionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::FunctionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"CompositeInstruction_Function"])));
+    }
+}
+
+
+inline NewDataSet::GeometryRow::GeometryRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableGeometry = (cli::safe_cast<NewDataSet::GeometryDataTable^  >(this->Table));
+}
+
+inline System::Int32 NewDataSet::GeometryRow::Geometry_Id::get() {
+    return (cli::safe_cast<::System::Int32 >(this[this->tableGeometry->Geometry_IdColumn]));
+}
+inline System::Void NewDataSet::GeometryRow::Geometry_Id::set(System::Int32 value) {
+    this[this->tableGeometry->Geometry_IdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::GeometryRow::CompositeInstruction_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableGeometry->CompositeInstruction_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'CompositeInstruction_Id\' in table \'Geometry\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::GeometryRow::CompositeInstruction_Id::set(System::Int32 value) {
+    this[this->tableGeometry->CompositeInstruction_IdColumn] = value;
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::GeometryRow::CompositeInstructionRow::get() {
+    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"CompositeInstruction_Geometry"])));
+}
+inline System::Void NewDataSet::GeometryRow::CompositeInstructionRow::set(NewDataSet::CompositeInstructionRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"CompositeInstruction_Geometry"]);
+}
+
+inline ::System::Boolean NewDataSet::GeometryRow::IsCompositeInstruction_IdNull() {
+    return this->IsNull(this->tableGeometry->CompositeInstruction_IdColumn);
+}
+
+inline ::System::Void NewDataSet::GeometryRow::SetCompositeInstruction_IdNull() {
+    this[this->tableGeometry->CompositeInstruction_IdColumn] = ::System::Convert::DBNull;
+}
+
+inline cli::array< NewDataSet::DimensionRow^  >^  NewDataSet::GeometryRow::GetDimensionRows() {
+    if (this->Table->ChildRelations[L"Geometry_Dimension"] == nullptr) {
+        return gcnew cli::array< NewDataSet::DimensionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::DimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_Dimension"])));
+    }
+}
+
+inline cli::array< NewDataSet::XDimensionRow^  >^  NewDataSet::GeometryRow::GetXDimensionRows() {
+    if (this->Table->ChildRelations[L"Geometry_XDimension"] == nullptr) {
+        return gcnew cli::array< NewDataSet::XDimensionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::XDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_XDimension"])));
+    }
+}
+
+inline cli::array< NewDataSet::YDimensionRow^  >^  NewDataSet::GeometryRow::GetYDimensionRows() {
+    if (this->Table->ChildRelations[L"Geometry_YDimension"] == nullptr) {
+        return gcnew cli::array< NewDataSet::YDimensionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::YDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_YDimension"])));
+    }
+}
+
+inline cli::array< NewDataSet::ZDimensionRow^  >^  NewDataSet::GeometryRow::GetZDimensionRows() {
+    if (this->Table->ChildRelations[L"Geometry_ZDimension"] == nullptr) {
+        return gcnew cli::array< NewDataSet::ZDimensionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::ZDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_ZDimension"])));
+    }
+}
+
+inline cli::array< NewDataSet::TDimensionRow^  >^  NewDataSet::GeometryRow::GetTDimensionRows() {
+    if (this->Table->ChildRelations[L"Geometry_TDimension"] == nullptr) {
+        return gcnew cli::array< NewDataSet::TDimensionRow^  >(0);
+    }
+    else {
+        return (cli::safe_cast<cli::array< NewDataSet::TDimensionRow^  >^  >(__super::GetChildRows(this->Table->ChildRelations[L"Geometry_TDimension"])));
+    }
+}
+
+
+inline NewDataSet::XDimensionRow::XDimensionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableXDimension = (cli::safe_cast<NewDataSet::XDimensionDataTable^  >(this->Table));
+}
+
+inline System::Int64 NewDataSet::XDimensionRow::RefDimensionId::get() {
+    try {
+        return (cli::safe_cast<::System::Int64 >(this[this->tableXDimension->RefDimensionIdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'XDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::XDimensionRow::RefDimensionId::set(System::Int64 value) {
+    this[this->tableXDimension->RefDimensionIdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::XDimensionRow::Geometry_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableXDimension->Geometry_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'XDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::XDimensionRow::Geometry_Id::set(System::Int32 value) {
+    this[this->tableXDimension->Geometry_IdColumn] = value;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::XDimensionRow::GeometryRow::get() {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_XDimension"])));
+}
+inline System::Void NewDataSet::XDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_XDimension"]);
+}
+
+inline ::System::Boolean NewDataSet::XDimensionRow::IsRefDimensionIdNull() {
+    return this->IsNull(this->tableXDimension->RefDimensionIdColumn);
+}
+
+inline ::System::Void NewDataSet::XDimensionRow::SetRefDimensionIdNull() {
+    this[this->tableXDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
+}
+
+inline ::System::Boolean NewDataSet::XDimensionRow::IsGeometry_IdNull() {
+    return this->IsNull(this->tableXDimension->Geometry_IdColumn);
+}
+
+inline ::System::Void NewDataSet::XDimensionRow::SetGeometry_IdNull() {
+    this[this->tableXDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::YDimensionRow::YDimensionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableYDimension = (cli::safe_cast<NewDataSet::YDimensionDataTable^  >(this->Table));
+}
+
+inline System::Int64 NewDataSet::YDimensionRow::RefDimensionId::get() {
+    try {
+        return (cli::safe_cast<::System::Int64 >(this[this->tableYDimension->RefDimensionIdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'YDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::YDimensionRow::RefDimensionId::set(System::Int64 value) {
+    this[this->tableYDimension->RefDimensionIdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::YDimensionRow::Geometry_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableYDimension->Geometry_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'YDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::YDimensionRow::Geometry_Id::set(System::Int32 value) {
+    this[this->tableYDimension->Geometry_IdColumn] = value;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::YDimensionRow::GeometryRow::get() {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_YDimension"])));
+}
+inline System::Void NewDataSet::YDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_YDimension"]);
+}
+
+inline ::System::Boolean NewDataSet::YDimensionRow::IsRefDimensionIdNull() {
+    return this->IsNull(this->tableYDimension->RefDimensionIdColumn);
+}
+
+inline ::System::Void NewDataSet::YDimensionRow::SetRefDimensionIdNull() {
+    this[this->tableYDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
+}
+
+inline ::System::Boolean NewDataSet::YDimensionRow::IsGeometry_IdNull() {
+    return this->IsNull(this->tableYDimension->Geometry_IdColumn);
+}
+
+inline ::System::Void NewDataSet::YDimensionRow::SetGeometry_IdNull() {
+    this[this->tableYDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::ZDimensionRow::ZDimensionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableZDimension = (cli::safe_cast<NewDataSet::ZDimensionDataTable^  >(this->Table));
+}
+
+inline System::Int64 NewDataSet::ZDimensionRow::RefDimensionId::get() {
+    try {
+        return (cli::safe_cast<::System::Int64 >(this[this->tableZDimension->RefDimensionIdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'ZDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::ZDimensionRow::RefDimensionId::set(System::Int64 value) {
+    this[this->tableZDimension->RefDimensionIdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::ZDimensionRow::Geometry_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableZDimension->Geometry_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'ZDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::ZDimensionRow::Geometry_Id::set(System::Int32 value) {
+    this[this->tableZDimension->Geometry_IdColumn] = value;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::ZDimensionRow::GeometryRow::get() {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_ZDimension"])));
+}
+inline System::Void NewDataSet::ZDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_ZDimension"]);
+}
+
+inline ::System::Boolean NewDataSet::ZDimensionRow::IsRefDimensionIdNull() {
+    return this->IsNull(this->tableZDimension->RefDimensionIdColumn);
+}
+
+inline ::System::Void NewDataSet::ZDimensionRow::SetRefDimensionIdNull() {
+    this[this->tableZDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
+}
+
+inline ::System::Boolean NewDataSet::ZDimensionRow::IsGeometry_IdNull() {
+    return this->IsNull(this->tableZDimension->Geometry_IdColumn);
+}
+
+inline ::System::Void NewDataSet::ZDimensionRow::SetGeometry_IdNull() {
+    this[this->tableZDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::TDimensionRow::TDimensionRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableTDimension = (cli::safe_cast<NewDataSet::TDimensionDataTable^  >(this->Table));
+}
+
+inline System::Int64 NewDataSet::TDimensionRow::RefDimensionId::get() {
+    try {
+        return (cli::safe_cast<::System::Int64 >(this[this->tableTDimension->RefDimensionIdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'RefDimensionId\' in table \'TDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::TDimensionRow::RefDimensionId::set(System::Int64 value) {
+    this[this->tableTDimension->RefDimensionIdColumn] = value;
+}
+
+inline System::Int32 NewDataSet::TDimensionRow::Geometry_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableTDimension->Geometry_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'Geometry_Id\' in table \'TDimension\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::TDimensionRow::Geometry_Id::set(System::Int32 value) {
+    this[this->tableTDimension->Geometry_IdColumn] = value;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::TDimensionRow::GeometryRow::get() {
+    return (cli::safe_cast<NewDataSet::GeometryRow^  >(this->GetParentRow(this->Table->ParentRelations[L"Geometry_TDimension"])));
+}
+inline System::Void NewDataSet::TDimensionRow::GeometryRow::set(NewDataSet::GeometryRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"Geometry_TDimension"]);
+}
+
+inline ::System::Boolean NewDataSet::TDimensionRow::IsRefDimensionIdNull() {
+    return this->IsNull(this->tableTDimension->RefDimensionIdColumn);
+}
+
+inline ::System::Void NewDataSet::TDimensionRow::SetRefDimensionIdNull() {
+    this[this->tableTDimension->RefDimensionIdColumn] = ::System::Convert::DBNull;
+}
+
+inline ::System::Boolean NewDataSet::TDimensionRow::IsGeometry_IdNull() {
+    return this->IsNull(this->tableTDimension->Geometry_IdColumn);
+}
+
+inline ::System::Void NewDataSet::TDimensionRow::SetGeometry_IdNull() {
+    this[this->tableTDimension->Geometry_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::OperationRow::OperationRow(::System::Data::DataRowBuilder^  rb) : 
+        ::System::Data::DataRow(rb) {
+    this->tableOperation = (cli::safe_cast<NewDataSet::OperationDataTable^  >(this->Table));
+}
+
+inline System::String^  NewDataSet::OperationRow::Type::get() {
+    return (cli::safe_cast<::System::String^  >(this[this->tableOperation->TypeColumn]));
+}
+inline System::Void NewDataSet::OperationRow::Type::set(System::String^  value) {
+    this[this->tableOperation->TypeColumn] = value;
+}
+
+inline System::Int32 NewDataSet::OperationRow::CompositeInstruction_Id::get() {
+    try {
+        return (cli::safe_cast<::System::Int32 >(this[this->tableOperation->CompositeInstruction_IdColumn]));
+    }
+    catch (::System::InvalidCastException^ e) {
+        throw (gcnew ::System::Data::StrongTypingException(L"The value for column \'CompositeInstruction_Id\' in table \'Operation\' is DBNull.", 
+            e));
+    }
+}
+inline System::Void NewDataSet::OperationRow::CompositeInstruction_Id::set(System::Int32 value) {
+    this[this->tableOperation->CompositeInstruction_IdColumn] = value;
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::OperationRow::CompositeInstructionRow::get() {
+    return (cli::safe_cast<NewDataSet::CompositeInstructionRow^  >(this->GetParentRow(this->Table->ParentRelations[L"CompositeInstruction_Operation"])));
+}
+inline System::Void NewDataSet::OperationRow::CompositeInstructionRow::set(NewDataSet::CompositeInstructionRow^  value) {
+    this->SetParentRow(value, this->Table->ParentRelations[L"CompositeInstruction_Operation"]);
+}
+
+inline ::System::Boolean NewDataSet::OperationRow::IsCompositeInstruction_IdNull() {
+    return this->IsNull(this->tableOperation->CompositeInstruction_IdColumn);
+}
+
+inline ::System::Void NewDataSet::OperationRow::SetCompositeInstruction_IdNull() {
+    this[this->tableOperation->CompositeInstruction_IdColumn] = ::System::Convert::DBNull;
+}
+
+
+inline NewDataSet::FunctionRowChangeEvent::FunctionRowChangeEvent(NewDataSet::FunctionRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::FunctionRow^  NewDataSet::FunctionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::FunctionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::ParameterListRowChangeEvent::ParameterListRowChangeEvent(NewDataSet::ParameterListRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::ParameterListRow^  NewDataSet::ParameterListRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::ParameterListRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::ParameterRowChangeEvent::ParameterRowChangeEvent(NewDataSet::ParameterRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::ParameterRow^  NewDataSet::ParameterRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::ParameterRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::DimensionRowChangeEvent::DimensionRowChangeEvent(NewDataSet::DimensionRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::DimensionRow^  NewDataSet::DimensionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::DimensionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::IntegratedRowChangeEvent::IntegratedRowChangeEvent(NewDataSet::IntegratedRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::IntegratedRow^  NewDataSet::IntegratedRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::IntegratedRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::CompositeInstructionRowChangeEvent::CompositeInstructionRowChangeEvent(NewDataSet::CompositeInstructionRow^  row, 
+            ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::CompositeInstructionRow^  NewDataSet::CompositeInstructionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::CompositeInstructionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::GeometryRowChangeEvent::GeometryRowChangeEvent(NewDataSet::GeometryRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::GeometryRow^  NewDataSet::GeometryRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::GeometryRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::XDimensionRowChangeEvent::XDimensionRowChangeEvent(NewDataSet::XDimensionRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::XDimensionRow^  NewDataSet::XDimensionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::XDimensionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::YDimensionRowChangeEvent::YDimensionRowChangeEvent(NewDataSet::YDimensionRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::YDimensionRow^  NewDataSet::YDimensionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::YDimensionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::ZDimensionRowChangeEvent::ZDimensionRowChangeEvent(NewDataSet::ZDimensionRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::ZDimensionRow^  NewDataSet::ZDimensionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::ZDimensionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::TDimensionRowChangeEvent::TDimensionRowChangeEvent(NewDataSet::TDimensionRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::TDimensionRow^  NewDataSet::TDimensionRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::TDimensionRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
+
+
+inline NewDataSet::OperationRowChangeEvent::OperationRowChangeEvent(NewDataSet::OperationRow^  row, ::System::Data::DataRowAction action) {
+    this->eventRow = row;
+    this->eventAction = action;
+}
+
+inline NewDataSet::OperationRow^  NewDataSet::OperationRowChangeEvent::Row::get() {
+    return this->eventRow;
+}
+
+inline ::System::Data::DataRowAction NewDataSet::OperationRowChangeEvent::Action::get() {
+    return this->eventAction;
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/BoxFunctionBuilder.cpp b/Code/Mantid/Framework/MDAlgorithms/src/BoxFunctionBuilder.cpp
index 8b774e32796d2facff01677437e7b4768fc4edc6..f97edc5539e491f33db0d6ba9889db824e4bf5b2 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/BoxFunctionBuilder.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/BoxFunctionBuilder.cpp
@@ -1,68 +1,68 @@
-#include "MantidMDAlgorithms/BoxFunctionBuilder.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        using namespace Mantid::API;
-
-        BoxFunctionBuilder::BoxFunctionBuilder()
-        {
-        }
-
-        void BoxFunctionBuilder::addOriginParameter(const OriginParameter& originParam)
-        {
-          this->m_origin = originParam;
-        }
-
-        void BoxFunctionBuilder::addWidthParameter(const WidthParameter& widthParam)
-        {
-          this->m_width = widthParam;
-        }
-
-        void BoxFunctionBuilder::addHeightParameter(const HeightParameter& heightParam)
-        {
-          this->m_height = heightParam;
-        }
-
-        void BoxFunctionBuilder::addDepthParameter(const DepthParameter& depthParam)
-        {
-          this->m_depth = depthParam;
-        }
-
-        ImplicitFunction* BoxFunctionBuilder::create() const
-        {
-            //check that builder parameters are valid.
-            if(!m_origin.isValid())
-            {
-                std::string message = "Invalid origin parameter on BoxFunctionBuilder";
-                throw std::invalid_argument(message);
-            } 
-            if(!m_depth.isValid())
-            {
-                std::string message = "Invalid depth parameter passed to BoxFunctionBuilder";
-                throw std::invalid_argument(message);
-            }
-            if(!m_width.isValid())
-            {
-              std::string message = "Invalid width parameter passed to BoxFunctionBuilder";
-              throw std::invalid_argument(message);
-            }
-            if(!m_height.isValid())
-            {
-                std::string message = "Invalid height parameter passed to BoxFunctionBuilder";
-                throw std::invalid_argument(message);
-            }
-
-            //implement construction.
-            return new Mantid::MDAlgorithms::BoxImplicitFunction(m_width, m_height, m_depth, m_origin);
-   
-        }
-
-        BoxFunctionBuilder::~BoxFunctionBuilder()
-        {
-        }
-    }
-
-
-}
+#include "MantidMDAlgorithms/BoxFunctionBuilder.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        using namespace Mantid::API;
+
+        BoxFunctionBuilder::BoxFunctionBuilder()
+        {
+        }
+
+        void BoxFunctionBuilder::addOriginParameter(const OriginParameter& originParam)
+        {
+          this->m_origin = originParam;
+        }
+
+        void BoxFunctionBuilder::addWidthParameter(const WidthParameter& widthParam)
+        {
+          this->m_width = widthParam;
+        }
+
+        void BoxFunctionBuilder::addHeightParameter(const HeightParameter& heightParam)
+        {
+          this->m_height = heightParam;
+        }
+
+        void BoxFunctionBuilder::addDepthParameter(const DepthParameter& depthParam)
+        {
+          this->m_depth = depthParam;
+        }
+
+        ImplicitFunction* BoxFunctionBuilder::create() const
+        {
+            //check that builder parameters are valid.
+            if(!m_origin.isValid())
+            {
+                std::string message = "Invalid origin parameter on BoxFunctionBuilder";
+                throw std::invalid_argument(message);
+            } 
+            if(!m_depth.isValid())
+            {
+                std::string message = "Invalid depth parameter passed to BoxFunctionBuilder";
+                throw std::invalid_argument(message);
+            }
+            if(!m_width.isValid())
+            {
+              std::string message = "Invalid width parameter passed to BoxFunctionBuilder";
+              throw std::invalid_argument(message);
+            }
+            if(!m_height.isValid())
+            {
+                std::string message = "Invalid height parameter passed to BoxFunctionBuilder";
+                throw std::invalid_argument(message);
+            }
+
+            //implement construction.
+            return new Mantid::MDAlgorithms::BoxImplicitFunction(m_width, m_height, m_depth, m_origin);
+   
+        }
+
+        BoxFunctionBuilder::~BoxFunctionBuilder()
+        {
+        }
+    }
+
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunction.cpp b/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunction.cpp
index 638b0e0595ac37d1903fc8075855b47add2e0490..b8f46a212ef60f8302d541d37b1c69ab13bddec8 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunction.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunction.cpp
@@ -1,124 +1,124 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/BoxImplicitFunction.h"
-#include "MantidAPI/Point3D.h"
-#include <cmath>
-#include <vector>
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-
-    BoxImplicitFunction::BoxImplicitFunction(WidthParameter& width, HeightParameter& height, DepthParameter& depth, OriginParameter& origin)
-    {
-      //Parameters describing box implicit function.
-      m_origin = origin;
-      m_depth = depth;
-      m_height = height;
-      m_width = width;
-
-      //calculate cached values. Used for faster evaluation routine.
-      m_upperX = origin.getX() + width.getValue()/2;
-      m_lowerX = origin.getX() - width.getValue()/2;
-      m_upperY = origin.getY() + height.getValue()/2;
-      m_lowerY = origin.getY() - height.getValue()/2;
-      m_upperZ = origin.getZ() + depth.getValue()/2;
-      m_lowerZ = origin.getZ() - depth.getValue()/2;
-    }
-
-    bool BoxImplicitFunction::evaluate(const Mantid::API::Point3D* pPoint) const
-    {
-      return pPoint->getX() <= m_upperX && 
-        pPoint->getX() >= m_lowerX && 
-        pPoint->getY() <= m_upperY && 
-        pPoint->getY() >= m_lowerY && 
-        pPoint->getZ() <= m_upperZ && 
-        pPoint->getZ() >= m_lowerZ;
-
-    }
-
-    bool BoxImplicitFunction::operator==(const BoxImplicitFunction &other) const
-    {
-      return 
-        this->m_width == other.m_width &&
-        this->m_height == other.m_height &&
-        this->m_depth == other.m_depth &&
-        this->m_origin == other.m_origin;
-    }
-
-    bool BoxImplicitFunction::operator!=(const BoxImplicitFunction &other) const
-    {
-      return !(*this == other);
-    }
-
-    std::string BoxImplicitFunction::getName() const
-    {
-      return functionName();
-    }
-
-    double BoxImplicitFunction::getUpperX() const
-    {
-      return this->m_upperX;
-    }
-
-    double BoxImplicitFunction::getLowerX() const
-    {
-      return this->m_lowerX;
-    }
-
-    double BoxImplicitFunction::getUpperY() const
-    {
-      return this->m_upperY;
-    }
-
-    double BoxImplicitFunction::getLowerY() const
-    {
-
-      return this->m_lowerY;
-    }
-
-    double BoxImplicitFunction::getUpperZ() const
-    {
-      return this->m_upperZ;
-    }
-
-    double BoxImplicitFunction::getLowerZ() const
-    {
-      return this->m_lowerZ;
-    }
-
-    std::string BoxImplicitFunction::toXMLString() const
-    {
-      using namespace Poco::XML;
-
-      AutoPtr<Document> pDoc = new Document;
-      AutoPtr<Element> functionElement = pDoc->createElement("Function");
-      pDoc->appendChild(functionElement);
-      AutoPtr<Element> typeElement = pDoc->createElement("Type");
-      AutoPtr<Text> typeText = pDoc->createTextNode(this->getName());
-      typeElement->appendChild(typeText);
-      functionElement->appendChild(typeElement);
-
-      AutoPtr<Element> paramListElement = pDoc->createElement("ParameterList");
-
-      AutoPtr<Text> formatText = pDoc->createTextNode("%s%s%s%s");
-      paramListElement->appendChild(formatText);
-      functionElement->appendChild(paramListElement);
-
-      std::stringstream xmlstream;
-
-      DOMWriter writer;
-      writer.writeNode(xmlstream, pDoc);
-
-      std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str())
-        % m_width.toXMLString().c_str() % m_height.toXMLString() % m_depth.toXMLString() % m_origin.toXMLString().c_str());
-      return formattedXMLString;
-    }
-
-    BoxImplicitFunction::~BoxImplicitFunction()
-    {
-    }
-
-  }
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/BoxImplicitFunction.h"
+#include "MantidAPI/Point3D.h"
+#include <cmath>
+#include <vector>
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+
+    BoxImplicitFunction::BoxImplicitFunction(WidthParameter& width, HeightParameter& height, DepthParameter& depth, OriginParameter& origin)
+    {
+      //Parameters describing box implicit function.
+      m_origin = origin;
+      m_depth = depth;
+      m_height = height;
+      m_width = width;
+
+      //calculate cached values. Used for faster evaluation routine.
+      m_upperX = origin.getX() + width.getValue()/2;
+      m_lowerX = origin.getX() - width.getValue()/2;
+      m_upperY = origin.getY() + height.getValue()/2;
+      m_lowerY = origin.getY() - height.getValue()/2;
+      m_upperZ = origin.getZ() + depth.getValue()/2;
+      m_lowerZ = origin.getZ() - depth.getValue()/2;
+    }
+
+    bool BoxImplicitFunction::evaluate(const Mantid::API::Point3D* pPoint) const
+    {
+      return pPoint->getX() <= m_upperX && 
+        pPoint->getX() >= m_lowerX && 
+        pPoint->getY() <= m_upperY && 
+        pPoint->getY() >= m_lowerY && 
+        pPoint->getZ() <= m_upperZ && 
+        pPoint->getZ() >= m_lowerZ;
+
+    }
+
+    bool BoxImplicitFunction::operator==(const BoxImplicitFunction &other) const
+    {
+      return 
+        this->m_width == other.m_width &&
+        this->m_height == other.m_height &&
+        this->m_depth == other.m_depth &&
+        this->m_origin == other.m_origin;
+    }
+
+    bool BoxImplicitFunction::operator!=(const BoxImplicitFunction &other) const
+    {
+      return !(*this == other);
+    }
+
+    std::string BoxImplicitFunction::getName() const
+    {
+      return functionName();
+    }
+
+    double BoxImplicitFunction::getUpperX() const
+    {
+      return this->m_upperX;
+    }
+
+    double BoxImplicitFunction::getLowerX() const
+    {
+      return this->m_lowerX;
+    }
+
+    double BoxImplicitFunction::getUpperY() const
+    {
+      return this->m_upperY;
+    }
+
+    double BoxImplicitFunction::getLowerY() const
+    {
+
+      return this->m_lowerY;
+    }
+
+    double BoxImplicitFunction::getUpperZ() const
+    {
+      return this->m_upperZ;
+    }
+
+    double BoxImplicitFunction::getLowerZ() const
+    {
+      return this->m_lowerZ;
+    }
+
+    std::string BoxImplicitFunction::toXMLString() const
+    {
+      using namespace Poco::XML;
+
+      AutoPtr<Document> pDoc = new Document;
+      AutoPtr<Element> functionElement = pDoc->createElement("Function");
+      pDoc->appendChild(functionElement);
+      AutoPtr<Element> typeElement = pDoc->createElement("Type");
+      AutoPtr<Text> typeText = pDoc->createTextNode(this->getName());
+      typeElement->appendChild(typeText);
+      functionElement->appendChild(typeElement);
+
+      AutoPtr<Element> paramListElement = pDoc->createElement("ParameterList");
+
+      AutoPtr<Text> formatText = pDoc->createTextNode("%s%s%s%s");
+      paramListElement->appendChild(formatText);
+      functionElement->appendChild(paramListElement);
+
+      std::stringstream xmlstream;
+
+      DOMWriter writer;
+      writer.writeNode(xmlstream, pDoc);
+
+      std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str())
+        % m_width.toXMLString().c_str() % m_height.toXMLString() % m_depth.toXMLString() % m_origin.toXMLString().c_str());
+      return formattedXMLString;
+    }
+
+    BoxImplicitFunction::~BoxImplicitFunction()
+    {
+    }
+
+  }
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunctionParser.cpp b/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunctionParser.cpp
index a937e3930f6569d66f5d7b4749584dcd4c42f94d..c3ccbc59e205cc449f7c67a1e079aa1dbb0df91b 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunctionParser.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/BoxImplicitFunctionParser.cpp
@@ -1,107 +1,107 @@
-#include "MantidMDAlgorithms/BoxImplicitFunctionParser.h"
-#include "MantidAPI/ImplicitFunctionParserFactory.h"
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-
-    DECLARE_IMPLICIT_FUNCTION_PARSER(BoxImplicitFunctionParser);
-
-    BoxImplicitFunctionParser::BoxImplicitFunctionParser() : ImplicitFunctionParser(new InvalidParameterParser)
-    {
-    }
-
-    API::ImplicitFunctionBuilder* BoxImplicitFunctionParser::createFunctionBuilder(Poco::XML::Element* functionElement)
-    {
-      API::ImplicitFunctionBuilder* functionBuilder;
-      if("Function" != functionElement->localName())
-      {
-        std::string message = "This is not a function element: " + functionElement->localName(); 
-        throw std::invalid_argument(message);
-      }
-
-      std::string type = functionElement->getChildElement("Type")->innerText();
-      if(BoxImplicitFunction::functionName() != type) // If this parser does not match the xml, try the successor chain.
-      {
-        if(0 == m_successor.get())
-        {
-          std::string message = "There is no successor function parser here for type: " + type;
-          throw std::runtime_error(message);
-        }
-        functionBuilder = m_successor->createFunctionBuilder(functionElement);
-      }
-      else // Parse the xml here.
-      {
-        functionBuilder = parseBoxFunction(functionElement);
-      }
-      return functionBuilder;
-    }
-
-    void BoxImplicitFunctionParser::setSuccessorParser(ImplicitFunctionParser* parser)
-    {
-      this->m_successor = std::auto_ptr<ImplicitFunctionParser>(parser);
-    }
-
-    BoxFunctionBuilder * BoxImplicitFunctionParser::parseBoxFunction(Poco::XML::Element* functionElement)
-    {
-      using namespace Poco::XML;
-      BoxFunctionBuilder* functionBuilder = new BoxFunctionBuilder;
-      NodeList* parameterList = functionElement->getChildElement("ParameterList")->childNodes();
-
-      //Loop through the parameter list looking for known parameter, required, which can then be parsed.
-      for(int i = 0; i < parameterList->length(); i++)
-      {
-        
-        Element* parameterElement = dynamic_cast<Element*>(parameterList->item(i));
-
-       std::string namee= parameterElement->localName();
-
-        std::auto_ptr<API::ImplicitFunctionParameter> parameter = std::auto_ptr<API::ImplicitFunctionParameter>(this->parseParameter(parameterElement));
-        if(WidthParameter::parameterName() == parameter->getName())
-        { 
-          WidthParameter* pCurr = dynamic_cast<WidthParameter*>(parameter.get());
-          WidthParameter width(pCurr->getValue());
-          functionBuilder->addWidthParameter(width);
-        }
-        else if(HeightParameter::parameterName() == parameter->getName())
-        { 
-          HeightParameter* pCurr = dynamic_cast<HeightParameter*>(parameter.get());
-          HeightParameter height(pCurr->getValue());
-          functionBuilder->addHeightParameter(height);
-        }
-        else if(DepthParameter::parameterName() == parameter->getName())
-        { 
-          DepthParameter* pCurr = dynamic_cast<DepthParameter*>(parameter.get());
-          DepthParameter depth(pCurr->getValue());
-          functionBuilder->addDepthParameter(depth);
-        }
-        else if(OriginParameter::parameterName() == parameter->getName())
-        {
-          OriginParameter*  pCurr = dynamic_cast<OriginParameter*>(parameter.get());
-          OriginParameter origin(pCurr->getX(), pCurr->getY(), pCurr->getZ());
-          functionBuilder->addOriginParameter(origin);
-        }
-        else
-        {
-          std::string message = "The parameter cannot be processed or is unrecognised: " + parameter->getName();
-          message += ". The parameter cannot be processed or is unrecognised: " + (dynamic_cast<InvalidParameter*>(parameter.get()))->getValue();
-          throw std::invalid_argument(message);
-        }
-
-      }
-
-      return functionBuilder; //convert to raw pointer and cancel smart management.
-    }
-
-    BoxImplicitFunctionParser::~BoxImplicitFunctionParser()
-    {
-    }
-
-    void BoxImplicitFunctionParser::setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser)
-    {
-      this->m_paramParserRoot = std::auto_ptr<Mantid::API::ImplicitFunctionParameterParser>(parser);
-    }
-  }
-}
+#include "MantidMDAlgorithms/BoxImplicitFunctionParser.h"
+#include "MantidAPI/ImplicitFunctionParserFactory.h"
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+
+    DECLARE_IMPLICIT_FUNCTION_PARSER(BoxImplicitFunctionParser);
+
+    BoxImplicitFunctionParser::BoxImplicitFunctionParser() : ImplicitFunctionParser(new InvalidParameterParser)
+    {
+    }
+
+    API::ImplicitFunctionBuilder* BoxImplicitFunctionParser::createFunctionBuilder(Poco::XML::Element* functionElement)
+    {
+      API::ImplicitFunctionBuilder* functionBuilder;
+      if("Function" != functionElement->localName())
+      {
+        std::string message = "This is not a function element: " + functionElement->localName(); 
+        throw std::invalid_argument(message);
+      }
+
+      std::string type = functionElement->getChildElement("Type")->innerText();
+      if(BoxImplicitFunction::functionName() != type) // If this parser does not match the xml, try the successor chain.
+      {
+        if(0 == m_successor.get())
+        {
+          std::string message = "There is no successor function parser here for type: " + type;
+          throw std::runtime_error(message);
+        }
+        functionBuilder = m_successor->createFunctionBuilder(functionElement);
+      }
+      else // Parse the xml here.
+      {
+        functionBuilder = parseBoxFunction(functionElement);
+      }
+      return functionBuilder;
+    }
+
+    void BoxImplicitFunctionParser::setSuccessorParser(ImplicitFunctionParser* parser)
+    {
+      this->m_successor = std::auto_ptr<ImplicitFunctionParser>(parser);
+    }
+
+    BoxFunctionBuilder * BoxImplicitFunctionParser::parseBoxFunction(Poco::XML::Element* functionElement)
+    {
+      using namespace Poco::XML;
+      BoxFunctionBuilder* functionBuilder = new BoxFunctionBuilder;
+      NodeList* parameterList = functionElement->getChildElement("ParameterList")->childNodes();
+
+      //Loop through the parameter list looking for known parameter, required, which can then be parsed.
+      for(int i = 0; i < parameterList->length(); i++)
+      {
+        
+        Element* parameterElement = dynamic_cast<Element*>(parameterList->item(i));
+
+       std::string namee= parameterElement->localName();
+
+        std::auto_ptr<API::ImplicitFunctionParameter> parameter = std::auto_ptr<API::ImplicitFunctionParameter>(this->parseParameter(parameterElement));
+        if(WidthParameter::parameterName() == parameter->getName())
+        { 
+          WidthParameter* pCurr = dynamic_cast<WidthParameter*>(parameter.get());
+          WidthParameter width(pCurr->getValue());
+          functionBuilder->addWidthParameter(width);
+        }
+        else if(HeightParameter::parameterName() == parameter->getName())
+        { 
+          HeightParameter* pCurr = dynamic_cast<HeightParameter*>(parameter.get());
+          HeightParameter height(pCurr->getValue());
+          functionBuilder->addHeightParameter(height);
+        }
+        else if(DepthParameter::parameterName() == parameter->getName())
+        { 
+          DepthParameter* pCurr = dynamic_cast<DepthParameter*>(parameter.get());
+          DepthParameter depth(pCurr->getValue());
+          functionBuilder->addDepthParameter(depth);
+        }
+        else if(OriginParameter::parameterName() == parameter->getName())
+        {
+          OriginParameter*  pCurr = dynamic_cast<OriginParameter*>(parameter.get());
+          OriginParameter origin(pCurr->getX(), pCurr->getY(), pCurr->getZ());
+          functionBuilder->addOriginParameter(origin);
+        }
+        else
+        {
+          std::string message = "The parameter cannot be processed or is unrecognised: " + parameter->getName();
+          message += ". The parameter cannot be processed or is unrecognised: " + (dynamic_cast<InvalidParameter*>(parameter.get()))->getValue();
+          throw std::invalid_argument(message);
+        }
+
+      }
+
+      return functionBuilder; //convert to raw pointer and cancel smart management.
+    }
+
+    BoxImplicitFunctionParser::~BoxImplicitFunctionParser()
+    {
+    }
+
+    void BoxImplicitFunctionParser::setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser)
+    {
+      this->m_paramParserRoot = std::auto_ptr<Mantid::API::ImplicitFunctionParameterParser>(parser);
+    }
+  }
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/CenterpieceRebinning.cpp b/Code/Mantid/Framework/MDAlgorithms/src/CenterpieceRebinning.cpp
index 81315519d8951fdee529e31221954be04e04ebeb..7b326fdcceeab0477b174311fb46530e8aac2ca6 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/CenterpieceRebinning.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/CenterpieceRebinning.cpp
@@ -1,101 +1,101 @@
-#include "MantidMDAlgorithms/CenterpieceRebinning.h"
-#include <sstream>
-// Availble rebinning methods: Eventually will go to factory
-#include "MantidMDAlgorithms/CpRebinningNx3.h"
-
-namespace Mantid{
-    namespace MDAlgorithms{
-        using namespace Mantid;
-        using namespace MDDataObjects;
+#include "MantidMDAlgorithms/CenterpieceRebinning.h"
+#include <sstream>
+// Availble rebinning methods: Eventually will go to factory
+#include "MantidMDAlgorithms/CpRebinningNx3.h"
+
+namespace Mantid{
+    namespace MDAlgorithms{
+        using namespace Mantid;
+        using namespace MDDataObjects;
         using namespace Kernel;
         using namespace API;
-        using namespace Geometry;
-
-
-// Register the class into the algorithm factory
-DECLARE_ALGORITHM(CenterpieceRebinning)
-
-Kernel::Logger& CenterpieceRebinning::bin_log=Kernel::Logger::get("MD rebinning Operations");
-
-CenterpieceRebinning::CenterpieceRebinning(void): API::Algorithm() 
-{}
-
-/** Destructor     */
-CenterpieceRebinning::~CenterpieceRebinning()
-{
- 
-}
-void 
-CenterpieceRebinning::setTargetGeomDescrEqSource()
-{
+        using namespace Geometry;
+
+
+// Register the class into the algorithm factory
+DECLARE_ALGORITHM(CenterpieceRebinning)
+
+Kernel::Logger& CenterpieceRebinning::bin_log=Kernel::Logger::get("MD rebinning Operations");
+
+CenterpieceRebinning::CenterpieceRebinning(void): API::Algorithm() 
+{}
+
+/** Destructor     */
+CenterpieceRebinning::~CenterpieceRebinning()
+{
+ 
+}
+void 
+CenterpieceRebinning::setTargetGeomDescrEqSource()
+{
     // input workspace has to exist and be loaded;
 	MDWorkspace_sptr inputWS;
   // Get the input workspace
     if(existsProperty("Input")){
-         inputWS = getProperty("Input");
-         if(!inputWS){
-             bin_log.error()<<"Can not identify initial workspace to do rebinning from\n";
+         inputWS = getProperty("Input");
+         if(!inputWS){
+             bin_log.error()<<"Can not identify initial workspace to do rebinning from\n";
              throw(std::runtime_error("input workspace has to exist"));
-         }
-
+         }
+
     }else{
        bin_log.error()<<"Input workspace has not been defined in properties\n";
        throw(std::runtime_error("input workspace has to be availible through properties"));
     }
 
-
-    // set up slicing property to the shape of current workspace;
-    MDGeometryDescription *pSlicing = dynamic_cast< MDGeometryDescription *>((Property *)(this->getProperty("SlicingData")));
-    if(!pSlicing){
-          bin_log.error()<<"Rebinning request can not be retrieved from properties\n";
-          throw(std::runtime_error("can not obtain slicing property from the property manager"));
-     }
-
-    pSlicing->build_from_geometry(*(inputWS->getGeometry()));
-    //pSlicing=NULL; // should remain in Property
- 
-}
-/*
-void
-CenterpieceRebinning::set_from_VISIT(const std::string &slicing_description,const std::string &XML_definition)
-{
-    this->slicingProperty.fromXMLstring(slicing_description);
-}
-*/
-void
-CenterpieceRebinning::init()
-{
-      declareProperty(new WorkspaceProperty<MDWorkspace>("Input","",Direction::Input),"initial MD workspace");
-      declareProperty(new WorkspaceProperty<MDWorkspace>("Result","",Direction::Output),"final MD workspace");
-
-      declareProperty(new MDPropertyGeometry("SlicingData","",Direction::Input));
-  
-      declareProperty(new Kernel::PropertyWithValue<bool>("KeepPixels",false,Direction::Input),
-        " This property specifies if user wants to keep"
-        " all pixels(events) contributing in the target MD workspace during rebinning operation; This is to accelerate work if the user sure that he wants"
-        " to save the workspace after rebinning. If he does not specify this option, a rebinning which keeps contributing pixels will be performed"
-        " when user decides to save the final multidimensional workspace" );	
-   
-}
-
-unsigned int CenterpieceRebinning::reportOccurance(const unsigned int nSteps)
-{
-  return nSteps; //Determine any other report occurance desired.
-}
-
-//
-void 
-CenterpieceRebinning::exec()
-{
- MDWorkspace_sptr inputWS;
- MDWorkspace_sptr outputWS;
-
+
+    // set up slicing property to the shape of current workspace;
+    MDGeometryDescription *pSlicing = dynamic_cast< MDGeometryDescription *>((Property *)(this->getProperty("SlicingData")));
+    if(!pSlicing){
+          bin_log.error()<<"Rebinning request can not be retrieved from properties\n";
+          throw(std::runtime_error("can not obtain slicing property from the property manager"));
+     }
+
+    pSlicing->build_from_geometry(*(inputWS->getGeometry()));
+    //pSlicing=NULL; // should remain in Property
+ 
+}
+/*
+void
+CenterpieceRebinning::set_from_VISIT(const std::string &slicing_description,const std::string &XML_definition)
+{
+    this->slicingProperty.fromXMLstring(slicing_description);
+}
+*/
+void
+CenterpieceRebinning::init()
+{
+      declareProperty(new WorkspaceProperty<MDWorkspace>("Input","",Direction::Input),"initial MD workspace");
+      declareProperty(new WorkspaceProperty<MDWorkspace>("Result","",Direction::Output),"final MD workspace");
+
+      declareProperty(new MDPropertyGeometry("SlicingData","",Direction::Input));
+  
+      declareProperty(new Kernel::PropertyWithValue<bool>("KeepPixels",false,Direction::Input),
+        " This property specifies if user wants to keep"
+        " all pixels(events) contributing in the target MD workspace during rebinning operation; This is to accelerate work if the user sure that he wants"
+        " to save the workspace after rebinning. If he does not specify this option, a rebinning which keeps contributing pixels will be performed"
+        " when user decides to save the final multidimensional workspace" );	
+   
+}
+
+unsigned int CenterpieceRebinning::reportOccurance(const unsigned int nSteps)
+{
+  return nSteps; //Determine any other report occurance desired.
+}
+
+//
+void 
+CenterpieceRebinning::exec()
+{
+ MDWorkspace_sptr inputWS;
+ MDWorkspace_sptr outputWS;
+
    if(existsProperty("Input")){
-        inputWS = this->getProperty("Input");
-        if(!inputWS){
-            bin_log.error()<<"Can not identify initial workspace to do rebinning from\n";
+        inputWS = this->getProperty("Input");
+        if(!inputWS){
+            bin_log.error()<<"Can not identify initial workspace to do rebinning from\n";
             throw(std::runtime_error("input workspace has to exist"));
-        }
+        }
    }else{
       bin_log.error()<<"Input workspace has not been defined in properties\n";
        throw(std::runtime_error("input workspace has to be availible through properties"));
@@ -105,10 +105,10 @@ CenterpieceRebinning::exec()
    MDPropertyGeometry  *pSlicing; 
 
  // get slicing data from property manager. At this stage the data has to be shaped to the form desribing the final resulting cut
-   pSlicing = dynamic_cast< MDPropertyGeometry *>((Property *)(this->getProperty("SlicingData")));
-   if(!pSlicing){
-         bin_log.error()<<"Rebinning request can not be retrieved from properties manager\n";
-         throw(std::runtime_error("can not obtain slicing property from the property manager"));
+   pSlicing = dynamic_cast< MDPropertyGeometry *>((Property *)(this->getProperty("SlicingData")));
+   if(!pSlicing){
+         bin_log.error()<<"Rebinning request can not be retrieved from properties manager\n";
+         throw(std::runtime_error("can not obtain slicing property from the property manager"));
    }
  
   // Now create the output workspace or get the one which is ready for this purpose;
@@ -117,9 +117,9 @@ CenterpieceRebinning::exec()
      std::string ws_name = this->getPropertyValue("Result");
      if(!outputWS){
          bin_log.information()<<" new target MD Worokspace "<<ws_name<<" will be created\n";
-         outputWS      = MDWorkspace_sptr(new MDWorkspace());
-        // this adds workspace to dataservice
-        setProperty("Result", outputWS);
+         outputWS      = MDWorkspace_sptr(new MDWorkspace());
+        // this adds workspace to dataservice
+        setProperty("Result", outputWS);
      }else{
          bin_log.information()<<" Target MD Wororkspace "<<ws_name<<" will be owerwritten\n";
          Workspace_sptr result = AnalysisDataService::Instance().retrieve(ws_name);
@@ -148,10 +148,10 @@ CenterpieceRebinning::exec()
     // find out how many steps is needed to take to make the cut
     unsigned int nSteps = pRebin->getNumDataChunks();
 
-   /// The progress reporting object
-    int occurance = reportOccurance(nSteps);
-    std::auto_ptr<API::Progress> pProgress;
-    if(nSteps>1){
+   /// The progress reporting object
+    int occurance = reportOccurance(nSteps);
+    std::auto_ptr<API::Progress> pProgress;
+    if(nSteps>1){
       pProgress = std::auto_ptr<API::Progress>(new Progress(this,0,1,occurance));
     }
 
@@ -177,10 +177,10 @@ CenterpieceRebinning::exec()
     pRebin->finalize_rebinning();
 
 
-}
-//
-
-
-
-} //namespace MDAlgorithms
-} //namespace Mantid
+}
+//
+
+
+
+} //namespace MDAlgorithms
+} //namespace Mantid
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/CompositeFunctionBuilder.cpp b/Code/Mantid/Framework/MDAlgorithms/src/CompositeFunctionBuilder.cpp
index c050f31ecc195426a13219b56c773532bac895c3..11b07e39e1bf0ac4239496bad8aed057c2baf97a 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/CompositeFunctionBuilder.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/CompositeFunctionBuilder.cpp
@@ -1,40 +1,40 @@
-#include <exception>
-#include "MantidMDAlgorithms/CompositeFunctionBuilder.h"
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        using namespace Mantid::API;
-
-        CompositeFunctionBuilder::CompositeFunctionBuilder()
-        {
-        }
-
-        void CompositeFunctionBuilder::addFunctionBuilder(ImplicitFunctionBuilder* funcBuilder)
-        {
-            this->m_functionBuilders.push_back(boost::shared_ptr<ImplicitFunctionBuilder>(funcBuilder));
-        }
-
-        Mantid::API::ImplicitFunction* CompositeFunctionBuilder::create() const
-        {
-            CompositeImplicitFunction* compFunction = new CompositeImplicitFunction;
-
-            std::vector<boost::shared_ptr<ImplicitFunctionBuilder> >::const_iterator it;
-            for(it = this->m_functionBuilders.begin(); it != this->m_functionBuilders.end(); ++it)
-            {
-                ImplicitFunction* rawFunc = (*it)->create();
-                compFunction->addFunction(boost::shared_ptr<ImplicitFunction>(rawFunc));
-            }
-
-            return compFunction;
-        }
-
-        CompositeFunctionBuilder::~CompositeFunctionBuilder()
-        {
-        }
-    }
-
-
-}
+#include <exception>
+#include "MantidMDAlgorithms/CompositeFunctionBuilder.h"
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        using namespace Mantid::API;
+
+        CompositeFunctionBuilder::CompositeFunctionBuilder()
+        {
+        }
+
+        void CompositeFunctionBuilder::addFunctionBuilder(ImplicitFunctionBuilder* funcBuilder)
+        {
+            this->m_functionBuilders.push_back(boost::shared_ptr<ImplicitFunctionBuilder>(funcBuilder));
+        }
+
+        Mantid::API::ImplicitFunction* CompositeFunctionBuilder::create() const
+        {
+            CompositeImplicitFunction* compFunction = new CompositeImplicitFunction;
+
+            std::vector<boost::shared_ptr<ImplicitFunctionBuilder> >::const_iterator it;
+            for(it = this->m_functionBuilders.begin(); it != this->m_functionBuilders.end(); ++it)
+            {
+                ImplicitFunction* rawFunc = (*it)->create();
+                compFunction->addFunction(boost::shared_ptr<ImplicitFunction>(rawFunc));
+            }
+
+            return compFunction;
+        }
+
+        CompositeFunctionBuilder::~CompositeFunctionBuilder()
+        {
+        }
+    }
+
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunction.cpp b/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunction.cpp
index 7141024a0487d1ce25533b769730d902b72ca869..c3510ad47d0f7cc6b1c4c52b945243252934ea64 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunction.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunction.cpp
@@ -1,118 +1,118 @@
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-
-        CompositeImplicitFunction::CompositeImplicitFunction()
-        {	
-        }
-
-        CompositeImplicitFunction::~CompositeImplicitFunction()
-        {
-        }
-
-        void CompositeImplicitFunction::addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction> constituentFunction)
-        {
-            this->m_Functions.push_back(constituentFunction);
-        }
-
-        std::string CompositeImplicitFunction::getName() const
-        {
-            return CompositeImplicitFunction::functionName();
-        }
-
-        std::string CompositeImplicitFunction::toXMLString() const
-        {
-            using namespace Poco::XML;
-            AutoPtr<Document> pDoc = new Document;
-            AutoPtr<Element> functionElement = pDoc->createElement("Function");
-            pDoc->appendChild(functionElement);
-            AutoPtr<Element> typeElement = pDoc->createElement("Type");
-            AutoPtr<Text> typeText = pDoc->createTextNode(this->getName());
-            typeElement->appendChild(typeText);
-            functionElement->appendChild(typeElement);
-            AutoPtr<Element> parameterListElement = pDoc->createElement("ParameterList");
-            functionElement->appendChild(parameterListElement);
-
-            std::string functionXML;
-            for(FunctionIterator it = m_Functions.begin();it!=m_Functions.end(); ++it)
-            {
-                functionXML += (*it)->toXMLString();
-            }
-            AutoPtr<Text> functionFormatText = pDoc->createTextNode("%s");
-            functionElement->appendChild(functionFormatText);
-
-
-            std::stringstream xmlstream;
-            DOMWriter writer;
-            writer.writeNode(xmlstream, pDoc);
-
-            std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str()) % functionXML.c_str());
-            return formattedXMLString;
-        }
-
-        int CompositeImplicitFunction::getNFunctions() const
-        {
-            return this->m_Functions.size();
-        }
-
-
-        bool CompositeImplicitFunction::evaluate(const API::Point3D*  pPoint3D) const
-        {
-            bool evalResult = false;
-            std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> >::const_iterator it;
-            for(it = this->m_Functions.begin(); it != this->m_Functions.end(); ++it)
-            {
-                evalResult = (*it)->evaluate(pPoint3D);
-                if(!evalResult)
-                {
-                    break;
-                }
-            }
-            return evalResult;
-        }
-
-        bool CompositeImplicitFunction::operator==(const CompositeImplicitFunction &other) const
-        {
-
-            bool evalResult = false;
-            if(other.getNFunctions() != this->getNFunctions() )
-            {
-                evalResult = false;
-            }
-            else if(other.getNFunctions() == 0)
-            {
-                evalResult = false;
-            }
-            else
-            {
-                for(size_t i = 0; i < this->m_Functions.size(); i++)
-                {
-                    evalResult = false; //TODO call equals operations on nested implicit functions.
-                    if(!evalResult)
-                    {
-                        break;
-                    }
-                }
-            }
-            return evalResult;
-        }
-
-        //TODO. retire this function, call evaluate instead!
-        std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > CompositeImplicitFunction::getFunctions() const
-        {
-          return this->m_Functions;
-        }
-            
-        bool CompositeImplicitFunction::operator!=(const CompositeImplicitFunction &other) const
-        {
-            return !(*this == other);
-        }
-
-
-    }
-}
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+
+        CompositeImplicitFunction::CompositeImplicitFunction()
+        {	
+        }
+
+        CompositeImplicitFunction::~CompositeImplicitFunction()
+        {
+        }
+
+        void CompositeImplicitFunction::addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction> constituentFunction)
+        {
+            this->m_Functions.push_back(constituentFunction);
+        }
+
+        std::string CompositeImplicitFunction::getName() const
+        {
+            return CompositeImplicitFunction::functionName();
+        }
+
+        std::string CompositeImplicitFunction::toXMLString() const
+        {
+            using namespace Poco::XML;
+            AutoPtr<Document> pDoc = new Document;
+            AutoPtr<Element> functionElement = pDoc->createElement("Function");
+            pDoc->appendChild(functionElement);
+            AutoPtr<Element> typeElement = pDoc->createElement("Type");
+            AutoPtr<Text> typeText = pDoc->createTextNode(this->getName());
+            typeElement->appendChild(typeText);
+            functionElement->appendChild(typeElement);
+            AutoPtr<Element> parameterListElement = pDoc->createElement("ParameterList");
+            functionElement->appendChild(parameterListElement);
+
+            std::string functionXML;
+            for(FunctionIterator it = m_Functions.begin();it!=m_Functions.end(); ++it)
+            {
+                functionXML += (*it)->toXMLString();
+            }
+            AutoPtr<Text> functionFormatText = pDoc->createTextNode("%s");
+            functionElement->appendChild(functionFormatText);
+
+
+            std::stringstream xmlstream;
+            DOMWriter writer;
+            writer.writeNode(xmlstream, pDoc);
+
+            std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str()) % functionXML.c_str());
+            return formattedXMLString;
+        }
+
+        int CompositeImplicitFunction::getNFunctions() const
+        {
+            return this->m_Functions.size();
+        }
+
+
+        bool CompositeImplicitFunction::evaluate(const API::Point3D*  pPoint3D) const
+        {
+            bool evalResult = false;
+            std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> >::const_iterator it;
+            for(it = this->m_Functions.begin(); it != this->m_Functions.end(); ++it)
+            {
+                evalResult = (*it)->evaluate(pPoint3D);
+                if(!evalResult)
+                {
+                    break;
+                }
+            }
+            return evalResult;
+        }
+
+        bool CompositeImplicitFunction::operator==(const CompositeImplicitFunction &other) const
+        {
+
+            bool evalResult = false;
+            if(other.getNFunctions() != this->getNFunctions() )
+            {
+                evalResult = false;
+            }
+            else if(other.getNFunctions() == 0)
+            {
+                evalResult = false;
+            }
+            else
+            {
+                for(size_t i = 0; i < this->m_Functions.size(); i++)
+                {
+                    evalResult = false; //TODO call equals operations on nested implicit functions.
+                    if(!evalResult)
+                    {
+                        break;
+                    }
+                }
+            }
+            return evalResult;
+        }
+
+        //TODO. retire this function, call evaluate instead!
+        std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > CompositeImplicitFunction::getFunctions() const
+        {
+          return this->m_Functions;
+        }
+            
+        bool CompositeImplicitFunction::operator!=(const CompositeImplicitFunction &other) const
+        {
+            return !(*this == other);
+        }
+
+
+    }
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunctionParser.cpp b/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunctionParser.cpp
index b7659648cc84063a9c2114169ad6a67ba5037edf..1817a24f8b867a11b968eff6a45d73ed7f1d19ba 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunctionParser.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/CompositeImplicitFunctionParser.cpp
@@ -1,76 +1,76 @@
-#include "MantidMDAlgorithms/CompositeImplicitFunctionParser.h"
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-#include "MantidAPI/ImplicitFunctionBuilder.h"
-#include "MantidAPI/ImplicitFunctionParserFactory.h"
-#include "MantidAPI/ImplicitFunctionParameterParserFactory.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        DECLARE_IMPLICIT_FUNCTION_PARSER(CompositeImplicitFunctionParser);
-
-        CompositeImplicitFunctionParser::CompositeImplicitFunctionParser() : ImplicitFunctionParser(new InvalidParameterParser)
-        {
-        }
-
-        API::ImplicitFunctionBuilder* CompositeImplicitFunctionParser::createFunctionBuilder(Poco::XML::Element* functionElement)
-        {
-            Mantid::API::ImplicitFunctionBuilder* functionBuilder;
-            if("Function" != functionElement->localName())
-            {
-               std::string message = "This is not a function element: " + functionElement->localName(); 
-               throw std::invalid_argument(message);
-            }
-            
-            std::string type = functionElement->getChildElement("Type")->innerText();
-            if(CompositeImplicitFunction::functionName() != type)
-            {
-                ImplicitFunctionParser::checkSuccessorExists();
-                functionBuilder = m_successor->createFunctionBuilder(functionElement);
-            }
-            else
-            {
-                functionBuilder = parseCompositeFunction(functionElement);
-            }
-            return functionBuilder;
-        }
-
-        void CompositeImplicitFunctionParser::setSuccessorParser(ImplicitFunctionParser* parser)
-        {
-            this->m_successor = std::auto_ptr<ImplicitFunctionParser>(parser);
-        }
-
-        CompositeFunctionBuilder * CompositeImplicitFunctionParser::parseCompositeFunction(Poco::XML::Element* functionElement)
-        {
-            using namespace Poco::XML;
-            ImplicitFunctionParser::checkSuccessorExists();
-            std::auto_ptr<CompositeFunctionBuilder> functionBuilder = std::auto_ptr<CompositeFunctionBuilder>(new CompositeFunctionBuilder);
-            NodeList* childFunctionElementList = functionElement->childNodes();
-           
-            for(size_t i = 0; i < childFunctionElementList->length(); i++)
-            {
-                Element* childFunctionElement = dynamic_cast<Element*>(childFunctionElementList->item(i));
-                std::string typeName = childFunctionElement->localName();
-                if("Function" == typeName)
-                {
-                    Mantid::API::ImplicitFunctionBuilder* childFunctionBuilder = this->createFunctionBuilder(childFunctionElement);
-
-                    functionBuilder->addFunctionBuilder(childFunctionBuilder);
-                }
-            }
-            
-            return functionBuilder.release(); 
-        }
-
-        CompositeImplicitFunctionParser::~CompositeImplicitFunctionParser()
-        {
-        }
-
-        void CompositeImplicitFunctionParser::setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser)
-        {
-          this->m_paramParserRoot = std::auto_ptr<Mantid::API::ImplicitFunctionParameterParser>(parser);
-        }
-    }
-}
+#include "MantidMDAlgorithms/CompositeImplicitFunctionParser.h"
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+#include "MantidAPI/ImplicitFunctionBuilder.h"
+#include "MantidAPI/ImplicitFunctionParserFactory.h"
+#include "MantidAPI/ImplicitFunctionParameterParserFactory.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        DECLARE_IMPLICIT_FUNCTION_PARSER(CompositeImplicitFunctionParser);
+
+        CompositeImplicitFunctionParser::CompositeImplicitFunctionParser() : ImplicitFunctionParser(new InvalidParameterParser)
+        {
+        }
+
+        API::ImplicitFunctionBuilder* CompositeImplicitFunctionParser::createFunctionBuilder(Poco::XML::Element* functionElement)
+        {
+            Mantid::API::ImplicitFunctionBuilder* functionBuilder;
+            if("Function" != functionElement->localName())
+            {
+               std::string message = "This is not a function element: " + functionElement->localName(); 
+               throw std::invalid_argument(message);
+            }
+            
+            std::string type = functionElement->getChildElement("Type")->innerText();
+            if(CompositeImplicitFunction::functionName() != type)
+            {
+                ImplicitFunctionParser::checkSuccessorExists();
+                functionBuilder = m_successor->createFunctionBuilder(functionElement);
+            }
+            else
+            {
+                functionBuilder = parseCompositeFunction(functionElement);
+            }
+            return functionBuilder;
+        }
+
+        void CompositeImplicitFunctionParser::setSuccessorParser(ImplicitFunctionParser* parser)
+        {
+            this->m_successor = std::auto_ptr<ImplicitFunctionParser>(parser);
+        }
+
+        CompositeFunctionBuilder * CompositeImplicitFunctionParser::parseCompositeFunction(Poco::XML::Element* functionElement)
+        {
+            using namespace Poco::XML;
+            ImplicitFunctionParser::checkSuccessorExists();
+            std::auto_ptr<CompositeFunctionBuilder> functionBuilder = std::auto_ptr<CompositeFunctionBuilder>(new CompositeFunctionBuilder);
+            NodeList* childFunctionElementList = functionElement->childNodes();
+           
+            for(size_t i = 0; i < childFunctionElementList->length(); i++)
+            {
+                Element* childFunctionElement = dynamic_cast<Element*>(childFunctionElementList->item(i));
+                std::string typeName = childFunctionElement->localName();
+                if("Function" == typeName)
+                {
+                    Mantid::API::ImplicitFunctionBuilder* childFunctionBuilder = this->createFunctionBuilder(childFunctionElement);
+
+                    functionBuilder->addFunctionBuilder(childFunctionBuilder);
+                }
+            }
+            
+            return functionBuilder.release(); 
+        }
+
+        CompositeImplicitFunctionParser::~CompositeImplicitFunctionParser()
+        {
+        }
+
+        void CompositeImplicitFunctionParser::setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser)
+        {
+          this->m_paramParserRoot = std::auto_ptr<Mantid::API::ImplicitFunctionParameterParser>(parser);
+        }
+    }
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/CpRebinningNx3.cpp b/Code/Mantid/Framework/MDAlgorithms/src/CpRebinningNx3.cpp
index 144561af29d3b8cc90dd2f31bd53a00846a7cd92..cd1cb6e8e5cdab3d96914b8dbbb5397beac6de83 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/CpRebinningNx3.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/CpRebinningNx3.cpp
@@ -1,93 +1,93 @@
-#include "MantidMDAlgorithms/CpRebinningNx3.h"
-#include <boost/ptr_container/ptr_vector.hpp>
-// temporary -- to provide size of sqw pixel
-#include "MDDataObjects/MD_File_hdfMatlab.h"
-
-namespace Mantid{
-namespace MDAlgorithms{
-
-     using namespace Mantid;
-     using namespace MDDataObjects;
+#include "MantidMDAlgorithms/CpRebinningNx3.h"
+#include <boost/ptr_container/ptr_vector.hpp>
+// temporary -- to provide size of sqw pixel
+#include "MDDataObjects/MD_File_hdfMatlab.h"
+
+namespace Mantid{
+namespace MDAlgorithms{
+
+     using namespace Mantid;
+     using namespace MDDataObjects;
      using namespace Kernel;
      using namespace API;
-     using namespace Geometry;
-
-
-CpRebinningNx3::CpRebinningNx3(const MDDataObjects::MDWorkspace_const_sptr &sourceWS, 
-                 Geometry::MDGeometryDescription const * const pTargetDescr,
-                 const MDDataObjects::MDWorkspace_sptr  & targetWS,bool in_keep_pixels):
-DynamicCPRRebinning(sourceWS,pTargetDescr,targetWS),
-nRecDims(3), // can not do anything else here
-n_starting_cell(0),
-n_pixels_read(0),
-n_pixels_selected(0),
-n_pix_in_buffer(0),
-keep_pixels(in_keep_pixels),
-pTargetDataPoints(targetWS->get_spMDDPoints().get())
-{
-
-     this->build_scaled_transformation_matrix(sourceWS->get_const_MDGeometry(),*pTargetDescr);
- 
+     using namespace Geometry;
+
+
+CpRebinningNx3::CpRebinningNx3(const MDDataObjects::MDWorkspace_const_sptr &sourceWS, 
+                 Geometry::MDGeometryDescription const * const pTargetDescr,
+                 const MDDataObjects::MDWorkspace_sptr  & targetWS,bool in_keep_pixels):
+DynamicCPRRebinning(sourceWS,pTargetDescr,targetWS),
+nRecDims(3), // can not do anything else here
+n_starting_cell(0),
+n_pixels_read(0),
+n_pixels_selected(0),
+n_pix_in_buffer(0),
+keep_pixels(in_keep_pixels),
+pTargetDataPoints(targetWS->get_spMDDPoints().get())
+{
+
+     this->build_scaled_transformation_matrix(sourceWS->get_const_MDGeometry(),*pTargetDescr);
+ 
 	 pix_buf = this->pSourceDataPoints->get_pBuffer();
 
      if(keep_pixels){
          // not necessary; will clear things out
-         //out_pix = this->pTargetDataPoints->getBuffer();
-         // get number of pixels which fit the buffer
-         size_t n_pix = (*pix_buf).size()/this->pSourceDataPoints->sizeofMDDataPoint();
-         retained_cell_indexes.resize(n_pix);
+         //out_pix = this->pTargetDataPoints->getBuffer();
+         // get number of pixels which fit the buffer
+         size_t n_pix = (*pix_buf).size()/this->pSourceDataPoints->sizeofMDDataPoint();
+         retained_cell_indexes.resize(n_pix);
          pixel_valid.resize(n_pix,false);
 		 // initialize target points to treat current target image as keys to pixels locations
 		 this->pTargetWS->get_spMDDPoints()->initialize(this->spTargetImage);
 
      }
-
-}
-bool
-CpRebinningNx3::rebin_data_chunk()
-{
-   time_t start,end;
-   time(&start);  //*******
+
+}
+bool
+CpRebinningNx3::rebin_data_chunk()
+{
+   time_t start,end;
+   time(&start);  //*******
    n_starting_cell  = this->pSourceDataPoints->get_pix_subset(preselected_cells,n_starting_cell,*pix_buf,n_pix_in_buffer);
    n_pixels_read   += n_pix_in_buffer;
 
-   time(&end);   
-   bin_log.debug()<<" data obtained in: "<<difftime (end,start)<<" sec\n";;
-   time(&start);  //*******
+   time(&end);   
+   bin_log.debug()<<" data obtained in: "<<difftime (end,start)<<" sec\n";;
+   time(&start);  //*******
   
     n_pixels_selected+= rebin_Nx3dataset();
-    time(&end);   
-    bin_log.debug()<<" cells rebinned in: "<<difftime (end,start)<<" sec\n";;
+    time(&end);   
+    bin_log.debug()<<" cells rebinned in: "<<difftime (end,start)<<" sec\n";;
 
     if(n_starting_cell==preselected_cells.size()){
           return false; // no more data left to process
     }
       // more data are still availible
     return true;
-
-}
-bool
-CpRebinningNx3::rebin_data_chunk_keep_pixels()
-{
-    size_t  n_pixels_retained_now;
-    time_t start,end;
-    time(&start);  //*******
- 
+
+}
+bool
+CpRebinningNx3::rebin_data_chunk_keep_pixels()
+{
+    size_t  n_pixels_retained_now;
+    time_t start,end;
+    time(&start);  //*******
+ 
     n_starting_cell  = this->pSourceDataPoints->get_pix_subset(preselected_cells,n_starting_cell,*pix_buf,n_pix_in_buffer);
     n_pixels_read   += n_pix_in_buffer;
-    time(&end);   
-    bin_log.debug()<<" data obtained in: "<<difftime (end,start)<<" sec\n";;
-    time(&start);  //*******
+    time(&end);   
+    bin_log.debug()<<" data obtained in: "<<difftime (end,start)<<" sec\n";;
+    time(&start);  //*******
 
 
     n_pixels_retained_now  =  this->rebin_Nx3dataset();
     n_pixels_selected     += n_pixels_retained_now;
-    time(&end);   
+    time(&end);   
     bin_log.debug()<<" pixels and cells rebinned in: "<<difftime (end,start)<<" sec\n";
     time(&start);  //*******
     this->pTargetDataPoints->store_pixels(*pix_buf,pixel_valid,retained_cell_indexes,n_pixels_retained_now);
-    time(&end);   
-    bin_log.debug()<<" pixels and cells stored in: "<<difftime (end,start)<<" sec\n";;
+    time(&end);   
+    bin_log.debug()<<" pixels and cells stored in: "<<difftime (end,start)<<" sec\n";;
 
 
     if(n_starting_cell==preselected_cells.size()){
@@ -95,272 +95,272 @@ CpRebinningNx3::rebin_data_chunk_keep_pixels()
     }
       // more data are still availible
     return true;
-
-}
-//
-unsigned int 
-CpRebinningNx3::getNumDataChunks()const
-{
-    size_t pix_buffer_size = this->pSourceDataPoints->get_pix_bufSize();
-    size_t n_data_chunks  = (size_t)this->n_preselected_pix/pix_buffer_size;
-
-    if(n_data_chunks*pix_buffer_size!=n_preselected_pix)n_data_chunks++;
-    return n_data_chunks;
-}
-//
-CpRebinningNx3::~CpRebinningNx3()
-{
-}
-//
-void 
-CpRebinningNx3::build_scaled_transformation_matrix(const Geometry::MDGeometry &Source,const Geometry::MDGeometryDescription &target)
-{
-  unsigned int  i,ic,j;
-  this->n_starting_cell = 0;
-  this->n_pixels_read   = 0;
-  this->n_pixels_selected=0;
-  this->n_pix_in_buffer  = 0;
-  this->nDimensions     = Source.getNumDims();
-  this->shifts.resize(this->nDimensions);
-  this->cut_min.resize(this->nDimensions);
-  this->cut_max.resize(this->nDimensions);
-  this->axis_step.resize(this->nDimensions);
-  this->axis_step_inv.resize(this->nDimensions);
-  this->strides.resize(this->nDimensions);
-  this->rec_dim_indexes.assign(3,-1);
-
-
-  // reduction dimensions; if stride = 0, the dimension is reduced;
-   /// order of dimensions in sparce dimension array is different from the order, obtained in dimensions
-  std::vector<std::string> source_dimID = this->pSourceWS->get_const_MDDPoints().getDimensionsID();
-  IMDDimension const*  pmDim;
-  unsigned int rec_dim_count(0);
-  for(i=0;i<this->nDimensions;i++){
-      pmDim             = (this->pTargetGeom->get_constDimension(source_dimID[i])).get();
-
-      shifts[i]        =  pmDim->getDataShift();
-      axis_step[i]     = (pmDim->getMaximum()-pmDim->getMinimum())/pmDim->getNBins();
-      axis_step_inv[i] = 1/axis_step[i];
-      cut_max[i]       = pmDim->getMaximum()*axis_step_inv[i];
-      cut_min[i]       = pmDim->getMinimum()*axis_step_inv[i];
-      strides[i]       = pmDim->getStride();
-      if(pmDim->isReciprocal()){
-          this->rec_dim_indexes[rec_dim_count]=i;
-          rec_dim_count++;
-      }
- 
-  }
-  std::vector<double> rot = target.getRotations();
-  std::vector<double> basis[3]; // not used at the momemnt;
-
-  for(i=0;i<3;i++){
-    ic = i*3;
-    for(j=0;j<3;j++){
-      rotations[ic+j]=rot[ic+j]*axis_step_inv[i];
-    }
-  }
-
-
-}
-
-size_t 
-CpRebinningNx3::rebin_Nx3dataset()
-{
-  // set up auxiliary variables and preprocess them.
-  double xt,yt,zt,xt1,yt1,zt1,Et,Inf(0),
-      pix_Xmin,pix_Ymin,pix_Zmin,pix_Emin,pix_Xmax,pix_Ymax,pix_Zmax,pix_Emax;
-  size_t nPixel_retained(0);
-
-
- 
-  std::vector<double> boxMin(this->nDimensions,FLT_MAX);
-  std::vector<double> boxMax(this->nDimensions,-FLT_MAX);
-  std::vector<double> rN(this->nDimensions,0);
-  
-  bool  ignore_something,ignote_all;
-
-  ignore_something=ignore_nan|ignore_inf;
-  ignote_all      =ignore_nan&ignore_inf;
-  if(ignore_inf){
-    Inf=std::numeric_limits<double>::infinity();
-  }
- 
-
-  //bool keep_pixels(false);
-
-  //int nRealThreads;
-
-  size_t i,indl;
-  int    indX,indY,indZ,indE;
-  double s,err;
-  size_t nDimX(strides[this->rec_dim_indexes[0]]),nDimY(strides[this->rec_dim_indexes[1]]),nDimZ(strides[this->rec_dim_indexes[2]]);
-  // this one should coinside with the description, obtained from the MDDataPoints and readers;
-  float *MDDataPoint =(float *)(&(pix_buf->operator[](0)));
-  unsigned int signal_shift = nDimensions;
-  unsigned int data_stride  = this->pSourceDataPoints->sizeofMDDataPoint()/sizeof(float);
-  // min-max value initialization
-
-  pix_Xmin=pix_Ymin=pix_Zmin=pix_Emin=  std::numeric_limits<double>::max();
-  pix_Xmax=pix_Ymax=pix_Zmax=pix_Emax=- std::numeric_limits<double>::max();
-  size_t nCells  = this->n_target_cells;
-  //
-  // work at least for MSV 2008
-// The following code does not work cross platform. Hence the undef.
-#undef _OPENMP
-#ifdef _OPENMP
-  int num_OMP_Threads(1);
-  omp_set_num_threads(num_OMP_Threads);
-
-
-#pragma omp parallel default(none), private(i,j0,xt,yt,zt,xt1,yt1,zt1,Et,indX,indY,indZ,indE), \
-    shared(actual_pix_range,this->pix,ok,ind, \
-        this->nPixels,newsqw), \
-        firstprivate(pix_Xmin,pix_Ymin,pix_Zmin,pix_Emin, pix_Xmax,pix_Ymax,pix_Zmax,pix_Emax,\
-            ignote_all,ignore_nan,ignore_inf,ignore_something,transform_energy,
-  ebin_inv,Inf,trf,\
-  nDimX,nDimY,nDimZ,nDimE), \
-  reduction(+:nPixel_retained)
-#endif
-  {
-    //	#pragma omp master
-    //{
-    //    nRealThreads= omp_get_num_threads()
-    //	 mexPrintf(" n real threads %d :\n",nRealThread);}
-
-//#pragma omp for schedule(static,1)
-    for(i=0;i<n_pix_in_buffer;i++){
-      size_t base = i*data_stride;
-
-      s  = *(MDDataPoint+base+signal_shift); //unPacker.getSignal(i);
-      err= *(MDDataPoint+base+signal_shift+1); // //unPacker.getError(i);
-      // Check for the case when either data.s or data.e contain NaNs or Infs, but data.npix is not zero.
-      // and handle according to options settings.
-      if(ignore_something){
-        if(ignote_all){
-          if(s==Inf||isNaN(s)||
-              err==Inf ||isNaN(err)){
-            continue;
-          }
-        }else if(ignore_nan){
-          if(isNaN(s)||isNaN(err)){
-            continue;
-          }
-        }else if(ignore_inf){
-          if(s==Inf||err==Inf){
-            continue;
-          }
-        }
-      }
-      indl=0;
-      bool out(false);
-      for(size_t j=nRecDims; j<nDimensions; j++)
-      {
-        // transform orthogonal dimensions
-        Et=(*(MDDataPoint+base+j)-shifts[j])*axis_step_inv[j];
-
-        if(Et<cut_min[j]||Et>=cut_max[j]){
-          out = true;
-          continue;
-        }else{
-          indE=(unsigned int)floor(Et-cut_min[j]);
-        }
-        indl+=indE*strides[j];
-        rN[j]=Et;
-      }
-      if(out)continue;
-
-
-      // Transform the coordinates u1-u4 into the new projection axes, if necessary
-      //    indx=[(v(1:3,:)'-repmat(trans_bott_left',[size(v,2),1]))*rot_ustep',v(4,:)'];  % nx4 matrix
-      xt1=*(MDDataPoint+base+0)   -shifts[0]; // unPacker.getDataField(0,i)   -shifts[0];
-      yt1=*(MDDataPoint+base+1)   -shifts[1]; //unPacker.getDataField(1,i)   -shifts[1];
-      zt1=*(MDDataPoint+base+2)   -shifts[2]; //unPacker.getDataField(2,i)   -shifts[2];
-
-
-      xt=xt1*rotations[0]+yt1*rotations[3]+zt1*rotations[6];
-      if(xt<cut_min[0]||xt>=cut_max[0]){
-        continue;
-      }
-
-      yt=xt1*rotations[1]+yt1*rotations[4]+zt1*rotations[7];
-      if(yt<cut_min[1]||yt>=cut_max[1]){
-        continue;
-      }
-
-      zt=xt1*rotations[2]+yt1*rotations[5]+zt1*rotations[8];
-      if(zt<cut_min[2]||zt>=cut_max[2]) {
-        continue;
-      }
-
-      //     indx=indx(ok,:);    % get good indices (including integration axes and plot axes with only one bin)
-      indX=(int)floor(xt-cut_min[0]);
-      indY=(int)floor(yt-cut_min[1]);
-      indZ=(int)floor(zt-cut_min[2]);
-
-      //
-      indl += indX*nDimX+indY*nDimY+indZ*nDimZ;
-      if(keep_pixels){
-          pixel_valid[i] = true;
-          retained_cell_indexes[nPixel_retained] = indl;
-      }
-      nPixel_retained++;
-	  // DEBUGGING:
-	  //if(indl>=nCells){
-		 // continue;
-	  //}
-      // i0=nPixel_retained*OUT_PIXEL_DATA_WIDTH;    // transformed pixels;
-//#pragma omp atomic
-      pTargetImgData[indl].s   +=s;
-//#pragma omp atomic
-      pTargetImgData[indl].err +=err;
-//#pragma omp atomic
-      pTargetImgData[indl].npix++;
-//#pragma omp atomic
-      // this request substantial thinking -- will not do it this way as it is very slow
-      // this->pix_array[indl].cell_memPixels.push_back(pix);
-
-      //
-      //    actual_pix_range = [min(actual_pix_range(1,:),min(indx,[],1));max(actual_pix_range(2,:),max(indx,[],1))];  % true range of data
-      if(xt<pix_Xmin)pix_Xmin=xt;
-      if(xt>pix_Xmax)pix_Xmax=xt;
-
-      if(yt<pix_Ymin)pix_Ymin=yt;
-      if(yt>pix_Ymax)pix_Ymax=yt;
-
-      if(zt<pix_Zmin)pix_Zmin=zt;
-      if(zt>pix_Zmax)pix_Zmax=zt;
-
-
-    } // end for i -- imlicit barrier;
-#pragma omp critical
-    {
-      if(boxMin[0]>pix_Xmin*axis_step[0])boxMin[0]=pix_Xmin*axis_step[0];
-      if(boxMin[1]>pix_Ymin*axis_step[1])boxMin[1]=pix_Ymin*axis_step[1];
-      if(boxMin[2]>pix_Zmin*axis_step[2])boxMin[2]=pix_Zmin*axis_step[2];
-
-
-      if(boxMax[0]<pix_Xmax*axis_step[0])boxMax[0]=pix_Xmax*axis_step[0];
-      if(boxMax[1]<pix_Ymax*axis_step[1])boxMax[1]=pix_Ymax*axis_step[1];
-      if(boxMax[2]<pix_Zmax*axis_step[2])boxMax[2]=pix_Zmax*axis_step[2];
-
-      for(size_t j=nRecDims;j<nDimensions;j++)
-      {
-        if(boxMin[j]>rN[j]*axis_step_inv[j])boxMin[j]=rN[j]*axis_step_inv[j];
-        if(boxMax[j]<rN[j]*axis_step_inv[j])boxMax[j]=rN[j]*axis_step_inv[j];
-      }
-    }
-  } // end parallel region
- 
-  for(unsigned int ii=0;ii<nDimensions;ii++){
-    pTargetDataPoints->rPixMin(ii) = (pTargetDataPoints->rPixMin(ii)<boxMin[ii])?pTargetDataPoints->rPixMin(ii):boxMin[ii];
-    pTargetDataPoints->rPixMax(ii) = (pTargetDataPoints->rPixMax(ii)>boxMax[ii])?pTargetDataPoints->rPixMax(ii):boxMax[ii];
-  }
-  // keep image array properly defined 
-  this->pTargetWS->get_spMDImage()->get_pMDImgData()->npixSum+=nPixel_retained;
-  //
-  return nPixel_retained;
-}
-
-
-} // end namespaces
-}
+
+}
+//
+unsigned int 
+CpRebinningNx3::getNumDataChunks()const
+{
+    size_t pix_buffer_size = this->pSourceDataPoints->get_pix_bufSize();
+    size_t n_data_chunks  = (size_t)this->n_preselected_pix/pix_buffer_size;
+
+    if(n_data_chunks*pix_buffer_size!=n_preselected_pix)n_data_chunks++;
+    return n_data_chunks;
+}
+//
+CpRebinningNx3::~CpRebinningNx3()
+{
+}
+//
+void 
+CpRebinningNx3::build_scaled_transformation_matrix(const Geometry::MDGeometry &Source,const Geometry::MDGeometryDescription &target)
+{
+  unsigned int  i,ic,j;
+  this->n_starting_cell = 0;
+  this->n_pixels_read   = 0;
+  this->n_pixels_selected=0;
+  this->n_pix_in_buffer  = 0;
+  this->nDimensions     = Source.getNumDims();
+  this->shifts.resize(this->nDimensions);
+  this->cut_min.resize(this->nDimensions);
+  this->cut_max.resize(this->nDimensions);
+  this->axis_step.resize(this->nDimensions);
+  this->axis_step_inv.resize(this->nDimensions);
+  this->strides.resize(this->nDimensions);
+  this->rec_dim_indexes.assign(3,-1);
+
+
+  // reduction dimensions; if stride = 0, the dimension is reduced;
+   /// order of dimensions in sparce dimension array is different from the order, obtained in dimensions
+  std::vector<std::string> source_dimID = this->pSourceWS->get_const_MDDPoints().getDimensionsID();
+  IMDDimension const*  pmDim;
+  unsigned int rec_dim_count(0);
+  for(i=0;i<this->nDimensions;i++){
+      pmDim             = (this->pTargetGeom->get_constDimension(source_dimID[i])).get();
+
+      shifts[i]        =  pmDim->getDataShift();
+      axis_step[i]     = (pmDim->getMaximum()-pmDim->getMinimum())/pmDim->getNBins();
+      axis_step_inv[i] = 1/axis_step[i];
+      cut_max[i]       = pmDim->getMaximum()*axis_step_inv[i];
+      cut_min[i]       = pmDim->getMinimum()*axis_step_inv[i];
+      strides[i]       = pmDim->getStride();
+      if(pmDim->isReciprocal()){
+          this->rec_dim_indexes[rec_dim_count]=i;
+          rec_dim_count++;
+      }
+ 
+  }
+  std::vector<double> rot = target.getRotations();
+  std::vector<double> basis[3]; // not used at the momemnt;
+
+  for(i=0;i<3;i++){
+    ic = i*3;
+    for(j=0;j<3;j++){
+      rotations[ic+j]=rot[ic+j]*axis_step_inv[i];
+    }
+  }
+
+
+}
+
+size_t 
+CpRebinningNx3::rebin_Nx3dataset()
+{
+  // set up auxiliary variables and preprocess them.
+  double xt,yt,zt,xt1,yt1,zt1,Et,Inf(0),
+      pix_Xmin,pix_Ymin,pix_Zmin,pix_Emin,pix_Xmax,pix_Ymax,pix_Zmax,pix_Emax;
+  size_t nPixel_retained(0);
+
+
+ 
+  std::vector<double> boxMin(this->nDimensions,FLT_MAX);
+  std::vector<double> boxMax(this->nDimensions,-FLT_MAX);
+  std::vector<double> rN(this->nDimensions,0);
+  
+  bool  ignore_something,ignote_all;
+
+  ignore_something=ignore_nan|ignore_inf;
+  ignote_all      =ignore_nan&ignore_inf;
+  if(ignore_inf){
+    Inf=std::numeric_limits<double>::infinity();
+  }
+ 
+
+  //bool keep_pixels(false);
+
+  //int nRealThreads;
+
+  size_t i,indl;
+  int    indX,indY,indZ,indE;
+  double s,err;
+  size_t nDimX(strides[this->rec_dim_indexes[0]]),nDimY(strides[this->rec_dim_indexes[1]]),nDimZ(strides[this->rec_dim_indexes[2]]);
+  // this one should coinside with the description, obtained from the MDDataPoints and readers;
+  float *MDDataPoint =(float *)(&(pix_buf->operator[](0)));
+  unsigned int signal_shift = nDimensions;
+  unsigned int data_stride  = this->pSourceDataPoints->sizeofMDDataPoint()/sizeof(float);
+  // min-max value initialization
+
+  pix_Xmin=pix_Ymin=pix_Zmin=pix_Emin=  std::numeric_limits<double>::max();
+  pix_Xmax=pix_Ymax=pix_Zmax=pix_Emax=- std::numeric_limits<double>::max();
+  size_t nCells  = this->n_target_cells;
+  //
+  // work at least for MSV 2008
+// The following code does not work cross platform. Hence the undef.
+#undef _OPENMP
+#ifdef _OPENMP
+  int num_OMP_Threads(1);
+  omp_set_num_threads(num_OMP_Threads);
+
+
+#pragma omp parallel default(none), private(i,j0,xt,yt,zt,xt1,yt1,zt1,Et,indX,indY,indZ,indE), \
+    shared(actual_pix_range,this->pix,ok,ind, \
+        this->nPixels,newsqw), \
+        firstprivate(pix_Xmin,pix_Ymin,pix_Zmin,pix_Emin, pix_Xmax,pix_Ymax,pix_Zmax,pix_Emax,\
+            ignote_all,ignore_nan,ignore_inf,ignore_something,transform_energy,
+  ebin_inv,Inf,trf,\
+  nDimX,nDimY,nDimZ,nDimE), \
+  reduction(+:nPixel_retained)
+#endif
+  {
+    //	#pragma omp master
+    //{
+    //    nRealThreads= omp_get_num_threads()
+    //	 mexPrintf(" n real threads %d :\n",nRealThread);}
+
+//#pragma omp for schedule(static,1)
+    for(i=0;i<n_pix_in_buffer;i++){
+      size_t base = i*data_stride;
+
+      s  = *(MDDataPoint+base+signal_shift); //unPacker.getSignal(i);
+      err= *(MDDataPoint+base+signal_shift+1); // //unPacker.getError(i);
+      // Check for the case when either data.s or data.e contain NaNs or Infs, but data.npix is not zero.
+      // and handle according to options settings.
+      if(ignore_something){
+        if(ignote_all){
+          if(s==Inf||isNaN(s)||
+              err==Inf ||isNaN(err)){
+            continue;
+          }
+        }else if(ignore_nan){
+          if(isNaN(s)||isNaN(err)){
+            continue;
+          }
+        }else if(ignore_inf){
+          if(s==Inf||err==Inf){
+            continue;
+          }
+        }
+      }
+      indl=0;
+      bool out(false);
+      for(size_t j=nRecDims; j<nDimensions; j++)
+      {
+        // transform orthogonal dimensions
+        Et=(*(MDDataPoint+base+j)-shifts[j])*axis_step_inv[j];
+
+        if(Et<cut_min[j]||Et>=cut_max[j]){
+          out = true;
+          continue;
+        }else{
+          indE=(unsigned int)floor(Et-cut_min[j]);
+        }
+        indl+=indE*strides[j];
+        rN[j]=Et;
+      }
+      if(out)continue;
+
+
+      // Transform the coordinates u1-u4 into the new projection axes, if necessary
+      //    indx=[(v(1:3,:)'-repmat(trans_bott_left',[size(v,2),1]))*rot_ustep',v(4,:)'];  % nx4 matrix
+      xt1=*(MDDataPoint+base+0)   -shifts[0]; // unPacker.getDataField(0,i)   -shifts[0];
+      yt1=*(MDDataPoint+base+1)   -shifts[1]; //unPacker.getDataField(1,i)   -shifts[1];
+      zt1=*(MDDataPoint+base+2)   -shifts[2]; //unPacker.getDataField(2,i)   -shifts[2];
+
+
+      xt=xt1*rotations[0]+yt1*rotations[3]+zt1*rotations[6];
+      if(xt<cut_min[0]||xt>=cut_max[0]){
+        continue;
+      }
+
+      yt=xt1*rotations[1]+yt1*rotations[4]+zt1*rotations[7];
+      if(yt<cut_min[1]||yt>=cut_max[1]){
+        continue;
+      }
+
+      zt=xt1*rotations[2]+yt1*rotations[5]+zt1*rotations[8];
+      if(zt<cut_min[2]||zt>=cut_max[2]) {
+        continue;
+      }
+
+      //     indx=indx(ok,:);    % get good indices (including integration axes and plot axes with only one bin)
+      indX=(int)floor(xt-cut_min[0]);
+      indY=(int)floor(yt-cut_min[1]);
+      indZ=(int)floor(zt-cut_min[2]);
+
+      //
+      indl += indX*nDimX+indY*nDimY+indZ*nDimZ;
+      if(keep_pixels){
+          pixel_valid[i] = true;
+          retained_cell_indexes[nPixel_retained] = indl;
+      }
+      nPixel_retained++;
+	  // DEBUGGING:
+	  //if(indl>=nCells){
+		 // continue;
+	  //}
+      // i0=nPixel_retained*OUT_PIXEL_DATA_WIDTH;    // transformed pixels;
+//#pragma omp atomic
+      pTargetImgData[indl].s   +=s;
+//#pragma omp atomic
+      pTargetImgData[indl].err +=err;
+//#pragma omp atomic
+      pTargetImgData[indl].npix++;
+//#pragma omp atomic
+      // this request substantial thinking -- will not do it this way as it is very slow
+      // this->pix_array[indl].cell_memPixels.push_back(pix);
+
+      //
+      //    actual_pix_range = [min(actual_pix_range(1,:),min(indx,[],1));max(actual_pix_range(2,:),max(indx,[],1))];  % true range of data
+      if(xt<pix_Xmin)pix_Xmin=xt;
+      if(xt>pix_Xmax)pix_Xmax=xt;
+
+      if(yt<pix_Ymin)pix_Ymin=yt;
+      if(yt>pix_Ymax)pix_Ymax=yt;
+
+      if(zt<pix_Zmin)pix_Zmin=zt;
+      if(zt>pix_Zmax)pix_Zmax=zt;
+
+
+    } // end for i -- imlicit barrier;
+#pragma omp critical
+    {
+      if(boxMin[0]>pix_Xmin*axis_step[0])boxMin[0]=pix_Xmin*axis_step[0];
+      if(boxMin[1]>pix_Ymin*axis_step[1])boxMin[1]=pix_Ymin*axis_step[1];
+      if(boxMin[2]>pix_Zmin*axis_step[2])boxMin[2]=pix_Zmin*axis_step[2];
+
+
+      if(boxMax[0]<pix_Xmax*axis_step[0])boxMax[0]=pix_Xmax*axis_step[0];
+      if(boxMax[1]<pix_Ymax*axis_step[1])boxMax[1]=pix_Ymax*axis_step[1];
+      if(boxMax[2]<pix_Zmax*axis_step[2])boxMax[2]=pix_Zmax*axis_step[2];
+
+      for(size_t j=nRecDims;j<nDimensions;j++)
+      {
+        if(boxMin[j]>rN[j]*axis_step_inv[j])boxMin[j]=rN[j]*axis_step_inv[j];
+        if(boxMax[j]<rN[j]*axis_step_inv[j])boxMax[j]=rN[j]*axis_step_inv[j];
+      }
+    }
+  } // end parallel region
+ 
+  for(unsigned int ii=0;ii<nDimensions;ii++){
+    pTargetDataPoints->rPixMin(ii) = (pTargetDataPoints->rPixMin(ii)<boxMin[ii])?pTargetDataPoints->rPixMin(ii):boxMin[ii];
+    pTargetDataPoints->rPixMax(ii) = (pTargetDataPoints->rPixMax(ii)>boxMax[ii])?pTargetDataPoints->rPixMax(ii):boxMax[ii];
+  }
+  // keep image array properly defined 
+  this->pTargetWS->get_spMDImage()->get_pMDImgData()->npixSum+=nPixel_retained;
+  //
+  return nPixel_retained;
+}
+
+
+} // end namespaces
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/DepthParameter.cpp b/Code/Mantid/Framework/MDAlgorithms/src/DepthParameter.cpp
index 69c9dd7c8c66300cd3dc721e343ae293da691865..1f4b156d566c4a147b2ece50fde5c271a6151673 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/DepthParameter.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/DepthParameter.cpp
@@ -1,87 +1,87 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/DepthParameter.h"
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-
-    DepthParameter::DepthParameter(double depth) : m_depth(depth)
-    {
-      if(depth >= 0)
-      {
-        m_isValid = true;
-      }
-      else
-      {
-       m_isValid = false;
-      }
-    }
-
-    DepthParameter::DepthParameter()
-    { 
-      m_isValid = false;
-    }
-
-    DepthParameter::DepthParameter(const DepthParameter& other)
-    {
-      this->m_isValid = other.m_isValid;
-      this->m_depth = other.m_depth;
-    }
-
-    DepthParameter& DepthParameter::operator=(const DepthParameter& other)
-    {
-      if (&other != this)
-      {
-        this->m_isValid = other.m_isValid;
-        this->m_depth = other.m_depth;
-      }
-      return *this;
-    }
-
-    std::string DepthParameter::getName() const
-    {
-      return parameterName();
-    }
-
-    bool DepthParameter::isValid() const
-    {
-      return this->m_isValid;
-    }
-
-    DepthParameter* DepthParameter::clone() const
-    {
-      return new DepthParameter(m_depth);
-    }
-
-    DepthParameter::~DepthParameter()
-    {
-    }
-
-    double DepthParameter::getValue() const
-    {
-      return m_depth;
-    }
-
-
-    bool DepthParameter::operator==(const DepthParameter &other) const
-    {
-      return this->m_depth == other.m_depth;
-    }
-
-    bool DepthParameter::operator!=(const DepthParameter &other) const
-    {
-      return !(*this == other);
-    }
-
-    std::string DepthParameter::toXMLString() const
-    {
-      std::string valueXMLtext = boost::str(boost::format("%.4f") % m_depth);
-
-      return this->parameterXMLTemplate(valueXMLtext);
-    }
-
-  }
-
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/DepthParameter.h"
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+
+    DepthParameter::DepthParameter(double depth) : m_depth(depth)
+    {
+      if(depth >= 0)
+      {
+        m_isValid = true;
+      }
+      else
+      {
+       m_isValid = false;
+      }
+    }
+
+    DepthParameter::DepthParameter()
+    { 
+      m_isValid = false;
+    }
+
+    DepthParameter::DepthParameter(const DepthParameter& other)
+    {
+      this->m_isValid = other.m_isValid;
+      this->m_depth = other.m_depth;
+    }
+
+    DepthParameter& DepthParameter::operator=(const DepthParameter& other)
+    {
+      if (&other != this)
+      {
+        this->m_isValid = other.m_isValid;
+        this->m_depth = other.m_depth;
+      }
+      return *this;
+    }
+
+    std::string DepthParameter::getName() const
+    {
+      return parameterName();
+    }
+
+    bool DepthParameter::isValid() const
+    {
+      return this->m_isValid;
+    }
+
+    DepthParameter* DepthParameter::clone() const
+    {
+      return new DepthParameter(m_depth);
+    }
+
+    DepthParameter::~DepthParameter()
+    {
+    }
+
+    double DepthParameter::getValue() const
+    {
+      return m_depth;
+    }
+
+
+    bool DepthParameter::operator==(const DepthParameter &other) const
+    {
+      return this->m_depth == other.m_depth;
+    }
+
+    bool DepthParameter::operator!=(const DepthParameter &other) const
+    {
+      return !(*this == other);
+    }
+
+    std::string DepthParameter::toXMLString() const
+    {
+      std::string valueXMLtext = boost::str(boost::format("%.4f") % m_depth);
+
+      return this->parameterXMLTemplate(valueXMLtext);
+    }
+
+  }
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/DynamicCPRRebinning.cpp b/Code/Mantid/Framework/MDAlgorithms/src/DynamicCPRRebinning.cpp
index dd175dfb394a199e58e506a31998fcc0c3ff8b4d..994e4c64b293c33d5f4286bd74187bd143ef3c68 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/DynamicCPRRebinning.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/DynamicCPRRebinning.cpp
@@ -1,325 +1,325 @@
-#include "MantidMDAlgorithms/DynamicCPRRebinning.h"
-#include <algorithm>
-
-namespace Mantid{
-namespace MDAlgorithms{
-
-       using namespace Mantid::MDDataObjects;
+#include "MantidMDAlgorithms/DynamicCPRRebinning.h"
+#include <algorithm>
+
+namespace Mantid{
+namespace MDAlgorithms{
+
+       using namespace Mantid::MDDataObjects;
        using namespace Mantid::Kernel;
        using namespace Mantid::API;
-       using namespace Mantid::Geometry;
-
-/// helper class to identify the indexes on an auxilary 3D lattice; Needed for Preselect_Cells
-class nCell3D
-{
-size_t NX,NY;
-public:
-    nCell3D(size_t nx,size_t ny):NX(nx),NY(ny){};
-    size_t nCell(long i,long j, long k)const{return i+NX*(j+k*NY);}  
-};
-
-//
-/** function calculates min and max values of the array of nPoints points (vertices of hypercube)
- *
- */
-void minmax(double &rMin,double &rMax,const std::vector<double> &box)
-{
-  rMin=box[0];
-  rMax=box[0];
-  size_t nPoints = box.size();
-  for(size_t i=1;i<nPoints ;i++){
-    if(box[i]<rMin)rMin=box[i];
-    if(box[i]>rMax)rMax=box[i];
-  }
-}
-//
-DynamicCPRRebinning::DynamicCPRRebinning(const MDWorkspace_const_sptr &sourceWS, MDGeometryDescription const *const pTargetDescr,
-                                         const MDWorkspace_sptr  & TargetWS ):
-pSourceWS(sourceWS),
-pTargetWS(TargetWS),
-// get pointer to the source image data --> provides number of pixels contributing ;
-pSourceImg(&(sourceWS->get_const_MDImage())),
-pSourceGeom(&(sourceWS->get_const_MDGeometry())),  
-pSourceImgData(pSourceImg->get_const_pData()),
-pSourceDataPoints(&(sourceWS->get_const_MDDPoints())),
-pTargetDescr(pTargetDescr),
-n_preselected_pix(0)
-{
-    // initialisze the target workspace to have proper size and shape
-    pTargetWS->init(pSourceWS,pTargetDescr);
-
-	spTargetImage  = pTargetWS->get_spMDImage();
-    pTargetGeom    = pTargetWS->get_spMDImage()->getGeometry();
-    //
-    n_target_cells = pTargetWS->get_spMDImage()->getDataSize();
-    pTargetImgData = pTargetWS->get_spMDImage()->get_pData();
-}
-//*********************************************************************
-size_t 
-DynamicCPRRebinning::preselect_cells()
-{
-  // this algoithm can be substantially enhanced
-  // a) by implementing fast search within the limits;
-  // b) by identifying the sells which lie entirely within the cut and the sells which can be cut through;
-  // c) should we try to use deque to avoid multiple insertions for the same indexes? (correct equalities will eliminate them anyway)
-  unsigned int i;
-  this->n_preselected_pix=0;
-  this->preselected_cells.clear();
-
-  // transform the grid into new system of coordinate and calculate cell indexes, which contribute into the
-  // dataset;
-  unsigned int j,k,l,mp,mm,sizem;
-  double       xt1,yt1,zt1,Etm,Etp;
-
-  //TODO: this will be obtained from the taget and source?
-  double rotations[9];
-  rotations[0]=rotations[1]=rotations[2]=rotations[3]=rotations[4]=rotations[5]=rotations[6]=rotations[7]=rotations[8]=0;
-  rotations[0]=rotations[4]=rotations[8]=1;
-
- 
-  // evaluate the capacity of the orthogonal dimensions;
-  unsigned int  nReciprocal    = pSourceGeom->getNumReciprocalDims();
-  unsigned int  nOrthogonal    = pSourceGeom->getNumDims() - nReciprocal;
-
-  IMDDimension *pDim;
- 
-  std::vector<boost::shared_ptr<IMDDimension> > pAllDim  = pSourceGeom->getDimensions();
-  std::vector<boost::shared_ptr<IMDDimension> > pOrthogonal(nOrthogonal);
-  std::vector<boost::shared_ptr<IMDDimension> > pReciprocal(nReciprocal);
-  unsigned int nr(0),no(0);
-
-  // get the orthogonal and reciprocal dimensions separately
-  size_t grid_capacity(1);
-  for(i=0;i<pSourceGeom->getNumDims();i++){
-    if(pAllDim[i]->isReciprocal()){
-      pReciprocal[nr]=pAllDim[i];
-      nr++;
-    }else{
-      pOrthogonal[no]=pAllDim[i];
-      no++;
-    }
-    grid_capacity*= pAllDim[i]->getNBins();
-  }
-
-  size_t ind,orthoSize=1;
-
-  size_t stride;
-  int  nContributed(0);
-  // this is the array of vectors to keep orthogonal indexes;
-  std::vector< std::vector<size_t> > enInd(nOrthogonal,std::vector<size_t>(0,0));
-
-  // estimate cut limits in the orthogonal dimensions
-  std::vector<double> ort_cut_min(nOrthogonal,0),ort_cut_max(nOrthogonal,0);
-
-  DimensionDescription *pDimDescr;
-
-  for(i=0;i<nOrthogonal;i++){
-
-    pDimDescr = pTargetDescr->pDimDescription(pOrthogonal[i]->getDimensionId());
-	ort_cut_min[i]=pDimDescr->cut_min;
-    ort_cut_max[i]=pDimDescr->cut_max;
-  }
-
-  for(i=0;i<nOrthogonal;i++){
-    nContributed=0;
-    pDim   = pOrthogonal[i].get();
-    sizem  = pDim->getNBins();
-    stride = pDim->getStride();
-    for(mm=0;mm<sizem;mm++){
-      // is rightmpst for min or leftmost for max in range?
-      mp=mm+1;
-      // check if it can be in ranges
-      Etp=pDim->getX(mp);
-      Etm=pDim->getX(mm);
-	  // beware of ranges where >, >= or <= are applied
-      if(Etp<ort_cut_min[i]||Etm>=ort_cut_max[i]) continue;
-      // remember the index of THIS axis
-      enInd[i].push_back(mm*stride);
-      // increase the counter of the cells, contributed into cut
-      nContributed++;
-    }
-    orthoSize*=nContributed;
-    if(nContributed==0){  // no cells contribute into the cut; Return
-      return 0;
-    }
-
-  }
-
-  // multiply all orthogonal vectors providing linear but size(en)*size(ga1)*size(ga2)*size(ga3)*... matrix of indexes;
-  std::vector<size_t> orthoInd(orthoSize,0);
-  size_t ic(0);
-  for(i=0;i<enInd[0].size();i++){
-    orthoInd[ic]=enInd[0].at(i);
-    ic++;
-  }
-  for(l=1;l<nOrthogonal;l++){
-    size_t orthSize=orthoInd.size();
-    for(j=0;j<orthSize;j++){
-      size_t indDim0=orthoInd.at(j);
-      for(i=0;enInd[l].size();i++){
-        orthoInd[ic]=indDim0+enInd[l].at(i);
-        ic++;
-      }
-    }
-  }
-  enInd.clear();
-  std::vector<boost::shared_ptr<IMDDimension> > rec_dim;
-  rec_dim.resize(3);
-  // evaluate the capacity of the real space (3D or less);
-  // Define (1<=N<=3)D subspace and transform it into the coordinate system of the new cut;
-  size_t size3D(1);
-  std::vector<double> cut_min(3,0);
-  std::vector<double> cut_max(3,0);
-  for(i=0;i<nReciprocal;i++){
-    size3D    *= (pReciprocal[i]->getNBins()+1);
-    rec_dim[i] = pReciprocal[i];
-
-    // new reciprocal dimensions are placed to absolutely different positions wrt the source reciprocal dimensions
-    pDimDescr  = pTargetDescr->pDimDescription(rec_dim[i]->getDimensionId());
-	cut_min[i]=pDimDescr->cut_min;
-    cut_max[i]=pDimDescr->cut_max;
-  }
-  // if there are less then 3 reciprocal dimensions, lets make 3 now to make the algorithm generic
-  for(i=nReciprocal;i<3;i++){
-    rec_dim[i] =  boost::shared_ptr<MDDimension>(new MDDimDummy(i));
-    // we should know the limits the dummy dimensions have
-    cut_min[i] = rec_dim[i]->getMinimum();
-    cut_max[i] = rec_dim[i]->getMaximum()*(1+FLT_EPSILON);
-
-    //TODO: deal with rotations in case they have not been dealt with before;
-    //  for(j=nReciprocal;j<3;j++){
-    //    rotations[3*i+j]=0;
-    //    rotations[3*j+i]=0;
-    // }
-    // rotations[3*i+i] = 1;
-  }
-
-  std::vector<double> rx,ry,rz,xx,yy,zz;
-  rx.assign(size3D,0); xx.assign(size3D,0);
-  ry.assign(size3D,0); yy.assign(size3D,0);
-  rz.assign(size3D,0); zz.assign(size3D,0);
-  // nAxis points equal nBins+1;
-  // lattice points transformed into new coordinate system.
-  // needed modifications for nRecDim<3
-  ic = 0;
-  for(k=0;k<=rec_dim[2]->getNBins();k++){
-    for(j=0;j<=rec_dim[1]->getNBins();j++){
-      for(i=0;i<=rec_dim[0]->getNBins();i++){
-        rx[ic]=rec_dim[0]->getX(i);
-        ry[ic]=rec_dim[1]->getX(j);
-        rz[ic]=rec_dim[2]->getX(k);
-        ic++;
-      }
-    }
-  }
-  for(i=0;i<size3D;i++){
-    xt1=rx[i];yt1=ry[i];zt1=rz[i];
-
-    xx[i]=xt1*rotations[0]+yt1*rotations[3]+zt1*rotations[6];
-    yy[i]=xt1*rotations[1]+yt1*rotations[4]+zt1*rotations[7];
-    zz[i]=xt1*rotations[2]+yt1*rotations[5]+zt1*rotations[8];
-  }
-  rx.clear();   ry.clear();   rz.clear();
-  unsigned int ip,jp,kp;
-  nCell3D sh(rec_dim[0]->getNBins()+1,rec_dim[1]->getNBins()+1);
-  //           ind3D(this->dim_sizes[u1],this->dim_sizes[u2]);
-  double rMin,rMax;
-  std::vector<double> r(8,0);
-  size_t ind3;
-
-  for(k=0;k <rec_dim[2]->getNBins();k++){
-    kp=k+1;
-    for(j=0;j<rec_dim[1]->getNBins();j++){
-      jp=j+1;
-
-      for(i=0;i<rec_dim[0]->getNBins();i++){
-        ip=i+1;
-
-        r[0]=xx[sh.nCell(i,j,k )]; r[1]=xx[sh.nCell(ip,j ,k )]; r[2]=xx[sh.nCell(i ,jp,k )]; r[3]=xx[sh.nCell(ip,jp,k )];
-        r[4]=xx[sh.nCell(i,j,kp)]; r[5]=xx[sh.nCell(ip,j ,kp)]; r[6]=xx[sh.nCell(i ,jp,kp)]; r[7]=xx[sh.nCell(ip,jp,kp)];
-
-        minmax(rMin,rMax,r);
-        // like the cut over point, we select cells with points on the upper boundary; should we? 
-        if(rMax<cut_min[0]||rMin>=cut_max[0])continue;
-
-        r[0]=yy[sh.nCell(i ,j ,k )];  r[1]=yy[sh.nCell(ip,j ,k )];r[2]=yy[sh.nCell(i ,jp,k )];  r[3]=yy[sh.nCell(ip,jp,k )];
-        r[4]=yy[sh.nCell(i ,j ,kp)];  r[5]=yy[sh.nCell(ip,j ,kp)];r[6]=yy[sh.nCell(i ,jp,kp)];  r[7]=yy[sh.nCell(ip,jp,kp)];
-
-        minmax(rMin,rMax,r);
-        if(rMax<cut_min[1]||rMin>=cut_max[1])continue;
-
-        r[0]=zz[sh.nCell(i,j,k )];  r[1]=zz[sh.nCell(ip,j,k )];r[2]=zz[sh.nCell(i ,jp,k )];  r[3]=zz[sh.nCell(ip,jp,k )];
-        r[4]=zz[sh.nCell(i,j,kp)];  r[5]=zz[sh.nCell(ip,j,kp)];r[6]=zz[sh.nCell(i ,jp,kp)];  r[7]=zz[sh.nCell(ip,jp,kp)];
-
-        minmax(rMin,rMax,r);
-        if(rMax<cut_min[2]||rMin>=cut_max[2])continue;
-
-        ind3=i*rec_dim[0]->getStride()+j*rec_dim[1]->getStride()+k*rec_dim[2]->getStride();
-        // multiply reciprocal indexes by orthogonal indexes and srore all indexes for selection
-        for(l=0;l<orthoInd.size();l++){
-          ind = ind3+orthoInd.at(l);
-          if(pSourceImgData[ind].npix>0){
-            preselected_cells.push_back(ind);
-            n_preselected_pix+=pSourceImgData[ind].npix;
-          }
-        }
-
-
-      }
-    }
-  }
-  orthoInd.clear();
-  // this piece of code can be absent in some algorithms when preselection does not select the same cells twice and
-  // selecting adjasten cells is not important;
-  size_t n_preselected_cells = preselected_cells.size();
-  if(n_preselected_cells>1){
-      // sort in increasing order (should be N*ln(N))
-        std::sort(preselected_cells.begin(),preselected_cells.end());
-       // remove dublicated values -> they should not exist if selection made properly
-        //    //HACK! TODO: fix this! -- it seems has been done;
-        // size_t ic(1);
-         //size_t prev_value=preselected_cells[0];
-        //for(size_t i=1;i<n_preselected_cells;i++){
-
-        //    if(preselected_cells[i]!=prev_value&&preselected_cells[i]<grid_capacity){
-        //        prev_value           =preselected_cells[i];
-        //        preselected_cells[ic]=prev_value;
-        //        ic++;
-        //    }
-        //}
-        // if(ic!=n_preselected_cells)preselected_cells.resize(ic);
-        // n_preselected_cells = ic;
-  }
-  return n_preselected_cells;
-}
-
-//
-uint64_t 
-DynamicCPRRebinning::finalize_rebinning()
-{
-  size_t i;
-  // normalize signal and error of the dnd object;
-  if(pTargetImgData[0].npix>0){
-    pTargetImgData[0].s   /= pTargetImgData[0].npix;
-    pTargetImgData[0].err /=(pTargetImgData[0].npix*pTargetImgData[0].npix);
-  }
-
-
-  // counter for the number of retatined pixels;
-  uint64_t nPix = pTargetImgData[0].npix;
-  for(i=1;i<n_target_cells;i++){
-    if(pTargetImgData[i].npix>0){
-      nPix        +=pTargetImgData[i].npix;
-      pTargetImgData[i].s   /=pTargetImgData[i].npix;
-      pTargetImgData[i].err /=(pTargetImgData[i].npix*pTargetImgData[i].npix);
-    }else{
-        pTargetImgData[i].s=0;
-    }
-  };
-  return nPix;
-}//***************************************************************************************
-
-
-
-} // end namespaces
-}
+       using namespace Mantid::Geometry;
+
+/// helper class to identify the indexes on an auxilary 3D lattice; Needed for Preselect_Cells
+class nCell3D
+{
+size_t NX,NY;
+public:
+    nCell3D(size_t nx,size_t ny):NX(nx),NY(ny){};
+    size_t nCell(long i,long j, long k)const{return i+NX*(j+k*NY);}  
+};
+
+//
+/** function calculates min and max values of the array of nPoints points (vertices of hypercube)
+ *
+ */
+void minmax(double &rMin,double &rMax,const std::vector<double> &box)
+{
+  rMin=box[0];
+  rMax=box[0];
+  size_t nPoints = box.size();
+  for(size_t i=1;i<nPoints ;i++){
+    if(box[i]<rMin)rMin=box[i];
+    if(box[i]>rMax)rMax=box[i];
+  }
+}
+//
+DynamicCPRRebinning::DynamicCPRRebinning(const MDWorkspace_const_sptr &sourceWS, MDGeometryDescription const *const pTargetDescr,
+                                         const MDWorkspace_sptr  & TargetWS ):
+pSourceWS(sourceWS),
+pTargetWS(TargetWS),
+// get pointer to the source image data --> provides number of pixels contributing ;
+pSourceImg(&(sourceWS->get_const_MDImage())),
+pSourceGeom(&(sourceWS->get_const_MDGeometry())),  
+pSourceImgData(pSourceImg->get_const_pData()),
+pSourceDataPoints(&(sourceWS->get_const_MDDPoints())),
+pTargetDescr(pTargetDescr),
+n_preselected_pix(0)
+{
+    // initialisze the target workspace to have proper size and shape
+    pTargetWS->init(pSourceWS,pTargetDescr);
+
+	spTargetImage  = pTargetWS->get_spMDImage();
+    pTargetGeom    = pTargetWS->get_spMDImage()->getGeometry();
+    //
+    n_target_cells = pTargetWS->get_spMDImage()->getDataSize();
+    pTargetImgData = pTargetWS->get_spMDImage()->get_pData();
+}
+//*********************************************************************
+size_t 
+DynamicCPRRebinning::preselect_cells()
+{
+  // this algoithm can be substantially enhanced
+  // a) by implementing fast search within the limits;
+  // b) by identifying the sells which lie entirely within the cut and the sells which can be cut through;
+  // c) should we try to use deque to avoid multiple insertions for the same indexes? (correct equalities will eliminate them anyway)
+  unsigned int i;
+  this->n_preselected_pix=0;
+  this->preselected_cells.clear();
+
+  // transform the grid into new system of coordinate and calculate cell indexes, which contribute into the
+  // dataset;
+  unsigned int j,k,l,mp,mm,sizem;
+  double       xt1,yt1,zt1,Etm,Etp;
+
+  //TODO: this will be obtained from the taget and source?
+  double rotations[9];
+  rotations[0]=rotations[1]=rotations[2]=rotations[3]=rotations[4]=rotations[5]=rotations[6]=rotations[7]=rotations[8]=0;
+  rotations[0]=rotations[4]=rotations[8]=1;
+
+ 
+  // evaluate the capacity of the orthogonal dimensions;
+  unsigned int  nReciprocal    = pSourceGeom->getNumReciprocalDims();
+  unsigned int  nOrthogonal    = pSourceGeom->getNumDims() - nReciprocal;
+
+  IMDDimension *pDim;
+ 
+  std::vector<boost::shared_ptr<IMDDimension> > pAllDim  = pSourceGeom->getDimensions();
+  std::vector<boost::shared_ptr<IMDDimension> > pOrthogonal(nOrthogonal);
+  std::vector<boost::shared_ptr<IMDDimension> > pReciprocal(nReciprocal);
+  unsigned int nr(0),no(0);
+
+  // get the orthogonal and reciprocal dimensions separately
+  size_t grid_capacity(1);
+  for(i=0;i<pSourceGeom->getNumDims();i++){
+    if(pAllDim[i]->isReciprocal()){
+      pReciprocal[nr]=pAllDim[i];
+      nr++;
+    }else{
+      pOrthogonal[no]=pAllDim[i];
+      no++;
+    }
+    grid_capacity*= pAllDim[i]->getNBins();
+  }
+
+  size_t ind,orthoSize=1;
+
+  size_t stride;
+  int  nContributed(0);
+  // this is the array of vectors to keep orthogonal indexes;
+  std::vector< std::vector<size_t> > enInd(nOrthogonal,std::vector<size_t>(0,0));
+
+  // estimate cut limits in the orthogonal dimensions
+  std::vector<double> ort_cut_min(nOrthogonal,0),ort_cut_max(nOrthogonal,0);
+
+  DimensionDescription *pDimDescr;
+
+  for(i=0;i<nOrthogonal;i++){
+
+    pDimDescr = pTargetDescr->pDimDescription(pOrthogonal[i]->getDimensionId());
+	ort_cut_min[i]=pDimDescr->cut_min;
+    ort_cut_max[i]=pDimDescr->cut_max;
+  }
+
+  for(i=0;i<nOrthogonal;i++){
+    nContributed=0;
+    pDim   = pOrthogonal[i].get();
+    sizem  = pDim->getNBins();
+    stride = pDim->getStride();
+    for(mm=0;mm<sizem;mm++){
+      // is rightmpst for min or leftmost for max in range?
+      mp=mm+1;
+      // check if it can be in ranges
+      Etp=pDim->getX(mp);
+      Etm=pDim->getX(mm);
+	  // beware of ranges where >, >= or <= are applied
+      if(Etp<ort_cut_min[i]||Etm>=ort_cut_max[i]) continue;
+      // remember the index of THIS axis
+      enInd[i].push_back(mm*stride);
+      // increase the counter of the cells, contributed into cut
+      nContributed++;
+    }
+    orthoSize*=nContributed;
+    if(nContributed==0){  // no cells contribute into the cut; Return
+      return 0;
+    }
+
+  }
+
+  // multiply all orthogonal vectors providing linear but size(en)*size(ga1)*size(ga2)*size(ga3)*... matrix of indexes;
+  std::vector<size_t> orthoInd(orthoSize,0);
+  size_t ic(0);
+  for(i=0;i<enInd[0].size();i++){
+    orthoInd[ic]=enInd[0].at(i);
+    ic++;
+  }
+  for(l=1;l<nOrthogonal;l++){
+    size_t orthSize=orthoInd.size();
+    for(j=0;j<orthSize;j++){
+      size_t indDim0=orthoInd.at(j);
+      for(i=0;enInd[l].size();i++){
+        orthoInd[ic]=indDim0+enInd[l].at(i);
+        ic++;
+      }
+    }
+  }
+  enInd.clear();
+  std::vector<boost::shared_ptr<IMDDimension> > rec_dim;
+  rec_dim.resize(3);
+  // evaluate the capacity of the real space (3D or less);
+  // Define (1<=N<=3)D subspace and transform it into the coordinate system of the new cut;
+  size_t size3D(1);
+  std::vector<double> cut_min(3,0);
+  std::vector<double> cut_max(3,0);
+  for(i=0;i<nReciprocal;i++){
+    size3D    *= (pReciprocal[i]->getNBins()+1);
+    rec_dim[i] = pReciprocal[i];
+
+    // new reciprocal dimensions are placed to absolutely different positions wrt the source reciprocal dimensions
+    pDimDescr  = pTargetDescr->pDimDescription(rec_dim[i]->getDimensionId());
+	cut_min[i]=pDimDescr->cut_min;
+    cut_max[i]=pDimDescr->cut_max;
+  }
+  // if there are less then 3 reciprocal dimensions, lets make 3 now to make the algorithm generic
+  for(i=nReciprocal;i<3;i++){
+    rec_dim[i] =  boost::shared_ptr<MDDimension>(new MDDimDummy(i));
+    // we should know the limits the dummy dimensions have
+    cut_min[i] = rec_dim[i]->getMinimum();
+    cut_max[i] = rec_dim[i]->getMaximum()*(1+FLT_EPSILON);
+
+    //TODO: deal with rotations in case they have not been dealt with before;
+    //  for(j=nReciprocal;j<3;j++){
+    //    rotations[3*i+j]=0;
+    //    rotations[3*j+i]=0;
+    // }
+    // rotations[3*i+i] = 1;
+  }
+
+  std::vector<double> rx,ry,rz,xx,yy,zz;
+  rx.assign(size3D,0); xx.assign(size3D,0);
+  ry.assign(size3D,0); yy.assign(size3D,0);
+  rz.assign(size3D,0); zz.assign(size3D,0);
+  // nAxis points equal nBins+1;
+  // lattice points transformed into new coordinate system.
+  // needed modifications for nRecDim<3
+  ic = 0;
+  for(k=0;k<=rec_dim[2]->getNBins();k++){
+    for(j=0;j<=rec_dim[1]->getNBins();j++){
+      for(i=0;i<=rec_dim[0]->getNBins();i++){
+        rx[ic]=rec_dim[0]->getX(i);
+        ry[ic]=rec_dim[1]->getX(j);
+        rz[ic]=rec_dim[2]->getX(k);
+        ic++;
+      }
+    }
+  }
+  for(i=0;i<size3D;i++){
+    xt1=rx[i];yt1=ry[i];zt1=rz[i];
+
+    xx[i]=xt1*rotations[0]+yt1*rotations[3]+zt1*rotations[6];
+    yy[i]=xt1*rotations[1]+yt1*rotations[4]+zt1*rotations[7];
+    zz[i]=xt1*rotations[2]+yt1*rotations[5]+zt1*rotations[8];
+  }
+  rx.clear();   ry.clear();   rz.clear();
+  unsigned int ip,jp,kp;
+  nCell3D sh(rec_dim[0]->getNBins()+1,rec_dim[1]->getNBins()+1);
+  //           ind3D(this->dim_sizes[u1],this->dim_sizes[u2]);
+  double rMin,rMax;
+  std::vector<double> r(8,0);
+  size_t ind3;
+
+  for(k=0;k <rec_dim[2]->getNBins();k++){
+    kp=k+1;
+    for(j=0;j<rec_dim[1]->getNBins();j++){
+      jp=j+1;
+
+      for(i=0;i<rec_dim[0]->getNBins();i++){
+        ip=i+1;
+
+        r[0]=xx[sh.nCell(i,j,k )]; r[1]=xx[sh.nCell(ip,j ,k )]; r[2]=xx[sh.nCell(i ,jp,k )]; r[3]=xx[sh.nCell(ip,jp,k )];
+        r[4]=xx[sh.nCell(i,j,kp)]; r[5]=xx[sh.nCell(ip,j ,kp)]; r[6]=xx[sh.nCell(i ,jp,kp)]; r[7]=xx[sh.nCell(ip,jp,kp)];
+
+        minmax(rMin,rMax,r);
+        // like the cut over point, we select cells with points on the upper boundary; should we? 
+        if(rMax<cut_min[0]||rMin>=cut_max[0])continue;
+
+        r[0]=yy[sh.nCell(i ,j ,k )];  r[1]=yy[sh.nCell(ip,j ,k )];r[2]=yy[sh.nCell(i ,jp,k )];  r[3]=yy[sh.nCell(ip,jp,k )];
+        r[4]=yy[sh.nCell(i ,j ,kp)];  r[5]=yy[sh.nCell(ip,j ,kp)];r[6]=yy[sh.nCell(i ,jp,kp)];  r[7]=yy[sh.nCell(ip,jp,kp)];
+
+        minmax(rMin,rMax,r);
+        if(rMax<cut_min[1]||rMin>=cut_max[1])continue;
+
+        r[0]=zz[sh.nCell(i,j,k )];  r[1]=zz[sh.nCell(ip,j,k )];r[2]=zz[sh.nCell(i ,jp,k )];  r[3]=zz[sh.nCell(ip,jp,k )];
+        r[4]=zz[sh.nCell(i,j,kp)];  r[5]=zz[sh.nCell(ip,j,kp)];r[6]=zz[sh.nCell(i ,jp,kp)];  r[7]=zz[sh.nCell(ip,jp,kp)];
+
+        minmax(rMin,rMax,r);
+        if(rMax<cut_min[2]||rMin>=cut_max[2])continue;
+
+        ind3=i*rec_dim[0]->getStride()+j*rec_dim[1]->getStride()+k*rec_dim[2]->getStride();
+        // multiply reciprocal indexes by orthogonal indexes and srore all indexes for selection
+        for(l=0;l<orthoInd.size();l++){
+          ind = ind3+orthoInd.at(l);
+          if(pSourceImgData[ind].npix>0){
+            preselected_cells.push_back(ind);
+            n_preselected_pix+=pSourceImgData[ind].npix;
+          }
+        }
+
+
+      }
+    }
+  }
+  orthoInd.clear();
+  // this piece of code can be absent in some algorithms when preselection does not select the same cells twice and
+  // selecting adjasten cells is not important;
+  size_t n_preselected_cells = preselected_cells.size();
+  if(n_preselected_cells>1){
+      // sort in increasing order (should be N*ln(N))
+        std::sort(preselected_cells.begin(),preselected_cells.end());
+       // remove dublicated values -> they should not exist if selection made properly
+        //    //HACK! TODO: fix this! -- it seems has been done;
+        // size_t ic(1);
+         //size_t prev_value=preselected_cells[0];
+        //for(size_t i=1;i<n_preselected_cells;i++){
+
+        //    if(preselected_cells[i]!=prev_value&&preselected_cells[i]<grid_capacity){
+        //        prev_value           =preselected_cells[i];
+        //        preselected_cells[ic]=prev_value;
+        //        ic++;
+        //    }
+        //}
+        // if(ic!=n_preselected_cells)preselected_cells.resize(ic);
+        // n_preselected_cells = ic;
+  }
+  return n_preselected_cells;
+}
+
+//
+uint64_t 
+DynamicCPRRebinning::finalize_rebinning()
+{
+  size_t i;
+  // normalize signal and error of the dnd object;
+  if(pTargetImgData[0].npix>0){
+    pTargetImgData[0].s   /= pTargetImgData[0].npix;
+    pTargetImgData[0].err /=(pTargetImgData[0].npix*pTargetImgData[0].npix);
+  }
+
+
+  // counter for the number of retatined pixels;
+  uint64_t nPix = pTargetImgData[0].npix;
+  for(i=1;i<n_target_cells;i++){
+    if(pTargetImgData[i].npix>0){
+      nPix        +=pTargetImgData[i].npix;
+      pTargetImgData[i].s   /=pTargetImgData[i].npix;
+      pTargetImgData[i].err /=(pTargetImgData[i].npix*pTargetImgData[i].npix);
+    }else{
+        pTargetImgData[i].s=0;
+    }
+  };
+  return nPix;
+}//***************************************************************************************
+
+
+
+} // end namespaces
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/DynamicRebinFromXML.cpp b/Code/Mantid/Framework/MDAlgorithms/src/DynamicRebinFromXML.cpp
index 0181341504500b95d2c9f2ff3ea10e44d330fa5a..126ed74c750d9bb6cfac516d8c2ec7ae5e78ce1b 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/DynamicRebinFromXML.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/DynamicRebinFromXML.cpp
@@ -1,257 +1,257 @@
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NamedNodeMap.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-#include "MantidMDAlgorithms/DynamicRebinFromXML.h"
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-#include "MantidMDAlgorithms/BoxImplicitFunction.h"
-#include "MantidMDAlgorithms/CenterpieceRebinning.h"
-#include "MantidMDAlgorithms/BoxInterpreter.h"
-#include "MantidMDAlgorithms/PlaneInterpreter.h"
-#include "MantidMDAlgorithms/DimensionFactory.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MantidGeometry/MDGeometry/MDDimension.h"
-#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
-#include "MantidKernel/PropertyWithValue.h"
-#include "MantidKernel/MandatoryValidator.h"
-#include "MantidAPI/ImplicitFunctionFactory.h"
-
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NamedNodeMap.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+#include "MantidMDAlgorithms/DynamicRebinFromXML.h"
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+#include "MantidMDAlgorithms/BoxImplicitFunction.h"
+#include "MantidMDAlgorithms/CenterpieceRebinning.h"
+#include "MantidMDAlgorithms/BoxInterpreter.h"
+#include "MantidMDAlgorithms/PlaneInterpreter.h"
+#include "MantidMDAlgorithms/DimensionFactory.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MantidGeometry/MDGeometry/MDDimension.h"
+#include "MantidGeometry/MDGeometry/MDDimensionRes.h"
+#include "MantidKernel/PropertyWithValue.h"
+#include "MantidKernel/MandatoryValidator.h"
+#include "MantidAPI/ImplicitFunctionFactory.h"
+
 #include "MantidAPI/AnalysisDataService.h"
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidAPI/MDPropertyGeometry.h"
-
-#include <boost/scoped_ptr.hpp>
-#include <boost/regex.hpp>
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-        DECLARE_ALGORITHM(DynamicRebinFromXML)
-
-    /// Default (empty) constructor
-    DynamicRebinFromXML::DynamicRebinFromXML() : API::Algorithm()
-    {
-    }
-
-    /// Default (empty) destructor
-    DynamicRebinFromXML::~DynamicRebinFromXML()
-    {}
-
-    struct findID//: public std::unary_function <MDDimension, bool>
-    {
-      const std::string m_id;
-      findID( const std:: string id ): m_id( id ) 
-      { 
-      }
-      bool operator () ( const boost::shared_ptr<Mantid::Geometry::IMDDimension> obj ) const
-      { 
-        return m_id == obj->getDimensionId();
-      }
-    };
-
-    std::string DynamicRebinFromXML::getWorkspaceName(Poco::XML::Element* pRootElem) const 
-    {
-      //Extract and return workspace name.
-      Poco::XML::Element* workspaceNameXML = pRootElem->getChildElement("MDWorkspaceName");
-      return workspaceNameXML->innerText();
-    }
-
-    std::string DynamicRebinFromXML::getWorkspaceLocation(Poco::XML::Element* pRootElem) const
-    {
-      //Extract and return workspace location.
-      Poco::XML::Element* workspaceLocationXML = pRootElem->getChildElement("MDWorkspaceLocation");
-      return workspaceLocationXML->innerText();
-    }
-
-    Mantid::API::ImplicitFunction* DynamicRebinFromXML::getImplicitFunction(Poco::XML::Element* pRootElem) const
-    {
-      Poco::XML::Element* functionXML = pRootElem->getChildElement("Function");
-
-      //de-serialise the function component.
-      return Mantid::API::ImplicitFunctionFactory::Instance().createUnwrapped(functionXML);
-    }
-
-
-    Mantid::Geometry::IMDDimension* DynamicRebinFromXML::createDimension(Poco::XML::Element* dimensionXML) const
-    {
-      DimensionFactory dimensionFactory(dimensionXML);
-      return dimensionFactory.create();
-    }
-
-    Mantid::Geometry::MDGeometryDescription* DynamicRebinFromXML::getMDGeometryDescriptionWithoutCuts(Poco::XML::Element* pRootElem, Mantid::API::ImplicitFunction* impFunction) const
-    {
-      using namespace Mantid::Geometry;
-      Poco::XML::Element* geometryXML = pRootElem->getChildElement("DimensionSet");
-
-      Poco::XML::NodeList* dimensionsXML = geometryXML->getElementsByTagName("Dimension");
-      std::vector<boost::shared_ptr<IMDDimension> > dimensionVec;
-
-      //Extract dimensions
-      int nDimensions = dimensionsXML->length();
-      for(int i = 0; i < nDimensions; i++)
-      {
-        Poco::XML::Element* dimensionXML = static_cast<Poco::XML::Element*>(dimensionsXML->item(i));
-        IMDDimension* dimension = createDimension(dimensionXML);
-        dimensionVec.push_back(boost::shared_ptr<IMDDimension>(dimension));
-      }
-
-      //Find the requested xDimension alignment from the dimension id provided in the xml.
-      Poco::XML::Element* xDimensionElement = geometryXML->getChildElement("XDimension");
-      std::string xDimId = xDimensionElement->getChildElement("RefDimensionId")->innerText();
-      DimensionVecIterator xDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(xDimId));
-
-      //Find the requested yDimension alignment from the dimension id provided in the xml.
-      Poco::XML::Element* yDimensionElement = geometryXML->getChildElement("YDimension");
-      std::string yDimId = yDimensionElement->getChildElement("RefDimensionId")->innerText();
-      DimensionVecIterator yDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(yDimId));
-
-      //Find the requested zDimension alignment from the dimension id provided in the xml.
-      Poco::XML::Element* zDimensionElement = geometryXML->getChildElement("ZDimension");
-      std::string zDimId = zDimensionElement->getChildElement("RefDimensionId")->innerText();
-      DimensionVecIterator zDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(zDimId));
-
-      //Find the requested tDimension alignment from the dimension id provided in the xml.
-      Poco::XML::Element* tDimensionElement = geometryXML->getChildElement("TDimension");
-      std::string tDimId = tDimensionElement->getChildElement("RefDimensionId")->innerText();
-      DimensionVecIterator tDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(tDimId));
-
-      //Check that all mappings have actually been found.
-      if(xDimensionIt == dimensionVec.end())
-      {
-        throw std::invalid_argument("Cannot determine x-dimension mapping.");
-      }
-      if(yDimensionIt == dimensionVec.end())
-      {
-        throw std::invalid_argument("Cannot determine y-dimension mapping.");
-      }
-      if(zDimensionIt == dimensionVec.end())
-      {
-        throw std::invalid_argument("Cannot determine z-dimension mapping.");
-      }
-      if(tDimensionIt == dimensionVec.end())
-      {
-        throw std::invalid_argument("Cannot determine t-dimension mapping.");
-      }
-
-      //Interpret planes found in the implicit function.
-      PlaneInterpreter planeInterpreter;
-      std::vector<double> rotationMatrix = planeInterpreter(impFunction);
-
-      //Create A geometry Description.
-      return new MDGeometryDescription(dimensionVec, *xDimensionIt, *yDimensionIt, *zDimensionIt, *tDimensionIt, planeInterpreter(impFunction));
-    }
-
-    void DynamicRebinFromXML::ApplyImplicitFunctionToMDGeometryDescription(Mantid::Geometry::MDGeometryDescription* description, Mantid::API::ImplicitFunction* impFunction) const
-    {
-      //Attempt to intepret all applied implicit functions as a box by evaluating inner surfaces.
-      BoxInterpreter boxInterpreter;
-      std::vector<double> box = boxInterpreter(impFunction);
-      double minX = box[0];
-      double maxX = box[1];
-      double minY = box[2];
-      double maxY = box[3];
-      double minZ = box[4];
-      double maxZ = box[5];
-      
-      //Determine effective width, height, depth and origin for effective box.
-      OriginParameter origin((maxX + minX)/2, (maxY + minY)/2, (maxZ + minZ)/2);
-      WidthParameter width(maxX - minX);
-      HeightParameter height(maxY - minY);
-      DepthParameter depth(maxZ - minZ);
-      //create a new box from the intesection.
-      BoxImplicitFunction impBox(width, height, depth, origin);
-      
-      //current implmentation of geometry description uses ordering so that x, y, z, t mappings appear first in the arrangement of dimensions.
-
-	    description->pDimDescription(0)->cut_max=impBox.getUpperX();
-      description->pDimDescription(0)->cut_min=impBox.getLowerX();
-
-
-      description->pDimDescription(1)->cut_max=impBox.getUpperY();
-      description->pDimDescription(1)->cut_min=impBox.getLowerY();
-
-      description->pDimDescription(2)->cut_max=impBox.getUpperZ();
-      description->pDimDescription(2)->cut_min=impBox.getLowerZ();
-
-
-    }
-
-    /// Init function
-    void DynamicRebinFromXML::init()
-    {
-      //input xml string
-      Mantid::Kernel::MandatoryValidator<std::string> *v = new Mantid::Kernel::MandatoryValidator<std::string>;
-      declareProperty(new Kernel::PropertyWithValue<std::string>(std::string("XMLInputString"), std::string(""), v), "XML string providing dynamic rebinning instructions."); 
-      //output workspace following rebinning
-      declareProperty(new Mantid::API::WorkspaceProperty<Mantid::MDDataObjects::MDWorkspace>("OutputWorkspace", "", Kernel::Direction::Output), "Rebinned Workspace.");
-
-    }
-
-
-    /// Exec function
-    void DynamicRebinFromXML::exec()
-    {
-      using namespace Mantid::Geometry;
-      using namespace Mantid::MDDataObjects;
-      using namespace Mantid::API;
-
-      const std::string xmlString = getProperty("XMLInputString");
-
-      //Translate xml to MDDescription.
-      Poco::XML::DOMParser pParser;
-      std::string xmlToParse = xmlString;
-      Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-      Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-      //Coarse test for xml schema.
-      if(pRootElem->localName() != "MDInstruction")
-      {
-        throw std::invalid_argument("MDInstruction must be root node");
-      }
-
-      //de-serialise the function component.
-      ImplicitFunction* function = getImplicitFunction(pRootElem);
-
-      //get the input workspace.
-      const std::string name = getWorkspaceName(pRootElem);
-
-      //get the location of the workspace. this should be redundant in future versions!
-      const std::string location = getWorkspaceLocation(pRootElem);
-
-      //get the md geometry without cuts applied. Cuts are applied by the implicit functions.
-      MDGeometryDescription* geomDescription = getMDGeometryDescriptionWithoutCuts(pRootElem, function);
-
-      //apply cuts to the geometrydescription.
-      ApplyImplicitFunctionToMDGeometryDescription(geomDescription, function);
-
-      IAlgorithm_sptr loadWsAlg = this->createSubAlgorithm("LoadMDworkspace", 0, 0.01, true, 1);
-      loadWsAlg->initialize();
-      loadWsAlg->setPropertyValue("inFilename", location);
-      loadWsAlg->setPropertyValue("MDWorkspace",name);
-
-      IAlgorithm_sptr rebinningAlg = this->createSubAlgorithm("CenterpieceRebinning", 0.01, 1, true, 1);
-
-      rebinningAlg->initialize();
-      rebinningAlg->setPropertyValue("Input", name);
-      
-      //HACK: only way to apply a geometry description seems to be to grab it from the algorithm and apply it after initalize!
-      Geometry::MDGeometryDescription *pSlicing = dynamic_cast< Geometry::MDGeometryDescription *>((Mantid::Kernel::Property *)(rebinningAlg->getProperty("SlicingData")));
-      *pSlicing = *geomDescription;
-      
-      rebinningAlg->execute();
-
-      MDWorkspace_sptr output = rebinningAlg->getProperty("Result");
-      setProperty("OutputWorkspace", output);
-  
-    }
-
-  } // Algorithms
-} // Mantid
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidAPI/MDPropertyGeometry.h"
+
+#include <boost/scoped_ptr.hpp>
+#include <boost/regex.hpp>
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+        DECLARE_ALGORITHM(DynamicRebinFromXML)
+
+    /// Default (empty) constructor
+    DynamicRebinFromXML::DynamicRebinFromXML() : API::Algorithm()
+    {
+    }
+
+    /// Default (empty) destructor
+    DynamicRebinFromXML::~DynamicRebinFromXML()
+    {}
+
+    struct findID//: public std::unary_function <MDDimension, bool>
+    {
+      const std::string m_id;
+      findID( const std:: string id ): m_id( id ) 
+      { 
+      }
+      bool operator () ( const boost::shared_ptr<Mantid::Geometry::IMDDimension> obj ) const
+      { 
+        return m_id == obj->getDimensionId();
+      }
+    };
+
+    std::string DynamicRebinFromXML::getWorkspaceName(Poco::XML::Element* pRootElem) const 
+    {
+      //Extract and return workspace name.
+      Poco::XML::Element* workspaceNameXML = pRootElem->getChildElement("MDWorkspaceName");
+      return workspaceNameXML->innerText();
+    }
+
+    std::string DynamicRebinFromXML::getWorkspaceLocation(Poco::XML::Element* pRootElem) const
+    {
+      //Extract and return workspace location.
+      Poco::XML::Element* workspaceLocationXML = pRootElem->getChildElement("MDWorkspaceLocation");
+      return workspaceLocationXML->innerText();
+    }
+
+    Mantid::API::ImplicitFunction* DynamicRebinFromXML::getImplicitFunction(Poco::XML::Element* pRootElem) const
+    {
+      Poco::XML::Element* functionXML = pRootElem->getChildElement("Function");
+
+      //de-serialise the function component.
+      return Mantid::API::ImplicitFunctionFactory::Instance().createUnwrapped(functionXML);
+    }
+
+
+    Mantid::Geometry::IMDDimension* DynamicRebinFromXML::createDimension(Poco::XML::Element* dimensionXML) const
+    {
+      DimensionFactory dimensionFactory(dimensionXML);
+      return dimensionFactory.create();
+    }
+
+    Mantid::Geometry::MDGeometryDescription* DynamicRebinFromXML::getMDGeometryDescriptionWithoutCuts(Poco::XML::Element* pRootElem, Mantid::API::ImplicitFunction* impFunction) const
+    {
+      using namespace Mantid::Geometry;
+      Poco::XML::Element* geometryXML = pRootElem->getChildElement("DimensionSet");
+
+      Poco::XML::NodeList* dimensionsXML = geometryXML->getElementsByTagName("Dimension");
+      std::vector<boost::shared_ptr<IMDDimension> > dimensionVec;
+
+      //Extract dimensions
+      int nDimensions = dimensionsXML->length();
+      for(int i = 0; i < nDimensions; i++)
+      {
+        Poco::XML::Element* dimensionXML = static_cast<Poco::XML::Element*>(dimensionsXML->item(i));
+        IMDDimension* dimension = createDimension(dimensionXML);
+        dimensionVec.push_back(boost::shared_ptr<IMDDimension>(dimension));
+      }
+
+      //Find the requested xDimension alignment from the dimension id provided in the xml.
+      Poco::XML::Element* xDimensionElement = geometryXML->getChildElement("XDimension");
+      std::string xDimId = xDimensionElement->getChildElement("RefDimensionId")->innerText();
+      DimensionVecIterator xDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(xDimId));
+
+      //Find the requested yDimension alignment from the dimension id provided in the xml.
+      Poco::XML::Element* yDimensionElement = geometryXML->getChildElement("YDimension");
+      std::string yDimId = yDimensionElement->getChildElement("RefDimensionId")->innerText();
+      DimensionVecIterator yDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(yDimId));
+
+      //Find the requested zDimension alignment from the dimension id provided in the xml.
+      Poco::XML::Element* zDimensionElement = geometryXML->getChildElement("ZDimension");
+      std::string zDimId = zDimensionElement->getChildElement("RefDimensionId")->innerText();
+      DimensionVecIterator zDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(zDimId));
+
+      //Find the requested tDimension alignment from the dimension id provided in the xml.
+      Poco::XML::Element* tDimensionElement = geometryXML->getChildElement("TDimension");
+      std::string tDimId = tDimensionElement->getChildElement("RefDimensionId")->innerText();
+      DimensionVecIterator tDimensionIt = find_if(dimensionVec.begin(), dimensionVec.end(), findID(tDimId));
+
+      //Check that all mappings have actually been found.
+      if(xDimensionIt == dimensionVec.end())
+      {
+        throw std::invalid_argument("Cannot determine x-dimension mapping.");
+      }
+      if(yDimensionIt == dimensionVec.end())
+      {
+        throw std::invalid_argument("Cannot determine y-dimension mapping.");
+      }
+      if(zDimensionIt == dimensionVec.end())
+      {
+        throw std::invalid_argument("Cannot determine z-dimension mapping.");
+      }
+      if(tDimensionIt == dimensionVec.end())
+      {
+        throw std::invalid_argument("Cannot determine t-dimension mapping.");
+      }
+
+      //Interpret planes found in the implicit function.
+      PlaneInterpreter planeInterpreter;
+      std::vector<double> rotationMatrix = planeInterpreter(impFunction);
+
+      //Create A geometry Description.
+      return new MDGeometryDescription(dimensionVec, *xDimensionIt, *yDimensionIt, *zDimensionIt, *tDimensionIt, planeInterpreter(impFunction));
+    }
+
+    void DynamicRebinFromXML::ApplyImplicitFunctionToMDGeometryDescription(Mantid::Geometry::MDGeometryDescription* description, Mantid::API::ImplicitFunction* impFunction) const
+    {
+      //Attempt to intepret all applied implicit functions as a box by evaluating inner surfaces.
+      BoxInterpreter boxInterpreter;
+      std::vector<double> box = boxInterpreter(impFunction);
+      double minX = box[0];
+      double maxX = box[1];
+      double minY = box[2];
+      double maxY = box[3];
+      double minZ = box[4];
+      double maxZ = box[5];
+      
+      //Determine effective width, height, depth and origin for effective box.
+      OriginParameter origin((maxX + minX)/2, (maxY + minY)/2, (maxZ + minZ)/2);
+      WidthParameter width(maxX - minX);
+      HeightParameter height(maxY - minY);
+      DepthParameter depth(maxZ - minZ);
+      //create a new box from the intesection.
+      BoxImplicitFunction impBox(width, height, depth, origin);
+      
+      //current implmentation of geometry description uses ordering so that x, y, z, t mappings appear first in the arrangement of dimensions.
+
+	    description->pDimDescription(0)->cut_max=impBox.getUpperX();
+      description->pDimDescription(0)->cut_min=impBox.getLowerX();
+
+
+      description->pDimDescription(1)->cut_max=impBox.getUpperY();
+      description->pDimDescription(1)->cut_min=impBox.getLowerY();
+
+      description->pDimDescription(2)->cut_max=impBox.getUpperZ();
+      description->pDimDescription(2)->cut_min=impBox.getLowerZ();
+
+
+    }
+
+    /// Init function
+    void DynamicRebinFromXML::init()
+    {
+      //input xml string
+      Mantid::Kernel::MandatoryValidator<std::string> *v = new Mantid::Kernel::MandatoryValidator<std::string>;
+      declareProperty(new Kernel::PropertyWithValue<std::string>(std::string("XMLInputString"), std::string(""), v), "XML string providing dynamic rebinning instructions."); 
+      //output workspace following rebinning
+      declareProperty(new Mantid::API::WorkspaceProperty<Mantid::MDDataObjects::MDWorkspace>("OutputWorkspace", "", Kernel::Direction::Output), "Rebinned Workspace.");
+
+    }
+
+
+    /// Exec function
+    void DynamicRebinFromXML::exec()
+    {
+      using namespace Mantid::Geometry;
+      using namespace Mantid::MDDataObjects;
+      using namespace Mantid::API;
+
+      const std::string xmlString = getProperty("XMLInputString");
+
+      //Translate xml to MDDescription.
+      Poco::XML::DOMParser pParser;
+      std::string xmlToParse = xmlString;
+      Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+      Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+      //Coarse test for xml schema.
+      if(pRootElem->localName() != "MDInstruction")
+      {
+        throw std::invalid_argument("MDInstruction must be root node");
+      }
+
+      //de-serialise the function component.
+      ImplicitFunction* function = getImplicitFunction(pRootElem);
+
+      //get the input workspace.
+      const std::string name = getWorkspaceName(pRootElem);
+
+      //get the location of the workspace. this should be redundant in future versions!
+      const std::string location = getWorkspaceLocation(pRootElem);
+
+      //get the md geometry without cuts applied. Cuts are applied by the implicit functions.
+      MDGeometryDescription* geomDescription = getMDGeometryDescriptionWithoutCuts(pRootElem, function);
+
+      //apply cuts to the geometrydescription.
+      ApplyImplicitFunctionToMDGeometryDescription(geomDescription, function);
+
+      IAlgorithm_sptr loadWsAlg = this->createSubAlgorithm("LoadMDworkspace", 0, 0.01, true, 1);
+      loadWsAlg->initialize();
+      loadWsAlg->setPropertyValue("inFilename", location);
+      loadWsAlg->setPropertyValue("MDWorkspace",name);
+
+      IAlgorithm_sptr rebinningAlg = this->createSubAlgorithm("CenterpieceRebinning", 0.01, 1, true, 1);
+
+      rebinningAlg->initialize();
+      rebinningAlg->setPropertyValue("Input", name);
+      
+      //HACK: only way to apply a geometry description seems to be to grab it from the algorithm and apply it after initalize!
+      Geometry::MDGeometryDescription *pSlicing = dynamic_cast< Geometry::MDGeometryDescription *>((Mantid::Kernel::Property *)(rebinningAlg->getProperty("SlicingData")));
+      *pSlicing = *geomDescription;
+      
+      rebinningAlg->execute();
+
+      MDWorkspace_sptr output = rebinningAlg->getProperty("Result");
+      setProperty("OutputWorkspace", output);
+  
+    }
+
+  } // Algorithms
+} // Mantid
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/HeightParameter.cpp b/Code/Mantid/Framework/MDAlgorithms/src/HeightParameter.cpp
index 4399d1489de68919f68afbec1f5d8bf803cc716f..abcde0622f0df8b8cd8781d7528f4d67da5a81e4 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/HeightParameter.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/HeightParameter.cpp
@@ -1,87 +1,87 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/HeightParameter.h"
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-
-    HeightParameter::HeightParameter(double height) : m_height(height)
-    {
-      if(height >= 0)
-      {
-         m_isValid = true;
-      }
-      else
-      {
-        m_isValid = false;
-      }
-    }
-
-    HeightParameter::HeightParameter()
-    { 
-      m_isValid = false;
-    }
-
-    HeightParameter::HeightParameter(const HeightParameter& other)
-    {
-      this->m_isValid = other.m_isValid;
-      this->m_height = other.m_height;
-    }
-
-    HeightParameter& HeightParameter::operator=(const HeightParameter& other)
-    {
-      if (&other != this)
-      {
-        this->m_isValid = other.m_isValid;
-        this->m_height = other.m_height;
-      }
-      return *this;
-    }
-
-    std::string HeightParameter::getName() const
-    {
-      return parameterName();
-    }
-
-    bool HeightParameter::isValid() const
-    {
-      return this->m_isValid;
-    }
-
-    HeightParameter* HeightParameter::clone() const
-    {
-      return new HeightParameter(m_height);
-    }
-
-    HeightParameter::~HeightParameter()
-    {
-    }
-
-    double HeightParameter::getValue() const
-    {
-      return m_height;
-    }
-
-
-    bool HeightParameter::operator==(const HeightParameter &other) const
-    {
-      return this->m_height == other.m_height;
-    }
-
-    bool HeightParameter::operator!=(const HeightParameter &other) const
-    {
-      return !(*this == other);
-    }
-
-    std::string HeightParameter::toXMLString() const
-    {
-      std::string valueXMLtext = boost::str(boost::format("%.4f") % m_height);
-
-      return this->parameterXMLTemplate(valueXMLtext);
-    }
-
-  }
-
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/HeightParameter.h"
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+
+    HeightParameter::HeightParameter(double height) : m_height(height)
+    {
+      if(height >= 0)
+      {
+         m_isValid = true;
+      }
+      else
+      {
+        m_isValid = false;
+      }
+    }
+
+    HeightParameter::HeightParameter()
+    { 
+      m_isValid = false;
+    }
+
+    HeightParameter::HeightParameter(const HeightParameter& other)
+    {
+      this->m_isValid = other.m_isValid;
+      this->m_height = other.m_height;
+    }
+
+    HeightParameter& HeightParameter::operator=(const HeightParameter& other)
+    {
+      if (&other != this)
+      {
+        this->m_isValid = other.m_isValid;
+        this->m_height = other.m_height;
+      }
+      return *this;
+    }
+
+    std::string HeightParameter::getName() const
+    {
+      return parameterName();
+    }
+
+    bool HeightParameter::isValid() const
+    {
+      return this->m_isValid;
+    }
+
+    HeightParameter* HeightParameter::clone() const
+    {
+      return new HeightParameter(m_height);
+    }
+
+    HeightParameter::~HeightParameter()
+    {
+    }
+
+    double HeightParameter::getValue() const
+    {
+      return m_height;
+    }
+
+
+    bool HeightParameter::operator==(const HeightParameter &other) const
+    {
+      return this->m_height == other.m_height;
+    }
+
+    bool HeightParameter::operator!=(const HeightParameter &other) const
+    {
+      return !(*this == other);
+    }
+
+    std::string HeightParameter::toXMLString() const
+    {
+      std::string valueXMLtext = boost::str(boost::format("%.4f") % m_height);
+
+      return this->parameterXMLTemplate(valueXMLtext);
+    }
+
+  }
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/IDynamicRebinning.cpp b/Code/Mantid/Framework/MDAlgorithms/src/IDynamicRebinning.cpp
index c67a3ac7c074a21e81624099dc61a961e8464a7a..a789ece9e531589ac330ac7e6af4470ee61f249e 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/IDynamicRebinning.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/IDynamicRebinning.cpp
@@ -1,9 +1,9 @@
-#include "MantidMDAlgorithms/IDynamicRebinning.h"
-
-
-namespace Mantid{
-namespace MDAlgorithms{
-
-Kernel::Logger& IDynamicRebinning::bin_log=Kernel::Logger::get("MD rebinning Operations");
-} // end namespaces
+#include "MantidMDAlgorithms/IDynamicRebinning.h"
+
+
+namespace Mantid{
+namespace MDAlgorithms{
+
+Kernel::Logger& IDynamicRebinning::bin_log=Kernel::Logger::get("MD rebinning Operations");
+} // end namespaces
 }
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameter.cpp b/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameter.cpp
index 6fbb1b54a9db879a0dcfaa616ce2736923b08890..c7dc5fb76354e99880e5c75724bf78540b01fefe 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameter.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameter.cpp
@@ -1,47 +1,47 @@
-
-#include "MantidMDAlgorithms/InvalidParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        InvalidParameter::InvalidParameter()
-        {
-        }
-
-        InvalidParameter::InvalidParameter(std::string value): m_value(value) 
-        {
-        }
-
-        std::string InvalidParameter::getName() const
-        {
-            return parameterName();
-        }
-
-        std::string InvalidParameter::getValue() const
-        {
-            return m_value;
-        }
-
-        bool InvalidParameter::isValid() const
-        {
-            return false;
-        }
-
-        InvalidParameter* InvalidParameter::clone() const
-        {
-            return new InvalidParameter(m_value);
-        }
-
-        InvalidParameter::~InvalidParameter()
-        {
-        }
-
-        std::string InvalidParameter::toXMLString() const
-        {
-            throw std::runtime_error("Invalid parameters cannot be represented in xml.");
-        }
-    }
-
-
-}
+
+#include "MantidMDAlgorithms/InvalidParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        InvalidParameter::InvalidParameter()
+        {
+        }
+
+        InvalidParameter::InvalidParameter(std::string value): m_value(value) 
+        {
+        }
+
+        std::string InvalidParameter::getName() const
+        {
+            return parameterName();
+        }
+
+        std::string InvalidParameter::getValue() const
+        {
+            return m_value;
+        }
+
+        bool InvalidParameter::isValid() const
+        {
+            return false;
+        }
+
+        InvalidParameter* InvalidParameter::clone() const
+        {
+            return new InvalidParameter(m_value);
+        }
+
+        InvalidParameter::~InvalidParameter()
+        {
+        }
+
+        std::string InvalidParameter::toXMLString() const
+        {
+            throw std::runtime_error("Invalid parameters cannot be represented in xml.");
+        }
+    }
+
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameterParser.cpp b/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameterParser.cpp
index b26558a0b4aef9e28bc3362ab20f200c7c09b512..64296cb10b5206a6b86c83dfefb55c927d8957b7 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameterParser.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/InvalidParameterParser.cpp
@@ -1,35 +1,35 @@
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-#include <boost/algorithm/string.hpp>
-#include "MantidAPI/ImplicitFunctionParameterParserFactory.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(InvalidParameterParser)
-
-        InvalidParameterParser::InvalidParameterParser()
-        {
-
-        }
-
-        Mantid::API::ImplicitFunctionParameter* InvalidParameterParser::createParameter(Poco::XML::Element* parameterElement)
-        {
-            std::string sParameterValue = parameterElement->getChildElement("Value")->innerText();
-            return parseInvalidParameter(sParameterValue);
-        }
-
-
-        InvalidParameter* InvalidParameterParser::parseInvalidParameter(std::string value)
-        {
-            return new InvalidParameter(value);
-        }
-
-        void InvalidParameterParser::setSuccessorParser(ImplicitFunctionParameterParser* parser)
-        {
-            //Do nothing. No sucessor allowed.
-        }
-    }
-
-
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+#include <boost/algorithm/string.hpp>
+#include "MantidAPI/ImplicitFunctionParameterParserFactory.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(InvalidParameterParser)
+
+        InvalidParameterParser::InvalidParameterParser()
+        {
+
+        }
+
+        Mantid::API::ImplicitFunctionParameter* InvalidParameterParser::createParameter(Poco::XML::Element* parameterElement)
+        {
+            std::string sParameterValue = parameterElement->getChildElement("Value")->innerText();
+            return parseInvalidParameter(sParameterValue);
+        }
+
+
+        InvalidParameter* InvalidParameterParser::parseInvalidParameter(std::string value)
+        {
+            return new InvalidParameter(value);
+        }
+
+        void InvalidParameterParser::setSuccessorParser(ImplicitFunctionParameterParser* parser)
+        {
+            //Do nothing. No sucessor allowed.
+        }
+    }
+
+
 }
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/Load_MDWorkspace.cpp b/Code/Mantid/Framework/MDAlgorithms/src/Load_MDWorkspace.cpp
index 8c22d85134840a83e73ece013798964df2efc211..99d592eb81036e3c24298bb0fcf2f67d81364116 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/Load_MDWorkspace.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/Load_MDWorkspace.cpp
@@ -1,97 +1,97 @@
-#include "MantidMDAlgorithms/Load_MDWorkspace.h"
-#include <Poco/Path.h>
-
-namespace Mantid{
-    namespace MDAlgorithms{
-        using namespace Mantid;
-        using namespace MDDataObjects;
+#include "MantidMDAlgorithms/Load_MDWorkspace.h"
+#include <Poco/Path.h>
+
+namespace Mantid{
+    namespace MDAlgorithms{
+        using namespace Mantid;
+        using namespace MDDataObjects;
         using namespace Kernel;
         using namespace API;
-        using namespace Geometry;
-
-
-// Register the class into the algorithm factory
-DECLARE_ALGORITHM(Load_MDWorkspace)
-// logger for loading workspaces  
-Kernel::Logger& Load_MDWorkspace::ldmdws_log =Kernel::Logger::get("MD-Algorithms");
-
-
-Load_MDWorkspace::Load_MDWorkspace(void): API::Algorithm() 
-{}
-
-/** Destructor     */
-Load_MDWorkspace::~Load_MDWorkspace()
-{
- 
-}
-//
-void
-Load_MDWorkspace::init()
-{
-    std::vector<std::string> ext(1);
-    ext[0]=".sqw";
-    declareProperty(new API::FileProperty("inFilename","", API::FileProperty::Load,ext), "The file containing initial MD dataset");
-    declareProperty(new WorkspaceProperty<MDWorkspace>("MDWorkspace","",Direction::Output),"final MD workspace");
-    // prospective property TODO: implement
-    declareProperty((new Kernel::PropertyWithValue<bool>("LoadPixels",false,Direction::InOut)),
-        "This property specifies if user wants to try loading in memory"
-        " all pixels(events) availible in the MD workspace; If there is enough memory system will try to do it but may fail");
-}
-//
-void 
-Load_MDWorkspace::exec()
-{
-
-MDWorkspace_sptr inputWS;
-std::string workspaceFileName;
-
-  // get the workspace and overwrite it if it already exists
-   inputWS = this->getProperty("MDWorkspace");
-   if(inputWS){
-       ldmdws_log.information()<<" Existing workspace will be overwtitten\n";
-   }else{
-       inputWS = MDWorkspace_sptr(new MDWorkspace());
-       AnalysisDataService::Instance().addOrReplace("MDWorkspace", inputWS);
-   }
-   this->setProperty("MDWorkspace",inputWS);
-
-
-   if(existsProperty("inFilename")){
-       workspaceFileName = this->getPropertyValue("inFilename");
-       workspaceFileName = Poco::Path(Poco::Path::current()).resolve(workspaceFileName).toString();
-   }
-
-   std::auto_ptr<IMD_FileFormat> pFileReader = MD_FileFormatFactory::getFileReader(workspaceFileName.c_str());
-   if(!pFileReader.get()){
-         ldmdws_log.error()<<" can not obtain file reader for MD file";
-         throw(Kernel::Exception::FileError("can not get proper file reader",workspaceFileName));
-   }
-   std::auto_ptr<MDGeometryBasis> pBasis = std::auto_ptr<MDGeometryBasis>(new Geometry::MDGeometryBasis());
-   
-   pFileReader->read_basis(*pBasis);
-
-   MDGeometryDescription geomDescr(pBasis->getNumDims(),pBasis->getNumReciprocalDims());
-
-	// read the geometry description
-   pFileReader->read_MDGeomDescription(geomDescr);
-
-	// obtain the MDPoint description now (and MDPointsDescription in a future)
-	MDPointDescription pd = pFileReader->read_pointDescriptions();
-
-    // workspace now takes control for the file reader; initial pointer becomes invalid
-	// this function will read MDImage and initiate MDDataPoints accordingly
-    inputWS->init(pFileReader,pBasis,geomDescr,pd);
-
-
-	bool loadPix =  this->getProperty("LoadPixels");
-	if(loadPix){
-		ldmdws_log.warning()<<" loading pixels in the memory is not implemented at the moment\n";
-    	//TODO: if enough memory and we want to try placing pixels in memory -- read MDDatapoints
-       // should also allocate memory for points somewhere here. 
-      //  pReader->read_pix(*(inputWS->get_spMDDPoints()));
-	}
-
-
-}
-} // end namespaces
+        using namespace Geometry;
+
+
+// Register the class into the algorithm factory
+DECLARE_ALGORITHM(Load_MDWorkspace)
+// logger for loading workspaces  
+Kernel::Logger& Load_MDWorkspace::ldmdws_log =Kernel::Logger::get("MD-Algorithms");
+
+
+Load_MDWorkspace::Load_MDWorkspace(void): API::Algorithm() 
+{}
+
+/** Destructor     */
+Load_MDWorkspace::~Load_MDWorkspace()
+{
+ 
+}
+//
+void
+Load_MDWorkspace::init()
+{
+    std::vector<std::string> ext(1);
+    ext[0]=".sqw";
+    declareProperty(new API::FileProperty("inFilename","", API::FileProperty::Load,ext), "The file containing initial MD dataset");
+    declareProperty(new WorkspaceProperty<MDWorkspace>("MDWorkspace","",Direction::Output),"final MD workspace");
+    // prospective property TODO: implement
+    declareProperty((new Kernel::PropertyWithValue<bool>("LoadPixels",false,Direction::InOut)),
+        "This property specifies if user wants to try loading in memory"
+        " all pixels(events) availible in the MD workspace; If there is enough memory system will try to do it but may fail");
+}
+//
+void 
+Load_MDWorkspace::exec()
+{
+
+MDWorkspace_sptr inputWS;
+std::string workspaceFileName;
+
+  // get the workspace and overwrite it if it already exists
+   inputWS = this->getProperty("MDWorkspace");
+   if(inputWS){
+       ldmdws_log.information()<<" Existing workspace will be overwtitten\n";
+   }else{
+       inputWS = MDWorkspace_sptr(new MDWorkspace());
+       AnalysisDataService::Instance().addOrReplace("MDWorkspace", inputWS);
+   }
+   this->setProperty("MDWorkspace",inputWS);
+
+
+   if(existsProperty("inFilename")){
+       workspaceFileName = this->getPropertyValue("inFilename");
+       workspaceFileName = Poco::Path(Poco::Path::current()).resolve(workspaceFileName).toString();
+   }
+
+   std::auto_ptr<IMD_FileFormat> pFileReader = MD_FileFormatFactory::getFileReader(workspaceFileName.c_str());
+   if(!pFileReader.get()){
+         ldmdws_log.error()<<" can not obtain file reader for MD file";
+         throw(Kernel::Exception::FileError("can not get proper file reader",workspaceFileName));
+   }
+   std::auto_ptr<MDGeometryBasis> pBasis = std::auto_ptr<MDGeometryBasis>(new Geometry::MDGeometryBasis());
+   
+   pFileReader->read_basis(*pBasis);
+
+   MDGeometryDescription geomDescr(pBasis->getNumDims(),pBasis->getNumReciprocalDims());
+
+	// read the geometry description
+   pFileReader->read_MDGeomDescription(geomDescr);
+
+	// obtain the MDPoint description now (and MDPointsDescription in a future)
+	MDPointDescription pd = pFileReader->read_pointDescriptions();
+
+    // workspace now takes control for the file reader; initial pointer becomes invalid
+	// this function will read MDImage and initiate MDDataPoints accordingly
+    inputWS->init(pFileReader,pBasis,geomDescr,pd);
+
+
+	bool loadPix =  this->getProperty("LoadPixels");
+	if(loadPix){
+		ldmdws_log.warning()<<" loading pixels in the memory is not implemented at the moment\n";
+    	//TODO: if enough memory and we want to try placing pixels in memory -- read MDDatapoints
+       // should also allocate memory for points somewhere here. 
+      //  pReader->read_pix(*(inputWS->get_spMDDPoints()));
+	}
+
+
+}
+} // end namespaces
 }
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/NormalParameter.cpp b/Code/Mantid/Framework/MDAlgorithms/src/NormalParameter.cpp
index 78d09ab64c7b716e4f4f5789f95a041da9be262c..1754aee4d78854489ec9cf79c9a234a5bc9bc376 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/NormalParameter.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/NormalParameter.cpp
@@ -1,122 +1,122 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/NormalParameter.h"
-#include <cmath>
-
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-
-NormalParameter::NormalParameter(double n1, double n2, double n3): m_normal(3)
-{
-  m_normal[0] = n1;
-  m_normal[1] = n2;
-  m_normal[2] = n3;
-  m_isValid = true;
-}
-
-NormalParameter::NormalParameter()
-{
-  this->m_isValid = false;
-}
-
-NormalParameter::NormalParameter(const NormalParameter& other)
-{
-  this->m_isValid = other.m_isValid;
-  if(m_isValid)
-  {
-    this->m_normal = std::vector<double>(3);
-    std::copy(other.m_normal.begin(), other.m_normal.end(), this->m_normal.begin());
-  }
-}
-
-NormalParameter& NormalParameter::operator=(const NormalParameter& other)
-{
-  if (&other != this)
-  {
-    this->m_isValid = other.m_isValid;
-    this->m_normal.clear();
-    this->m_normal = std::vector<double>(3);
-    std::copy(other.m_normal.begin(), other.m_normal.end(), this->m_normal.begin());
-  }
-  return *this;
-}
-
-NormalParameter NormalParameter::reflect() const
-{
-  return NormalParameter(-m_normal.at(0), -m_normal.at(1), -m_normal.at(2));
-}
-
-std::string NormalParameter::getName() const
-{
-  return parameterName();
-}
-
-bool NormalParameter::isValid() const
-{
-  return this->m_isValid;
-}
-
-NormalParameter* NormalParameter::clone() const
-{
-  return new NormalParameter(m_normal.at(0), m_normal.at(1), m_normal.at(2));
-}
-
-NormalParameter::~NormalParameter()
-{
-}
-
-double NormalParameter::getX() const
-{
-  return m_normal.at(0);
-}
-
-double NormalParameter::getY() const
-{
-  return m_normal.at(1);
-}
-
-double NormalParameter::getZ() const
-{
-  return m_normal.at(2);
-}
-
-bool NormalParameter::operator==(const NormalParameter &other) const
-{
-  return this->m_normal.at(0) == other.m_normal.at(0) && this->m_normal.at(1) == other.m_normal.at(1)
-      && this->m_normal.at(2) == other.m_normal.at(2);
-}
-
-bool NormalParameter::operator!=(const NormalParameter &other) const
-{
-  return !(*this == other);
-}
-
-std::string NormalParameter::toXMLString() const
-{
-  std::string valueXMLtext = boost::str(boost::format("%.4f, %.4f, %.4f") % m_normal.at(0)
-      % m_normal.at(1) % m_normal.at(2));
-
-  return this->parameterXMLTemplate(valueXMLtext);
-}
-
-NormalParameter NormalParameter::asUnitVector() const
-{
-  double mag = magnitude();
-  return NormalParameter(m_normal[0]/mag, m_normal[1]/mag, m_normal[2]/mag);
-}
-
-bool NormalParameter::isUnitVector() const
-{
-  return 1 == magnitude();
-}
-
-double NormalParameter::magnitude() const
-{
-  return std::sqrt(m_normal[0]*m_normal[0] + m_normal[1]*m_normal[1] + m_normal[2]*m_normal[2]);
-}
-
-}
-
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/NormalParameter.h"
+#include <cmath>
+
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+
+NormalParameter::NormalParameter(double n1, double n2, double n3): m_normal(3)
+{
+  m_normal[0] = n1;
+  m_normal[1] = n2;
+  m_normal[2] = n3;
+  m_isValid = true;
+}
+
+NormalParameter::NormalParameter()
+{
+  this->m_isValid = false;
+}
+
+NormalParameter::NormalParameter(const NormalParameter& other)
+{
+  this->m_isValid = other.m_isValid;
+  if(m_isValid)
+  {
+    this->m_normal = std::vector<double>(3);
+    std::copy(other.m_normal.begin(), other.m_normal.end(), this->m_normal.begin());
+  }
+}
+
+NormalParameter& NormalParameter::operator=(const NormalParameter& other)
+{
+  if (&other != this)
+  {
+    this->m_isValid = other.m_isValid;
+    this->m_normal.clear();
+    this->m_normal = std::vector<double>(3);
+    std::copy(other.m_normal.begin(), other.m_normal.end(), this->m_normal.begin());
+  }
+  return *this;
+}
+
+NormalParameter NormalParameter::reflect() const
+{
+  return NormalParameter(-m_normal.at(0), -m_normal.at(1), -m_normal.at(2));
+}
+
+std::string NormalParameter::getName() const
+{
+  return parameterName();
+}
+
+bool NormalParameter::isValid() const
+{
+  return this->m_isValid;
+}
+
+NormalParameter* NormalParameter::clone() const
+{
+  return new NormalParameter(m_normal.at(0), m_normal.at(1), m_normal.at(2));
+}
+
+NormalParameter::~NormalParameter()
+{
+}
+
+double NormalParameter::getX() const
+{
+  return m_normal.at(0);
+}
+
+double NormalParameter::getY() const
+{
+  return m_normal.at(1);
+}
+
+double NormalParameter::getZ() const
+{
+  return m_normal.at(2);
+}
+
+bool NormalParameter::operator==(const NormalParameter &other) const
+{
+  return this->m_normal.at(0) == other.m_normal.at(0) && this->m_normal.at(1) == other.m_normal.at(1)
+      && this->m_normal.at(2) == other.m_normal.at(2);
+}
+
+bool NormalParameter::operator!=(const NormalParameter &other) const
+{
+  return !(*this == other);
+}
+
+std::string NormalParameter::toXMLString() const
+{
+  std::string valueXMLtext = boost::str(boost::format("%.4f, %.4f, %.4f") % m_normal.at(0)
+      % m_normal.at(1) % m_normal.at(2));
+
+  return this->parameterXMLTemplate(valueXMLtext);
+}
+
+NormalParameter NormalParameter::asUnitVector() const
+{
+  double mag = magnitude();
+  return NormalParameter(m_normal[0]/mag, m_normal[1]/mag, m_normal[2]/mag);
+}
+
+bool NormalParameter::isUnitVector() const
+{
+  return 1 == magnitude();
+}
+
+double NormalParameter::magnitude() const
+{
+  return std::sqrt(m_normal[0]*m_normal[0] + m_normal[1]*m_normal[1] + m_normal[2]*m_normal[2]);
+}
+
+}
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/OriginParameter.cpp b/Code/Mantid/Framework/MDAlgorithms/src/OriginParameter.cpp
index bfeaad3523990cc19d83336f82d459939a3cbdee..c99695783030dd58279e298c1a52dfe4de954d18 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/OriginParameter.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/OriginParameter.cpp
@@ -1,98 +1,98 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/OriginParameter.h"
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-
-        OriginParameter::OriginParameter(double n1, double n2, double n3) 
-        {
-            m_origin.push_back(n1);
-            m_origin.push_back(n2);
-            m_origin.push_back(n3);
-            m_isValid = true;
-        }
-
-        OriginParameter::OriginParameter()
-        {
-            this->m_isValid = false;
-        }
-
-        OriginParameter::OriginParameter(const OriginParameter& other)
-        {
-            this->m_isValid = other.m_isValid;
-            if(m_isValid)
-            {
-              this->m_origin = std::vector<double>(3);
-              std::copy(other.m_origin.begin(), other.m_origin.end(), this->m_origin.begin());
-            }
-        }
-
-        OriginParameter& OriginParameter::operator=(const OriginParameter& other)
-        {
-            if(&other != this)
-            {
-                this->m_isValid = other.m_isValid;
-                this->m_origin.clear();
-                this->m_origin = std::vector<double>(3);
-                std::copy(other.m_origin.begin(), other.m_origin.end(), this->m_origin.begin());
-            }
-            return *this;
-        }
-
-        std::string OriginParameter::getName() const
-        {
-            return parameterName();
-        }
-
-        bool OriginParameter::isValid() const
-        {
-            return m_isValid;
-        }
-
-        OriginParameter* OriginParameter::clone() const
-        {
-            return new OriginParameter(m_origin.at(0), m_origin.at(1), m_origin.at(2));
-        }
-
-        OriginParameter::~OriginParameter()
-        {
-        }
-
-        double OriginParameter::getX() const
-        {
-            return m_origin.at(0);
-        }
-
-        double OriginParameter::getY() const
-        {
-            return m_origin.at(1);
-        }
-
-        double OriginParameter::getZ() const
-        {
-            return m_origin.at(2);
-        }
-
-        bool OriginParameter::operator==(const OriginParameter &other) const
-        {
-            return this->m_origin.at(0) == other.m_origin.at(0) && this->m_origin.at(1) == other.m_origin.at(1) && this->m_origin.at(2) == other.m_origin.at(2);
-        }
-
-        bool OriginParameter::operator!=(const OriginParameter &other) const
-        {
-            return !(*this == other);
-        }
-
-       std::string OriginParameter::toXMLString() const
-        {
-            std::string valueXMLtext = boost::str(boost::format("%.4f, %.4f, %.4f") % m_origin.at(0) %  m_origin.at(1) % m_origin.at(2));
-
-            return this->parameterXMLTemplate(valueXMLtext);
-        }
-    }
-
-
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/OriginParameter.h"
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+
+        OriginParameter::OriginParameter(double n1, double n2, double n3) 
+        {
+            m_origin.push_back(n1);
+            m_origin.push_back(n2);
+            m_origin.push_back(n3);
+            m_isValid = true;
+        }
+
+        OriginParameter::OriginParameter()
+        {
+            this->m_isValid = false;
+        }
+
+        OriginParameter::OriginParameter(const OriginParameter& other)
+        {
+            this->m_isValid = other.m_isValid;
+            if(m_isValid)
+            {
+              this->m_origin = std::vector<double>(3);
+              std::copy(other.m_origin.begin(), other.m_origin.end(), this->m_origin.begin());
+            }
+        }
+
+        OriginParameter& OriginParameter::operator=(const OriginParameter& other)
+        {
+            if(&other != this)
+            {
+                this->m_isValid = other.m_isValid;
+                this->m_origin.clear();
+                this->m_origin = std::vector<double>(3);
+                std::copy(other.m_origin.begin(), other.m_origin.end(), this->m_origin.begin());
+            }
+            return *this;
+        }
+
+        std::string OriginParameter::getName() const
+        {
+            return parameterName();
+        }
+
+        bool OriginParameter::isValid() const
+        {
+            return m_isValid;
+        }
+
+        OriginParameter* OriginParameter::clone() const
+        {
+            return new OriginParameter(m_origin.at(0), m_origin.at(1), m_origin.at(2));
+        }
+
+        OriginParameter::~OriginParameter()
+        {
+        }
+
+        double OriginParameter::getX() const
+        {
+            return m_origin.at(0);
+        }
+
+        double OriginParameter::getY() const
+        {
+            return m_origin.at(1);
+        }
+
+        double OriginParameter::getZ() const
+        {
+            return m_origin.at(2);
+        }
+
+        bool OriginParameter::operator==(const OriginParameter &other) const
+        {
+            return this->m_origin.at(0) == other.m_origin.at(0) && this->m_origin.at(1) == other.m_origin.at(1) && this->m_origin.at(2) == other.m_origin.at(2);
+        }
+
+        bool OriginParameter::operator!=(const OriginParameter &other) const
+        {
+            return !(*this == other);
+        }
+
+       std::string OriginParameter::toXMLString() const
+        {
+            std::string valueXMLtext = boost::str(boost::format("%.4f, %.4f, %.4f") % m_origin.at(0) %  m_origin.at(1) % m_origin.at(2));
+
+            return this->parameterXMLTemplate(valueXMLtext);
+        }
+    }
+
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/PlaneFunctionBuilder.cpp b/Code/Mantid/Framework/MDAlgorithms/src/PlaneFunctionBuilder.cpp
index 9397d7c6cdd39880871bb6f2b96095f3f8dc972d..3addd2daac681cedf56260475ce6c664d479794f 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/PlaneFunctionBuilder.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/PlaneFunctionBuilder.cpp
@@ -1,78 +1,78 @@
-#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
-#include "MantidMDAlgorithms/InvalidParameter.h"
-#include "MantidMDAlgorithms/OriginParameter.h"
-#include "MantidMDAlgorithms/NormalParameter.h"
-#include <exception>
-
-namespace Mantid
-{
-    namespace MDAlgorithms
-    {
-        using namespace Mantid::API;
-
-        PlaneFunctionBuilder::PlaneFunctionBuilder()
-        {
-        }
-
-        void  PlaneFunctionBuilder::addNormalParameter(const NormalParameter& parameter)
-        {
-            
-            this->m_normal = NormalParameter(parameter);
-        }
-
-        void  PlaneFunctionBuilder::addOriginParameter(const OriginParameter& parameter)
-        { 
-           
-            this->m_origin = OriginParameter(parameter);
-        }
-
-        void PlaneFunctionBuilder::addWidthParameter(const WidthParameter& width)
-        {
-             this->m_width = WidthParameter(width);
-        }
-
-        void PlaneFunctionBuilder::addUpParameter(const UpParameter& up)
-        {
-              this->m_up = UpParameter(up);
-        }
-
-        ImplicitFunction* PlaneFunctionBuilder::create() const
-        {
-            //check that builder parameters are valid.
-            if(!m_origin.isValid())
-            {
-                std::string message = "Invalid origin parameter on PlaneFunctionBuilder";
-                throw std::invalid_argument(message);
-            } 
-            if(!m_normal.isValid())
-            {
-                std::string message = "Invalid normal parameter passed to PlaneFunctionBuilder";
-                throw std::invalid_argument(message);
-            }
-            if(!m_up.isValid())
-            {
-              std::string message = "Invalid up parameter passed to PlaneFunctionBuilder";
-              throw std::invalid_argument(message);
-            }
-            if(!m_width.isValid())
-            {
-              std::string message = "Invalid width parameter passed to PlaneFunctionBuilder";
-              throw std::invalid_argument(message);
-            }
-            //implement construction.
-            NormalParameter& refNormal = m_normal;
-            OriginParameter& refOrigin = m_origin;
-            UpParameter& refUp = m_up;
-            WidthParameter& refWidth = m_width;
-            PlaneImplicitFunction* func = new Mantid::MDAlgorithms::PlaneImplicitFunction(refNormal, refOrigin, refUp, refWidth);
-            return func;
-        }
-
-
-        PlaneFunctionBuilder::~PlaneFunctionBuilder()
-        {
-        }
-    }
-
-
-}
+#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
+#include "MantidMDAlgorithms/InvalidParameter.h"
+#include "MantidMDAlgorithms/OriginParameter.h"
+#include "MantidMDAlgorithms/NormalParameter.h"
+#include <exception>
+
+namespace Mantid
+{
+    namespace MDAlgorithms
+    {
+        using namespace Mantid::API;
+
+        PlaneFunctionBuilder::PlaneFunctionBuilder()
+        {
+        }
+
+        void  PlaneFunctionBuilder::addNormalParameter(const NormalParameter& parameter)
+        {
+            
+            this->m_normal = NormalParameter(parameter);
+        }
+
+        void  PlaneFunctionBuilder::addOriginParameter(const OriginParameter& parameter)
+        { 
+           
+            this->m_origin = OriginParameter(parameter);
+        }
+
+        void PlaneFunctionBuilder::addWidthParameter(const WidthParameter& width)
+        {
+             this->m_width = WidthParameter(width);
+        }
+
+        void PlaneFunctionBuilder::addUpParameter(const UpParameter& up)
+        {
+              this->m_up = UpParameter(up);
+        }
+
+        ImplicitFunction* PlaneFunctionBuilder::create() const
+        {
+            //check that builder parameters are valid.
+            if(!m_origin.isValid())
+            {
+                std::string message = "Invalid origin parameter on PlaneFunctionBuilder";
+                throw std::invalid_argument(message);
+            } 
+            if(!m_normal.isValid())
+            {
+                std::string message = "Invalid normal parameter passed to PlaneFunctionBuilder";
+                throw std::invalid_argument(message);
+            }
+            if(!m_up.isValid())
+            {
+              std::string message = "Invalid up parameter passed to PlaneFunctionBuilder";
+              throw std::invalid_argument(message);
+            }
+            if(!m_width.isValid())
+            {
+              std::string message = "Invalid width parameter passed to PlaneFunctionBuilder";
+              throw std::invalid_argument(message);
+            }
+            //implement construction.
+            NormalParameter& refNormal = m_normal;
+            OriginParameter& refOrigin = m_origin;
+            UpParameter& refUp = m_up;
+            WidthParameter& refWidth = m_width;
+            PlaneImplicitFunction* func = new Mantid::MDAlgorithms::PlaneImplicitFunction(refNormal, refOrigin, refUp, refWidth);
+            return func;
+        }
+
+
+        PlaneFunctionBuilder::~PlaneFunctionBuilder()
+        {
+        }
+    }
+
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunction.cpp b/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunction.cpp
index 29640f86a519d85160ee621ec133ba0d1850c7d5..efabceefbbce9a35894d9788a06e96d149f3145a 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunction.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunction.cpp
@@ -1,249 +1,249 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
-#include "MantidAPI/Point3D.h"
-#include "MantidGeometry/V3D.h"
-#include <cmath>
-#include <vector>
-
-namespace Mantid
-{
-namespace MDAlgorithms
-{
-
-PlaneImplicitFunction::PlaneImplicitFunction(NormalParameter& normal, OriginParameter& origin, UpParameter& up, WidthParameter& width) :
-  m_origin(origin),
-  m_normal(normal),
-  m_up(up),
-  m_width(width)
-{
-
-}
-
-inline double PlaneImplicitFunction::calculateNormContributionAlongAxisComponent(const Mantid::Geometry::V3D& axis) const
-{
-  using Mantid::Geometry::V3D;
-
-  NormalParameter normalUnit =m_normal.asUnitVector();
-  const V3D normal(normalUnit.getX(), normalUnit.getY(), normalUnit.getZ());
-
-  const double hyp = m_width.getValue()/2;
-
-  //Simple trigonometry. Essentially calculates adjacent along axis specified.
-  return  hyp*dotProduct(normal, axis);
-}
-
-inline NormalParameter PlaneImplicitFunction::calculateEffectiveNormal(const OriginParameter& forwardOrigin) const
-{
-    //Figure out whether the origin is bounded by the forward plane.
-    bool planesOutwardLooking = dotProduct(m_origin.getX() - forwardOrigin.getX(), m_origin.getY() - forwardOrigin.getY(), m_origin.getZ()
-        - forwardOrigin.getZ(), m_normal.getX(), m_normal.getY(), m_normal.getZ()) <= 0;
-    //Fix orientation if necessary.
-    if(planesOutwardLooking)
-    {
-      return m_normal;
-    }
-    else // Inward looking virtual planes.
-    {
-      return m_normal.reflect();
-    }
-}
-
-inline bool PlaneImplicitFunction::isBoundedByPlane(const OriginParameter& origin, const NormalParameter& normal, const Mantid::API::Point3D* pPoint) const
-{
-  return dotProduct(pPoint->getX() - origin.getX(), pPoint->getY() - origin.getY(), pPoint->getZ()
-        - origin.getZ(), normal.getX(), normal.getY(), normal.getZ()) <= 0;
-}
-
-
-bool PlaneImplicitFunction::evaluate(const Mantid::API::Point3D* pPoint) const
-{
-  using Mantid::Geometry::V3D;
-  //TODO: consider caching calculation parameters that share lifetime with object.
-
-  //Create virtual planes separated by (absolute) width from from actual origin. Origins are key.
-  const V3D xAxis(1, 0, 0);
-  const V3D yAxis(0, 1, 0);
-  const V3D zAxis(0, 0, 1);
-
-  const double deltaX = calculateNormContributionAlongAxisComponent(xAxis);
-  const double deltaY = calculateNormContributionAlongAxisComponent(yAxis);
-  const double deltaZ = calculateNormContributionAlongAxisComponent(zAxis);
-
-  //Virtual forward origin (+width/2 separated along normal)
-  const OriginParameter vForwardOrigin(m_origin.getX() + deltaX, m_origin.getY() + deltaY, m_origin.getZ() + deltaZ);
-
-  //invert the normal if the normals are defined in such a way that the origin does not appear in the bounded region of the forward plane.
-  const NormalParameter& normal = calculateEffectiveNormal(vForwardOrigin);
-
-  //Virtual backward origin (-width/2 separated along normal)
-  const OriginParameter vBackwardOrigin(m_origin.getX() - deltaX, m_origin.getY() - deltaY, m_origin.getZ() - deltaZ);
-
-  bool isBoundedByForwardPlane = isBoundedByPlane(vForwardOrigin, normal, pPoint);
-
-  NormalParameter rNormal = normal.reflect();
-  bool isBoundedByBackwardPlane = isBoundedByPlane(vBackwardOrigin, rNormal, pPoint);
-
-  //Only if a point is bounded by both the forward and backward planes can it be considered inside the plane with thickness.
-  return isBoundedByForwardPlane && isBoundedByBackwardPlane;
-}
-
-bool PlaneImplicitFunction::operator==(const PlaneImplicitFunction &other) const
-{
-  return this->m_normal == other.m_normal
-      && this->m_origin == other.m_origin
-      && this->m_width == other.m_width
-      && this->m_up == other.m_up;
-}
-
-bool PlaneImplicitFunction::operator!=(const PlaneImplicitFunction &other) const
-{
-  return !(*this == other);
-}
-
-std::string PlaneImplicitFunction::getName() const
-{
-  return functionName();
-}
-
-double PlaneImplicitFunction::getOriginX() const
-{
-  return this->m_origin.getX();
-}
-
-double PlaneImplicitFunction::getOriginY() const
-{
-  return this->m_origin.getY();
-}
-
-double PlaneImplicitFunction::getOriginZ() const
-{
-  return this->m_origin.getZ();
-}
-
-double PlaneImplicitFunction::getNormalX() const
-{
-  return this->m_normal.getX();
-}
-
-double PlaneImplicitFunction::getNormalY() const
-{
-  return this->m_normal.getY();
-}
-
-double PlaneImplicitFunction::getNormalZ() const
-{
-  return this->m_normal.getZ();
-}
-
-double PlaneImplicitFunction::getUpX() const
-{
-  return this->m_up.getX();
-}
-
-double PlaneImplicitFunction::getUpY() const
-{
-  return this->m_up.getY();
-}
-
-double PlaneImplicitFunction::getUpZ() const
-{
-  return this->m_up.getZ();
-}
-
-double PlaneImplicitFunction::getWidth() const
-{
-  return this->m_width.getValue();
-}
-
-std::string PlaneImplicitFunction::toXMLString() const
-{
-  using namespace Poco::XML;
-
-  AutoPtr<Document> pDoc = new Document;
-  AutoPtr<Element> functionElement = pDoc->createElement("Function");
-  pDoc->appendChild(functionElement);
-  AutoPtr<Element> typeElement = pDoc->createElement("Type");
-  AutoPtr<Text> typeText = pDoc->createTextNode(this->getName());
-  typeElement->appendChild(typeText);
-  functionElement->appendChild(typeElement);
-
-  AutoPtr<Element> paramListElement = pDoc->createElement("ParameterList");
-
-  AutoPtr<Text> formatText = pDoc->createTextNode("%s%s%s%s");
-  paramListElement->appendChild(formatText);
-  functionElement->appendChild(paramListElement);
-
-  std::stringstream xmlstream;
-
-  DOMWriter writer;
-  writer.writeNode(xmlstream, pDoc);
-
-  std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str())
-      % m_normal.toXMLString().c_str() % m_origin.toXMLString().c_str() % m_up.toXMLString() % m_width.toXMLString());
-  return formattedXMLString;
-}
-
-std::vector<double> PlaneImplicitFunction::asRotationMatrixVector() const
-{
-  using Mantid::Geometry::V3D;
-
-  //Normal.
-  V3D ax(m_normal.getX(), m_normal.getY(), m_normal.getZ());
-
-  //Up.
-  V3D ay(m_up.getX(), m_up.getY(), m_up.getZ());
-
-  if(dotProduct(ax, ay) != 0)
-  {
-    throw std::logic_error("Normal and Up Vectors must be perpendicular");
-  }
-
-  //Perpendicular. Calculate the cross product of the normal vector with the up vector.
-  Mantid::Geometry::V3D az = crossProduct(ax, ay);
-
-  ax.normalize();
-  ay.normalize();
-  az.normalize();
-
-  //b = vectors from original axes.
-  const V3D bx(1, 0, 0);
-  const V3D by(0, 1, 0);
-  const V3D bz(0, 0, 1);
-
-  std::vector<double> rotationMatrix(9);
-  rotationMatrix[0] = dotProduct(ax, bx);
-  rotationMatrix[1] = dotProduct(ax, by);
-  rotationMatrix[2] = dotProduct(ax, bz);
-  rotationMatrix[3] = dotProduct(ay, bx);
-  rotationMatrix[4] = dotProduct(ay, by);
-  rotationMatrix[5] = dotProduct(ay, bz);
-  rotationMatrix[6] = dotProduct(az, bx);
-  rotationMatrix[7] = dotProduct(az, by);
-  rotationMatrix[8] = dotProduct(az, bz);
-  return rotationMatrix;
-}
-
-/// Convenience method. Translates rotation result into Mantid Matrix form.
-Mantid::Geometry::Matrix<double> extractRotationMatrix(const PlaneImplicitFunction& plane)
-{
-  std::vector<double> rotationMatrixVector = plane.asRotationMatrixVector();
-  Mantid::Geometry::Matrix<double> rotationMatrix(3,3);
-  rotationMatrix[0][0] = rotationMatrixVector[0];
-  rotationMatrix[0][1] = rotationMatrixVector[1];
-  rotationMatrix[0][2] = rotationMatrixVector[2];
-  rotationMatrix[1][0] = rotationMatrixVector[3];
-  rotationMatrix[1][1] = rotationMatrixVector[4];
-  rotationMatrix[1][2] = rotationMatrixVector[5];
-  rotationMatrix[2][0] = rotationMatrixVector[6];
-  rotationMatrix[2][1] = rotationMatrixVector[7];
-  rotationMatrix[2][2] = rotationMatrixVector[8];
-  return rotationMatrix;
-}
-
-PlaneImplicitFunction::~PlaneImplicitFunction()
-{
-}
-}
-
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
+#include "MantidAPI/Point3D.h"
+#include "MantidGeometry/V3D.h"
+#include <cmath>
+#include <vector>
+
+namespace Mantid
+{
+namespace MDAlgorithms
+{
+
+PlaneImplicitFunction::PlaneImplicitFunction(NormalParameter& normal, OriginParameter& origin, UpParameter& up, WidthParameter& width) :
+  m_origin(origin),
+  m_normal(normal),
+  m_up(up),
+  m_width(width)
+{
+
+}
+
+inline double PlaneImplicitFunction::calculateNormContributionAlongAxisComponent(const Mantid::Geometry::V3D& axis) const
+{
+  using Mantid::Geometry::V3D;
+
+  NormalParameter normalUnit =m_normal.asUnitVector();
+  const V3D normal(normalUnit.getX(), normalUnit.getY(), normalUnit.getZ());
+
+  const double hyp = m_width.getValue()/2;
+
+  //Simple trigonometry. Essentially calculates adjacent along axis specified.
+  return  hyp*dotProduct(normal, axis);
+}
+
+inline NormalParameter PlaneImplicitFunction::calculateEffectiveNormal(const OriginParameter& forwardOrigin) const
+{
+    //Figure out whether the origin is bounded by the forward plane.
+    bool planesOutwardLooking = dotProduct(m_origin.getX() - forwardOrigin.getX(), m_origin.getY() - forwardOrigin.getY(), m_origin.getZ()
+        - forwardOrigin.getZ(), m_normal.getX(), m_normal.getY(), m_normal.getZ()) <= 0;
+    //Fix orientation if necessary.
+    if(planesOutwardLooking)
+    {
+      return m_normal;
+    }
+    else // Inward looking virtual planes.
+    {
+      return m_normal.reflect();
+    }
+}
+
+inline bool PlaneImplicitFunction::isBoundedByPlane(const OriginParameter& origin, const NormalParameter& normal, const Mantid::API::Point3D* pPoint) const
+{
+  return dotProduct(pPoint->getX() - origin.getX(), pPoint->getY() - origin.getY(), pPoint->getZ()
+        - origin.getZ(), normal.getX(), normal.getY(), normal.getZ()) <= 0;
+}
+
+
+bool PlaneImplicitFunction::evaluate(const Mantid::API::Point3D* pPoint) const
+{
+  using Mantid::Geometry::V3D;
+  //TODO: consider caching calculation parameters that share lifetime with object.
+
+  //Create virtual planes separated by (absolute) width from from actual origin. Origins are key.
+  const V3D xAxis(1, 0, 0);
+  const V3D yAxis(0, 1, 0);
+  const V3D zAxis(0, 0, 1);
+
+  const double deltaX = calculateNormContributionAlongAxisComponent(xAxis);
+  const double deltaY = calculateNormContributionAlongAxisComponent(yAxis);
+  const double deltaZ = calculateNormContributionAlongAxisComponent(zAxis);
+
+  //Virtual forward origin (+width/2 separated along normal)
+  const OriginParameter vForwardOrigin(m_origin.getX() + deltaX, m_origin.getY() + deltaY, m_origin.getZ() + deltaZ);
+
+  //invert the normal if the normals are defined in such a way that the origin does not appear in the bounded region of the forward plane.
+  const NormalParameter& normal = calculateEffectiveNormal(vForwardOrigin);
+
+  //Virtual backward origin (-width/2 separated along normal)
+  const OriginParameter vBackwardOrigin(m_origin.getX() - deltaX, m_origin.getY() - deltaY, m_origin.getZ() - deltaZ);
+
+  bool isBoundedByForwardPlane = isBoundedByPlane(vForwardOrigin, normal, pPoint);
+
+  NormalParameter rNormal = normal.reflect();
+  bool isBoundedByBackwardPlane = isBoundedByPlane(vBackwardOrigin, rNormal, pPoint);
+
+  //Only if a point is bounded by both the forward and backward planes can it be considered inside the plane with thickness.
+  return isBoundedByForwardPlane && isBoundedByBackwardPlane;
+}
+
+bool PlaneImplicitFunction::operator==(const PlaneImplicitFunction &other) const
+{
+  return this->m_normal == other.m_normal
+      && this->m_origin == other.m_origin
+      && this->m_width == other.m_width
+      && this->m_up == other.m_up;
+}
+
+bool PlaneImplicitFunction::operator!=(const PlaneImplicitFunction &other) const
+{
+  return !(*this == other);
+}
+
+std::string PlaneImplicitFunction::getName() const
+{
+  return functionName();
+}
+
+double PlaneImplicitFunction::getOriginX() const
+{
+  return this->m_origin.getX();
+}
+
+double PlaneImplicitFunction::getOriginY() const
+{
+  return this->m_origin.getY();
+}
+
+double PlaneImplicitFunction::getOriginZ() const
+{
+  return this->m_origin.getZ();
+}
+
+double PlaneImplicitFunction::getNormalX() const
+{
+  return this->m_normal.getX();
+}
+
+double PlaneImplicitFunction::getNormalY() const
+{
+  return this->m_normal.getY();
+}
+
+double PlaneImplicitFunction::getNormalZ() const
+{
+  return this->m_normal.getZ();
+}
+
+double PlaneImplicitFunction::getUpX() const
+{
+  return this->m_up.getX();
+}
+
+double PlaneImplicitFunction::getUpY() const
+{
+  return this->m_up.getY();
+}
+
+double PlaneImplicitFunction::getUpZ() const
+{
+  return this->m_up.getZ();
+}
+
+double PlaneImplicitFunction::getWidth() const
+{
+  return this->m_width.getValue();
+}
+
+std::string PlaneImplicitFunction::toXMLString() const
+{
+  using namespace Poco::XML;
+
+  AutoPtr<Document> pDoc = new Document;
+  AutoPtr<Element> functionElement = pDoc->createElement("Function");
+  pDoc->appendChild(functionElement);
+  AutoPtr<Element> typeElement = pDoc->createElement("Type");
+  AutoPtr<Text> typeText = pDoc->createTextNode(this->getName());
+  typeElement->appendChild(typeText);
+  functionElement->appendChild(typeElement);
+
+  AutoPtr<Element> paramListElement = pDoc->createElement("ParameterList");
+
+  AutoPtr<Text> formatText = pDoc->createTextNode("%s%s%s%s");
+  paramListElement->appendChild(formatText);
+  functionElement->appendChild(paramListElement);
+
+  std::stringstream xmlstream;
+
+  DOMWriter writer;
+  writer.writeNode(xmlstream, pDoc);
+
+  std::string formattedXMLString = boost::str(boost::format(xmlstream.str().c_str())
+      % m_normal.toXMLString().c_str() % m_origin.toXMLString().c_str() % m_up.toXMLString() % m_width.toXMLString());
+  return formattedXMLString;
+}
+
+std::vector<double> PlaneImplicitFunction::asRotationMatrixVector() const
+{
+  using Mantid::Geometry::V3D;
+
+  //Normal.
+  V3D ax(m_normal.getX(), m_normal.getY(), m_normal.getZ());
+
+  //Up.
+  V3D ay(m_up.getX(), m_up.getY(), m_up.getZ());
+
+  if(dotProduct(ax, ay) != 0)
+  {
+    throw std::logic_error("Normal and Up Vectors must be perpendicular");
+  }
+
+  //Perpendicular. Calculate the cross product of the normal vector with the up vector.
+  Mantid::Geometry::V3D az = crossProduct(ax, ay);
+
+  ax.normalize();
+  ay.normalize();
+  az.normalize();
+
+  //b = vectors from original axes.
+  const V3D bx(1, 0, 0);
+  const V3D by(0, 1, 0);
+  const V3D bz(0, 0, 1);
+
+  std::vector<double> rotationMatrix(9);
+  rotationMatrix[0] = dotProduct(ax, bx);
+  rotationMatrix[1] = dotProduct(ax, by);
+  rotationMatrix[2] = dotProduct(ax, bz);
+  rotationMatrix[3] = dotProduct(ay, bx);
+  rotationMatrix[4] = dotProduct(ay, by);
+  rotationMatrix[5] = dotProduct(ay, bz);
+  rotationMatrix[6] = dotProduct(az, bx);
+  rotationMatrix[7] = dotProduct(az, by);
+  rotationMatrix[8] = dotProduct(az, bz);
+  return rotationMatrix;
+}
+
+/// Convenience method. Translates rotation result into Mantid Matrix form.
+Mantid::Geometry::Matrix<double> extractRotationMatrix(const PlaneImplicitFunction& plane)
+{
+  std::vector<double> rotationMatrixVector = plane.asRotationMatrixVector();
+  Mantid::Geometry::Matrix<double> rotationMatrix(3,3);
+  rotationMatrix[0][0] = rotationMatrixVector[0];
+  rotationMatrix[0][1] = rotationMatrixVector[1];
+  rotationMatrix[0][2] = rotationMatrixVector[2];
+  rotationMatrix[1][0] = rotationMatrixVector[3];
+  rotationMatrix[1][1] = rotationMatrixVector[4];
+  rotationMatrix[1][2] = rotationMatrixVector[5];
+  rotationMatrix[2][0] = rotationMatrixVector[6];
+  rotationMatrix[2][1] = rotationMatrixVector[7];
+  rotationMatrix[2][2] = rotationMatrixVector[8];
+  return rotationMatrix;
+}
+
+PlaneImplicitFunction::~PlaneImplicitFunction()
+{
+}
+}
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunctionParser.cpp b/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunctionParser.cpp
index 97f720be7be64c6b408eaa67d27aa2a5613296e8..59eda00293300acce886997c3b19c0b7a25093c4 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunctionParser.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/PlaneImplicitFunctionParser.cpp
@@ -1,104 +1,104 @@
-#include "MantidMDAlgorithms/PlaneImplicitFunctionParser.h"
-#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
-#include "MantidAPI/ImplicitFunctionParserFactory.h"
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-
-    DECLARE_IMPLICIT_FUNCTION_PARSER(PlaneImplicitFunctionParser);
-
-    PlaneImplicitFunctionParser::PlaneImplicitFunctionParser() : ImplicitFunctionParser(new InvalidParameterParser)
-    {
-    }
-
-    API::ImplicitFunctionBuilder* PlaneImplicitFunctionParser::createFunctionBuilder(Poco::XML::Element* functionElement)
-    {
-      API::ImplicitFunctionBuilder* functionBuilder;
-      if("Function" != functionElement->localName())
-      {
-        std::string message = "This is not a function element: " + functionElement->localName(); 
-        throw std::invalid_argument(message);
-      }
-
-      std::string type = functionElement->getChildElement("Type")->innerText();
-      if(PlaneImplicitFunction::functionName() != type)
-      {
-        if(0 == m_successor.get())
-        {
-          std::string message = "There is no successor function parser here for type: " + type;
-          throw std::runtime_error(message);
-        }
-        functionBuilder = m_successor->createFunctionBuilder(functionElement);
-      }
-      else
-      {
-        functionBuilder = parsePlaneFunction(functionElement);
-      }
-      return functionBuilder;
-    }
-
-    void PlaneImplicitFunctionParser::setSuccessorParser(ImplicitFunctionParser* parser)
-    {
-      this->m_successor = std::auto_ptr<ImplicitFunctionParser>(parser);
-    }
-
-    PlaneFunctionBuilder * PlaneImplicitFunctionParser::parsePlaneFunction(Poco::XML::Element* functionElement)
-    {
-      using namespace Poco::XML;
-      std::auto_ptr<PlaneFunctionBuilder> functionBuilder = std::auto_ptr<PlaneFunctionBuilder>(new PlaneFunctionBuilder);
-      NodeList* parameterList = functionElement->getChildElement("ParameterList")->childNodes();
-
-      //Loop through all parameters and attemp to identify those that are known to belong to this implicit function type.
-      for(unsigned int i = 0; i < parameterList->length(); i++)
-      {
-        Element* parameterElement = dynamic_cast<Element*>(parameterList->item(i));
-        std::auto_ptr<API::ImplicitFunctionParameter> parameter = std::auto_ptr<API::ImplicitFunctionParameter>(this->parseParameter(parameterElement));
-        if(NormalParameter::parameterName() == parameter->getName())
-        { 
-          NormalParameter* pCurr = dynamic_cast<NormalParameter*>(parameter.get());
-          NormalParameter normal(pCurr->getX(), pCurr->getY(), pCurr->getZ());
-          functionBuilder->addNormalParameter(normal);
-        }
-        else if(OriginParameter::parameterName() == parameter->getName())
-        {
-          OriginParameter*  pCurr = dynamic_cast<OriginParameter*>(parameter.get());
-          OriginParameter origin(pCurr->getX(), pCurr->getY(), pCurr->getZ());
-          functionBuilder->addOriginParameter(origin);
-        }
-        else if(UpParameter::parameterName() == parameter->getName())
-        {
-          UpParameter*  pCurr = dynamic_cast<UpParameter*>(parameter.get());
-          UpParameter up(pCurr->getX(), pCurr->getY(), pCurr->getZ());
-          functionBuilder->addUpParameter(up);
-        }
-        else if(WidthParameter::parameterName() == parameter->getName())
-        {
-          WidthParameter*  pCurr = dynamic_cast<WidthParameter*>(parameter.get());
-          WidthParameter width(pCurr->getValue());
-          functionBuilder->addWidthParameter(width);
-        }
-        else
-        {
-          std::string message = "The parameter cannot be processed or is unrecognised: " + parameter->getName();
-          message += ". The parameter cannot be processed or is unrecognised: " + (dynamic_cast<InvalidParameter*>(parameter.get()))->getValue();
-          throw std::invalid_argument(message);
-        }
-
-      }
-
-      return functionBuilder.release(); //convert to raw pointer and cancel smart management.
-    }
-
-    PlaneImplicitFunctionParser::~PlaneImplicitFunctionParser()
-    {
-    }
-
-    void PlaneImplicitFunctionParser::setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser)
-    {
-      this->m_paramParserRoot = std::auto_ptr<Mantid::API::ImplicitFunctionParameterParser>(parser);
-    }
-  }
-}
+#include "MantidMDAlgorithms/PlaneImplicitFunctionParser.h"
+#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
+#include "MantidAPI/ImplicitFunctionParserFactory.h"
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+
+    DECLARE_IMPLICIT_FUNCTION_PARSER(PlaneImplicitFunctionParser);
+
+    PlaneImplicitFunctionParser::PlaneImplicitFunctionParser() : ImplicitFunctionParser(new InvalidParameterParser)
+    {
+    }
+
+    API::ImplicitFunctionBuilder* PlaneImplicitFunctionParser::createFunctionBuilder(Poco::XML::Element* functionElement)
+    {
+      API::ImplicitFunctionBuilder* functionBuilder;
+      if("Function" != functionElement->localName())
+      {
+        std::string message = "This is not a function element: " + functionElement->localName(); 
+        throw std::invalid_argument(message);
+      }
+
+      std::string type = functionElement->getChildElement("Type")->innerText();
+      if(PlaneImplicitFunction::functionName() != type)
+      {
+        if(0 == m_successor.get())
+        {
+          std::string message = "There is no successor function parser here for type: " + type;
+          throw std::runtime_error(message);
+        }
+        functionBuilder = m_successor->createFunctionBuilder(functionElement);
+      }
+      else
+      {
+        functionBuilder = parsePlaneFunction(functionElement);
+      }
+      return functionBuilder;
+    }
+
+    void PlaneImplicitFunctionParser::setSuccessorParser(ImplicitFunctionParser* parser)
+    {
+      this->m_successor = std::auto_ptr<ImplicitFunctionParser>(parser);
+    }
+
+    PlaneFunctionBuilder * PlaneImplicitFunctionParser::parsePlaneFunction(Poco::XML::Element* functionElement)
+    {
+      using namespace Poco::XML;
+      std::auto_ptr<PlaneFunctionBuilder> functionBuilder = std::auto_ptr<PlaneFunctionBuilder>(new PlaneFunctionBuilder);
+      NodeList* parameterList = functionElement->getChildElement("ParameterList")->childNodes();
+
+      //Loop through all parameters and attemp to identify those that are known to belong to this implicit function type.
+      for(unsigned int i = 0; i < parameterList->length(); i++)
+      {
+        Element* parameterElement = dynamic_cast<Element*>(parameterList->item(i));
+        std::auto_ptr<API::ImplicitFunctionParameter> parameter = std::auto_ptr<API::ImplicitFunctionParameter>(this->parseParameter(parameterElement));
+        if(NormalParameter::parameterName() == parameter->getName())
+        { 
+          NormalParameter* pCurr = dynamic_cast<NormalParameter*>(parameter.get());
+          NormalParameter normal(pCurr->getX(), pCurr->getY(), pCurr->getZ());
+          functionBuilder->addNormalParameter(normal);
+        }
+        else if(OriginParameter::parameterName() == parameter->getName())
+        {
+          OriginParameter*  pCurr = dynamic_cast<OriginParameter*>(parameter.get());
+          OriginParameter origin(pCurr->getX(), pCurr->getY(), pCurr->getZ());
+          functionBuilder->addOriginParameter(origin);
+        }
+        else if(UpParameter::parameterName() == parameter->getName())
+        {
+          UpParameter*  pCurr = dynamic_cast<UpParameter*>(parameter.get());
+          UpParameter up(pCurr->getX(), pCurr->getY(), pCurr->getZ());
+          functionBuilder->addUpParameter(up);
+        }
+        else if(WidthParameter::parameterName() == parameter->getName())
+        {
+          WidthParameter*  pCurr = dynamic_cast<WidthParameter*>(parameter.get());
+          WidthParameter width(pCurr->getValue());
+          functionBuilder->addWidthParameter(width);
+        }
+        else
+        {
+          std::string message = "The parameter cannot be processed or is unrecognised: " + parameter->getName();
+          message += ". The parameter cannot be processed or is unrecognised: " + (dynamic_cast<InvalidParameter*>(parameter.get()))->getValue();
+          throw std::invalid_argument(message);
+        }
+
+      }
+
+      return functionBuilder.release(); //convert to raw pointer and cancel smart management.
+    }
+
+    PlaneImplicitFunctionParser::~PlaneImplicitFunctionParser()
+    {
+    }
+
+    void PlaneImplicitFunctionParser::setParameterParser(Mantid::API::ImplicitFunctionParameterParser* parser)
+    {
+      this->m_paramParserRoot = std::auto_ptr<Mantid::API::ImplicitFunctionParameterParser>(parser);
+    }
+  }
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/SingleValueParameterParser.cpp b/Code/Mantid/Framework/MDAlgorithms/src/SingleValueParameterParser.cpp
index bce6d2b8299167eec5db908e5f399ce8ae0ef3e0..4958e02064425299c9058fa95ff3f27c34808b4a 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/SingleValueParameterParser.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/SingleValueParameterParser.cpp
@@ -1,12 +1,12 @@
-#include "MantidMDAlgorithms/SingleValueParameterParser.h"
-#include "MantidAPI/ImplicitFunctionParameterParserFactory.h"
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-    DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(HeightParameterParser)
-    DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(WidthParameterParser)
-    DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(DepthParameterParser)
-  }
-}
+#include "MantidMDAlgorithms/SingleValueParameterParser.h"
+#include "MantidAPI/ImplicitFunctionParameterParserFactory.h"
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+    DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(HeightParameterParser)
+    DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(WidthParameterParser)
+    DECLARE_IMPLICIT_FUNCTION_PARAMETER_PARSER(DepthParameterParser)
+  }
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/src/WidthParameter.cpp b/Code/Mantid/Framework/MDAlgorithms/src/WidthParameter.cpp
index 2fd48913fb7e696e956e52d76432cd3b8c23ec08..3540ab719c4c6ccb42c0079375b2e27c5dce8ff0 100644
--- a/Code/Mantid/Framework/MDAlgorithms/src/WidthParameter.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/src/WidthParameter.cpp
@@ -1,87 +1,87 @@
-#include <boost/algorithm/string.hpp>
-#include <boost/format.hpp>
-#include "MantidMDAlgorithms/WidthParameter.h"
-
-namespace Mantid
-{
-  namespace MDAlgorithms
-  {
-
-    WidthParameter::WidthParameter(double width) : m_width(width)
-    {
-      if(width >= 0)
-      {
-        m_isValid = true;
-      }
-      else
-      {
-        m_isValid = false;
-      }
-    }
-
-    WidthParameter::WidthParameter()
-    { 
-      m_isValid = false;
-    }
-
-    WidthParameter::WidthParameter(const WidthParameter& other)
-    {
-      this->m_isValid = other.m_isValid;
-      this->m_width = other.m_width;
-    }
-
-    WidthParameter& WidthParameter::operator=(const WidthParameter& other)
-    {
-      if (&other != this)
-      {
-        this->m_isValid = other.m_isValid;
-        this->m_width = other.m_width;
-      }
-      return *this;
-    }
-
-    std::string WidthParameter::getName() const
-    {
-      return parameterName();
-    }
-
-    bool WidthParameter::isValid() const
-    {
-      return this->m_isValid;
-    }
-
-    WidthParameter* WidthParameter::clone() const
-    {
-      return new WidthParameter(m_width);
-    }
-
-    WidthParameter::~WidthParameter()
-    {
-    }
-
-    double WidthParameter::getValue() const
-    {
-      return m_width;
-    }
-
-
-    bool WidthParameter::operator==(const WidthParameter &other) const
-    {
-      return this->m_width == other.m_width;
-    }
-
-    bool WidthParameter::operator!=(const WidthParameter &other) const
-    {
-      return !(*this == other);
-    }
-
-    std::string WidthParameter::toXMLString() const
-    {
-      std::string valueXMLtext = boost::str(boost::format("%.4f") % m_width);
-
-      return this->parameterXMLTemplate(valueXMLtext);
-    }
-
-  }
-
-}
+#include <boost/algorithm/string.hpp>
+#include <boost/format.hpp>
+#include "MantidMDAlgorithms/WidthParameter.h"
+
+namespace Mantid
+{
+  namespace MDAlgorithms
+  {
+
+    WidthParameter::WidthParameter(double width) : m_width(width)
+    {
+      if(width >= 0)
+      {
+        m_isValid = true;
+      }
+      else
+      {
+        m_isValid = false;
+      }
+    }
+
+    WidthParameter::WidthParameter()
+    { 
+      m_isValid = false;
+    }
+
+    WidthParameter::WidthParameter(const WidthParameter& other)
+    {
+      this->m_isValid = other.m_isValid;
+      this->m_width = other.m_width;
+    }
+
+    WidthParameter& WidthParameter::operator=(const WidthParameter& other)
+    {
+      if (&other != this)
+      {
+        this->m_isValid = other.m_isValid;
+        this->m_width = other.m_width;
+      }
+      return *this;
+    }
+
+    std::string WidthParameter::getName() const
+    {
+      return parameterName();
+    }
+
+    bool WidthParameter::isValid() const
+    {
+      return this->m_isValid;
+    }
+
+    WidthParameter* WidthParameter::clone() const
+    {
+      return new WidthParameter(m_width);
+    }
+
+    WidthParameter::~WidthParameter()
+    {
+    }
+
+    double WidthParameter::getValue() const
+    {
+      return m_width;
+    }
+
+
+    bool WidthParameter::operator==(const WidthParameter &other) const
+    {
+      return this->m_width == other.m_width;
+    }
+
+    bool WidthParameter::operator!=(const WidthParameter &other) const
+    {
+      return !(*this == other);
+    }
+
+    std::string WidthParameter::toXMLString() const
+    {
+      std::string valueXMLtext = boost::str(boost::format("%.4f") % m_width);
+
+      return this->parameterXMLTemplate(valueXMLtext);
+    }
+
+  }
+
+}
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/BoxBuilderTest.h b/Code/Mantid/Framework/MDAlgorithms/test/BoxBuilderTest.h
index c75ef56fbcfb5b581fa2d5550460cc07d9fa8cc8..d0d03a44cba5e9824a65f71eebeff3d405578798 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/BoxBuilderTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/BoxBuilderTest.h
@@ -1,74 +1,74 @@
-#ifndef BOX_FUNCTION_BUILDER_TEST_H_
-#define BOX_FUNCTION_BUILDER_TEST_H_
-
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <cxxtest/TestSuite.h>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/BoxFunctionBuilder.h"
-
-using namespace Mantid::MDAlgorithms;
-
-class BoxBuilderTest : public CxxTest::TestSuite
-{
-
-
-public:
-
-    void testCreateInvalidOriginThrows()
-    {
-      BoxFunctionBuilder builder;
-      builder.addWidthParameter(WidthParameter(1));
-      builder.addHeightParameter(HeightParameter(1));
-      builder.addDepthParameter(DepthParameter(1));
-      TSM_ASSERT_THROWS("Building without a valid origin is not possible.", builder.create(), std::invalid_argument);
-    }
-
-    void testCreateInvalidWidthThrows()
-    {
-      BoxFunctionBuilder builder;
-      builder.addHeightParameter(HeightParameter(1));
-      builder.addDepthParameter(DepthParameter(1));
-      builder.addOriginParameter(OriginParameter(1, 1, 1));
-      TSM_ASSERT_THROWS("Building without a valid width is not possible.", builder.create(), std::invalid_argument);
-    }
-
-    void testCreateInvalidDepthThrows()
-    {
-      BoxFunctionBuilder builder;
-      builder.addWidthParameter(WidthParameter(1));
-      builder.addHeightParameter(HeightParameter(1));
-      builder.addOriginParameter(OriginParameter(1, 1, 1));
-      TSM_ASSERT_THROWS("Building without a valid depth is not possible.", builder.create(), std::invalid_argument);
-    }
-
-    void testCreateInvalidHeightThrows()
-    {
-      BoxFunctionBuilder builder;
-      builder.addWidthParameter(WidthParameter(1));
-      builder.addDepthParameter(DepthParameter(1));
-      builder.addOriginParameter(OriginParameter(1, 1, 1));
-      TSM_ASSERT_THROWS("Building without a valid height is not possible.", builder.create(), std::invalid_argument);
-    }
-
-    void testCreate()
-    {
-      BoxFunctionBuilder builder;
-      builder.addWidthParameter(WidthParameter(1));
-      builder.addHeightParameter(HeightParameter(2));
-      builder.addDepthParameter(DepthParameter(3));
-      builder.addOriginParameter(OriginParameter(4, 5, 6));
-      boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(builder.create());
-
-      BoxImplicitFunction* boxFunction = dynamic_cast<BoxImplicitFunction*>(impFunction.get());
-      TSM_ASSERT("The function generated is not a boxFunction", boxFunction != NULL);
-      TSM_ASSERT_EQUALS("Box function has not been generated by builder correctly", 4.5 ,boxFunction->getUpperX());
-      TSM_ASSERT_EQUALS("Box function has not been generated by builder correctly", 6 ,boxFunction->getUpperY());
-      TSM_ASSERT_EQUALS("Box function has not been generated by builder correctly", 7.5 ,boxFunction->getUpperZ());
-    }
-
-};
-
-
-
-#endif
+#ifndef BOX_FUNCTION_BUILDER_TEST_H_
+#define BOX_FUNCTION_BUILDER_TEST_H_
+
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <cxxtest/TestSuite.h>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/BoxFunctionBuilder.h"
+
+using namespace Mantid::MDAlgorithms;
+
+class BoxBuilderTest : public CxxTest::TestSuite
+{
+
+
+public:
+
+    void testCreateInvalidOriginThrows()
+    {
+      BoxFunctionBuilder builder;
+      builder.addWidthParameter(WidthParameter(1));
+      builder.addHeightParameter(HeightParameter(1));
+      builder.addDepthParameter(DepthParameter(1));
+      TSM_ASSERT_THROWS("Building without a valid origin is not possible.", builder.create(), std::invalid_argument);
+    }
+
+    void testCreateInvalidWidthThrows()
+    {
+      BoxFunctionBuilder builder;
+      builder.addHeightParameter(HeightParameter(1));
+      builder.addDepthParameter(DepthParameter(1));
+      builder.addOriginParameter(OriginParameter(1, 1, 1));
+      TSM_ASSERT_THROWS("Building without a valid width is not possible.", builder.create(), std::invalid_argument);
+    }
+
+    void testCreateInvalidDepthThrows()
+    {
+      BoxFunctionBuilder builder;
+      builder.addWidthParameter(WidthParameter(1));
+      builder.addHeightParameter(HeightParameter(1));
+      builder.addOriginParameter(OriginParameter(1, 1, 1));
+      TSM_ASSERT_THROWS("Building without a valid depth is not possible.", builder.create(), std::invalid_argument);
+    }
+
+    void testCreateInvalidHeightThrows()
+    {
+      BoxFunctionBuilder builder;
+      builder.addWidthParameter(WidthParameter(1));
+      builder.addDepthParameter(DepthParameter(1));
+      builder.addOriginParameter(OriginParameter(1, 1, 1));
+      TSM_ASSERT_THROWS("Building without a valid height is not possible.", builder.create(), std::invalid_argument);
+    }
+
+    void testCreate()
+    {
+      BoxFunctionBuilder builder;
+      builder.addWidthParameter(WidthParameter(1));
+      builder.addHeightParameter(HeightParameter(2));
+      builder.addDepthParameter(DepthParameter(3));
+      builder.addOriginParameter(OriginParameter(4, 5, 6));
+      boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(builder.create());
+
+      BoxImplicitFunction* boxFunction = dynamic_cast<BoxImplicitFunction*>(impFunction.get());
+      TSM_ASSERT("The function generated is not a boxFunction", boxFunction != NULL);
+      TSM_ASSERT_EQUALS("Box function has not been generated by builder correctly", 4.5 ,boxFunction->getUpperX());
+      TSM_ASSERT_EQUALS("Box function has not been generated by builder correctly", 6 ,boxFunction->getUpperY());
+      TSM_ASSERT_EQUALS("Box function has not been generated by builder correctly", 7.5 ,boxFunction->getUpperZ());
+    }
+
+};
+
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionParserTest.h
index 22ec6489d227ccb280cf95214458e05fc7c21192..a41ec4bcadaa1edceda00bddf9ed689e5809d8ab 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionParserTest.h
@@ -1,104 +1,104 @@
-#ifndef TEST_BOX_FUNCTION_PARSER_H_
-#define TEST_BOX_FUNCTION_PARSER_H_
-
-#include "FunctionParserTest.h"
-#include <vector>
-#include <memory>
-#include <boost/scoped_ptr.hpp>
-
-#include "MantidMDAlgorithms/BoxImplicitFunctionParser.h"
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-using namespace Mantid::MDAlgorithms;
-
-class  BoxImplicitFunctionParserTest : public CxxTest::TestSuite, FunctionParserTest 
-{
-
-public:
-
-  void testBadXMLSchemaThrows(void)
-  {
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><X><Type>BoxImplicitFunction</Type><ParameterList></ParameterList></X>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    BoxImplicitFunctionParser functionParser;
-    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as Function element was expected, but not found.", functionParser.createFunctionBuilder(pRootElem), std::invalid_argument );
-  }
-
-  void testNoSuccessorFunctionParserThrows(void)
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>UnknownFunction</Type><ParameterList></ParameterList></Function>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    BoxImplicitFunctionParser functionParser;
-    TSM_ASSERT_THROWS("There is no successor parser setup for the PlaneFunctionParser", functionParser.createFunctionBuilder(pRootElem), std::runtime_error );
-  }
-
-  void testCallsFunctionParserChain()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>OtherFunctionType</Type><ParameterList></ParameterList></Function>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    MockFunctionParser* mockFuncParser = new MockFunctionParser(constructRootParameterParser());
-    EXPECT_CALL(*mockFuncParser, createFunctionBuilder(testing::_))
-      .Times(1);
-
-    BoxImplicitFunctionParser functionParser;
-    functionParser.setSuccessorParser(mockFuncParser);
-    ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
-    delete builder;
-
-    TSM_ASSERT("Incorrect calling of nested successor function parsers", testing::Mock::VerifyAndClearExpectations(mockFuncParser))
-  }
-
-  void testParseBoxFunction(void)
-  {
-    using namespace Mantid::API;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>BoxImplicitFunction</Type><ParameterList><Parameter><Type>WidthParameter</Type><Value>1</Value></Parameter><Parameter><Type>HeightParameter</Type><Value>2</Value></Parameter><Parameter><Type>DepthParameter</Type><Value>3</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>4, 5, 6</Value></Parameter></ParameterList></Function>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    BoxImplicitFunctionParser functionParser;
-
-
-    MockParameterParser* paramParser = new MockParameterParser;
-        EXPECT_CALL(*paramParser, createParameter(testing::_))
-            .WillOnce(testing::Return(new WidthParameter(1)))
-            .WillOnce(testing::Return(new HeightParameter(2)))
-            .WillOnce(testing::Return(new DepthParameter(3)))
-            .WillOnce(testing::Return(new OriginParameter(4, 5, 6)))
-            ;
-
-		functionParser.setParameterParser(paramParser);
-
-
-    ImplicitFunctionBuilder* implicitFunctionBuilder = functionParser.createFunctionBuilder(pRootElem);
-    boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(implicitFunctionBuilder->create());
-
-    BoxImplicitFunction* boxFunction = dynamic_cast<BoxImplicitFunction*>(impFunction.get());
-    TSM_ASSERT("A box implicit function should have been created from the xml.", boxFunction != NULL);
-  }
-   
-
-};
-
-#endif
+#ifndef TEST_BOX_FUNCTION_PARSER_H_
+#define TEST_BOX_FUNCTION_PARSER_H_
+
+#include "FunctionParserTest.h"
+#include <vector>
+#include <memory>
+#include <boost/scoped_ptr.hpp>
+
+#include "MantidMDAlgorithms/BoxImplicitFunctionParser.h"
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+using namespace Mantid::MDAlgorithms;
+
+class  BoxImplicitFunctionParserTest : public CxxTest::TestSuite, FunctionParserTest 
+{
+
+public:
+
+  void testBadXMLSchemaThrows(void)
+  {
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><X><Type>BoxImplicitFunction</Type><ParameterList></ParameterList></X>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    BoxImplicitFunctionParser functionParser;
+    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as Function element was expected, but not found.", functionParser.createFunctionBuilder(pRootElem), std::invalid_argument );
+  }
+
+  void testNoSuccessorFunctionParserThrows(void)
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>UnknownFunction</Type><ParameterList></ParameterList></Function>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    BoxImplicitFunctionParser functionParser;
+    TSM_ASSERT_THROWS("There is no successor parser setup for the PlaneFunctionParser", functionParser.createFunctionBuilder(pRootElem), std::runtime_error );
+  }
+
+  void testCallsFunctionParserChain()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>OtherFunctionType</Type><ParameterList></ParameterList></Function>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    MockFunctionParser* mockFuncParser = new MockFunctionParser(constructRootParameterParser());
+    EXPECT_CALL(*mockFuncParser, createFunctionBuilder(testing::_))
+      .Times(1);
+
+    BoxImplicitFunctionParser functionParser;
+    functionParser.setSuccessorParser(mockFuncParser);
+    ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
+    delete builder;
+
+    TSM_ASSERT("Incorrect calling of nested successor function parsers", testing::Mock::VerifyAndClearExpectations(mockFuncParser))
+  }
+
+  void testParseBoxFunction(void)
+  {
+    using namespace Mantid::API;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>BoxImplicitFunction</Type><ParameterList><Parameter><Type>WidthParameter</Type><Value>1</Value></Parameter><Parameter><Type>HeightParameter</Type><Value>2</Value></Parameter><Parameter><Type>DepthParameter</Type><Value>3</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>4, 5, 6</Value></Parameter></ParameterList></Function>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    BoxImplicitFunctionParser functionParser;
+
+
+    MockParameterParser* paramParser = new MockParameterParser;
+        EXPECT_CALL(*paramParser, createParameter(testing::_))
+            .WillOnce(testing::Return(new WidthParameter(1)))
+            .WillOnce(testing::Return(new HeightParameter(2)))
+            .WillOnce(testing::Return(new DepthParameter(3)))
+            .WillOnce(testing::Return(new OriginParameter(4, 5, 6)))
+            ;
+
+		functionParser.setParameterParser(paramParser);
+
+
+    ImplicitFunctionBuilder* implicitFunctionBuilder = functionParser.createFunctionBuilder(pRootElem);
+    boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(implicitFunctionBuilder->create());
+
+    BoxImplicitFunction* boxFunction = dynamic_cast<BoxImplicitFunction*>(impFunction.get());
+    TSM_ASSERT("A box implicit function should have been created from the xml.", boxFunction != NULL);
+  }
+   
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionTest.h b/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionTest.h
index 45a5d514721a93a93b77069b01b3359706044ad8..d593ebed276eaac56141d34f86c7eb4dba1fe0a8 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/BoxImplicitFunctionTest.h
@@ -1,185 +1,185 @@
-#ifndef BOX_IMPLICIT_FUNCTION_TEST_H_
-#define BOX_IMPLICIT_FUNCTION_TEST_H_
-
-#include <cxxtest/TestSuite.h>
-#include <cmath>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <vector>
-#include "MantidMDAlgorithms/BoxImplicitFunction.h"
-#include <boost/scoped_ptr.hpp>
-
-using namespace Mantid::MDAlgorithms;
-
-class BoxImplicitFunctionTest: public CxxTest::TestSuite
-{
-private:
-
-  //Helper class to verify correct behaviour against a 3D Point.
-  class MockPoint3D: public Mantid::API::Point3D
-  {
-  public:
-    MOCK_CONST_METHOD0  (getX, double());
-    MOCK_CONST_METHOD0(getY, double());
-    MOCK_CONST_METHOD0(getZ, double());
-  };
-
-  //Helper method to construct a valid vanilla box implicit function.
-  static BoxImplicitFunction* constructBoxImplicitFunction()
-  {
-    OriginParameter origin(1, 2, 3); //Non-orthogonal normal used so that getters can be properly verified
-    WidthParameter width(5);
-    HeightParameter height(4);
-    DepthParameter depth(6);
-    return new BoxImplicitFunction(width, height, depth, origin);
-  }
-
-public:
-
-void testBoxImplicitFunctionConstruction(void)
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  TSM_ASSERT_EQUALS("Upper x component not wired-up correctly", 3.5, box->getUpperX());
-  TSM_ASSERT_EQUALS("Lower x component not wired-up correctly", -1.5, box->getLowerX());
-  TSM_ASSERT_EQUALS("Upper y component not wired-up correctly", 4, box->getUpperY());
-  TSM_ASSERT_EQUALS("Lower y component not wired-up correctly", 0, box->getLowerY());
-  TSM_ASSERT_EQUALS("Upper z component not wired-up correctly", 6, box->getUpperZ());
-  TSM_ASSERT_EQUALS("Lower z component not wired-up correctly", 0, box->getLowerZ());
-}
-
-void testEvaluateInsidePoint()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(0));
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should have been found to be inside the region bounded by the box.", isInside);
-}
-
-void testEvaluateOutsideXMax()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(1).WillRepeatedly(testing::Return(10));  //puts point outside of box.
-  EXPECT_CALL(point, getY()).Times(0);
-  EXPECT_CALL(point, getZ()).Times(0);
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
-}
-
-void testEvaluateOutsideXMin()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(-10));  //puts point outside of box.
-  EXPECT_CALL(point, getY()).Times(0);
-  EXPECT_CALL(point, getZ()).Times(0);
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
-}
-
-void testEvaluateOutsideYMax()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getY()).Times(1).WillRepeatedly(testing::Return(10)); //puts point outside of box.
-  EXPECT_CALL(point, getZ()).Times(0);
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
-}
-
-void testEvaluateOutsideYMin()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(-10));  //puts point outside of box.
-  EXPECT_CALL(point, getZ()).Times(0);
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
-}
-
-void testEvaluateOutsideZMax()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getZ()).Times(1).WillRepeatedly(testing::Return(10));  //puts point outside of box.
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
-}
-
-void testEvaluateOutsideZMin()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-
-  MockPoint3D point;
-  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(0));
-  EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(-10));  //puts point outside of box.
-
-  bool isInside = box->evaluate(&point);
-  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
-}
-
-void testToXML()
-{
-  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
-  //string comparison on generated xml.
-  TSM_ASSERT_EQUALS("The xml generated by this function did not match the expected schema.", "<Function><Type>BoxImplicitFunction</Type><ParameterList><Parameter><Type>WidthParameter</Type><Value>5.0000</Value></Parameter><Parameter><Type>HeightParameter</Type><Value>4.0000</Value></Parameter><Parameter><Type>DepthParameter</Type><Value>6.0000</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>1.0000, 2.0000, 3.0000</Value></Parameter></ParameterList></Function>", box->toXMLString());
-}
-
-void testEqual()
-{
-  OriginParameter o(4, 5, 6);
-  WidthParameter width(1);
-  HeightParameter height(2);
-  DepthParameter depth(3);
-  BoxImplicitFunction A(width, height, depth, o);
-  BoxImplicitFunction B(width, height, depth, o);
-  TSM_ASSERT_EQUALS("These two objects should be considered equal.", A, B);
-}
-
-void testNotEqual()
-{
-  OriginParameter originA(4, 5, 6);
-  OriginParameter originB(4, 5, 2); //differs
-  WidthParameter widthA(1);
-  WidthParameter widthB(2); //differs
-  HeightParameter heightA(2);
-  HeightParameter heightB(3); //differs
-  DepthParameter depthA(3);
-  DepthParameter depthB(4); //differs
-  BoxImplicitFunction A(widthA, heightA, depthA, originA); //base-line to compare to.
-  BoxImplicitFunction B(widthB, heightA, depthA, originA);
-  BoxImplicitFunction C(widthA, heightB, depthA, originA);
-  BoxImplicitFunction D(widthA, heightA, depthB, originA);
-  BoxImplicitFunction E(widthA, heightA, depthA, originB);
-
-  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, B);
-  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, C);
-  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, D);
-  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, E);
-}
-
-
-};
-
-#endif
+#ifndef BOX_IMPLICIT_FUNCTION_TEST_H_
+#define BOX_IMPLICIT_FUNCTION_TEST_H_
+
+#include <cxxtest/TestSuite.h>
+#include <cmath>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <vector>
+#include "MantidMDAlgorithms/BoxImplicitFunction.h"
+#include <boost/scoped_ptr.hpp>
+
+using namespace Mantid::MDAlgorithms;
+
+class BoxImplicitFunctionTest: public CxxTest::TestSuite
+{
+private:
+
+  //Helper class to verify correct behaviour against a 3D Point.
+  class MockPoint3D: public Mantid::API::Point3D
+  {
+  public:
+    MOCK_CONST_METHOD0  (getX, double());
+    MOCK_CONST_METHOD0(getY, double());
+    MOCK_CONST_METHOD0(getZ, double());
+  };
+
+  //Helper method to construct a valid vanilla box implicit function.
+  static BoxImplicitFunction* constructBoxImplicitFunction()
+  {
+    OriginParameter origin(1, 2, 3); //Non-orthogonal normal used so that getters can be properly verified
+    WidthParameter width(5);
+    HeightParameter height(4);
+    DepthParameter depth(6);
+    return new BoxImplicitFunction(width, height, depth, origin);
+  }
+
+public:
+
+void testBoxImplicitFunctionConstruction(void)
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  TSM_ASSERT_EQUALS("Upper x component not wired-up correctly", 3.5, box->getUpperX());
+  TSM_ASSERT_EQUALS("Lower x component not wired-up correctly", -1.5, box->getLowerX());
+  TSM_ASSERT_EQUALS("Upper y component not wired-up correctly", 4, box->getUpperY());
+  TSM_ASSERT_EQUALS("Lower y component not wired-up correctly", 0, box->getLowerY());
+  TSM_ASSERT_EQUALS("Upper z component not wired-up correctly", 6, box->getUpperZ());
+  TSM_ASSERT_EQUALS("Lower z component not wired-up correctly", 0, box->getLowerZ());
+}
+
+void testEvaluateInsidePoint()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(0));
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should have been found to be inside the region bounded by the box.", isInside);
+}
+
+void testEvaluateOutsideXMax()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(1).WillRepeatedly(testing::Return(10));  //puts point outside of box.
+  EXPECT_CALL(point, getY()).Times(0);
+  EXPECT_CALL(point, getZ()).Times(0);
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
+}
+
+void testEvaluateOutsideXMin()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(-10));  //puts point outside of box.
+  EXPECT_CALL(point, getY()).Times(0);
+  EXPECT_CALL(point, getZ()).Times(0);
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
+}
+
+void testEvaluateOutsideYMax()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getY()).Times(1).WillRepeatedly(testing::Return(10)); //puts point outside of box.
+  EXPECT_CALL(point, getZ()).Times(0);
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
+}
+
+void testEvaluateOutsideYMin()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(-10));  //puts point outside of box.
+  EXPECT_CALL(point, getZ()).Times(0);
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
+}
+
+void testEvaluateOutsideZMax()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getZ()).Times(1).WillRepeatedly(testing::Return(10));  //puts point outside of box.
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
+}
+
+void testEvaluateOutsideZMin()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+
+  MockPoint3D point;
+  EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(0));
+  EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(-10));  //puts point outside of box.
+
+  bool isInside = box->evaluate(&point);
+  TSM_ASSERT("The point should not have been found to be inside the region bounded by the box.", !isInside);
+}
+
+void testToXML()
+{
+  boost::scoped_ptr<BoxImplicitFunction> box(constructBoxImplicitFunction());
+  //string comparison on generated xml.
+  TSM_ASSERT_EQUALS("The xml generated by this function did not match the expected schema.", "<Function><Type>BoxImplicitFunction</Type><ParameterList><Parameter><Type>WidthParameter</Type><Value>5.0000</Value></Parameter><Parameter><Type>HeightParameter</Type><Value>4.0000</Value></Parameter><Parameter><Type>DepthParameter</Type><Value>6.0000</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>1.0000, 2.0000, 3.0000</Value></Parameter></ParameterList></Function>", box->toXMLString());
+}
+
+void testEqual()
+{
+  OriginParameter o(4, 5, 6);
+  WidthParameter width(1);
+  HeightParameter height(2);
+  DepthParameter depth(3);
+  BoxImplicitFunction A(width, height, depth, o);
+  BoxImplicitFunction B(width, height, depth, o);
+  TSM_ASSERT_EQUALS("These two objects should be considered equal.", A, B);
+}
+
+void testNotEqual()
+{
+  OriginParameter originA(4, 5, 6);
+  OriginParameter originB(4, 5, 2); //differs
+  WidthParameter widthA(1);
+  WidthParameter widthB(2); //differs
+  HeightParameter heightA(2);
+  HeightParameter heightB(3); //differs
+  DepthParameter depthA(3);
+  DepthParameter depthB(4); //differs
+  BoxImplicitFunction A(widthA, heightA, depthA, originA); //base-line to compare to.
+  BoxImplicitFunction B(widthB, heightA, depthA, originA);
+  BoxImplicitFunction C(widthA, heightB, depthA, originA);
+  BoxImplicitFunction D(widthA, heightA, depthB, originA);
+  BoxImplicitFunction E(widthA, heightA, depthA, originB);
+
+  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, B);
+  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, C);
+  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, D);
+  TSM_ASSERT_DIFFERS("These two objects should NOT be considered equal.", A, E);
+}
+
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/BoxInterpreterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/BoxInterpreterTest.h
index 95f4243d8e8df250185029218c92ab91ecfa13bb..d784491262d4afcba8cbaff09f5bbaba0a8db8b4 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/BoxInterpreterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/BoxInterpreterTest.h
@@ -1,103 +1,103 @@
-#ifndef BOX_FUNCTION_INTERPRETER_TEST_H_
-#define BOX_FUNCTION_INTERPRETER_TEST_H_
-
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <cxxtest/TestSuite.h>
-#include <boost/shared_ptr.hpp>
-#include <MantidMDAlgorithms/BoxInterpreter.h>
-#include <MantidMDAlgorithms/PlaneImplicitFunction.h>
-#include <MantidMDAlgorithms/CompositeImplicitFunction.h>
-#include <MantidMDAlgorithms/BoxImplicitFunction.h>
-
-using namespace Mantid::MDAlgorithms;
-
-class BoxInterpreterTest : public CxxTest::TestSuite
-{
-
-
-public:
-
-   void testFindsNothing()
-   {
-     class FakeImplicitFunction : public Mantid::API::ImplicitFunction
-     {
-       virtual bool evaluate(const Mantid::API::Point3D*) const { return true;}
-       virtual std::string getName() const {return "FakeImplicitFunction";}
-       virtual std::string toXMLString() const {return "";}
-     };
-     FakeImplicitFunction fakeFunction;
-     BoxInterpreter boxInterpreter;
-     std::vector<double> box = boxInterpreter(&fakeFunction);
-     TSM_ASSERT_EQUALS("The box min x should be zero.", 0, box[0]);
-     TSM_ASSERT_EQUALS("The box max x should be zero.", 0, box[1]);
-     TSM_ASSERT_EQUALS("The box min y should be zero.", 0, box[2]);
-     TSM_ASSERT_EQUALS("The box max y should be zero.", 0, box[3]);
-     TSM_ASSERT_EQUALS("The box min z should be zero.", 0, box[4]);
-     TSM_ASSERT_EQUALS("The box max z should be zero.", 0, box[5]);
-   }
-
-    void testFindsInnerSurfaces()
-    {
-      OriginParameter originOne(0,0,0);
-      WidthParameter widthOne(1);
-      HeightParameter heightOne(4);
-      DepthParameter depthOne(5);
-      BoxImplicitFunction*  boxOne = new BoxImplicitFunction(widthOne, heightOne, depthOne, originOne);
-
-      OriginParameter originTwo(0,0,0);
-      WidthParameter widthTwo(2);
-      HeightParameter heightTwo(3);
-      DepthParameter depthTwo(6);
-      BoxImplicitFunction* boxTwo = new BoxImplicitFunction(widthTwo, heightTwo, depthTwo, originTwo);
-
-      CompositeImplicitFunction* innerComposite = new CompositeImplicitFunction;
-      innerComposite->addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxTwo));
-
-      CompositeImplicitFunction topComposite;
-      topComposite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxOne));
-      topComposite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(innerComposite));
-
-      BoxInterpreter boxInterpreter;
-      std::vector<double> box = boxInterpreter(&topComposite);
-
-      TSM_ASSERT_EQUALS("The box min x is incorrect", -0.5, box[0]); //From box1
-      TSM_ASSERT_EQUALS("The box max x is incorrect", 0.5, box[1]);  //From box1
-      TSM_ASSERT_EQUALS("The box min y is incorrect", -1.5, box[2]); //From box2
-      TSM_ASSERT_EQUALS("The box max y is incorrect", 1.5, box[3]);  //From box2
-      TSM_ASSERT_EQUALS("The box min z is incorrect", -2.5, box[4]); //From box1
-      TSM_ASSERT_EQUALS("The box max z is incorrect", 2.5, box[5]);  //From box1
-
-    }
-
-  void testGetAllBoxes()
-  {
-    OriginParameter originOne(0, 0, 0);
-    WidthParameter widthOne(1);
-    HeightParameter heightOne(4);
-    DepthParameter depthOne(5);
-    BoxImplicitFunction* boxOne = new BoxImplicitFunction(widthOne, heightOne, depthOne, originOne);
-
-    OriginParameter originTwo(0, 0, 0);
-    WidthParameter widthTwo(2);
-    HeightParameter heightTwo(3);
-    DepthParameter depthTwo(6);
-    BoxImplicitFunction* boxTwo = new BoxImplicitFunction(widthTwo, heightTwo, depthTwo, originTwo);
-
-    CompositeImplicitFunction compositeFunction;
-    compositeFunction.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxOne));
-    compositeFunction.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxTwo));
-
-    BoxInterpreter interpreter;
-    boxVector boxes = interpreter.getAllBoxes(&compositeFunction);
-
-    TSM_ASSERT_EQUALS("Wrong number of boxes returned.", 2, boxes.size());
-  }
-
-    
-
-};
-
-
-
-#endif
+#ifndef BOX_FUNCTION_INTERPRETER_TEST_H_
+#define BOX_FUNCTION_INTERPRETER_TEST_H_
+
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <cxxtest/TestSuite.h>
+#include <boost/shared_ptr.hpp>
+#include <MantidMDAlgorithms/BoxInterpreter.h>
+#include <MantidMDAlgorithms/PlaneImplicitFunction.h>
+#include <MantidMDAlgorithms/CompositeImplicitFunction.h>
+#include <MantidMDAlgorithms/BoxImplicitFunction.h>
+
+using namespace Mantid::MDAlgorithms;
+
+class BoxInterpreterTest : public CxxTest::TestSuite
+{
+
+
+public:
+
+   void testFindsNothing()
+   {
+     class FakeImplicitFunction : public Mantid::API::ImplicitFunction
+     {
+       virtual bool evaluate(const Mantid::API::Point3D*) const { return true;}
+       virtual std::string getName() const {return "FakeImplicitFunction";}
+       virtual std::string toXMLString() const {return "";}
+     };
+     FakeImplicitFunction fakeFunction;
+     BoxInterpreter boxInterpreter;
+     std::vector<double> box = boxInterpreter(&fakeFunction);
+     TSM_ASSERT_EQUALS("The box min x should be zero.", 0, box[0]);
+     TSM_ASSERT_EQUALS("The box max x should be zero.", 0, box[1]);
+     TSM_ASSERT_EQUALS("The box min y should be zero.", 0, box[2]);
+     TSM_ASSERT_EQUALS("The box max y should be zero.", 0, box[3]);
+     TSM_ASSERT_EQUALS("The box min z should be zero.", 0, box[4]);
+     TSM_ASSERT_EQUALS("The box max z should be zero.", 0, box[5]);
+   }
+
+    void testFindsInnerSurfaces()
+    {
+      OriginParameter originOne(0,0,0);
+      WidthParameter widthOne(1);
+      HeightParameter heightOne(4);
+      DepthParameter depthOne(5);
+      BoxImplicitFunction*  boxOne = new BoxImplicitFunction(widthOne, heightOne, depthOne, originOne);
+
+      OriginParameter originTwo(0,0,0);
+      WidthParameter widthTwo(2);
+      HeightParameter heightTwo(3);
+      DepthParameter depthTwo(6);
+      BoxImplicitFunction* boxTwo = new BoxImplicitFunction(widthTwo, heightTwo, depthTwo, originTwo);
+
+      CompositeImplicitFunction* innerComposite = new CompositeImplicitFunction;
+      innerComposite->addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxTwo));
+
+      CompositeImplicitFunction topComposite;
+      topComposite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxOne));
+      topComposite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(innerComposite));
+
+      BoxInterpreter boxInterpreter;
+      std::vector<double> box = boxInterpreter(&topComposite);
+
+      TSM_ASSERT_EQUALS("The box min x is incorrect", -0.5, box[0]); //From box1
+      TSM_ASSERT_EQUALS("The box max x is incorrect", 0.5, box[1]);  //From box1
+      TSM_ASSERT_EQUALS("The box min y is incorrect", -1.5, box[2]); //From box2
+      TSM_ASSERT_EQUALS("The box max y is incorrect", 1.5, box[3]);  //From box2
+      TSM_ASSERT_EQUALS("The box min z is incorrect", -2.5, box[4]); //From box1
+      TSM_ASSERT_EQUALS("The box max z is incorrect", 2.5, box[5]);  //From box1
+
+    }
+
+  void testGetAllBoxes()
+  {
+    OriginParameter originOne(0, 0, 0);
+    WidthParameter widthOne(1);
+    HeightParameter heightOne(4);
+    DepthParameter depthOne(5);
+    BoxImplicitFunction* boxOne = new BoxImplicitFunction(widthOne, heightOne, depthOne, originOne);
+
+    OriginParameter originTwo(0, 0, 0);
+    WidthParameter widthTwo(2);
+    HeightParameter heightTwo(3);
+    DepthParameter depthTwo(6);
+    BoxImplicitFunction* boxTwo = new BoxImplicitFunction(widthTwo, heightTwo, depthTwo, originTwo);
+
+    CompositeImplicitFunction compositeFunction;
+    compositeFunction.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxOne));
+    compositeFunction.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(boxTwo));
+
+    BoxInterpreter interpreter;
+    boxVector boxes = interpreter.getAllBoxes(&compositeFunction);
+
+    TSM_ASSERT_EQUALS("Wrong number of boxes returned.", 2, boxes.size());
+  }
+
+    
+
+};
+
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/CPR_preselectCellsTest.h b/Code/Mantid/Framework/MDAlgorithms/test/CPR_preselectCellsTest.h
index 788b1a6704bef1a941f83c57d86c6af4fe1ebb78..21fab1cdf734d4dbec180bb55cc30e61482470df 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/CPR_preselectCellsTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/CPR_preselectCellsTest.h
@@ -1,129 +1,129 @@
-#ifndef H_CP_REBINNING
-#define H_CP_REBINNING
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidMDAlgorithms/DynamicCPRRebinning.h"
-#include "MDDataObjects/MDTestWorkspace.h"
-using namespace Mantid;
-using namespace API;
-using namespace Kernel;
-using namespace MDDataObjects;
-using namespace MDAlgorithms;
-// this test work in close cooperation with MDTestWorkspace where all test workspace parameters are defined;
-
-class DynamicCPRRt: public DynamicCPRRebinning
-{
-public:
-   DynamicCPRRt(const MDDataObjects::MDWorkspace_const_sptr &pSourceWS, 
-                Geometry::MDGeometryDescription const * const pTargetDescr,
-                const MDDataObjects::MDWorkspace_sptr  & TargetWS ):
-   DynamicCPRRebinning(pSourceWS,pTargetDescr,TargetWS)
-   {}
-    virtual bool rebin_data_chunk(){return false;}
-    virtual bool rebin_data_chunk_keep_pixels(){return false;}
-	// this function is similar to the one defined in rebinning but has its own data_chunk (usually rebinning defines it)
-    virtual unsigned int getNumDataChunks(void)const{
-        unsigned int rez;
-
-        rez = this->n_preselected_pix/1000;
-        if(rez*1000!= this->n_preselected_pix)rez++;
-        return rez;
-    }
-	// function accessing important internal variables in the class
-	const std::vector<size_t> & getPreselectedCells()const{return preselected_cells;}
-};
-
-class CPR_preselectCellsTest :    public CxxTest::TestSuite
-{
-    boost::shared_ptr<MDDataObjects::MDWorkspace> pOrigin;
-    boost::shared_ptr<MDDataObjects::MDWorkspace> pTarget;
-
-    std::auto_ptr<Geometry::MDGeometryDescription> pTargDescr;
-
-    std::auto_ptr<DynamicCPRRt>    pRebin;
-
-	// function verifys if preselection has dublicated cells
-	bool check_cell_unique(const std::vector<size_t> &cell_nums)const{
-		for(size_t i=1;i<cell_nums.size();i++){
-			if(cell_nums[i-1]==cell_nums[i])return true;
-		}
-		return false;
-	}
- public:
-     void testINIT_WS(){
-         std::auto_ptr<MDTestWorkspace> tw = std::auto_ptr<MDTestWorkspace>(new MDTestWorkspace());
-		 // get usual workspace from the test workspace
-         pOrigin = tw->get_spWS();
-
-         TSM_ASSERT_THROWS_NOTHING("Source WS should be constructed not throwing",pTarget= boost::shared_ptr<MDDataObjects::MDWorkspace>(new MDDataObjects::MDWorkspace()));
-
-		 // init geometry description equal to the source geometry;
-         TSM_ASSERT_THROWS_NOTHING("Target WS descr should be constructed not throwing",pTargDescr = 
-             std::auto_ptr<Geometry::MDGeometryDescription>(new Geometry::MDGeometryDescription(pOrigin->get_const_MDGeometry())));
-
-
-         TSM_ASSERT_THROWS_NOTHING("Target empty WS  should be constructed not throwing",pTarget = 
-             boost::shared_ptr<MDDataObjects::MDWorkspace>(new MDDataObjects::MDWorkspace()));
-
-		 // init target workspace as we need
-		 TSM_ASSERT_THROWS_NOTHING("Target workspace initialisation should not throw",pTarget->init(pOrigin,pTargDescr.get()));
-	 }
-	 void testCPRConstructor(){
-
-         TSM_ASSERT_THROWS_NOTHING("Rebinning should be constructed withoug throwing",pRebin  = 
-             std::auto_ptr<DynamicCPRRt>(new DynamicCPRRt(pOrigin,pTargDescr.get(),pTarget)));
-
-     }
-     void testPreselectAllUnique(){
-		 size_t nCells;
-
-		 TSM_ASSERT_THROWS_NOTHING("Preselect cells should not normaly throw",nCells=pRebin->preselect_cells());
-		 // check if the generic properties of the preselection are correct:
-		 TSM_ASSERT_EQUALS("The selection above should describe nDim0*nDim1*nDim2*nDim3 geometry",50*50*50*50,nCells);
-
-		 const std::vector<size_t> psCells = pRebin->getPreselectedCells();
-		 TSM_ASSERT_EQUALS("All selected cells have to be unique but found non-unique numbers:",false,check_cell_unique(psCells));
-
-     }
-     void testPreselect3DWorks(){
-		 size_t nCells;
-		 pTargDescr->pDimDescription(3)->cut_max = 0;  
-		 // modify description: The numbers have to be known from the source workspace and the workpsace range is from -1 to 49
-		 pTargDescr->pDimDescription(2)->cut_max = 0.99;
-
-
-		 TSM_ASSERT_THROWS_NOTHING("Preselect cells should not normaly throw",nCells=pRebin->preselect_cells());
-		 // check if the generic properties of the preselection are correct:
-		 TSM_ASSERT_EQUALS("The selection above should describe nDim0*nDim1*2*1 geometry",50*50*2*1,nCells);
-
-		 const std::vector<size_t> psCells = pRebin->getPreselectedCells();
-		 TSM_ASSERT_EQUALS("All selected cells have to be unique but found non-unique numbers:",false,check_cell_unique(psCells));
-
-		 //
-		 TSM_ASSERT_EQUALS("The selection should refer to nCells*(nCells+1)/2 pixels but it is not",nCells*(nCells+1)/2,pRebin->getNumPreselectedPixels());
-
-     }
-    void testPreselect3Dx2Works(){
-		 size_t nCells;
-		 pTargDescr->pDimDescription(3)->cut_max = 1;  
-
-		 TSM_ASSERT_THROWS_NOTHING("Preselect cells should not normaly throw",nCells=pRebin->preselect_cells());
-		 // check if the generic properties of the preselection are correct:
-		 TSM_ASSERT_EQUALS("The selection above should describe nDim0*nDim1*2*1 geometry",50*50*2*2,nCells);
-
-		 const std::vector<size_t> psCells = pRebin->getPreselectedCells();
-		 TSM_ASSERT_EQUALS("All selected cells have to be unique but found non-unique numbers:",false,check_cell_unique(psCells));
-
-		 //
-		 size_t nHalfCells = nCells/2;
-		 // number of pixels in the first half of the selection; verified above
-		 uint64_t nPix   = nHalfCells*(nHalfCells+1)/2;
-		 // other half of the selection:
-		 nPix          += pOrigin->get_const_MDGeometry().get_constDimension(3)->getStride()*nHalfCells+(nHalfCells+1)*nHalfCells/2;
-
-		 TSM_ASSERT_EQUALS("The selection should refer to proper number of pixels but it is not",nPix,pRebin->getNumPreselectedPixels());
-
-     }
-};
-
-#endif
+#ifndef H_CP_REBINNING
+#define H_CP_REBINNING
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidMDAlgorithms/DynamicCPRRebinning.h"
+#include "MDDataObjects/MDTestWorkspace.h"
+using namespace Mantid;
+using namespace API;
+using namespace Kernel;
+using namespace MDDataObjects;
+using namespace MDAlgorithms;
+// this test work in close cooperation with MDTestWorkspace where all test workspace parameters are defined;
+
+class DynamicCPRRt: public DynamicCPRRebinning
+{
+public:
+   DynamicCPRRt(const MDDataObjects::MDWorkspace_const_sptr &pSourceWS, 
+                Geometry::MDGeometryDescription const * const pTargetDescr,
+                const MDDataObjects::MDWorkspace_sptr  & TargetWS ):
+   DynamicCPRRebinning(pSourceWS,pTargetDescr,TargetWS)
+   {}
+    virtual bool rebin_data_chunk(){return false;}
+    virtual bool rebin_data_chunk_keep_pixels(){return false;}
+	// this function is similar to the one defined in rebinning but has its own data_chunk (usually rebinning defines it)
+    virtual unsigned int getNumDataChunks(void)const{
+        unsigned int rez;
+
+        rez = this->n_preselected_pix/1000;
+        if(rez*1000!= this->n_preselected_pix)rez++;
+        return rez;
+    }
+	// function accessing important internal variables in the class
+	const std::vector<size_t> & getPreselectedCells()const{return preselected_cells;}
+};
+
+class CPR_preselectCellsTest :    public CxxTest::TestSuite
+{
+    boost::shared_ptr<MDDataObjects::MDWorkspace> pOrigin;
+    boost::shared_ptr<MDDataObjects::MDWorkspace> pTarget;
+
+    std::auto_ptr<Geometry::MDGeometryDescription> pTargDescr;
+
+    std::auto_ptr<DynamicCPRRt>    pRebin;
+
+	// function verifys if preselection has dublicated cells
+	bool check_cell_unique(const std::vector<size_t> &cell_nums)const{
+		for(size_t i=1;i<cell_nums.size();i++){
+			if(cell_nums[i-1]==cell_nums[i])return true;
+		}
+		return false;
+	}
+ public:
+     void testINIT_WS(){
+         std::auto_ptr<MDTestWorkspace> tw = std::auto_ptr<MDTestWorkspace>(new MDTestWorkspace());
+		 // get usual workspace from the test workspace
+         pOrigin = tw->get_spWS();
+
+         TSM_ASSERT_THROWS_NOTHING("Source WS should be constructed not throwing",pTarget= boost::shared_ptr<MDDataObjects::MDWorkspace>(new MDDataObjects::MDWorkspace()));
+
+		 // init geometry description equal to the source geometry;
+         TSM_ASSERT_THROWS_NOTHING("Target WS descr should be constructed not throwing",pTargDescr = 
+             std::auto_ptr<Geometry::MDGeometryDescription>(new Geometry::MDGeometryDescription(pOrigin->get_const_MDGeometry())));
+
+
+         TSM_ASSERT_THROWS_NOTHING("Target empty WS  should be constructed not throwing",pTarget = 
+             boost::shared_ptr<MDDataObjects::MDWorkspace>(new MDDataObjects::MDWorkspace()));
+
+		 // init target workspace as we need
+		 TSM_ASSERT_THROWS_NOTHING("Target workspace initialisation should not throw",pTarget->init(pOrigin,pTargDescr.get()));
+	 }
+	 void testCPRConstructor(){
+
+         TSM_ASSERT_THROWS_NOTHING("Rebinning should be constructed withoug throwing",pRebin  = 
+             std::auto_ptr<DynamicCPRRt>(new DynamicCPRRt(pOrigin,pTargDescr.get(),pTarget)));
+
+     }
+     void testPreselectAllUnique(){
+		 size_t nCells;
+
+		 TSM_ASSERT_THROWS_NOTHING("Preselect cells should not normaly throw",nCells=pRebin->preselect_cells());
+		 // check if the generic properties of the preselection are correct:
+		 TSM_ASSERT_EQUALS("The selection above should describe nDim0*nDim1*nDim2*nDim3 geometry",50*50*50*50,nCells);
+
+		 const std::vector<size_t> psCells = pRebin->getPreselectedCells();
+		 TSM_ASSERT_EQUALS("All selected cells have to be unique but found non-unique numbers:",false,check_cell_unique(psCells));
+
+     }
+     void testPreselect3DWorks(){
+		 size_t nCells;
+		 pTargDescr->pDimDescription(3)->cut_max = 0;  
+		 // modify description: The numbers have to be known from the source workspace and the workpsace range is from -1 to 49
+		 pTargDescr->pDimDescription(2)->cut_max = 0.99;
+
+
+		 TSM_ASSERT_THROWS_NOTHING("Preselect cells should not normaly throw",nCells=pRebin->preselect_cells());
+		 // check if the generic properties of the preselection are correct:
+		 TSM_ASSERT_EQUALS("The selection above should describe nDim0*nDim1*2*1 geometry",50*50*2*1,nCells);
+
+		 const std::vector<size_t> psCells = pRebin->getPreselectedCells();
+		 TSM_ASSERT_EQUALS("All selected cells have to be unique but found non-unique numbers:",false,check_cell_unique(psCells));
+
+		 //
+		 TSM_ASSERT_EQUALS("The selection should refer to nCells*(nCells+1)/2 pixels but it is not",nCells*(nCells+1)/2,pRebin->getNumPreselectedPixels());
+
+     }
+    void testPreselect3Dx2Works(){
+		 size_t nCells;
+		 pTargDescr->pDimDescription(3)->cut_max = 1;  
+
+		 TSM_ASSERT_THROWS_NOTHING("Preselect cells should not normaly throw",nCells=pRebin->preselect_cells());
+		 // check if the generic properties of the preselection are correct:
+		 TSM_ASSERT_EQUALS("The selection above should describe nDim0*nDim1*2*1 geometry",50*50*2*2,nCells);
+
+		 const std::vector<size_t> psCells = pRebin->getPreselectedCells();
+		 TSM_ASSERT_EQUALS("All selected cells have to be unique but found non-unique numbers:",false,check_cell_unique(psCells));
+
+		 //
+		 size_t nHalfCells = nCells/2;
+		 // number of pixels in the first half of the selection; verified above
+		 uint64_t nPix   = nHalfCells*(nHalfCells+1)/2;
+		 // other half of the selection:
+		 nPix          += pOrigin->get_const_MDGeometry().get_constDimension(3)->getStride()*nHalfCells+(nHalfCells+1)*nHalfCells/2;
+
+		 TSM_ASSERT_EQUALS("The selection should refer to proper number of pixels but it is not",nPix,pRebin->getNumPreselectedPixels());
+
+     }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/CPRebinKeepPixTest.h b/Code/Mantid/Framework/MDAlgorithms/test/CPRebinKeepPixTest.h
index db779ce5b360ddbad6398315ec9b41b8ed735cae..51fc45175b27cf3b280e89632c29551d0ae095ec 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/CPRebinKeepPixTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/CPRebinKeepPixTest.h
@@ -28,9 +28,9 @@ class CPRebinKeepPixTest :    public CxxTest::TestSuite
  public:
     void testRebinInit(void){
 	// build test workspace
-      std::auto_ptr<MDTestWorkspace> tw = std::auto_ptr<MDTestWorkspace>(new MDTestWorkspace());
-    // get usual workspace from the test workspace
-      spInputWS = tw->get_spWS();
+      std::auto_ptr<MDTestWorkspace> tw = std::auto_ptr<MDTestWorkspace>(new MDTestWorkspace());
+    // get usual workspace from the test workspace
+      spInputWS = tw->get_spWS();
 
       InputWorkspaceName = "CPRebinKeepPixTestIn";
       AnalysisDataService::Instance().addOrReplace(InputWorkspaceName,spInputWS);
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/CompositeBuilderTest.h b/Code/Mantid/Framework/MDAlgorithms/test/CompositeBuilderTest.h
index 48c1390ccb8996b3b509b7a2e45ad01d7950ddc0..f5409773a4d102b6b859e89fb3eddd7d34f88ddb 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/CompositeBuilderTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/CompositeBuilderTest.h
@@ -1,92 +1,92 @@
-#ifndef COMPOSITE_FUNCTION_BUILDER_TEST_H_
-#define COMPOSITE_FUNCTION_BUILDER_TEST_H_
-
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/CompositeFunctionBuilder.h"
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-#include "MantidAPI/ImplicitFunction.h"
-#include "MantidAPI/ImplicitFunctionBuilder.h"
-#include "MantidAPI/ImplicitFunctionParameter.h"
-
-class CompositeBuilderTest : public CxxTest::TestSuite
-{
-
-private:
-
-    class FakeParameter : public Mantid::API::ImplicitFunctionParameter
-    {
-    public:
-        bool isValid() const
-        {
-            return false;
-        }
-		 MOCK_CONST_METHOD0(getName, std::string());
-         MOCK_CONST_METHOD0(toXMLString, std::string());
-        ~FakeParameter(){;} 
-
-    protected:
-        virtual Mantid::API::ImplicitFunctionParameter* clone() const
-        {
-            return new FakeParameter;
-        }
-    };	
-
-
-
-    class FakeImplicitFunction : public Mantid::API::ImplicitFunction
-    {
-    public:
-        bool evaluate(const Mantid::API::Point3D* pPoint3D) const
-        {    
-            return false;
-        }
-		MOCK_CONST_METHOD0(getName, std::string());
-		MOCK_CONST_METHOD0(toXMLString, std::string());
-    };
-
-    class FakeFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
-    {
-    public:
-        mutable bool isInvoked;
-        void addParameter(std::auto_ptr<Mantid::API::ImplicitFunctionParameter> parameter)
-        {
-        }
-        Mantid::API::ImplicitFunction* create() const
-        {
-            isInvoked = true;
-            return new FakeImplicitFunction;
-        }
-    };
-
-public:
-
-    void testCreate()
-    {
-
-        using namespace Mantid::MDAlgorithms;
-
-        FakeFunctionBuilder* builderA = new FakeFunctionBuilder;
-        FakeFunctionBuilder* builderB = new FakeFunctionBuilder;
-        CompositeFunctionBuilder* innerCompBuilder = new CompositeFunctionBuilder;
-        innerCompBuilder->addFunctionBuilder(builderA);
-        innerCompBuilder->addFunctionBuilder(builderB);
-        boost::scoped_ptr<CompositeFunctionBuilder> outterCompBuilder(new CompositeFunctionBuilder);
-        outterCompBuilder->addFunctionBuilder(innerCompBuilder);
-        boost::scoped_ptr<Mantid::API::ImplicitFunction> topFunc(outterCompBuilder->create());
-        //CompositeImplicitFunction* topCompFunc = dynamic_cast<CompositeImplicitFunction*>(topFunc.get());
-
-        TSM_ASSERT("Nested builder not called by composite", builderA->isInvoked);
-        TSM_ASSERT("Nested builder not called by composite", builderB->isInvoked);
-        //TSM_ASSERT("Top level function generated, should have been a composite function instance.", topCompFunc != NULL);
-
-    }
-
-};
-
-
-
-#endif
+#ifndef COMPOSITE_FUNCTION_BUILDER_TEST_H_
+#define COMPOSITE_FUNCTION_BUILDER_TEST_H_
+
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/CompositeFunctionBuilder.h"
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+#include "MantidAPI/ImplicitFunction.h"
+#include "MantidAPI/ImplicitFunctionBuilder.h"
+#include "MantidAPI/ImplicitFunctionParameter.h"
+
+class CompositeBuilderTest : public CxxTest::TestSuite
+{
+
+private:
+
+    class FakeParameter : public Mantid::API::ImplicitFunctionParameter
+    {
+    public:
+        bool isValid() const
+        {
+            return false;
+        }
+		 MOCK_CONST_METHOD0(getName, std::string());
+         MOCK_CONST_METHOD0(toXMLString, std::string());
+        ~FakeParameter(){;} 
+
+    protected:
+        virtual Mantid::API::ImplicitFunctionParameter* clone() const
+        {
+            return new FakeParameter;
+        }
+    };	
+
+
+
+    class FakeImplicitFunction : public Mantid::API::ImplicitFunction
+    {
+    public:
+        bool evaluate(const Mantid::API::Point3D* pPoint3D) const
+        {    
+            return false;
+        }
+		MOCK_CONST_METHOD0(getName, std::string());
+		MOCK_CONST_METHOD0(toXMLString, std::string());
+    };
+
+    class FakeFunctionBuilder : public Mantid::API::ImplicitFunctionBuilder
+    {
+    public:
+        mutable bool isInvoked;
+        void addParameter(std::auto_ptr<Mantid::API::ImplicitFunctionParameter> parameter)
+        {
+        }
+        Mantid::API::ImplicitFunction* create() const
+        {
+            isInvoked = true;
+            return new FakeImplicitFunction;
+        }
+    };
+
+public:
+
+    void testCreate()
+    {
+
+        using namespace Mantid::MDAlgorithms;
+
+        FakeFunctionBuilder* builderA = new FakeFunctionBuilder;
+        FakeFunctionBuilder* builderB = new FakeFunctionBuilder;
+        CompositeFunctionBuilder* innerCompBuilder = new CompositeFunctionBuilder;
+        innerCompBuilder->addFunctionBuilder(builderA);
+        innerCompBuilder->addFunctionBuilder(builderB);
+        boost::scoped_ptr<CompositeFunctionBuilder> outterCompBuilder(new CompositeFunctionBuilder);
+        outterCompBuilder->addFunctionBuilder(innerCompBuilder);
+        boost::scoped_ptr<Mantid::API::ImplicitFunction> topFunc(outterCompBuilder->create());
+        //CompositeImplicitFunction* topCompFunc = dynamic_cast<CompositeImplicitFunction*>(topFunc.get());
+
+        TSM_ASSERT("Nested builder not called by composite", builderA->isInvoked);
+        TSM_ASSERT("Nested builder not called by composite", builderB->isInvoked);
+        //TSM_ASSERT("Top level function generated, should have been a composite function instance.", topCompFunc != NULL);
+
+    }
+
+};
+
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionParserTest.h
index 51e5d6675bd7f342285cc33cbc29a0426546aeaa..fdc13c1f6bec6199dd06e6798b19f0defa637846 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionParserTest.h
@@ -1,123 +1,123 @@
-#ifndef TEST_COMPOSITE_FUNCTION_PARSER_H_
-#define TEST_COMPOSITE_FUNCTION_PARSER_H_
-
-#include "FunctionParserTest.h"
-#include <vector>
-#include <memory>
-#include <boost/scoped_ptr.hpp>
-
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-#include "MantidMDAlgorithms/CompositeImplicitFunctionParser.h"
-#include "MantidMDAlgorithms/PlaneImplicitFunctionParser.h"
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-class  CompositeImplicitFunctionParserTest : public CxxTest::TestSuite, FunctionParserTest 
-{
-
-public:
-
-
-//  void testBadXMLSchemaThrows(void)
-//  {
-//    using namespace Mantid::MDAlgorithms;
-//
-//    Poco::XML::DOMParser pParser;
-//    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><X><Type>CompositeImplicitFunction</Type><ParameterList></ParameterList></X>";
-//    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-//    Poco::XML::Element* pRootElem = pDoc->documentElement();
-//
-//    CompositeImplicitFunctionParser functionParser;
-//    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as Function element was expected, but not found.", functionParser.createFunctionBuilder(pRootElem), std::invalid_argument );
-//  }
-//
-//  void testNoSuccessorFunctionParserThrows(void)
-//  {
-//    using namespace Mantid::MDAlgorithms;
-//
-//    Poco::XML::DOMParser pParser;
-//    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>CompositeImplicitFunction</Type><ParameterList></ParameterList></Function>";
-//    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-//    Poco::XML::Element* pRootElem = pDoc->documentElement();
-//
-//    CompositeImplicitFunctionParser functionParser;
-//    TSM_ASSERT_THROWS("There is no successor parser setup for the PlaneFunctionParser", functionParser.createFunctionBuilder(pRootElem), std::runtime_error );
-//  }
-//
-//
-//  void testCallsFunctionParserChain()
-//  {
-//    using namespace Mantid::MDAlgorithms;
-//    using namespace Mantid::API;
-//
-//    Poco::XML::DOMParser pParser;
-//    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>OtherFunctionType</Type><ParameterList></ParameterList></Function>";
-//    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-//    Poco::XML::Element* pRootElem = pDoc->documentElement();
-//
-//    MockFunctionParser* mockFuncParser = new MockFunctionParser(constructRootParameterParser());
-//    EXPECT_CALL(*mockFuncParser, createFunctionBuilder(testing::_))
-//      .Times(1);
-//
-//    CompositeImplicitFunctionParser functionParser;
-//    functionParser.setSuccessorParser(mockFuncParser);
-//    ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
-//    delete builder;
-//
-//    TSM_ASSERT("Incorrect calling of nested successor function parsers", testing::Mock::VerifyAndClearExpectations(mockFuncParser))
-//  }
-
-  void testParseCompositeFunction(void)
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = std::string("<?xml version=\"1.0\" encoding=\"utf-8\"?>") +
-        "<Function>" +
-        "<Type>CompositeImplicitFunction</Type>" +
-        "<Function>" +
-        "<Type>PlaneImplicitFunction</Type>" +
-        "<ParameterList>" +
-        "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>" +
-        "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>" +
-        "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>" +
-        "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>" +
-        "</ParameterList>" +
-        "</Function>" +
-        "<Function>" +
-        "<Type>PlaneImplicitFunction</Type>" +
-        "<ParameterList>" +
-        "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>" +
-        "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>" +
-        "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>" +
-        "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>" +
-        "</ParameterList>" +
-        "</Function>" +
-        "</Function>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    CompositeImplicitFunctionParser functionParser;
-    ImplicitFunctionParser* planeParser = new PlaneImplicitFunctionParser;
-    planeParser->setParameterParser(constructRootParameterParser());
-    functionParser.setSuccessorParser(planeParser);
-    ImplicitFunctionBuilder* implicitFunctionBuilder = functionParser.createFunctionBuilder(pRootElem);
-    boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(implicitFunctionBuilder->create());
-
-    CompositeImplicitFunction* compositeFunction = dynamic_cast<CompositeImplicitFunction*>(impFunction.get());
-
-    TSM_ASSERT("A composite implicit function should have been created from the xml.", compositeFunction != NULL);
-    TSM_ASSERT_EQUALS("The composite does not contain the expected number of next-level nested functions.", 2, compositeFunction->getNFunctions())
-  }
-
-
-};
-
-#endif
+#ifndef TEST_COMPOSITE_FUNCTION_PARSER_H_
+#define TEST_COMPOSITE_FUNCTION_PARSER_H_
+
+#include "FunctionParserTest.h"
+#include <vector>
+#include <memory>
+#include <boost/scoped_ptr.hpp>
+
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+#include "MantidMDAlgorithms/CompositeImplicitFunctionParser.h"
+#include "MantidMDAlgorithms/PlaneImplicitFunctionParser.h"
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+class  CompositeImplicitFunctionParserTest : public CxxTest::TestSuite, FunctionParserTest 
+{
+
+public:
+
+
+//  void testBadXMLSchemaThrows(void)
+//  {
+//    using namespace Mantid::MDAlgorithms;
+//
+//    Poco::XML::DOMParser pParser;
+//    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><X><Type>CompositeImplicitFunction</Type><ParameterList></ParameterList></X>";
+//    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+//    Poco::XML::Element* pRootElem = pDoc->documentElement();
+//
+//    CompositeImplicitFunctionParser functionParser;
+//    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as Function element was expected, but not found.", functionParser.createFunctionBuilder(pRootElem), std::invalid_argument );
+//  }
+//
+//  void testNoSuccessorFunctionParserThrows(void)
+//  {
+//    using namespace Mantid::MDAlgorithms;
+//
+//    Poco::XML::DOMParser pParser;
+//    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>CompositeImplicitFunction</Type><ParameterList></ParameterList></Function>";
+//    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+//    Poco::XML::Element* pRootElem = pDoc->documentElement();
+//
+//    CompositeImplicitFunctionParser functionParser;
+//    TSM_ASSERT_THROWS("There is no successor parser setup for the PlaneFunctionParser", functionParser.createFunctionBuilder(pRootElem), std::runtime_error );
+//  }
+//
+//
+//  void testCallsFunctionParserChain()
+//  {
+//    using namespace Mantid::MDAlgorithms;
+//    using namespace Mantid::API;
+//
+//    Poco::XML::DOMParser pParser;
+//    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>OtherFunctionType</Type><ParameterList></ParameterList></Function>";
+//    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+//    Poco::XML::Element* pRootElem = pDoc->documentElement();
+//
+//    MockFunctionParser* mockFuncParser = new MockFunctionParser(constructRootParameterParser());
+//    EXPECT_CALL(*mockFuncParser, createFunctionBuilder(testing::_))
+//      .Times(1);
+//
+//    CompositeImplicitFunctionParser functionParser;
+//    functionParser.setSuccessorParser(mockFuncParser);
+//    ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
+//    delete builder;
+//
+//    TSM_ASSERT("Incorrect calling of nested successor function parsers", testing::Mock::VerifyAndClearExpectations(mockFuncParser))
+//  }
+
+  void testParseCompositeFunction(void)
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = std::string("<?xml version=\"1.0\" encoding=\"utf-8\"?>") +
+        "<Function>" +
+        "<Type>CompositeImplicitFunction</Type>" +
+        "<Function>" +
+        "<Type>PlaneImplicitFunction</Type>" +
+        "<ParameterList>" +
+        "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>" +
+        "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>" +
+        "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>" +
+        "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>" +
+        "</ParameterList>" +
+        "</Function>" +
+        "<Function>" +
+        "<Type>PlaneImplicitFunction</Type>" +
+        "<ParameterList>" +
+        "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>" +
+        "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>" +
+        "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>" +
+        "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>" +
+        "</ParameterList>" +
+        "</Function>" +
+        "</Function>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    CompositeImplicitFunctionParser functionParser;
+    ImplicitFunctionParser* planeParser = new PlaneImplicitFunctionParser;
+    planeParser->setParameterParser(constructRootParameterParser());
+    functionParser.setSuccessorParser(planeParser);
+    ImplicitFunctionBuilder* implicitFunctionBuilder = functionParser.createFunctionBuilder(pRootElem);
+    boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(implicitFunctionBuilder->create());
+
+    CompositeImplicitFunction* compositeFunction = dynamic_cast<CompositeImplicitFunction*>(impFunction.get());
+
+    TSM_ASSERT("A composite implicit function should have been created from the xml.", compositeFunction != NULL);
+    TSM_ASSERT_EQUALS("The composite does not contain the expected number of next-level nested functions.", 2, compositeFunction->getNFunctions())
+  }
+
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionTest.h b/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionTest.h
index adaf25a1e3906f7d44161d261a951a20f1156ff0..4b5a404918c57e21b283ee2c41b40768be03ab38 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/CompositeImplicitFunctionTest.h
@@ -1,132 +1,132 @@
-#ifndef COMPOSITE_IMPLICIT_FUNCTION_TEST_H_
-#define COMPOSITE_IMPLICIT_FUNCTION_TEST_H_
-
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <cxxtest/TestSuite.h>
-#include <cmath>
-#include <typeinfo>
-
-#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
-#include "MantidAPI/Point3D.h"
-
-class CompositeImplicitFunctionTest : public CxxTest::TestSuite
-{
-private:
-
-  //Fake ImplicitFunction to verify abstract treatement of nested functions by composite.
-  class MockImplicitFunction : public Mantid::API::ImplicitFunction
-  {
-  public:
-    MOCK_CONST_METHOD1(evaluate, bool(const Mantid::API::Point3D* pPoint));
-    MOCK_CONST_METHOD0(getName, std::string());
-    MOCK_CONST_METHOD0(toXMLString, std::string());
-    ~MockImplicitFunction(){}
-  };
-
-private:
-
-  class MockPoint3D: public Mantid::API::Point3D
-  {
-  public:
-    MOCK_CONST_METHOD0(getX, double());
-    MOCK_CONST_METHOD0(getY, double());
-    MOCK_CONST_METHOD0(getZ, double());
-  };
-
-
-public:
-
-  void testFunctionAddition()
-  {
-    using namespace Mantid::MDAlgorithms;
-    CompositeImplicitFunction composite;
-    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(new MockImplicitFunction()));
-    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(new MockImplicitFunction()));
-    TSM_ASSERT_EQUALS("Two functions should have been added to composite", 2, composite.getNFunctions());
-  }
-
-
-  void testEvaluateNestedFunctions()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    CompositeImplicitFunction composite;
-    MockImplicitFunction* a = new MockImplicitFunction;
-    MockImplicitFunction* b = new MockImplicitFunction;
-    EXPECT_CALL(*a, evaluate(testing::_)).Times(1).WillOnce(testing::Return(true));
-    EXPECT_CALL(*b, evaluate(testing::_)).Times(1);
-
-    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(a));
-    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(b));
-
-    MockPoint3D* point = new MockPoint3D;
-
-    composite.evaluate(point);
-    TSM_ASSERT("This nested function should have been executed", testing::Mock::VerifyAndClearExpectations(a));
-    TSM_ASSERT("This nested function should have been executed", testing::Mock::VerifyAndClearExpectations(b));
-    delete point;
-  }
-
-
-
-
-  void testRecursiveToXML()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    MockImplicitFunction* mockFunctionA = new MockImplicitFunction;
-    MockImplicitFunction* mockFunctionB = new MockImplicitFunction;
-
-    EXPECT_CALL(*mockFunctionA, toXMLString()).Times(1).WillOnce(testing::Return("<Function></Function>"));
-    EXPECT_CALL(*mockFunctionB, toXMLString()).Times(1).WillOnce(testing::Return("<Function></Function>"));
-
-    CompositeImplicitFunction function;
-    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionA));	
-    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionB));	
-
-    TSM_ASSERT_EQUALS("The xml generated by this function did not match the expected schema.", "<Function><Type>CompositeImplicitFunction</Type><ParameterList/><Function></Function><Function></Function></Function>", function.toXMLString());
-  }
-
-  void testNotEqual()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    CompositeImplicitFunction A;
-    CompositeImplicitFunction B;
-    CompositeImplicitFunction C;
-    C.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(new MockImplicitFunction));
-    TSM_ASSERT_DIFFERS("These two objects should not be considered equal as they both have zero nested functions.", A, B);
-    TSM_ASSERT_DIFFERS("These two objects should not be considered equal as they have and unequal number of nested functions.", A, C);		
-  }
-
-  void testReturnNestedFunctions() //Test access to nested functions.
-  {
-    using namespace Mantid::MDAlgorithms;
-    CompositeImplicitFunction function;
-
-    MockImplicitFunction* mockFunctionA = new MockImplicitFunction;
-    MockImplicitFunction* mockFunctionB = new MockImplicitFunction;
-    MockImplicitFunction* mockFunctionC = new MockImplicitFunction;
-    EXPECT_CALL(*mockFunctionA, getName()).Times(1).WillOnce(testing::Return("A"));
-    EXPECT_CALL(*mockFunctionB, getName()).Times(1).WillOnce(testing::Return("B"));
-    EXPECT_CALL(*mockFunctionC, getName()).Times(1).WillOnce(testing::Return("C"));
-
-    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionA));
-    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionB));
-    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionC));
-
-    std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > returnedFuncs = function.getFunctions();
-    std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> >::const_iterator it = returnedFuncs.begin();
-
-    TSM_ASSERT_EQUALS("The returned function did not match input function type", (*it)->getName(), "A" );
-    it++;
-    TSM_ASSERT_EQUALS("The returned function did not match input function type", (*it)->getName(), "B"  );
-    it++;
-    TSM_ASSERT_EQUALS("The returned function did not match input function type", (*it)->getName(), "C"  );
-  }
-
-};
-
-
-#endif 
+#ifndef COMPOSITE_IMPLICIT_FUNCTION_TEST_H_
+#define COMPOSITE_IMPLICIT_FUNCTION_TEST_H_
+
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <cxxtest/TestSuite.h>
+#include <cmath>
+#include <typeinfo>
+
+#include "MantidMDAlgorithms/CompositeImplicitFunction.h"
+#include "MantidAPI/Point3D.h"
+
+class CompositeImplicitFunctionTest : public CxxTest::TestSuite
+{
+private:
+
+  //Fake ImplicitFunction to verify abstract treatement of nested functions by composite.
+  class MockImplicitFunction : public Mantid::API::ImplicitFunction
+  {
+  public:
+    MOCK_CONST_METHOD1(evaluate, bool(const Mantid::API::Point3D* pPoint));
+    MOCK_CONST_METHOD0(getName, std::string());
+    MOCK_CONST_METHOD0(toXMLString, std::string());
+    ~MockImplicitFunction(){}
+  };
+
+private:
+
+  class MockPoint3D: public Mantid::API::Point3D
+  {
+  public:
+    MOCK_CONST_METHOD0(getX, double());
+    MOCK_CONST_METHOD0(getY, double());
+    MOCK_CONST_METHOD0(getZ, double());
+  };
+
+
+public:
+
+  void testFunctionAddition()
+  {
+    using namespace Mantid::MDAlgorithms;
+    CompositeImplicitFunction composite;
+    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(new MockImplicitFunction()));
+    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(new MockImplicitFunction()));
+    TSM_ASSERT_EQUALS("Two functions should have been added to composite", 2, composite.getNFunctions());
+  }
+
+
+  void testEvaluateNestedFunctions()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    CompositeImplicitFunction composite;
+    MockImplicitFunction* a = new MockImplicitFunction;
+    MockImplicitFunction* b = new MockImplicitFunction;
+    EXPECT_CALL(*a, evaluate(testing::_)).Times(1).WillOnce(testing::Return(true));
+    EXPECT_CALL(*b, evaluate(testing::_)).Times(1);
+
+    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(a));
+    composite.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(b));
+
+    MockPoint3D* point = new MockPoint3D;
+
+    composite.evaluate(point);
+    TSM_ASSERT("This nested function should have been executed", testing::Mock::VerifyAndClearExpectations(a));
+    TSM_ASSERT("This nested function should have been executed", testing::Mock::VerifyAndClearExpectations(b));
+    delete point;
+  }
+
+
+
+
+  void testRecursiveToXML()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    MockImplicitFunction* mockFunctionA = new MockImplicitFunction;
+    MockImplicitFunction* mockFunctionB = new MockImplicitFunction;
+
+    EXPECT_CALL(*mockFunctionA, toXMLString()).Times(1).WillOnce(testing::Return("<Function></Function>"));
+    EXPECT_CALL(*mockFunctionB, toXMLString()).Times(1).WillOnce(testing::Return("<Function></Function>"));
+
+    CompositeImplicitFunction function;
+    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionA));	
+    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionB));	
+
+    TSM_ASSERT_EQUALS("The xml generated by this function did not match the expected schema.", "<Function><Type>CompositeImplicitFunction</Type><ParameterList/><Function></Function><Function></Function></Function>", function.toXMLString());
+  }
+
+  void testNotEqual()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    CompositeImplicitFunction A;
+    CompositeImplicitFunction B;
+    CompositeImplicitFunction C;
+    C.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(new MockImplicitFunction));
+    TSM_ASSERT_DIFFERS("These two objects should not be considered equal as they both have zero nested functions.", A, B);
+    TSM_ASSERT_DIFFERS("These two objects should not be considered equal as they have and unequal number of nested functions.", A, C);		
+  }
+
+  void testReturnNestedFunctions() //Test access to nested functions.
+  {
+    using namespace Mantid::MDAlgorithms;
+    CompositeImplicitFunction function;
+
+    MockImplicitFunction* mockFunctionA = new MockImplicitFunction;
+    MockImplicitFunction* mockFunctionB = new MockImplicitFunction;
+    MockImplicitFunction* mockFunctionC = new MockImplicitFunction;
+    EXPECT_CALL(*mockFunctionA, getName()).Times(1).WillOnce(testing::Return("A"));
+    EXPECT_CALL(*mockFunctionB, getName()).Times(1).WillOnce(testing::Return("B"));
+    EXPECT_CALL(*mockFunctionC, getName()).Times(1).WillOnce(testing::Return("C"));
+
+    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionA));
+    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionB));
+    function.addFunction(boost::shared_ptr<Mantid::API::ImplicitFunction>(mockFunctionC));
+
+    std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> > returnedFuncs = function.getFunctions();
+    std::vector<boost::shared_ptr<Mantid::API::ImplicitFunction> >::const_iterator it = returnedFuncs.begin();
+
+    TSM_ASSERT_EQUALS("The returned function did not match input function type", (*it)->getName(), "A" );
+    it++;
+    TSM_ASSERT_EQUALS("The returned function did not match input function type", (*it)->getName(), "B"  );
+    it++;
+    TSM_ASSERT_EQUALS("The returned function did not match input function type", (*it)->getName(), "C"  );
+  }
+
+};
+
+
+#endif 
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterParserTest.h
index 55ebd6f2787e8e65e9115c6dff7892dfd700565f..3c33dca7550ead1b6249068c95e63c4f21388414 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterParserTest.h
@@ -1,87 +1,87 @@
-#ifndef TEST_DEPTH_PARAMETER_PARSER_H_
-#define TEST_DEPTH_PARAMETER_PARSER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include "MantidMDAlgorithms/SingleValueParameterParser.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-using namespace Mantid::MDAlgorithms;
-
-class  DepthParameterParserTest : public CxxTest::TestSuite
-{
-private:
-
-  //Mock class
-  class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
-  {
-  public:
-    MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
-    MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
-  };
-
-public:
-
-
-  void testParseDepthParameterFragment()
-  {
-    using namespace Mantid::MDAlgorithms;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>DepthParameter</Type><Value>3</Value></Parameter>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    DepthParameterParser parser;
-    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-    DepthParameter* pDepthParam = dynamic_cast<DepthParameter*>(iparam);
-    TSM_ASSERT("The paramter generated should be an DepthParamter", NULL != pDepthParam);
-    TSM_ASSERT_EQUALS("Numeric value has not been parsed correctly", 3, pDepthParam->getValue() );
-  }
-
-  void testChainOfResponsibility()
-  {
-    using namespace Mantid::MDAlgorithms;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    SuccessorParameterParser* successor = new SuccessorParameterParser;
-    EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
-
-    DepthParameterParser parser;
-
-    parser.setSuccessorParser(successor);
-    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-
-    TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
-  }
-
-  void testCanParseXMLOutput()
-  { 
-    //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
-    DepthParameter originalDepth(2);
-
-    Poco::XML::DOMParser pParser;
-    Poco::XML::Document* pDoc = pParser.parseString(originalDepth.toXMLString());
-
-    DepthParameterParser depthParser;
-    DepthParameter* synthDepth = dynamic_cast<DepthParameter*>(depthParser.createParameter(pDoc->documentElement()));
-
-    TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. values do not match", originalDepth.getValue() ,  synthDepth->getValue());
-
-    delete synthDepth;
-  }
-
-};
-
-#endif
+#ifndef TEST_DEPTH_PARAMETER_PARSER_H_
+#define TEST_DEPTH_PARAMETER_PARSER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include "MantidMDAlgorithms/SingleValueParameterParser.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+using namespace Mantid::MDAlgorithms;
+
+class  DepthParameterParserTest : public CxxTest::TestSuite
+{
+private:
+
+  //Mock class
+  class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
+  {
+  public:
+    MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
+    MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
+  };
+
+public:
+
+
+  void testParseDepthParameterFragment()
+  {
+    using namespace Mantid::MDAlgorithms;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>DepthParameter</Type><Value>3</Value></Parameter>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    DepthParameterParser parser;
+    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+    DepthParameter* pDepthParam = dynamic_cast<DepthParameter*>(iparam);
+    TSM_ASSERT("The paramter generated should be an DepthParamter", NULL != pDepthParam);
+    TSM_ASSERT_EQUALS("Numeric value has not been parsed correctly", 3, pDepthParam->getValue() );
+  }
+
+  void testChainOfResponsibility()
+  {
+    using namespace Mantid::MDAlgorithms;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    SuccessorParameterParser* successor = new SuccessorParameterParser;
+    EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
+
+    DepthParameterParser parser;
+
+    parser.setSuccessorParser(successor);
+    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+
+    TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
+  }
+
+  void testCanParseXMLOutput()
+  { 
+    //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
+    DepthParameter originalDepth(2);
+
+    Poco::XML::DOMParser pParser;
+    Poco::XML::Document* pDoc = pParser.parseString(originalDepth.toXMLString());
+
+    DepthParameterParser depthParser;
+    DepthParameter* synthDepth = dynamic_cast<DepthParameter*>(depthParser.createParameter(pDoc->documentElement()));
+
+    TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. values do not match", originalDepth.getValue() ,  synthDepth->getValue());
+
+    delete synthDepth;
+  }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterTest.h
index ed45469b10bde27d09ece4d431d2529fe21b620f..7ffaef79606064a0b9beaee53fa02fa92172f45d 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/DepthParameterTest.h
@@ -1,67 +1,67 @@
-#ifndef TEST_DEPTH_PARAMETER_H_
-#define TEST_DEPTH_PARAMETER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <boost/scoped_ptr.hpp>
-#include "SingleValueParameterBaseTest.h"
-#include "MantidMDAlgorithms/DepthParameter.h"
-
-using namespace Mantid::MDAlgorithms;
-
-typedef SingleValueParameterTests<DepthParameter> SVPTDepth;
-class DepthParameterTest :  public CxxTest::TestSuite, public SVPTDepth
-{
-public:
-
-  void testGetName()
-  {
-    SVPTDepth::testGetName("DepthParameter");
-  }
-
-  void testIsValid()
-  {
-    SVPTDepth::testIsValid();
-  }
-
-  void testIsNotValid()
-  {
-    SVPTDepth::testIsNotValid();
-  }
-
-  void testAssigment()
-  {
-    SVPTDepth::testAssigment();
-  }
-
-  void testClone()
-  {
-    SVPTDepth::testClone();
-  }
-
-  void testCopy()
-  {
-    SVPTDepth::testCopy();
-  }
-
-  void testToXML()
-  {
-    SVPTDepth::testToXML();
-  }
-
-  void testEqual()
-  {
-    SVPTDepth::testEqual();
-  }
-
-  void testNotEqual()
-  {
-    SVPTDepth::testNotEqual();
-  }
-
-  void testInvalidIfUnsigned()
-  {
-    SVPTDepth::testInvalidIfUnsigned();
-  }
-};
-
-#endif
+#ifndef TEST_DEPTH_PARAMETER_H_
+#define TEST_DEPTH_PARAMETER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <boost/scoped_ptr.hpp>
+#include "SingleValueParameterBaseTest.h"
+#include "MantidMDAlgorithms/DepthParameter.h"
+
+using namespace Mantid::MDAlgorithms;
+
+typedef SingleValueParameterTests<DepthParameter> SVPTDepth;
+class DepthParameterTest :  public CxxTest::TestSuite, public SVPTDepth
+{
+public:
+
+  void testGetName()
+  {
+    SVPTDepth::testGetName("DepthParameter");
+  }
+
+  void testIsValid()
+  {
+    SVPTDepth::testIsValid();
+  }
+
+  void testIsNotValid()
+  {
+    SVPTDepth::testIsNotValid();
+  }
+
+  void testAssigment()
+  {
+    SVPTDepth::testAssigment();
+  }
+
+  void testClone()
+  {
+    SVPTDepth::testClone();
+  }
+
+  void testCopy()
+  {
+    SVPTDepth::testCopy();
+  }
+
+  void testToXML()
+  {
+    SVPTDepth::testToXML();
+  }
+
+  void testEqual()
+  {
+    SVPTDepth::testEqual();
+  }
+
+  void testNotEqual()
+  {
+    SVPTDepth::testNotEqual();
+  }
+
+  void testInvalidIfUnsigned()
+  {
+    SVPTDepth::testInvalidIfUnsigned();
+  }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/FunctionParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/FunctionParserTest.h
index 5bcea6bb06f19c8af69015f7742868719be5f633..9ceab2a4c79ceec22231c10fa1fa8d1dc7715043 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/FunctionParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/FunctionParserTest.h
@@ -1,61 +1,61 @@
-#ifndef TEST_IMPLICIT_FUNCTION_PARSERS_H_
-#define TEST_IMPLICIT_FUNCTION_PARSERS_H_
-
-//Abstract testing base class for function parsers.
-
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/SingleValueParameterParser.h"
-#include "MantidMDAlgorithms/VectorParameterParser.h"
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
-
-#include "MantidAPI/ImplicitFunctionParser.h"
-#include "MantidAPI/ImplicitFunctionParameterParser.h"
-#include <cxxtest/TestSuite.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-
-class  FunctionParserTest 
-{
-protected:
-
-    //Mock function parser class.
-    class MockFunctionParser : public Mantid::API::ImplicitFunctionParser
-    {
-    public:
-        MockFunctionParser(Mantid::API::ImplicitFunctionParameterParser* paramParser) : Mantid::API::ImplicitFunctionParser(paramParser) { ; }
-        MOCK_METHOD1(createFunctionBuilder, Mantid::API::ImplicitFunctionBuilder*(Poco::XML::Element* functionElement));
-        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParser* parameterElement));
-		    MOCK_METHOD1(setParameterParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterElement));
-    };
-
-    //Mock parameter parser class.
-    class MockParameterParser : public Mantid::API::ImplicitFunctionParameterParser
-    {
-    public:
-        MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
-        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
-    };
-	
-    //helper method to construct real parameter parser chain.
-    Mantid::API::ImplicitFunctionParameterParser* constructRootParameterParser()
-    {
-        using namespace Mantid::MDAlgorithms;
-		    using namespace Mantid::API;
-        ImplicitFunctionParameterParser* originParser = new OriginParameterParser;
-        ImplicitFunctionParameterParser* upParser = new UpParameterParser;
-        ImplicitFunctionParameterParser*  normalParser = new NormalParameterParser;
-        ImplicitFunctionParameterParser* invalidParser = new InvalidParameterParser;
-        ImplicitFunctionParameterParser* widthParser = new WidthParameterParser;
-
-        widthParser->setSuccessorParser(invalidParser);
-        upParser->setSuccessorParser(widthParser);
-        originParser->setSuccessorParser(upParser);
-        normalParser->setSuccessorParser(originParser);
-
-        return normalParser;
-    }
-
-};
-
-#endif
+#ifndef TEST_IMPLICIT_FUNCTION_PARSERS_H_
+#define TEST_IMPLICIT_FUNCTION_PARSERS_H_
+
+//Abstract testing base class for function parsers.
+
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/SingleValueParameterParser.h"
+#include "MantidMDAlgorithms/VectorParameterParser.h"
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
+
+#include "MantidAPI/ImplicitFunctionParser.h"
+#include "MantidAPI/ImplicitFunctionParameterParser.h"
+#include <cxxtest/TestSuite.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+
+class  FunctionParserTest 
+{
+protected:
+
+    //Mock function parser class.
+    class MockFunctionParser : public Mantid::API::ImplicitFunctionParser
+    {
+    public:
+        MockFunctionParser(Mantid::API::ImplicitFunctionParameterParser* paramParser) : Mantid::API::ImplicitFunctionParser(paramParser) { ; }
+        MOCK_METHOD1(createFunctionBuilder, Mantid::API::ImplicitFunctionBuilder*(Poco::XML::Element* functionElement));
+        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParser* parameterElement));
+		    MOCK_METHOD1(setParameterParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterElement));
+    };
+
+    //Mock parameter parser class.
+    class MockParameterParser : public Mantid::API::ImplicitFunctionParameterParser
+    {
+    public:
+        MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
+        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
+    };
+	
+    //helper method to construct real parameter parser chain.
+    Mantid::API::ImplicitFunctionParameterParser* constructRootParameterParser()
+    {
+        using namespace Mantid::MDAlgorithms;
+		    using namespace Mantid::API;
+        ImplicitFunctionParameterParser* originParser = new OriginParameterParser;
+        ImplicitFunctionParameterParser* upParser = new UpParameterParser;
+        ImplicitFunctionParameterParser*  normalParser = new NormalParameterParser;
+        ImplicitFunctionParameterParser* invalidParser = new InvalidParameterParser;
+        ImplicitFunctionParameterParser* widthParser = new WidthParameterParser;
+
+        widthParser->setSuccessorParser(invalidParser);
+        upParser->setSuccessorParser(widthParser);
+        originParser->setSuccessorParser(upParser);
+        normalParser->setSuccessorParser(originParser);
+
+        return normalParser;
+    }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterParserTest.h
index accf538dcf2995a8806798839884e7c4287f3817..ada6c30cdc09f448cc2d3e202b8d78afc7ae1c49 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterParserTest.h
@@ -1,87 +1,87 @@
-#ifndef TEST_HEIGHT_PARAMETER_PARSER_H_
-#define TEST_HEIGHT_PARAMETER_PARSER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include "MantidMDAlgorithms/SingleValueParameterParser.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-using namespace Mantid::MDAlgorithms;
-
-class  HeightParameterParserTest : public CxxTest::TestSuite
-{
-private:
-
-  //Mock class
-  class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
-  {
-  public:
-    MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
-    MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
-  };
-
-public:
-
-
-  void testParseHeightParameterFragment()
-  {
-    using namespace Mantid::MDAlgorithms;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>HeightParameter</Type><Value>3</Value></Parameter>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    HeightParameterParser parser;
-    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-    HeightParameter* pHeightParam = dynamic_cast<HeightParameter*>(iparam);
-    TSM_ASSERT("The paramter generated should be an HeightParamter", NULL != pHeightParam);
-    TSM_ASSERT_EQUALS("Numeric value has not been parsed correctly", 3, pHeightParam->getValue() );
-  }
-
-  void testChainOfResponsibility()
-  {
-    using namespace Mantid::MDAlgorithms;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    SuccessorParameterParser* successor = new SuccessorParameterParser;
-    EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
-
-    HeightParameterParser parser;
-
-    parser.setSuccessorParser(successor);
-    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-
-    TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
-  }
-
-  void testCanParseXMLOutput()
-  { 
-    //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
-    HeightParameter originalHeight(2);
-
-    Poco::XML::DOMParser pParser;
-    Poco::XML::Document* pDoc = pParser.parseString(originalHeight.toXMLString());
-
-    HeightParameterParser heightParser;
-    HeightParameter* synthHeight = dynamic_cast<HeightParameter*>(heightParser.createParameter(pDoc->documentElement()));
-
-    TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. values do not match", originalHeight.getValue() ,  synthHeight->getValue());
-
-    delete synthHeight;
-  }
-
-};
-
-#endif
+#ifndef TEST_HEIGHT_PARAMETER_PARSER_H_
+#define TEST_HEIGHT_PARAMETER_PARSER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include "MantidMDAlgorithms/SingleValueParameterParser.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+using namespace Mantid::MDAlgorithms;
+
+class  HeightParameterParserTest : public CxxTest::TestSuite
+{
+private:
+
+  //Mock class
+  class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
+  {
+  public:
+    MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
+    MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
+  };
+
+public:
+
+
+  void testParseHeightParameterFragment()
+  {
+    using namespace Mantid::MDAlgorithms;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>HeightParameter</Type><Value>3</Value></Parameter>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    HeightParameterParser parser;
+    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+    HeightParameter* pHeightParam = dynamic_cast<HeightParameter*>(iparam);
+    TSM_ASSERT("The paramter generated should be an HeightParamter", NULL != pHeightParam);
+    TSM_ASSERT_EQUALS("Numeric value has not been parsed correctly", 3, pHeightParam->getValue() );
+  }
+
+  void testChainOfResponsibility()
+  {
+    using namespace Mantid::MDAlgorithms;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    SuccessorParameterParser* successor = new SuccessorParameterParser;
+    EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
+
+    HeightParameterParser parser;
+
+    parser.setSuccessorParser(successor);
+    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+
+    TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
+  }
+
+  void testCanParseXMLOutput()
+  { 
+    //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
+    HeightParameter originalHeight(2);
+
+    Poco::XML::DOMParser pParser;
+    Poco::XML::Document* pDoc = pParser.parseString(originalHeight.toXMLString());
+
+    HeightParameterParser heightParser;
+    HeightParameter* synthHeight = dynamic_cast<HeightParameter*>(heightParser.createParameter(pDoc->documentElement()));
+
+    TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. values do not match", originalHeight.getValue() ,  synthHeight->getValue());
+
+    delete synthHeight;
+  }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterTest.h
index 19396d20388cae10bad99aa74e55d22ef981ac64..b5430a8102ed517ce51ca822d0a226dc50d3c214 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/HeightParameterTest.h
@@ -1,67 +1,67 @@
-#ifndef TEST_HEIGHT_PARAMETER_H_
-#define TEST_HEIGHT_PARAMETER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <boost/scoped_ptr.hpp>
-#include "SingleValueParameterBaseTest.h"
-#include "MantidMDAlgorithms/HeightParameter.h"
-
-using namespace Mantid::MDAlgorithms;
-
-typedef SingleValueParameterTests<HeightParameter> SVPTHeight;
-class HeightParameterTest :  public CxxTest::TestSuite, public SVPTHeight
-{
-public:
-
-  void testGetName()
-  {
-    SVPTHeight::testGetName("HeightParameter");
-  }
-
-  void testIsValid()
-  {
-    SVPTHeight::testIsValid();
-  }
-
-  void testIsNotValid()
-  {
-    SVPTHeight::testIsNotValid();
-  }
-
-  void testAssigment()
-  {
-    SVPTHeight::testAssigment();
-  }
-
-  void testClone()
-  {
-    SVPTHeight::testClone();
-  }
-
-  void testCopy()
-  {
-    SVPTHeight::testCopy();
-  }
-
-  void testToXML()
-  {
-    SVPTHeight::testToXML();
-  }
-
-  void testEqual()
-  {
-    SVPTHeight::testEqual();
-  }
-
-  void testNotEqual()
-  {
-    SVPTHeight::testNotEqual();
-  }
-
-  void testInvalidIfUnsigned()
-  {
-    SVPTHeight::testInvalidIfUnsigned();
-  }
-};
-
-#endif
+#ifndef TEST_HEIGHT_PARAMETER_H_
+#define TEST_HEIGHT_PARAMETER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <boost/scoped_ptr.hpp>
+#include "SingleValueParameterBaseTest.h"
+#include "MantidMDAlgorithms/HeightParameter.h"
+
+using namespace Mantid::MDAlgorithms;
+
+typedef SingleValueParameterTests<HeightParameter> SVPTHeight;
+class HeightParameterTest :  public CxxTest::TestSuite, public SVPTHeight
+{
+public:
+
+  void testGetName()
+  {
+    SVPTHeight::testGetName("HeightParameter");
+  }
+
+  void testIsValid()
+  {
+    SVPTHeight::testIsValid();
+  }
+
+  void testIsNotValid()
+  {
+    SVPTHeight::testIsNotValid();
+  }
+
+  void testAssigment()
+  {
+    SVPTHeight::testAssigment();
+  }
+
+  void testClone()
+  {
+    SVPTHeight::testClone();
+  }
+
+  void testCopy()
+  {
+    SVPTHeight::testCopy();
+  }
+
+  void testToXML()
+  {
+    SVPTHeight::testToXML();
+  }
+
+  void testEqual()
+  {
+    SVPTHeight::testEqual();
+  }
+
+  void testNotEqual()
+  {
+    SVPTHeight::testNotEqual();
+  }
+
+  void testInvalidIfUnsigned()
+  {
+    SVPTHeight::testInvalidIfUnsigned();
+  }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterParserTest.h
index 3477d7aa8b1397880c7b4a3238ad940b32476012..8752ccbd7c5208211f12c42a5c6df18634019fb4 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterParserTest.h
@@ -1,44 +1,44 @@
-#ifndef TEST_INVALID_PARAMETER_PARSER_H_
-#define TEST_INVALID_PARAMETER_PARSER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-#include "MantidMDAlgorithms/InvalidParameter.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-class  InvalidParameterParserTest : public CxxTest::TestSuite
-{
-public:
-
-    void testParseInvalidParameterFragment()
-    {
-        using namespace Poco::XML;
-        using namespace Mantid::MDAlgorithms;
-
-        DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>SomeUnknownParameter</Type><Value>x</Value></Parameter>";
-        Document* pDoc = pParser.parseString(xmlToParse);
-        Element* pRootElem = pDoc->documentElement();
-
-        InvalidParameterParser parser;
-        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-        InvalidParameter* pInvalidParam = dynamic_cast<InvalidParameter*>(iparam);
-        boost::scoped_ptr<InvalidParameter> invalparam(pInvalidParam);
-
-        TSM_ASSERT("The paramter generated should be an InvalidParamter", NULL != pInvalidParam);
-        TSM_ASSERT_EQUALS("The invalid parameter has not been parsed correctly.", "x", invalparam->getValue());
-    }
-
-};
-
-#endif
+#ifndef TEST_INVALID_PARAMETER_PARSER_H_
+#define TEST_INVALID_PARAMETER_PARSER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+#include "MantidMDAlgorithms/InvalidParameter.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+class  InvalidParameterParserTest : public CxxTest::TestSuite
+{
+public:
+
+    void testParseInvalidParameterFragment()
+    {
+        using namespace Poco::XML;
+        using namespace Mantid::MDAlgorithms;
+
+        DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>SomeUnknownParameter</Type><Value>x</Value></Parameter>";
+        Document* pDoc = pParser.parseString(xmlToParse);
+        Element* pRootElem = pDoc->documentElement();
+
+        InvalidParameterParser parser;
+        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+        InvalidParameter* pInvalidParam = dynamic_cast<InvalidParameter*>(iparam);
+        boost::scoped_ptr<InvalidParameter> invalparam(pInvalidParam);
+
+        TSM_ASSERT("The paramter generated should be an InvalidParamter", NULL != pInvalidParam);
+        TSM_ASSERT_EQUALS("The invalid parameter has not been parsed correctly.", "x", invalparam->getValue());
+    }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterTest.h
index d77a656fa6be5efa905bde711f1ceaf0a2f1757b..bd3e4e3c70ce47a15286dcc2d8b31ffca23f2dbc 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/InvalidParameterTest.h
@@ -1,52 +1,52 @@
-#ifndef TEST_INVALID_PARAMETER_H_
-#define TEST_INVALID_PARAMETER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/InvalidParameter.h"
-
-class InvalidParameterTest : public CxxTest::TestSuite
-{
-public:
-
-    void testIsValid()
-    {
-        using namespace Mantid::MDAlgorithms;
-        InvalidParameter invalidParam;
-        TSM_ASSERT_EQUALS("The InvalidParameter should always be invalid", false, invalidParam.isValid());
-    }
-
-    void testClone()
-    {
-        using namespace Mantid::MDAlgorithms;
-        InvalidParameter original("1");
-        boost::scoped_ptr<InvalidParameter> cloned(original.clone());
-        TSM_ASSERT_EQUALS("The parameter value has not been cloned.", "1", cloned->getValue());
-    }
-
-    void testCopy()
-    {
-        using namespace Mantid::MDAlgorithms;
-        InvalidParameter original("1");
-        InvalidParameter copy(original);
-        TSM_ASSERT_EQUALS("The parameter value has not been copied.", "1", copy.getValue());
-    }
-
-    void testGetNameFunctionsEquivalent()
-    {
-        using namespace Mantid::MDAlgorithms;
-        InvalidParameter origin;
-        TSM_ASSERT_EQUALS("The static name and the dynamic name of the InvalidParameter do not match.", origin.getName(),  InvalidParameter::parameterName())
-    }
-
-    void testToXMLThrows()
-    {
-        using namespace Mantid::MDAlgorithms;
-        InvalidParameter invalidParam;
-        TSM_ASSERT_THROWS("Should have thrown runtime_error exception as it is not possible to represent and invalid parameter in xml.",  invalidParam.toXMLString(), std::runtime_error );
-    }
-
-};
-
-#endif
+#ifndef TEST_INVALID_PARAMETER_H_
+#define TEST_INVALID_PARAMETER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/InvalidParameter.h"
+
+class InvalidParameterTest : public CxxTest::TestSuite
+{
+public:
+
+    void testIsValid()
+    {
+        using namespace Mantid::MDAlgorithms;
+        InvalidParameter invalidParam;
+        TSM_ASSERT_EQUALS("The InvalidParameter should always be invalid", false, invalidParam.isValid());
+    }
+
+    void testClone()
+    {
+        using namespace Mantid::MDAlgorithms;
+        InvalidParameter original("1");
+        boost::scoped_ptr<InvalidParameter> cloned(original.clone());
+        TSM_ASSERT_EQUALS("The parameter value has not been cloned.", "1", cloned->getValue());
+    }
+
+    void testCopy()
+    {
+        using namespace Mantid::MDAlgorithms;
+        InvalidParameter original("1");
+        InvalidParameter copy(original);
+        TSM_ASSERT_EQUALS("The parameter value has not been copied.", "1", copy.getValue());
+    }
+
+    void testGetNameFunctionsEquivalent()
+    {
+        using namespace Mantid::MDAlgorithms;
+        InvalidParameter origin;
+        TSM_ASSERT_EQUALS("The static name and the dynamic name of the InvalidParameter do not match.", origin.getName(),  InvalidParameter::parameterName())
+    }
+
+    void testToXMLThrows()
+    {
+        using namespace Mantid::MDAlgorithms;
+        InvalidParameter invalidParam;
+        TSM_ASSERT_THROWS("Should have thrown runtime_error exception as it is not possible to represent and invalid parameter in xml.",  invalidParam.toXMLString(), std::runtime_error );
+    }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/Load_MDWorkspaceTest.h b/Code/Mantid/Framework/MDAlgorithms/test/Load_MDWorkspaceTest.h
index f6720e164012d4435bc95ec85af60447e095406b..de1241faf9d29c4f85a8de8dc9f5c975d15589a1 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/Load_MDWorkspaceTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/Load_MDWorkspaceTest.h
@@ -1,99 +1,99 @@
-#ifndef LOAD_MDWORKSPACE_TEST_H
-#define LOAD_MDWORKSPACE_TEST_H
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MantidMDAlgorithms/Load_MDWorkspace.h"
-#include <Poco/Path.h>
-
-using namespace Mantid;
-using namespace API;
-using namespace Kernel;
-using namespace MDDataObjects;
-using namespace MDAlgorithms;
-
-
-
-class Load_MDWorkspaceTest :    public CxxTest::TestSuite
-{
-   Load_MDWorkspace loader;
-   std::string targetWorkspaceName;
-   MDWorkspace *pLoadedWS;
- public:
-     void testLoadMDWSInit(){
-        TSM_ASSERT_THROWS_NOTHING("loader should initialize without throwing",loader.initialize());
-        TSM_ASSERT("Loader should be initialized before going any further",loader.isInitialized());
-     }
-     void testLoadMDWSParams(){
-         // Should fail because mandatory parameter has not been set
-        TSM_ASSERT_THROWS("The loader should throw now as necessary parameters have not been set",loader.execute(),std::runtime_error);
-         
-        // this should throw if file does not exist
-        TSM_ASSERT_THROWS("This file should not exist",loader.setPropertyValue("inFilename","../Test/AutoTestData/test_horace_reader.sqw"),std::invalid_argument);
-        // and so this
-        TSM_ASSERT_THROWS_NOTHING("The test file should exist",loader.setPropertyValue("inFilename","test_horace_reader.sqw"));
-      //  TSM_ASSERT_THROWS_NOTHING("The test file should exist",loader.setPropertyValue("inFilename","fe_demo.sqw"));
-     }
-     void testMDWSExec(){
-         // does it add it to analysis data service? -- no
-         targetWorkspaceName = "Load_MDWorkspaceTestWorkspace";
-         loader.setPropertyValue("MDWorkspace",targetWorkspaceName);
-
-         TSM_ASSERT_THROWS_NOTHING("workspace loading should not throw",loader.execute());
-     }
-     void testMDWSDoneWell(){
-         // now verify if we loaded the right thing
-         Workspace_sptr result;
-         TSM_ASSERT_THROWS_NOTHING("We should retrieve loaded workspace without throwing",result=AnalysisDataService::Instance().retrieve(targetWorkspaceName));
-
-         MDWorkspace_sptr sp_loadedWS=boost::dynamic_pointer_cast<MDWorkspace>(result);
-         TSM_ASSERT("MD workspace has not been casted coorectly",sp_loadedWS.get()!=0);
-
-         pLoadedWS   = sp_loadedWS.get();
-
-         //
-         TSM_ASSERT_EQUALS("The workspace should be 4D",4,pLoadedWS->getNumDims());
-
-         TSM_ASSERT_EQUALS("The number of pixels contributed into this workspace should be 1523850",1523850,pLoadedWS->getNPoints());
-
-         TSM_ASSERT_EQUALS("The MD image in this workspace has to had 64 data cells",64,pLoadedWS->get_const_MDImage().getDataSize());
-     }
-     void testMDImageCorrect(){
-         // if the image we've loaded is correct image (the same as we've put there)
-         MDImage &IMG = pLoadedWS->get_const_MDImage();
-         std::vector<point3D> img_data;
-         std::vector<unsigned int> selection(2,0);
-
-         IMG.getPointData(selection,img_data);
-         double sum(0);
-         for(size_t i=0;i<img_data.size();i++){
-             sum+=img_data[i].S();
-         }
-         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.65789,img_data[0 ].S(),1.e-4);
-         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.37786,img_data[10].S(),1.e-4);
-         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.0,    img_data[15].S(),1.e-4);
-         TSM_ASSERT_DELTA("The sum of all signals in the signals selection should be specific value",7.3273,    sum,1.e-4);
-
-         selection[0]=1;
-         selection[1]=1;
-         IMG.getPointData(selection,img_data);
-
-         sum = 0;
-         for(size_t i=0;i<img_data.size();i++){
-             sum+=img_data[i].S();
-         }
-
-         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0,      img_data[ 0].S(),1.e-4);
-         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.25612,img_data[ 1].S(),1.e-4);
-         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.15172,img_data[15].S(),1.e-4);
-
-         TSM_ASSERT_DELTA("The sum of all signals in the signals selection should be specific value",2.52227, sum,1.e-4);
-
-  
-     }
-
-~Load_MDWorkspaceTest(){
-}
-
-};
-#endif
+#ifndef LOAD_MDWORKSPACE_TEST_H
+#define LOAD_MDWORKSPACE_TEST_H
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MantidMDAlgorithms/Load_MDWorkspace.h"
+#include <Poco/Path.h>
+
+using namespace Mantid;
+using namespace API;
+using namespace Kernel;
+using namespace MDDataObjects;
+using namespace MDAlgorithms;
+
+
+
+class Load_MDWorkspaceTest :    public CxxTest::TestSuite
+{
+   Load_MDWorkspace loader;
+   std::string targetWorkspaceName;
+   MDWorkspace *pLoadedWS;
+ public:
+     void testLoadMDWSInit(){
+        TSM_ASSERT_THROWS_NOTHING("loader should initialize without throwing",loader.initialize());
+        TSM_ASSERT("Loader should be initialized before going any further",loader.isInitialized());
+     }
+     void testLoadMDWSParams(){
+         // Should fail because mandatory parameter has not been set
+        TSM_ASSERT_THROWS("The loader should throw now as necessary parameters have not been set",loader.execute(),std::runtime_error);
+         
+        // this should throw if file does not exist
+        TSM_ASSERT_THROWS("This file should not exist",loader.setPropertyValue("inFilename","../Test/AutoTestData/test_horace_reader.sqw"),std::invalid_argument);
+        // and so this
+        TSM_ASSERT_THROWS_NOTHING("The test file should exist",loader.setPropertyValue("inFilename","test_horace_reader.sqw"));
+      //  TSM_ASSERT_THROWS_NOTHING("The test file should exist",loader.setPropertyValue("inFilename","fe_demo.sqw"));
+     }
+     void testMDWSExec(){
+         // does it add it to analysis data service? -- no
+         targetWorkspaceName = "Load_MDWorkspaceTestWorkspace";
+         loader.setPropertyValue("MDWorkspace",targetWorkspaceName);
+
+         TSM_ASSERT_THROWS_NOTHING("workspace loading should not throw",loader.execute());
+     }
+     void testMDWSDoneWell(){
+         // now verify if we loaded the right thing
+         Workspace_sptr result;
+         TSM_ASSERT_THROWS_NOTHING("We should retrieve loaded workspace without throwing",result=AnalysisDataService::Instance().retrieve(targetWorkspaceName));
+
+         MDWorkspace_sptr sp_loadedWS=boost::dynamic_pointer_cast<MDWorkspace>(result);
+         TSM_ASSERT("MD workspace has not been casted coorectly",sp_loadedWS.get()!=0);
+
+         pLoadedWS   = sp_loadedWS.get();
+
+         //
+         TSM_ASSERT_EQUALS("The workspace should be 4D",4,pLoadedWS->getNumDims());
+
+         TSM_ASSERT_EQUALS("The number of pixels contributed into this workspace should be 1523850",1523850,pLoadedWS->getNPoints());
+
+         TSM_ASSERT_EQUALS("The MD image in this workspace has to had 64 data cells",64,pLoadedWS->get_const_MDImage().getDataSize());
+     }
+     void testMDImageCorrect(){
+         // if the image we've loaded is correct image (the same as we've put there)
+         MDImage &IMG = pLoadedWS->get_const_MDImage();
+         std::vector<point3D> img_data;
+         std::vector<unsigned int> selection(2,0);
+
+         IMG.getPointData(selection,img_data);
+         double sum(0);
+         for(size_t i=0;i<img_data.size();i++){
+             sum+=img_data[i].S();
+         }
+         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.65789,img_data[0 ].S(),1.e-4);
+         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.37786,img_data[10].S(),1.e-4);
+         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.0,    img_data[15].S(),1.e-4);
+         TSM_ASSERT_DELTA("The sum of all signals in the signals selection should be specific value",7.3273,    sum,1.e-4);
+
+         selection[0]=1;
+         selection[1]=1;
+         IMG.getPointData(selection,img_data);
+
+         sum = 0;
+         for(size_t i=0;i<img_data.size();i++){
+             sum+=img_data[i].S();
+         }
+
+         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0,      img_data[ 0].S(),1.e-4);
+         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.25612,img_data[ 1].S(),1.e-4);
+         TSM_ASSERT_DELTA("The signal in this cell should be specified value",0.15172,img_data[15].S(),1.e-4);
+
+         TSM_ASSERT_DELTA("The sum of all signals in the signals selection should be specific value",2.52227, sum,1.e-4);
+
+  
+     }
+
+~Load_MDWorkspaceTest(){
+}
+
+};
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterParserTest.h
index b81d608a3cbf46d5389ab8a1cdaf77f7ca308fac..d77b88b733c2066423041165a3a0602abf4a5070 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterParserTest.h
@@ -1,121 +1,121 @@
-#ifndef TEST_NORMAL_PARAMETER_PARSER_H_
-#define TEST_NORMAL_PARAMETER_PARSER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-
-#include <vector>
-#include <memory>
-#include "MantidMDAlgorithms/VectorParameterParser.h"
-#include "MantidMDAlgorithms/NormalParameter.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-class NormalParameterParserTest : public CxxTest::TestSuite
-{
-private:
-
-    //Testable sub-class
-    class ExposedNormalParameterParser : public Mantid::MDAlgorithms::NormalParameterParser
-    {
-    public: //Make protected method on base public.
-        Mantid::MDAlgorithms::NormalParameter* exposedParseNormalParameterValue(std::string value)
-        {
-            return this->parseVectorParameter(value);
-        }
-    };
-
-	//Mock class
-    class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
-    {
-    public:
-        MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
-        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
-    };
-
-public:
-
-    void testParseNormalParameterValue()
-    {
-        using namespace Mantid::MDAlgorithms;
-        ExposedNormalParameterParser parser;
-        NormalParameter* normalParameter = parser.exposedParseNormalParameterValue("1, 2, 3");
-        TSM_ASSERT_EQUALS("The NormalParameter x value has not been parsed correctly.", 1, normalParameter->getX());
-        TSM_ASSERT_EQUALS("The NormalParameter y value has not been parsed correctly.", 2, normalParameter->getY());
-        TSM_ASSERT_EQUALS("The NormalParameter z value has not been parsed correctly.", 3, normalParameter->getZ());
-        delete normalParameter;
-    }
-
-    void testParseNormalParameterValueIncompleteThrows()
-    {
-        using namespace Mantid::MDAlgorithms;
-        ExposedNormalParameterParser parser;
-        TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as only two of three normal components are provided.", parser.exposedParseNormalParameterValue("1, 2"), std::invalid_argument );
-    }
-
-    void testParseNormalParameterFragment()
-    {
-        using namespace Mantid::MDAlgorithms;
-        using namespace Poco::XML;
-
-        DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>NormalParameter</Type><Value>1, 2, 3</Value></Parameter>";
-        Document* pDoc = pParser.parseString(xmlToParse);
-        Element* pRootElem = pDoc->documentElement();
-
-        NormalParameterParser parser;
-        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-        NormalParameter* pNormalParam = dynamic_cast<NormalParameter*>(iparam);
-        std::auto_ptr<NormalParameter> nparam = std::auto_ptr<NormalParameter>(pNormalParam);
-        TSM_ASSERT("The paramter generated should be an NormalParamter", NULL != pNormalParam);
-    }
-    void testChainOfResponsibility()
-    {
-        using namespace Mantid::MDAlgorithms;
-        using namespace Poco::XML;
-
-        DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>Unknown</Type><Value>1, 2, 3</Value></Parameter>";
-        Document* pDoc = pParser.parseString(xmlToParse);
-        Element* pRootElem = pDoc->documentElement();
-		
-		SuccessorParameterParser* successor = new SuccessorParameterParser;
-        EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
-        
-		NormalParameterParser parser;
-		
-        parser.setSuccessorParser(successor);
-        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-
-        TSM_ASSERT("Chain of responsiblity did not execute as expected for NormalParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
-    }
-	
-	void testCanParseXMLOutput()
-	{ 
-	  //Circular check that xml given by an normal parameter can be used to create a new one using the parser.
-	  using namespace Mantid::MDAlgorithms;
-	  NormalParameter originalNormal(1, 2, 3);
-	  
-	  Poco::XML::DOMParser pParser;
-      Poco::XML::Document* pDoc = pParser.parseString(originalNormal.toXMLString());
-	
-	  NormalParameterParser normalParser;
-	  NormalParameter* synthNormal = dynamic_cast<NormalParameter*>(normalParser.createParameter(pDoc->documentElement()));
-	  
-	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. x-values do not match", originalNormal.getX() ,  synthNormal->getX());
-	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. y-values do not match", originalNormal.getY() ,  synthNormal->getY());
-	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. z-values do not match", originalNormal.getZ() ,  synthNormal->getZ());
-	  
-	  delete synthNormal;
-	}
-};
-
-#endif
+#ifndef TEST_NORMAL_PARAMETER_PARSER_H_
+#define TEST_NORMAL_PARAMETER_PARSER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+
+#include <vector>
+#include <memory>
+#include "MantidMDAlgorithms/VectorParameterParser.h"
+#include "MantidMDAlgorithms/NormalParameter.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+class NormalParameterParserTest : public CxxTest::TestSuite
+{
+private:
+
+    //Testable sub-class
+    class ExposedNormalParameterParser : public Mantid::MDAlgorithms::NormalParameterParser
+    {
+    public: //Make protected method on base public.
+        Mantid::MDAlgorithms::NormalParameter* exposedParseNormalParameterValue(std::string value)
+        {
+            return this->parseVectorParameter(value);
+        }
+    };
+
+	//Mock class
+    class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
+    {
+    public:
+        MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
+        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
+    };
+
+public:
+
+    void testParseNormalParameterValue()
+    {
+        using namespace Mantid::MDAlgorithms;
+        ExposedNormalParameterParser parser;
+        NormalParameter* normalParameter = parser.exposedParseNormalParameterValue("1, 2, 3");
+        TSM_ASSERT_EQUALS("The NormalParameter x value has not been parsed correctly.", 1, normalParameter->getX());
+        TSM_ASSERT_EQUALS("The NormalParameter y value has not been parsed correctly.", 2, normalParameter->getY());
+        TSM_ASSERT_EQUALS("The NormalParameter z value has not been parsed correctly.", 3, normalParameter->getZ());
+        delete normalParameter;
+    }
+
+    void testParseNormalParameterValueIncompleteThrows()
+    {
+        using namespace Mantid::MDAlgorithms;
+        ExposedNormalParameterParser parser;
+        TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as only two of three normal components are provided.", parser.exposedParseNormalParameterValue("1, 2"), std::invalid_argument );
+    }
+
+    void testParseNormalParameterFragment()
+    {
+        using namespace Mantid::MDAlgorithms;
+        using namespace Poco::XML;
+
+        DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>NormalParameter</Type><Value>1, 2, 3</Value></Parameter>";
+        Document* pDoc = pParser.parseString(xmlToParse);
+        Element* pRootElem = pDoc->documentElement();
+
+        NormalParameterParser parser;
+        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+        NormalParameter* pNormalParam = dynamic_cast<NormalParameter*>(iparam);
+        std::auto_ptr<NormalParameter> nparam = std::auto_ptr<NormalParameter>(pNormalParam);
+        TSM_ASSERT("The paramter generated should be an NormalParamter", NULL != pNormalParam);
+    }
+    void testChainOfResponsibility()
+    {
+        using namespace Mantid::MDAlgorithms;
+        using namespace Poco::XML;
+
+        DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>Unknown</Type><Value>1, 2, 3</Value></Parameter>";
+        Document* pDoc = pParser.parseString(xmlToParse);
+        Element* pRootElem = pDoc->documentElement();
+		
+		SuccessorParameterParser* successor = new SuccessorParameterParser;
+        EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
+        
+		NormalParameterParser parser;
+		
+        parser.setSuccessorParser(successor);
+        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+
+        TSM_ASSERT("Chain of responsiblity did not execute as expected for NormalParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
+    }
+	
+	void testCanParseXMLOutput()
+	{ 
+	  //Circular check that xml given by an normal parameter can be used to create a new one using the parser.
+	  using namespace Mantid::MDAlgorithms;
+	  NormalParameter originalNormal(1, 2, 3);
+	  
+	  Poco::XML::DOMParser pParser;
+      Poco::XML::Document* pDoc = pParser.parseString(originalNormal.toXMLString());
+	
+	  NormalParameterParser normalParser;
+	  NormalParameter* synthNormal = dynamic_cast<NormalParameter*>(normalParser.createParameter(pDoc->documentElement()));
+	  
+	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. x-values do not match", originalNormal.getX() ,  synthNormal->getX());
+	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. y-values do not match", originalNormal.getY() ,  synthNormal->getY());
+	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. z-values do not match", originalNormal.getZ() ,  synthNormal->getZ());
+	  
+	  delete synthNormal;
+	}
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterTest.h
index b0a3d87a04f235137410ebc9b3c97d603f4f0c9f..2bd29acdfe31ccd4ca7b997188691b822ce60aef 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/NormalParameterTest.h
@@ -1,139 +1,139 @@
-#ifndef TEST_NORMAL_PARAMETER_H_
-#define TEST_NORMAL_PARAMETER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/NormalParameter.h"
-
-class NormalParameterTest: public CxxTest::TestSuite
-{
-public:
-
-  void testCreate()
-  {
-
-    Mantid::MDAlgorithms::NormalParameter normal(0, 1, 2);
-    TSM_ASSERT_EQUALS("NormalParameter getX() is not wired-up correctly.", 0, normal.getX());
-    TSM_ASSERT_EQUALS("NormalParameter getY() is not wired-up correctly.", 1, normal.getY());
-    TSM_ASSERT_EQUALS("NormalParameter getZ() is not wired-up correctly.", 2, normal.getZ());
-  }
-
-  void testIsValid()
-  {
-    Mantid::MDAlgorithms::NormalParameter normal(0, 0, 0);
-    TSM_ASSERT_EQUALS("The NormalParameter should be valid.", true, normal.isValid());
-  }
-
-  void testAssigment()
-  {
-    using namespace Mantid::MDAlgorithms;
-    NormalParameter A(0, 1, 2);
-    NormalParameter B;
-    A = B;
-    TSM_ASSERT_EQUALS("Assigned NormalParameter getX() is not correct.", 0, A.getX());
-    TSM_ASSERT_EQUALS("Assigned NormalParameter getY() is not correct.", 0, A.getY());
-    TSM_ASSERT_EQUALS("Assigned NormalParameter getZ() is not correct.", 0, A.getZ());
-    TSM_ASSERT_EQUALS("Assigned NormalParameter isValid() is not correct.", false, A.isValid());
-  }
-
-  void testDefaultInvalid()
-  {
-    Mantid::MDAlgorithms::NormalParameter normal;
-    TSM_ASSERT_EQUALS("Should be invalid!", false, normal.isValid());
-  }
-
-  void testIsNotValid()
-  {
-    Mantid::MDAlgorithms::NormalParameter normal(0, 0, 0);
-    TSM_ASSERT_EQUALS("NormalParameter constructed via parameterless constructor should be invalid.",
-        true, normal.isValid());
-  }
-
-  void testClone()
-  {
-    Mantid::MDAlgorithms::NormalParameter original(0, 1, 2);
-    boost::scoped_ptr<Mantid::MDAlgorithms::NormalParameter> cloned(original.clone());
-
-    TSM_ASSERT_EQUALS("Cloned NormalParameter getX() is not same as original.", 0, cloned->getX());
-    TSM_ASSERT_EQUALS("Cloned NormalParameter getY() is not same as original.", 1, cloned->getY());
-    TSM_ASSERT_EQUALS("Cloned NormalParameter getZ() is not same as original.", 2, cloned->getZ());
-    TSM_ASSERT_EQUALS("Cloned NormalParameter isValid() is not same as original.", original.isValid(),
-        cloned->isValid());
-  }
-
-  void testCopy()
-  {
-    Mantid::MDAlgorithms::NormalParameter original(0, 1, 2);
-    Mantid::MDAlgorithms::NormalParameter copy(original);
-    TSM_ASSERT_EQUALS("Copied NormalParameter getX() is not same as original.", 0, copy.getX());
-    TSM_ASSERT_EQUALS("Copied NormalParameter getY() is not same as original.", 1, copy.getY());
-    TSM_ASSERT_EQUALS("Copied NormalParameter getZ() is not same as original.", 2, copy.getZ());
-    TSM_ASSERT_EQUALS("Copied NormalParameter isValid() is not same as original.", original.isValid(),
-        copy.isValid());
-  }
-
-  void testGetNameFunctionsEquivalent()
-  {
-    Mantid::MDAlgorithms::NormalParameter normal(0, 0, 0);
-TSM_ASSERT_EQUALS  ("The static name and the dynamic name of the NormalParameter do not match.", normal.getName(), Mantid::MDAlgorithms::NormalParameter::parameterName())
-}
-
-void testReflect()
-{
-  Mantid::MDAlgorithms::NormalParameter normal(1, 2, 3);
-  Mantid::MDAlgorithms::NormalParameter reflected = normal.reflect();
-
-  TSM_ASSERT_EQUALS("Reflected normal x value is not negative of original.", -1, reflected.getX() );
-  TSM_ASSERT_EQUALS("Reflected normal y value is not negative of original.", -2, reflected.getY() );
-  TSM_ASSERT_EQUALS("Reflected normal z value is not negative of original.", -3, reflected.getZ() );
-}
-
-void testEqual()
-{
-  using namespace Mantid::MDAlgorithms;
-  NormalParameter A(1, 2, 3);
-  NormalParameter B(1, 2, 3);
-
-  TSM_ASSERT_EQUALS("The two Normal instances are not considered equal, but should be.", A, B);
-}
-
-void testNotEqual()
-{
-  //Test unequal combinations
-  using namespace Mantid::MDAlgorithms;
-  NormalParameter A(1, 2, 3);
-  NormalParameter B(0, 2, 3);
-  NormalParameter C(1, 0, 3);
-  NormalParameter D(1, 2, 0);
-  TSM_ASSERT_DIFFERS("The two Normal instances are considered equal, but should not be.", A, B);
-  TSM_ASSERT_DIFFERS("The two Normal instances are considered equal, but should not be.", A, C);
-  TSM_ASSERT_DIFFERS("The two Normal instances are considered equal, but should not be.", A, D);
-}
-
-void testIsUnitVector()
-{
-  using namespace Mantid::MDAlgorithms;
-  NormalParameter notUnit(1, 2, 3);
-  NormalParameter unit(0, 1, 0);
-  TSM_ASSERT("This is not a unit vector", !notUnit.isUnitVector());
-  TSM_ASSERT("This is a unit vector", unit.isUnitVector());
-}
-
-
-void testAsUnitVector()
-{
-  using namespace Mantid::MDAlgorithms;
-  NormalParameter A(2, 0, 0);
-  NormalParameter B = A.asUnitVector();
-  TSM_ASSERT("This is not a unit vector", !A.isUnitVector());
-  TSM_ASSERT("This is a unit vector", B.isUnitVector());
-  TSM_ASSERT_EQUALS("x component incorrect", 1, B.getX());
-  TSM_ASSERT_EQUALS("y component incorrect", 0, B.getY());
-  TSM_ASSERT_EQUALS("z component incorrect", 0, B.getZ());
-
-}
-
-};
-
-#endif
+#ifndef TEST_NORMAL_PARAMETER_H_
+#define TEST_NORMAL_PARAMETER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/NormalParameter.h"
+
+class NormalParameterTest: public CxxTest::TestSuite
+{
+public:
+
+  void testCreate()
+  {
+
+    Mantid::MDAlgorithms::NormalParameter normal(0, 1, 2);
+    TSM_ASSERT_EQUALS("NormalParameter getX() is not wired-up correctly.", 0, normal.getX());
+    TSM_ASSERT_EQUALS("NormalParameter getY() is not wired-up correctly.", 1, normal.getY());
+    TSM_ASSERT_EQUALS("NormalParameter getZ() is not wired-up correctly.", 2, normal.getZ());
+  }
+
+  void testIsValid()
+  {
+    Mantid::MDAlgorithms::NormalParameter normal(0, 0, 0);
+    TSM_ASSERT_EQUALS("The NormalParameter should be valid.", true, normal.isValid());
+  }
+
+  void testAssigment()
+  {
+    using namespace Mantid::MDAlgorithms;
+    NormalParameter A(0, 1, 2);
+    NormalParameter B;
+    A = B;
+    TSM_ASSERT_EQUALS("Assigned NormalParameter getX() is not correct.", 0, A.getX());
+    TSM_ASSERT_EQUALS("Assigned NormalParameter getY() is not correct.", 0, A.getY());
+    TSM_ASSERT_EQUALS("Assigned NormalParameter getZ() is not correct.", 0, A.getZ());
+    TSM_ASSERT_EQUALS("Assigned NormalParameter isValid() is not correct.", false, A.isValid());
+  }
+
+  void testDefaultInvalid()
+  {
+    Mantid::MDAlgorithms::NormalParameter normal;
+    TSM_ASSERT_EQUALS("Should be invalid!", false, normal.isValid());
+  }
+
+  void testIsNotValid()
+  {
+    Mantid::MDAlgorithms::NormalParameter normal(0, 0, 0);
+    TSM_ASSERT_EQUALS("NormalParameter constructed via parameterless constructor should be invalid.",
+        true, normal.isValid());
+  }
+
+  void testClone()
+  {
+    Mantid::MDAlgorithms::NormalParameter original(0, 1, 2);
+    boost::scoped_ptr<Mantid::MDAlgorithms::NormalParameter> cloned(original.clone());
+
+    TSM_ASSERT_EQUALS("Cloned NormalParameter getX() is not same as original.", 0, cloned->getX());
+    TSM_ASSERT_EQUALS("Cloned NormalParameter getY() is not same as original.", 1, cloned->getY());
+    TSM_ASSERT_EQUALS("Cloned NormalParameter getZ() is not same as original.", 2, cloned->getZ());
+    TSM_ASSERT_EQUALS("Cloned NormalParameter isValid() is not same as original.", original.isValid(),
+        cloned->isValid());
+  }
+
+  void testCopy()
+  {
+    Mantid::MDAlgorithms::NormalParameter original(0, 1, 2);
+    Mantid::MDAlgorithms::NormalParameter copy(original);
+    TSM_ASSERT_EQUALS("Copied NormalParameter getX() is not same as original.", 0, copy.getX());
+    TSM_ASSERT_EQUALS("Copied NormalParameter getY() is not same as original.", 1, copy.getY());
+    TSM_ASSERT_EQUALS("Copied NormalParameter getZ() is not same as original.", 2, copy.getZ());
+    TSM_ASSERT_EQUALS("Copied NormalParameter isValid() is not same as original.", original.isValid(),
+        copy.isValid());
+  }
+
+  void testGetNameFunctionsEquivalent()
+  {
+    Mantid::MDAlgorithms::NormalParameter normal(0, 0, 0);
+TSM_ASSERT_EQUALS  ("The static name and the dynamic name of the NormalParameter do not match.", normal.getName(), Mantid::MDAlgorithms::NormalParameter::parameterName())
+}
+
+void testReflect()
+{
+  Mantid::MDAlgorithms::NormalParameter normal(1, 2, 3);
+  Mantid::MDAlgorithms::NormalParameter reflected = normal.reflect();
+
+  TSM_ASSERT_EQUALS("Reflected normal x value is not negative of original.", -1, reflected.getX() );
+  TSM_ASSERT_EQUALS("Reflected normal y value is not negative of original.", -2, reflected.getY() );
+  TSM_ASSERT_EQUALS("Reflected normal z value is not negative of original.", -3, reflected.getZ() );
+}
+
+void testEqual()
+{
+  using namespace Mantid::MDAlgorithms;
+  NormalParameter A(1, 2, 3);
+  NormalParameter B(1, 2, 3);
+
+  TSM_ASSERT_EQUALS("The two Normal instances are not considered equal, but should be.", A, B);
+}
+
+void testNotEqual()
+{
+  //Test unequal combinations
+  using namespace Mantid::MDAlgorithms;
+  NormalParameter A(1, 2, 3);
+  NormalParameter B(0, 2, 3);
+  NormalParameter C(1, 0, 3);
+  NormalParameter D(1, 2, 0);
+  TSM_ASSERT_DIFFERS("The two Normal instances are considered equal, but should not be.", A, B);
+  TSM_ASSERT_DIFFERS("The two Normal instances are considered equal, but should not be.", A, C);
+  TSM_ASSERT_DIFFERS("The two Normal instances are considered equal, but should not be.", A, D);
+}
+
+void testIsUnitVector()
+{
+  using namespace Mantid::MDAlgorithms;
+  NormalParameter notUnit(1, 2, 3);
+  NormalParameter unit(0, 1, 0);
+  TSM_ASSERT("This is not a unit vector", !notUnit.isUnitVector());
+  TSM_ASSERT("This is a unit vector", unit.isUnitVector());
+}
+
+
+void testAsUnitVector()
+{
+  using namespace Mantid::MDAlgorithms;
+  NormalParameter A(2, 0, 0);
+  NormalParameter B = A.asUnitVector();
+  TSM_ASSERT("This is not a unit vector", !A.isUnitVector());
+  TSM_ASSERT("This is a unit vector", B.isUnitVector());
+  TSM_ASSERT_EQUALS("x component incorrect", 1, B.getX());
+  TSM_ASSERT_EQUALS("y component incorrect", 0, B.getY());
+  TSM_ASSERT_EQUALS("z component incorrect", 0, B.getZ());
+
+}
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterParserTest.h
index d4c809da1e035d7a7e2c1eef1cd2c38dd71dfbe9..de4690679ce1ca5b4056361b5b3d2ef8d9ba4f21 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterParserTest.h
@@ -1,117 +1,117 @@
-#ifndef TEST_ORIGIN_PARAMETER_PARSER_H_
-#define TEST_ORIGIN_PARAMETER_PARSER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <memory>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include "MantidMDAlgorithms/VectorParameterParser.h"
-#include "MantidMDAlgorithms/OriginParameter.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-class  OriginParameterParserTest : public CxxTest::TestSuite
-{
-private:
-
-    //Testable sub-class
-    class ExposedOriginParameterParser : public Mantid::MDAlgorithms::OriginParameterParser
-    {
-    public: //Make protected method on base public.
-        Mantid::MDAlgorithms::OriginParameter* exposedParseOriginParameterValue(std::string value)
-        {
-            return this->parseVectorParameter(value);
-        }
-    };
-
-    //Mock class
-    class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
-    {
-    public:
-        MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
-        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
-    };
-
-public:
-
-    void testParseOriginParameterValue()
-    {
-        using namespace Mantid::MDAlgorithms;
-        ExposedOriginParameterParser parser;
-        OriginParameter* originParameter = parser.exposedParseOriginParameterValue("1, 2, 3");
-        TSM_ASSERT_EQUALS("The OriginParameter x value has not been parsed correctly.", 1, originParameter->getX());
-        TSM_ASSERT_EQUALS("The OriginParameter y value has not been parsed correctly.", 2, originParameter->getY());
-        TSM_ASSERT_EQUALS("The OriginParameter z value has not been parsed correctly.", 3, originParameter->getZ());
-        delete originParameter;
-    }
-
-    void testParseOriginParameterValueIncompleteThrows()
-    {
-        ExposedOriginParameterParser parser;
-        TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as only two of three origin components are provided.", parser.exposedParseOriginParameterValue("1, 2"), std::invalid_argument );
-    }
-
-    void testParseOriginParameterFragment()
-    {
-        using namespace Mantid::MDAlgorithms;
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        OriginParameterParser parser;
-        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-        OriginParameter* pOriginParam = dynamic_cast<OriginParameter*>(iparam);
-        std::auto_ptr<OriginParameter> oparam = std::auto_ptr<OriginParameter>(pOriginParam);
-        TSM_ASSERT("The paramter generated should be an OriginParamter", NULL != pOriginParam);
-    }
-
-    void testChainOfResponsibility()
-    {
-        using namespace Mantid::MDAlgorithms;
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        SuccessorParameterParser* successor = new SuccessorParameterParser;
-        EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
-        
-		OriginParameterParser parser;
-		
-        parser.setSuccessorParser(successor);
-        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-
-        TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
-    }
-	
-	void testCanParseXMLOutput()
-	{ 
-	  //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
-	  using namespace Mantid::MDAlgorithms;
-	  OriginParameter originalOrigin(1, 2, 3);
-	  
-	  Poco::XML::DOMParser pParser;
-      Poco::XML::Document* pDoc = pParser.parseString(originalOrigin.toXMLString());
-	
-	  OriginParameterParser originParser;
-	  OriginParameter* synthOrigin = dynamic_cast<OriginParameter*>(originParser.createParameter(pDoc->documentElement()));
-	  
-	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. x-values do not match", originalOrigin.getX() ,  synthOrigin->getX());
-	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. y-values do not match", originalOrigin.getY() ,  synthOrigin->getY());
-	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. z-values do not match", originalOrigin.getZ() ,  synthOrigin->getZ());
-	  
-	  delete synthOrigin;
-	}
-
-};
-
-#endif
+#ifndef TEST_ORIGIN_PARAMETER_PARSER_H_
+#define TEST_ORIGIN_PARAMETER_PARSER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <memory>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include "MantidMDAlgorithms/VectorParameterParser.h"
+#include "MantidMDAlgorithms/OriginParameter.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+class  OriginParameterParserTest : public CxxTest::TestSuite
+{
+private:
+
+    //Testable sub-class
+    class ExposedOriginParameterParser : public Mantid::MDAlgorithms::OriginParameterParser
+    {
+    public: //Make protected method on base public.
+        Mantid::MDAlgorithms::OriginParameter* exposedParseOriginParameterValue(std::string value)
+        {
+            return this->parseVectorParameter(value);
+        }
+    };
+
+    //Mock class
+    class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
+    {
+    public:
+        MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
+        MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
+    };
+
+public:
+
+    void testParseOriginParameterValue()
+    {
+        using namespace Mantid::MDAlgorithms;
+        ExposedOriginParameterParser parser;
+        OriginParameter* originParameter = parser.exposedParseOriginParameterValue("1, 2, 3");
+        TSM_ASSERT_EQUALS("The OriginParameter x value has not been parsed correctly.", 1, originParameter->getX());
+        TSM_ASSERT_EQUALS("The OriginParameter y value has not been parsed correctly.", 2, originParameter->getY());
+        TSM_ASSERT_EQUALS("The OriginParameter z value has not been parsed correctly.", 3, originParameter->getZ());
+        delete originParameter;
+    }
+
+    void testParseOriginParameterValueIncompleteThrows()
+    {
+        ExposedOriginParameterParser parser;
+        TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as only two of three origin components are provided.", parser.exposedParseOriginParameterValue("1, 2"), std::invalid_argument );
+    }
+
+    void testParseOriginParameterFragment()
+    {
+        using namespace Mantid::MDAlgorithms;
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        OriginParameterParser parser;
+        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+        OriginParameter* pOriginParam = dynamic_cast<OriginParameter*>(iparam);
+        std::auto_ptr<OriginParameter> oparam = std::auto_ptr<OriginParameter>(pOriginParam);
+        TSM_ASSERT("The paramter generated should be an OriginParamter", NULL != pOriginParam);
+    }
+
+    void testChainOfResponsibility()
+    {
+        using namespace Mantid::MDAlgorithms;
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        SuccessorParameterParser* successor = new SuccessorParameterParser;
+        EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
+        
+		OriginParameterParser parser;
+		
+        parser.setSuccessorParser(successor);
+        Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+
+        TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
+    }
+	
+	void testCanParseXMLOutput()
+	{ 
+	  //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
+	  using namespace Mantid::MDAlgorithms;
+	  OriginParameter originalOrigin(1, 2, 3);
+	  
+	  Poco::XML::DOMParser pParser;
+      Poco::XML::Document* pDoc = pParser.parseString(originalOrigin.toXMLString());
+	
+	  OriginParameterParser originParser;
+	  OriginParameter* synthOrigin = dynamic_cast<OriginParameter*>(originParser.createParameter(pDoc->documentElement()));
+	  
+	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. x-values do not match", originalOrigin.getX() ,  synthOrigin->getX());
+	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. y-values do not match", originalOrigin.getY() ,  synthOrigin->getY());
+	  TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. z-values do not match", originalOrigin.getZ() ,  synthOrigin->getZ());
+	  
+	  delete synthOrigin;
+	}
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterTest.h
index f88ed023bde6df985b65db56be7e1831a1e06da3..0c702f3dd6b151f81c66a21f80770c1dc2e30a09 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/OriginParameterTest.h
@@ -1,104 +1,104 @@
-#ifndef TEST_ORIGIN_PARAMETER_H_
-#define TEST_ORIGIN_PARAMETER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/OriginParameter.h"
-
-class OriginParameterTest : public CxxTest::TestSuite
-{
-public:
-
-  void testCreate()
-  {
-
-    Mantid::MDAlgorithms::OriginParameter origin(0, 1, 2);
-    TSM_ASSERT_EQUALS("OriginParameter getX() is not wired-up correctly.", 0, origin.getX() );
-    TSM_ASSERT_EQUALS("OriginParameter getY() is not wired-up correctly.", 1, origin.getY() );
-    TSM_ASSERT_EQUALS("OriginParameter getZ() is not wired-up correctly.", 2, origin.getZ() );
-  }
-
-  void testIsValid()
-  {
-    Mantid::MDAlgorithms::OriginParameter origin(0, 0, 0);
-    TSM_ASSERT_EQUALS("The OriginParameter should be valid.", true, origin.isValid());
-  }
-
-
-  void testDefaultInvalid()
-  {
-    Mantid::MDAlgorithms::OriginParameter origin;
-    TSM_ASSERT_EQUALS("Should be invalid!", false, origin.isValid() );
-  }
-
-  void testAssigment()
-  {
-    using namespace Mantid::MDAlgorithms;
-    OriginParameter A(0, 1, 2);
-    OriginParameter B;
-    A = B;
-    TSM_ASSERT_EQUALS("Assigned OriginParameter getX() is not correct.", 0, A.getX() );
-    TSM_ASSERT_EQUALS("Assigned OriginParameter getY() is not correct.", 0, A.getY() );
-    TSM_ASSERT_EQUALS("Assigned OriginParameter getZ() is not correct.", 0, A.getZ() );	
-    TSM_ASSERT_EQUALS("Assigned OriginParameter isValid() is not same as original.", B.isValid(), A.isValid() );
-  }
-
-  void testClone()
-  {
-    Mantid::MDAlgorithms::OriginParameter original(0, 1, 2);
-    boost::scoped_ptr<Mantid::MDAlgorithms::OriginParameter> cloned(original.clone());
-
-    TSM_ASSERT_EQUALS("Cloned OriginParameter getX() is not same as original.", 0, cloned->getX() );
-    TSM_ASSERT_EQUALS("Cloned OriginParameter getY() is not same as original.", 1, cloned->getY() );
-    TSM_ASSERT_EQUALS("Cloned OriginParameter getZ() is not same as original.", 2, cloned->getZ() );
-    TSM_ASSERT_EQUALS("Cloned OriginParameter isValid() is not same as original.", original.isValid(), cloned->isValid() );
-  }
-
-  void testCopy()
-  {
-    Mantid::MDAlgorithms::OriginParameter original(0, 1, 2);
-    Mantid::MDAlgorithms::OriginParameter copy(original);
-    TSM_ASSERT_EQUALS("Copied OriginParameter getX() is not same as original.", 0, copy.getX() );
-    TSM_ASSERT_EQUALS("Copied OriginParameter getY() is not same as original.", 1, copy.getY() );
-    TSM_ASSERT_EQUALS("Copied OriginParameter getZ() is not same as original.", 2, copy.getZ() );
-    TSM_ASSERT_EQUALS("Copied OriginParameter isValid() is not same as original.", original.isValid(), copy.isValid() );
-  }
-
-  void testGetNameFunctionsEquivalent()
-  {
-    Mantid::MDAlgorithms::OriginParameter origin(0, 0, 0);
-    TSM_ASSERT_EQUALS("The static name and the dynamic name of the OriginParameter do not match.", origin.getName(),  Mantid::MDAlgorithms::OriginParameter::parameterName());
-  }
-
-  void testToXML()
-  {
-    Mantid::MDAlgorithms::OriginParameter origin(1, 2, 3);
-    TSM_ASSERT_EQUALS("The generated xml for the OriginParameter does not match the specification.", "<Parameter><Type>OriginParameter</Type><Value>1.0000, 2.0000, 3.0000</Value></Parameter>", origin.toXMLString());
-  }
-
-  void testEqual()
-  {
-    using namespace Mantid::MDAlgorithms;
-    OriginParameter A(1, 2, 3);
-    OriginParameter B(1, 2, 3);
-
-    TSM_ASSERT_EQUALS("The two origin instances are not considered equal, but should be.", A, B);
-  }
-
-  void testNotEqual()
-  {
-    //Test unequal combinations
-    using namespace Mantid::MDAlgorithms;
-    OriginParameter A(1, 2, 3);
-    OriginParameter B(0, 2, 3);
-    OriginParameter C(1, 0, 3);
-    OriginParameter D(1, 2, 0);		
-    TSM_ASSERT_DIFFERS("The two origin instances are considered equal, but should not be.", A, B);
-    TSM_ASSERT_DIFFERS("The two origin instances are considered equal, but should not be.", A, C);
-    TSM_ASSERT_DIFFERS("The two origin instances are considered equal, but should not be.", A, D);
-  }
-
-};
-
-#endif
+#ifndef TEST_ORIGIN_PARAMETER_H_
+#define TEST_ORIGIN_PARAMETER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/OriginParameter.h"
+
+class OriginParameterTest : public CxxTest::TestSuite
+{
+public:
+
+  void testCreate()
+  {
+
+    Mantid::MDAlgorithms::OriginParameter origin(0, 1, 2);
+    TSM_ASSERT_EQUALS("OriginParameter getX() is not wired-up correctly.", 0, origin.getX() );
+    TSM_ASSERT_EQUALS("OriginParameter getY() is not wired-up correctly.", 1, origin.getY() );
+    TSM_ASSERT_EQUALS("OriginParameter getZ() is not wired-up correctly.", 2, origin.getZ() );
+  }
+
+  void testIsValid()
+  {
+    Mantid::MDAlgorithms::OriginParameter origin(0, 0, 0);
+    TSM_ASSERT_EQUALS("The OriginParameter should be valid.", true, origin.isValid());
+  }
+
+
+  void testDefaultInvalid()
+  {
+    Mantid::MDAlgorithms::OriginParameter origin;
+    TSM_ASSERT_EQUALS("Should be invalid!", false, origin.isValid() );
+  }
+
+  void testAssigment()
+  {
+    using namespace Mantid::MDAlgorithms;
+    OriginParameter A(0, 1, 2);
+    OriginParameter B;
+    A = B;
+    TSM_ASSERT_EQUALS("Assigned OriginParameter getX() is not correct.", 0, A.getX() );
+    TSM_ASSERT_EQUALS("Assigned OriginParameter getY() is not correct.", 0, A.getY() );
+    TSM_ASSERT_EQUALS("Assigned OriginParameter getZ() is not correct.", 0, A.getZ() );	
+    TSM_ASSERT_EQUALS("Assigned OriginParameter isValid() is not same as original.", B.isValid(), A.isValid() );
+  }
+
+  void testClone()
+  {
+    Mantid::MDAlgorithms::OriginParameter original(0, 1, 2);
+    boost::scoped_ptr<Mantid::MDAlgorithms::OriginParameter> cloned(original.clone());
+
+    TSM_ASSERT_EQUALS("Cloned OriginParameter getX() is not same as original.", 0, cloned->getX() );
+    TSM_ASSERT_EQUALS("Cloned OriginParameter getY() is not same as original.", 1, cloned->getY() );
+    TSM_ASSERT_EQUALS("Cloned OriginParameter getZ() is not same as original.", 2, cloned->getZ() );
+    TSM_ASSERT_EQUALS("Cloned OriginParameter isValid() is not same as original.", original.isValid(), cloned->isValid() );
+  }
+
+  void testCopy()
+  {
+    Mantid::MDAlgorithms::OriginParameter original(0, 1, 2);
+    Mantid::MDAlgorithms::OriginParameter copy(original);
+    TSM_ASSERT_EQUALS("Copied OriginParameter getX() is not same as original.", 0, copy.getX() );
+    TSM_ASSERT_EQUALS("Copied OriginParameter getY() is not same as original.", 1, copy.getY() );
+    TSM_ASSERT_EQUALS("Copied OriginParameter getZ() is not same as original.", 2, copy.getZ() );
+    TSM_ASSERT_EQUALS("Copied OriginParameter isValid() is not same as original.", original.isValid(), copy.isValid() );
+  }
+
+  void testGetNameFunctionsEquivalent()
+  {
+    Mantid::MDAlgorithms::OriginParameter origin(0, 0, 0);
+    TSM_ASSERT_EQUALS("The static name and the dynamic name of the OriginParameter do not match.", origin.getName(),  Mantid::MDAlgorithms::OriginParameter::parameterName());
+  }
+
+  void testToXML()
+  {
+    Mantid::MDAlgorithms::OriginParameter origin(1, 2, 3);
+    TSM_ASSERT_EQUALS("The generated xml for the OriginParameter does not match the specification.", "<Parameter><Type>OriginParameter</Type><Value>1.0000, 2.0000, 3.0000</Value></Parameter>", origin.toXMLString());
+  }
+
+  void testEqual()
+  {
+    using namespace Mantid::MDAlgorithms;
+    OriginParameter A(1, 2, 3);
+    OriginParameter B(1, 2, 3);
+
+    TSM_ASSERT_EQUALS("The two origin instances are not considered equal, but should be.", A, B);
+  }
+
+  void testNotEqual()
+  {
+    //Test unequal combinations
+    using namespace Mantid::MDAlgorithms;
+    OriginParameter A(1, 2, 3);
+    OriginParameter B(0, 2, 3);
+    OriginParameter C(1, 0, 3);
+    OriginParameter D(1, 2, 0);		
+    TSM_ASSERT_DIFFERS("The two origin instances are considered equal, but should not be.", A, B);
+    TSM_ASSERT_DIFFERS("The two origin instances are considered equal, but should not be.", A, C);
+    TSM_ASSERT_DIFFERS("The two origin instances are considered equal, but should not be.", A, D);
+  }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/PlaneFunctionBuilderTest.h b/Code/Mantid/Framework/MDAlgorithms/test/PlaneFunctionBuilderTest.h
index 7ef44a3bd51c9d494fd33170961be876815ed26e..e24100b2f4feda1d015602c42e5f8afe19b7c525 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/PlaneFunctionBuilderTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/PlaneFunctionBuilderTest.h
@@ -1,223 +1,223 @@
-#ifndef PLANE_FUNCTION_BUILDER_TEST_H_
-#define PLANE_FUNCTION_BUILDER_TEST_H_
-
-#include <cxxtest/TestSuite.h>
-#include <vector>
-#include <boost/scoped_ptr.hpp>
-#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
-#include "MantidMDAlgorithms/NormalParameter.h"
-#include "MantidMDAlgorithms/OriginParameter.h"
-#include "MantidMDAlgorithms/UpParameter.h"
-#include "MantidMDAlgorithms/InvalidParameter.h"
-
-class PlaneFunctionBuilderTest: public CxxTest::TestSuite
-{
-public:
-
-  void testCreate()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-
-    PlaneFunctionBuilder builder;
-    OriginParameter o(1, 2, 3);
-    NormalParameter n(4, 5, 6);
-    UpParameter up(7, 8, 9);
-    WidthParameter width(10);
-
-    builder.addOriginParameter(o);
-    builder.addNormalParameter(n);
-    builder.addUpParameter(up);
-    builder.addWidthParameter(width);
-
-    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
-    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
-
-    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
-    TSM_ASSERT_EQUALS("Origin x value not passed/built in correctly.", 1, planeFunc->getOriginX());
-    TSM_ASSERT_EQUALS("Origin y value not passed/built in correctly.", 2, planeFunc->getOriginY());
-    TSM_ASSERT_EQUALS("Origin z value not passed/built in correctly.", 3, planeFunc->getOriginZ());
-    TSM_ASSERT_EQUALS("Normal x value not passed/built in correctly.", 4, planeFunc->getNormalX());
-    TSM_ASSERT_EQUALS("Normal y value not passed/built in correctly.", 5, planeFunc->getNormalY());
-    TSM_ASSERT_EQUALS("Normal z value not passed/built in correctly.", 6, planeFunc->getNormalZ());
-    TSM_ASSERT_EQUALS("Up x value not passed/built in correctly.", 7, planeFunc->getUpX());
-    TSM_ASSERT_EQUALS("Up y value not passed/built in correctly.", 8, planeFunc->getUpY());
-    TSM_ASSERT_EQUALS("Up z value not passed/built in correctly.", 9, planeFunc->getUpZ());
-    TSM_ASSERT_EQUALS("Width value not passed/built in correctly.", 10, planeFunc->getWidth());
-
-  }
-
-  void testCreateWithoutNormalThrows()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    PlaneFunctionBuilder builder;
-    OriginParameter origin(0, 0, 0);
-    UpParameter up(0, 0, 0);
-    WidthParameter width(0);
-    builder.addOriginParameter(origin);
-    builder.addUpParameter(up);
-    builder.addWidthParameter(width);
-    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as normal parameter is missing.",
-    builder.create(), std::invalid_argument);
-  }
-
-  void testCreateWithoutOriginThrows()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    PlaneFunctionBuilder builder;
-    NormalParameter normal(4, 5, 6);
-    UpParameter up(0, 0, 0);
-    WidthParameter width(0);
-    builder.addNormalParameter(normal);
-    builder.addUpParameter(up);
-    builder.addWidthParameter(width);
-    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as origin parameter is missing.",
-        builder.create(), std::invalid_argument);
-  }
-
-  void testCreateWithoutUpThrows()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    PlaneFunctionBuilder builder;
-    NormalParameter normal(4, 5, 6);
-    OriginParameter origin(0, 0, 0);
-    WidthParameter width(0);
-    builder.addOriginParameter(origin);
-    builder.addNormalParameter(normal);
-    builder.addWidthParameter(width);
-    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as up parameter is missing.",
-        builder.create(), std::invalid_argument);
-  }
-
-  void testCreateWithoutWidthThrows()
-  {
-    using namespace Mantid::MDAlgorithms;
-
-    PlaneFunctionBuilder builder;
-    NormalParameter normal(4, 5, 6);
-    OriginParameter origin(0, 0, 0);
-    UpParameter up(0, 0, 0);
-    builder.addOriginParameter(origin);
-    builder.addNormalParameter(normal);
-    builder.addUpParameter(up);
-    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as width parameter is missing.",
-        builder.create(), std::invalid_argument);
-  }
-
-
-  //If the origin parameter is provided more than once, the latest values should be adopted.
-  void testOverwriteOrigin()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-
-    PlaneFunctionBuilder builder;
-
-    OriginParameter origin1(1, 2, 3);
-    OriginParameter origin2(4, 5, 6);
-    NormalParameter normal(0, 0, 0);
-    UpParameter up(0, 0, 0);
-    WidthParameter width(0);
-    builder.addOriginParameter(origin1);
-    //Overwrite origin
-    builder.addOriginParameter(origin2);
-    builder.addNormalParameter(normal);
-    builder.addUpParameter(up);
-    builder.addWidthParameter(width);
-    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
-    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
-
-    TSM_ASSERT_EQUALS("Origin x value not overwritten with newer value.", 4, planeFunc->getOriginX());
-    TSM_ASSERT_EQUALS("Origin y value not overwritten with newer value.", 5, planeFunc->getOriginY());
-    TSM_ASSERT_EQUALS("Origin z value not overwritten with newer value.", 6, planeFunc->getOriginZ());
-  }
-
-  //If the normal parameter is provided more than once, the latest values should be adopted.
-  void testOverwiteNormal()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-
-    PlaneFunctionBuilder builder;
-
-    OriginParameter origin(1, 2, 3);
-    NormalParameter normal1(1, 2, 3);
-    NormalParameter normal2(4, 5, 6);
-    UpParameter up(0, 0, 0);
-    WidthParameter width(0);
-    builder.addNormalParameter(normal1);
-    //Overwrite normal
-    builder.addNormalParameter(normal2);
-    builder.addOriginParameter(origin);
-    builder.addUpParameter(up);
-    builder.addWidthParameter(width);
-    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
-    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
-
-    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
-    TSM_ASSERT_EQUALS("Normal x value not passed/built in correctly.", 4, planeFunc->getNormalX());
-    TSM_ASSERT_EQUALS("Normal y value not passed/built in correctly.", 5, planeFunc->getNormalY());
-    TSM_ASSERT_EQUALS("Normal z value not passed/built in correctly.", 6, planeFunc->getNormalZ());
-  }
-
-  void testOverwiteUp()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-
-    PlaneFunctionBuilder builder;
-
-    OriginParameter origin(1, 2, 3);
-    NormalParameter normal(1, 2, 3);
-    UpParameter up1(1, 2, 3);
-    UpParameter up2(4, 5, 6);
-    WidthParameter width(0);
-
-    builder.addNormalParameter(normal);
-    builder.addOriginParameter(origin);
-    //Add up
-    builder.addUpParameter(up1);
-    //Overwrite up
-    builder.addUpParameter(up2);
-    builder.addWidthParameter(width);
-    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
-    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
-
-    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
-    TSM_ASSERT_EQUALS("Up x value not passed/built in correctly.", 4, planeFunc->getUpX());
-    TSM_ASSERT_EQUALS("Up y value not passed/built in correctly.", 5, planeFunc->getUpY());
-    TSM_ASSERT_EQUALS("Up z value not passed/built in correctly.", 6, planeFunc->getUpZ());
-  }
-
-  void testOverwiteWidth()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::API;
-
-    PlaneFunctionBuilder builder;
-
-    OriginParameter origin(1, 2, 3);
-    NormalParameter normal(1, 2, 3);
-    UpParameter up(1, 2, 3);
-    WidthParameter width1(0);
-    WidthParameter width2(1);
-
-    builder.addNormalParameter(normal);
-    builder.addOriginParameter(origin);
-    builder.addUpParameter(up);
-    //Add width
-    builder.addWidthParameter(width1);
-    //Overwrite width
-    builder.addWidthParameter(width2);
-    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
-    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
-
-    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
-    TSM_ASSERT_EQUALS("Width value not passed/built in correctly.", 1, planeFunc->getWidth());
-  }
-};
-
-#endif
+#ifndef PLANE_FUNCTION_BUILDER_TEST_H_
+#define PLANE_FUNCTION_BUILDER_TEST_H_
+
+#include <cxxtest/TestSuite.h>
+#include <vector>
+#include <boost/scoped_ptr.hpp>
+#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
+#include "MantidMDAlgorithms/NormalParameter.h"
+#include "MantidMDAlgorithms/OriginParameter.h"
+#include "MantidMDAlgorithms/UpParameter.h"
+#include "MantidMDAlgorithms/InvalidParameter.h"
+
+class PlaneFunctionBuilderTest: public CxxTest::TestSuite
+{
+public:
+
+  void testCreate()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+
+    PlaneFunctionBuilder builder;
+    OriginParameter o(1, 2, 3);
+    NormalParameter n(4, 5, 6);
+    UpParameter up(7, 8, 9);
+    WidthParameter width(10);
+
+    builder.addOriginParameter(o);
+    builder.addNormalParameter(n);
+    builder.addUpParameter(up);
+    builder.addWidthParameter(width);
+
+    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
+    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
+
+    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
+    TSM_ASSERT_EQUALS("Origin x value not passed/built in correctly.", 1, planeFunc->getOriginX());
+    TSM_ASSERT_EQUALS("Origin y value not passed/built in correctly.", 2, planeFunc->getOriginY());
+    TSM_ASSERT_EQUALS("Origin z value not passed/built in correctly.", 3, planeFunc->getOriginZ());
+    TSM_ASSERT_EQUALS("Normal x value not passed/built in correctly.", 4, planeFunc->getNormalX());
+    TSM_ASSERT_EQUALS("Normal y value not passed/built in correctly.", 5, planeFunc->getNormalY());
+    TSM_ASSERT_EQUALS("Normal z value not passed/built in correctly.", 6, planeFunc->getNormalZ());
+    TSM_ASSERT_EQUALS("Up x value not passed/built in correctly.", 7, planeFunc->getUpX());
+    TSM_ASSERT_EQUALS("Up y value not passed/built in correctly.", 8, planeFunc->getUpY());
+    TSM_ASSERT_EQUALS("Up z value not passed/built in correctly.", 9, planeFunc->getUpZ());
+    TSM_ASSERT_EQUALS("Width value not passed/built in correctly.", 10, planeFunc->getWidth());
+
+  }
+
+  void testCreateWithoutNormalThrows()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    PlaneFunctionBuilder builder;
+    OriginParameter origin(0, 0, 0);
+    UpParameter up(0, 0, 0);
+    WidthParameter width(0);
+    builder.addOriginParameter(origin);
+    builder.addUpParameter(up);
+    builder.addWidthParameter(width);
+    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as normal parameter is missing.",
+    builder.create(), std::invalid_argument);
+  }
+
+  void testCreateWithoutOriginThrows()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    PlaneFunctionBuilder builder;
+    NormalParameter normal(4, 5, 6);
+    UpParameter up(0, 0, 0);
+    WidthParameter width(0);
+    builder.addNormalParameter(normal);
+    builder.addUpParameter(up);
+    builder.addWidthParameter(width);
+    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as origin parameter is missing.",
+        builder.create(), std::invalid_argument);
+  }
+
+  void testCreateWithoutUpThrows()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    PlaneFunctionBuilder builder;
+    NormalParameter normal(4, 5, 6);
+    OriginParameter origin(0, 0, 0);
+    WidthParameter width(0);
+    builder.addOriginParameter(origin);
+    builder.addNormalParameter(normal);
+    builder.addWidthParameter(width);
+    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as up parameter is missing.",
+        builder.create(), std::invalid_argument);
+  }
+
+  void testCreateWithoutWidthThrows()
+  {
+    using namespace Mantid::MDAlgorithms;
+
+    PlaneFunctionBuilder builder;
+    NormalParameter normal(4, 5, 6);
+    OriginParameter origin(0, 0, 0);
+    UpParameter up(0, 0, 0);
+    builder.addOriginParameter(origin);
+    builder.addNormalParameter(normal);
+    builder.addUpParameter(up);
+    TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as width parameter is missing.",
+        builder.create(), std::invalid_argument);
+  }
+
+
+  //If the origin parameter is provided more than once, the latest values should be adopted.
+  void testOverwriteOrigin()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+
+    PlaneFunctionBuilder builder;
+
+    OriginParameter origin1(1, 2, 3);
+    OriginParameter origin2(4, 5, 6);
+    NormalParameter normal(0, 0, 0);
+    UpParameter up(0, 0, 0);
+    WidthParameter width(0);
+    builder.addOriginParameter(origin1);
+    //Overwrite origin
+    builder.addOriginParameter(origin2);
+    builder.addNormalParameter(normal);
+    builder.addUpParameter(up);
+    builder.addWidthParameter(width);
+    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
+    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
+
+    TSM_ASSERT_EQUALS("Origin x value not overwritten with newer value.", 4, planeFunc->getOriginX());
+    TSM_ASSERT_EQUALS("Origin y value not overwritten with newer value.", 5, planeFunc->getOriginY());
+    TSM_ASSERT_EQUALS("Origin z value not overwritten with newer value.", 6, planeFunc->getOriginZ());
+  }
+
+  //If the normal parameter is provided more than once, the latest values should be adopted.
+  void testOverwiteNormal()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+
+    PlaneFunctionBuilder builder;
+
+    OriginParameter origin(1, 2, 3);
+    NormalParameter normal1(1, 2, 3);
+    NormalParameter normal2(4, 5, 6);
+    UpParameter up(0, 0, 0);
+    WidthParameter width(0);
+    builder.addNormalParameter(normal1);
+    //Overwrite normal
+    builder.addNormalParameter(normal2);
+    builder.addOriginParameter(origin);
+    builder.addUpParameter(up);
+    builder.addWidthParameter(width);
+    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
+    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
+
+    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
+    TSM_ASSERT_EQUALS("Normal x value not passed/built in correctly.", 4, planeFunc->getNormalX());
+    TSM_ASSERT_EQUALS("Normal y value not passed/built in correctly.", 5, planeFunc->getNormalY());
+    TSM_ASSERT_EQUALS("Normal z value not passed/built in correctly.", 6, planeFunc->getNormalZ());
+  }
+
+  void testOverwiteUp()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+
+    PlaneFunctionBuilder builder;
+
+    OriginParameter origin(1, 2, 3);
+    NormalParameter normal(1, 2, 3);
+    UpParameter up1(1, 2, 3);
+    UpParameter up2(4, 5, 6);
+    WidthParameter width(0);
+
+    builder.addNormalParameter(normal);
+    builder.addOriginParameter(origin);
+    //Add up
+    builder.addUpParameter(up1);
+    //Overwrite up
+    builder.addUpParameter(up2);
+    builder.addWidthParameter(width);
+    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
+    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
+
+    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
+    TSM_ASSERT_EQUALS("Up x value not passed/built in correctly.", 4, planeFunc->getUpX());
+    TSM_ASSERT_EQUALS("Up y value not passed/built in correctly.", 5, planeFunc->getUpY());
+    TSM_ASSERT_EQUALS("Up z value not passed/built in correctly.", 6, planeFunc->getUpZ());
+  }
+
+  void testOverwiteWidth()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::API;
+
+    PlaneFunctionBuilder builder;
+
+    OriginParameter origin(1, 2, 3);
+    NormalParameter normal(1, 2, 3);
+    UpParameter up(1, 2, 3);
+    WidthParameter width1(0);
+    WidthParameter width2(1);
+
+    builder.addNormalParameter(normal);
+    builder.addOriginParameter(origin);
+    builder.addUpParameter(up);
+    //Add width
+    builder.addWidthParameter(width1);
+    //Overwrite width
+    builder.addWidthParameter(width2);
+    boost::scoped_ptr<ImplicitFunction> impFunc(builder.create());
+    PlaneImplicitFunction * planeFunc = dynamic_cast<PlaneImplicitFunction*> (impFunc.get());
+
+    TSM_ASSERT("The function generated by the builder is not a plane function type.", NULL != planeFunc);
+    TSM_ASSERT_EQUALS("Width value not passed/built in correctly.", 1, planeFunc->getWidth());
+  }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionParserTest.h
index 9cf3bb0331cd50938f982f398bcaf4359e7c5d30..216a43555b19be7991242a4e6c85260eb7fa260b 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionParserTest.h
@@ -1,170 +1,170 @@
-#ifndef TEST_PLANE_IMPLICIT_FUNCTION_PARSERS_H_
-#define TEST_PLANE_IMPLICIT_FUNCTION_PARSERS_H_
-
-
-#include <vector>
-#include <memory>
-#include "FunctionParserTest.h"
-
-#include "MantidMDAlgorithms/PlaneImplicitFunctionParser.h"
-#include "MantidMDAlgorithms/VectorParameterParser.h"
-#include "MantidMDAlgorithms/InvalidParameterParser.h"
-#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
-#include <cxxtest/TestSuite.h>
-#include <boost/scoped_ptr.hpp>
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-
-
-class  PlaneImplicitFunctionParserTest : public CxxTest::TestSuite, FunctionParserTest 
-{
-private:
-
-    class ExposedPlaneFunctionParser : public Mantid::MDAlgorithms::PlaneImplicitFunctionParser
-    {
-    public:
-        Mantid::MDAlgorithms::PlaneFunctionBuilder* exposedParsePlaneFunction(Poco::XML::Element* functionElement)
-        {
-            return this->parsePlaneFunction(functionElement);
-        }
-        MOCK_METHOD1(createFunctionBuilder, Mantid::API::ImplicitFunctionBuilder*(Poco::XML::Element* functionElement));
-    };
-
-public:
-
-    void testCallsParameterParserChain()
-    {
-        using namespace Mantid::MDAlgorithms;
-
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>PlaneImplicitFunction</Type><ParameterList><Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter><Parameter><Type>UpParameter</Type><Value>1, 2, 3</Value></Parameter><Parameter><Type>WidthParameter</Type><Value>1</Value></Parameter></ParameterList></Function>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        MockParameterParser* paramParser = new MockParameterParser;
-        EXPECT_CALL(*paramParser, createParameter(testing::_))
-            .WillOnce(testing::Return(new OriginParameter(0, 0, 0)))
-            .WillOnce(testing::Return(new NormalParameter(0, 0, 0)))
-            .WillOnce(testing::Return(new UpParameter(0, 0, 0)))
-            .WillOnce(testing::Return(new WidthParameter(1)));
-
-        PlaneImplicitFunctionParser functionParser;
-		    functionParser.setParameterParser(paramParser);
-        Mantid::API::ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
-        delete builder;
-
-        TSM_ASSERT("Incorrect calling of nested matched parameter parsers!", testing::Mock::VerifyAndClearExpectations(paramParser))
-    }
-
-    void testCallsFunctionParserChain()
-    {
-        using namespace Mantid::MDAlgorithms;
-		    using namespace Mantid::API;
-
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>X</Type><ParameterList></ParameterList></Function>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        MockFunctionParser* mockFuncParser = new MockFunctionParser(constructRootParameterParser());
-        EXPECT_CALL(*mockFuncParser, createFunctionBuilder(testing::_))
-            .Times(1);
-
-        PlaneImplicitFunctionParser functionParser;
-		    functionParser.setParameterParser(constructRootParameterParser());
-        functionParser.setSuccessorParser(mockFuncParser);
-        ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
-        delete builder;
-
-        TSM_ASSERT("Incorrect calling of nested successor function parsers", testing::Mock::VerifyAndClearExpectations(mockFuncParser))
-    }
-
-    void testParsePlaneFunction(void)
-    {
-        using namespace Mantid::MDAlgorithms;
-
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = std::string("<?xml version=\"1.0\" encoding=\"utf-8\"?>") +
-            "<Function>" +
-            "<Type>PlaneImplicitFunction</Type>"+
-            "<ParameterList>"+
-            "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>"+
-            "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>"+
-            "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>"+
-            "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>"+
-            "</ParameterList>"+
-            "</Function>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        ExposedPlaneFunctionParser functionParser;
-		    functionParser.setParameterParser(constructRootParameterParser());
-        PlaneFunctionBuilder* planeBuilder = functionParser.exposedParsePlaneFunction(pRootElem);
-        boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(planeBuilder->create());
-
-        PlaneImplicitFunction* planeFunction = dynamic_cast<PlaneImplicitFunction*>(impFunction.get());
-
-        TSM_ASSERT("A plane implicit function should have been created from the xml.", planeFunction != NULL);
-
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of origin parameter parser to give the correct ox value.", 1, planeFunction->getOriginX());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of origin parameter parser to give the correct oy value.", 2, planeFunction->getOriginY());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of origin parameter parser to give the correct oz value.", 3, planeFunction->getOriginZ());
-
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of normal parameter parser to give the correct nx value.", -1, planeFunction->getNormalX());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of normal parameter parser to give the correct ny value.", -2, planeFunction->getNormalY());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of normal parameter parser to give the correct nz value.", -3, planeFunction->getNormalZ());
-
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of up parameter parser to give the correct nx value.", 4, planeFunction->getUpX());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of up parameter parser to give the correct ny value.", 5, planeFunction->getUpY());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of up parameter parser to give the correct nz value.", 6, planeFunction->getUpZ());
-        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of width parameter parser to give the correct nx value.", 7, planeFunction->getWidth());
-    }
-
-    void testBadXMLSchemaThrows(void)
-    {
-        using namespace Mantid::MDAlgorithms;
-
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = std::string("<?xml version=\"1.0\" encoding=\"utf-8\"?>") +
-                    "<X>" + //Valid XML, but invalid schema
-                    "<Type>PlaneImplicitFunction</Type>"+
-                    "<ParameterList>"+
-                    "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>"+
-                    "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>"+
-                    "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>"+
-                    "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>"+
-                    "</ParameterList>"+
-                    "</X>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        PlaneImplicitFunctionParser functionParser;
-		    functionParser.setParameterParser(constructRootParameterParser());
-        TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as Function element was expected, but not found.", functionParser.createFunctionBuilder(pRootElem), std::invalid_argument );
-    }
-
-    void testNoSuccessorFunctionParserThrows(void)
-    {
-        using namespace Mantid::MDAlgorithms;
-
-        Poco::XML::DOMParser pParser;
-        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>OtherImplicitFunction</Type><ParameterList><Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter></ParameterList></Function>";
-        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-        Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-        PlaneImplicitFunctionParser functionParser;
-		functionParser.setParameterParser(constructRootParameterParser());
-        TSM_ASSERT_THROWS("There is no successor parser setup for the PlaneImplicitFunctionParser", functionParser.createFunctionBuilder(pRootElem), std::runtime_error );
-    }
-	
-
-};
-
-#endif
+#ifndef TEST_PLANE_IMPLICIT_FUNCTION_PARSERS_H_
+#define TEST_PLANE_IMPLICIT_FUNCTION_PARSERS_H_
+
+
+#include <vector>
+#include <memory>
+#include "FunctionParserTest.h"
+
+#include "MantidMDAlgorithms/PlaneImplicitFunctionParser.h"
+#include "MantidMDAlgorithms/VectorParameterParser.h"
+#include "MantidMDAlgorithms/InvalidParameterParser.h"
+#include "MantidMDAlgorithms/PlaneFunctionBuilder.h"
+#include <cxxtest/TestSuite.h>
+#include <boost/scoped_ptr.hpp>
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+
+
+class  PlaneImplicitFunctionParserTest : public CxxTest::TestSuite, FunctionParserTest 
+{
+private:
+
+    class ExposedPlaneFunctionParser : public Mantid::MDAlgorithms::PlaneImplicitFunctionParser
+    {
+    public:
+        Mantid::MDAlgorithms::PlaneFunctionBuilder* exposedParsePlaneFunction(Poco::XML::Element* functionElement)
+        {
+            return this->parsePlaneFunction(functionElement);
+        }
+        MOCK_METHOD1(createFunctionBuilder, Mantid::API::ImplicitFunctionBuilder*(Poco::XML::Element* functionElement));
+    };
+
+public:
+
+    void testCallsParameterParserChain()
+    {
+        using namespace Mantid::MDAlgorithms;
+
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>PlaneImplicitFunction</Type><ParameterList><Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter><Parameter><Type>UpParameter</Type><Value>1, 2, 3</Value></Parameter><Parameter><Type>WidthParameter</Type><Value>1</Value></Parameter></ParameterList></Function>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        MockParameterParser* paramParser = new MockParameterParser;
+        EXPECT_CALL(*paramParser, createParameter(testing::_))
+            .WillOnce(testing::Return(new OriginParameter(0, 0, 0)))
+            .WillOnce(testing::Return(new NormalParameter(0, 0, 0)))
+            .WillOnce(testing::Return(new UpParameter(0, 0, 0)))
+            .WillOnce(testing::Return(new WidthParameter(1)));
+
+        PlaneImplicitFunctionParser functionParser;
+		    functionParser.setParameterParser(paramParser);
+        Mantid::API::ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
+        delete builder;
+
+        TSM_ASSERT("Incorrect calling of nested matched parameter parsers!", testing::Mock::VerifyAndClearExpectations(paramParser))
+    }
+
+    void testCallsFunctionParserChain()
+    {
+        using namespace Mantid::MDAlgorithms;
+		    using namespace Mantid::API;
+
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>X</Type><ParameterList></ParameterList></Function>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        MockFunctionParser* mockFuncParser = new MockFunctionParser(constructRootParameterParser());
+        EXPECT_CALL(*mockFuncParser, createFunctionBuilder(testing::_))
+            .Times(1);
+
+        PlaneImplicitFunctionParser functionParser;
+		    functionParser.setParameterParser(constructRootParameterParser());
+        functionParser.setSuccessorParser(mockFuncParser);
+        ImplicitFunctionBuilder* builder = functionParser.createFunctionBuilder(pRootElem);
+        delete builder;
+
+        TSM_ASSERT("Incorrect calling of nested successor function parsers", testing::Mock::VerifyAndClearExpectations(mockFuncParser))
+    }
+
+    void testParsePlaneFunction(void)
+    {
+        using namespace Mantid::MDAlgorithms;
+
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = std::string("<?xml version=\"1.0\" encoding=\"utf-8\"?>") +
+            "<Function>" +
+            "<Type>PlaneImplicitFunction</Type>"+
+            "<ParameterList>"+
+            "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>"+
+            "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>"+
+            "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>"+
+            "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>"+
+            "</ParameterList>"+
+            "</Function>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        ExposedPlaneFunctionParser functionParser;
+		    functionParser.setParameterParser(constructRootParameterParser());
+        PlaneFunctionBuilder* planeBuilder = functionParser.exposedParsePlaneFunction(pRootElem);
+        boost::scoped_ptr<Mantid::API::ImplicitFunction> impFunction(planeBuilder->create());
+
+        PlaneImplicitFunction* planeFunction = dynamic_cast<PlaneImplicitFunction*>(impFunction.get());
+
+        TSM_ASSERT("A plane implicit function should have been created from the xml.", planeFunction != NULL);
+
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of origin parameter parser to give the correct ox value.", 1, planeFunction->getOriginX());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of origin parameter parser to give the correct oy value.", 2, planeFunction->getOriginY());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of origin parameter parser to give the correct oz value.", 3, planeFunction->getOriginZ());
+
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of normal parameter parser to give the correct nx value.", -1, planeFunction->getNormalX());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of normal parameter parser to give the correct ny value.", -2, planeFunction->getNormalY());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of normal parameter parser to give the correct nz value.", -3, planeFunction->getNormalZ());
+
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of up parameter parser to give the correct nx value.", 4, planeFunction->getUpX());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of up parameter parser to give the correct ny value.", 5, planeFunction->getUpY());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of up parameter parser to give the correct nz value.", 6, planeFunction->getUpZ());
+        TSM_ASSERT_EQUALS("The plane parser did not direct the parsing of width parameter parser to give the correct nx value.", 7, planeFunction->getWidth());
+    }
+
+    void testBadXMLSchemaThrows(void)
+    {
+        using namespace Mantid::MDAlgorithms;
+
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = std::string("<?xml version=\"1.0\" encoding=\"utf-8\"?>") +
+                    "<X>" + //Valid XML, but invalid schema
+                    "<Type>PlaneImplicitFunction</Type>"+
+                    "<ParameterList>"+
+                    "<Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter>"+
+                    "<Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter>"+
+                    "<Parameter><Type>UpParameter</Type><Value>4, 5, 6</Value></Parameter>"+
+                    "<Parameter><Type>WidthParameter</Type><Value>7</Value></Parameter>"+
+                    "</ParameterList>"+
+                    "</X>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        PlaneImplicitFunctionParser functionParser;
+		    functionParser.setParameterParser(constructRootParameterParser());
+        TSM_ASSERT_THROWS("Should have thrown invalid_argument exception as Function element was expected, but not found.", functionParser.createFunctionBuilder(pRootElem), std::invalid_argument );
+    }
+
+    void testNoSuccessorFunctionParserThrows(void)
+    {
+        using namespace Mantid::MDAlgorithms;
+
+        Poco::XML::DOMParser pParser;
+        std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Function><Type>OtherImplicitFunction</Type><ParameterList><Parameter><Type>NormalParameter</Type><Value>-1, -2, -3</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>1, 2, 3</Value></Parameter></ParameterList></Function>";
+        Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+        Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+        PlaneImplicitFunctionParser functionParser;
+		functionParser.setParameterParser(constructRootParameterParser());
+        TSM_ASSERT_THROWS("There is no successor parser setup for the PlaneImplicitFunctionParser", functionParser.createFunctionBuilder(pRootElem), std::runtime_error );
+    }
+	
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionTest.h b/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionTest.h
index 28fc58daf9382993c66a2a175a4ccc6c46062a4a..f5a5fdf75044b32f02e2b1c490beea55ae17000e 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/PlaneImplicitFunctionTest.h
@@ -1,379 +1,379 @@
-#ifndef PLANE_IMPLICIT_FUNCTION_TEST_H_
-#define PLANE_IMPLICIT_FUNCTION_TEST_H_
-
-#include <cxxtest/TestSuite.h>
-#include <cmath>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <vector>
-#include <MantidGeometry/Math/Matrix.h>
-#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
-
-class PlaneImplicitFunctionTest: public CxxTest::TestSuite
-{
-private:
-
-  class MockPoint3D: public Mantid::API::Point3D
-  {
-  public:
-    MOCK_CONST_METHOD0 (getX, double());
-    MOCK_CONST_METHOD0(getY, double());
-    MOCK_CONST_METHOD0(getZ, double());
-  };
-
-  Mantid::MDAlgorithms::NormalParameter normal;
-  Mantid::MDAlgorithms::OriginParameter origin;
-  Mantid::MDAlgorithms::WidthParameter width;
-  Mantid::MDAlgorithms::UpParameter up;
-  const double PI;
-
-public:
-
-  PlaneImplicitFunctionTest() :
-    normal(1, 1, 1), origin(2, 3, 4), width(2), up(0, 1, 0), PI(3.14159265)
-  {
-  }
-
-  void testPlaneImplicitFunctionConstruction(void)
-  {
-    using namespace Mantid::MDAlgorithms;
-    NormalParameter normalParam(1, 0, 0);
-
-    PlaneImplicitFunction plane(normalParam, origin, up, width);
-    TSM_ASSERT_EQUALS("Normal x component not wired-up correctly", 1, plane.getNormalX());
-    TSM_ASSERT_EQUALS("Normal y component not wired-up correctly", 0, plane.getNormalY());
-    TSM_ASSERT_EQUALS("Normal z component not wired-up correctly", 0, plane.getNormalZ());
-    TSM_ASSERT_EQUALS("Origin x component not wired-up correctly", 2, plane.getOriginX());
-    TSM_ASSERT_EQUALS("Origin y component not wired-up correctly", 3, plane.getOriginY());
-    TSM_ASSERT_EQUALS("Origin z component not wired-up correctly", 4, plane.getOriginZ());
-    TSM_ASSERT_EQUALS("Up x component not wired-up correctly", 0, plane.getUpX());
-    TSM_ASSERT_EQUALS("Up y component not wired-up correctly", 1, plane.getUpY());
-    TSM_ASSERT_EQUALS("Up z component not wired-up correctly", 0, plane.getUpZ());
-    TSM_ASSERT_EQUALS("Width component not wired-up correctly", 2, plane.getWidth());
-
-  }
-
-  void testEvaluateInsidePointOnForwardSurface()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1));
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2));
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3));
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point should have been found to be inside the region bounded by the plane.", isInside);
-  }
-
-  void testEvaluateInsidePointOnBackwardSurface()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(-1));
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(-2));
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(-3));
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point should have been found to be inside the region bounded by the plane.", isInside);
-  }
-
-  void testEvaluateInsidePointReflectNormal() //Test that plane automatically relects normals where necessary.
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1));
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2));
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3));
-
-    NormalParameter tNormal(1, 2, 3);
-    NormalParameter rNormal = tNormal.reflect();
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(rNormal, tOrigin, tUp, tWidth);
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point should have been found to be inside the region bounded by the plane after the normal was reflected.", isInside);
-  }
-
-  void testEvaluatePointOutsideForwardPlane()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1.001)); //Just outside
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2.001)); //Just outside
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3.001)); //Just outside
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point should have been found to be outside the region bounded by the plane.", !isInside);
-  }
-
-  void testEvaluatePointOutsideBackwardPlane()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(-1.001)); //Just outside
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(-2.001)); //Just outside
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(-3.001)); //Just outside
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point should have been found to be outside the region bounded by the plane.", !isInside);
-  }
-
-  void testEvaluateOnPlanePointDecreaseX()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0.999)); //Just inside
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point (while on the plane origin) should have been found to be inside the region bounded by the plane after an incremental decrease in the point x-value.", isInside);
-  }
-
-  void testEvaluateOnPlanePointIncreaseX()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1.001)); //Just outside
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point (while on the plane origin) should have been found to be outside the region bounded by the plane after an incremental increase in the point x-value.", !isInside);
-  }
-
-  void testEvaluateOnPlanePointDecreaseY()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(1.999)); //Just inside
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point (while on the plane origin) should have been found to be inside the region bounded by the plane after an incremental decrease in the point y-value.", isInside);
-  }
-
-  void testEvaluateOnPlanePointIncreaseY()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2.001)); //Just outside
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point (while on the plane origin) should have been found to be outside the region bounded by the plane after an incremental increase in the point y-value.", !isInside);
-  }
-
-  void testEvaluateOnPlanePointDecreaseZ()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(2.999)); //Just inside
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point (while on the plane origin) should have been found to be inside the region bounded by the plane after an incremental decrease in the point z-value.", isInside);
-  }
-
-  void testEvaluateOnPlanePointIncreaseZ()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::MDAlgorithms;
-
-    MockPoint3D point;
-    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
-    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
-    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3.001)); //Just outside
-
-    NormalParameter tNormal(1, 2, 3);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
-
-    UpParameter tUp;//Not important at all in this test
-
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    bool isInside = plane.evaluate(&point);
-    TSM_ASSERT("The point (while on the plane origin) should have been found to be outside the region bounded by the plane after an incremental increase in the point z-value.", !isInside);
-  }
-
-  void testToXML()
-  {
-    using namespace Mantid::MDAlgorithms;
-    NormalParameter tNormal(1, 0, 0);
-    OriginParameter tOrigin(0, 0, 0);
-    UpParameter tUp(0, 1, 0);
-    WidthParameter tWidth(3);
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-    TSM_ASSERT_EQUALS("The xml generated by this function did not match the expected schema.", "<Function><Type>PlaneImplicitFunction</Type><ParameterList><Parameter><Type>NormalParameter</Type><Value>1.0000, 0.0000, 0.0000</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>0.0000, 0.0000, 0.0000</Value></Parameter><Parameter><Type>UpParameter</Type><Value>0.0000, 1.0000, 0.0000</Value></Parameter><Parameter><Type>WidthParameter</Type><Value>3.0000</Value></Parameter></ParameterList></Function>", plane.toXMLString());
-  }
-
-  void testEqual()
-  {
-    using namespace Mantid::MDAlgorithms;
-    NormalParameter n(1, 2, 3);
-    OriginParameter o(4, 5, 6);
-    UpParameter up(7, 8, 9);
-    WidthParameter width(10);
-    PlaneImplicitFunction A(n, o, up, width);
-    PlaneImplicitFunction B(n, o, up, width);
-    TSM_ASSERT_EQUALS("These two objects should be considered equal.", A, B);
-  }
-
-  void testNotEqual()
-  {
-    using namespace Mantid::MDAlgorithms;
-    NormalParameter n1(1, 2, 3);
-    OriginParameter o1(4, 5, 6);
-    WidthParameter width1(10);
-    UpParameter up1(7, 8, 9);
-    NormalParameter n2(0, 0, 0);
-    OriginParameter o2(0, 0, 0);
-    UpParameter up2(0, 0, 0);
-    WidthParameter width2(0);
-    PlaneImplicitFunction A(n1, o1, up1, width1); //Base comparison
-    PlaneImplicitFunction B(n2, o1, up1, width1); //Differ normal only
-    PlaneImplicitFunction C(n1, o2, up1, width1); //Differ origin only
-    PlaneImplicitFunction D(n1, o1, up2, width1); //Differ up only
-    PlaneImplicitFunction E(n1, o1, up1, width2); //Differ width only
-    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, B);
-    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, C);
-    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, D);
-    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, E);
-  }
-
-
-  void testWellFormedRotationMatrix()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::Geometry;
-
-    NormalParameter tNormal(0.5, 0, 0.5);
-    UpParameter tUp(0, 1, 0);
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth; // Width unimportant for this test, so left invalid.
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    Matrix<double> rotationMatrix = extractRotationMatrix(plane);
-    //Copy and modify.
-    Matrix<double> transposeRotationMatrix = rotationMatrix;
-    transposeRotationMatrix.Transpose();
-    //Copy and modify.
-    Matrix<double> invertRotationMatrix = rotationMatrix;
-    invertRotationMatrix.Invert();
-
-    TSM_ASSERT_DELTA("The determinant of a rotation matrix is always 1", 1, rotationMatrix.determinant(), 0.001);
-    TSM_ASSERT_EQUALS("The inverse of a rotation matrix is equal to its transpose", invertRotationMatrix, transposeRotationMatrix);
-  }
-
-  void testNonOrthogonalUpandNormalThows()
-  {
-    using namespace Mantid::MDAlgorithms;
-    using namespace Mantid::Geometry;
-
-    NormalParameter tNormal(0.5, 1, 0.5);
-    UpParameter tUp(0, 1, 0); // tUp and tNormal are not orthogonal!
-    OriginParameter tOrigin(0, 0, 0);
-    WidthParameter tWidth; // Width unimportant for this test, so left invalid.
-    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
-
-    TSM_ASSERT_THROWS("Attempting to calculate rotation matrix from two vectors that are not orthogonal. Should throw.", plane.asRotationMatrixVector(), std::logic_error);
-  }
-
-};
-
-#endif
+#ifndef PLANE_IMPLICIT_FUNCTION_TEST_H_
+#define PLANE_IMPLICIT_FUNCTION_TEST_H_
+
+#include <cxxtest/TestSuite.h>
+#include <cmath>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <vector>
+#include <MantidGeometry/Math/Matrix.h>
+#include "MantidMDAlgorithms/PlaneImplicitFunction.h"
+
+class PlaneImplicitFunctionTest: public CxxTest::TestSuite
+{
+private:
+
+  class MockPoint3D: public Mantid::API::Point3D
+  {
+  public:
+    MOCK_CONST_METHOD0 (getX, double());
+    MOCK_CONST_METHOD0(getY, double());
+    MOCK_CONST_METHOD0(getZ, double());
+  };
+
+  Mantid::MDAlgorithms::NormalParameter normal;
+  Mantid::MDAlgorithms::OriginParameter origin;
+  Mantid::MDAlgorithms::WidthParameter width;
+  Mantid::MDAlgorithms::UpParameter up;
+  const double PI;
+
+public:
+
+  PlaneImplicitFunctionTest() :
+    normal(1, 1, 1), origin(2, 3, 4), width(2), up(0, 1, 0), PI(3.14159265)
+  {
+  }
+
+  void testPlaneImplicitFunctionConstruction(void)
+  {
+    using namespace Mantid::MDAlgorithms;
+    NormalParameter normalParam(1, 0, 0);
+
+    PlaneImplicitFunction plane(normalParam, origin, up, width);
+    TSM_ASSERT_EQUALS("Normal x component not wired-up correctly", 1, plane.getNormalX());
+    TSM_ASSERT_EQUALS("Normal y component not wired-up correctly", 0, plane.getNormalY());
+    TSM_ASSERT_EQUALS("Normal z component not wired-up correctly", 0, plane.getNormalZ());
+    TSM_ASSERT_EQUALS("Origin x component not wired-up correctly", 2, plane.getOriginX());
+    TSM_ASSERT_EQUALS("Origin y component not wired-up correctly", 3, plane.getOriginY());
+    TSM_ASSERT_EQUALS("Origin z component not wired-up correctly", 4, plane.getOriginZ());
+    TSM_ASSERT_EQUALS("Up x component not wired-up correctly", 0, plane.getUpX());
+    TSM_ASSERT_EQUALS("Up y component not wired-up correctly", 1, plane.getUpY());
+    TSM_ASSERT_EQUALS("Up z component not wired-up correctly", 0, plane.getUpZ());
+    TSM_ASSERT_EQUALS("Width component not wired-up correctly", 2, plane.getWidth());
+
+  }
+
+  void testEvaluateInsidePointOnForwardSurface()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1));
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2));
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3));
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point should have been found to be inside the region bounded by the plane.", isInside);
+  }
+
+  void testEvaluateInsidePointOnBackwardSurface()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(-1));
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(-2));
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(-3));
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point should have been found to be inside the region bounded by the plane.", isInside);
+  }
+
+  void testEvaluateInsidePointReflectNormal() //Test that plane automatically relects normals where necessary.
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1));
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2));
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3));
+
+    NormalParameter tNormal(1, 2, 3);
+    NormalParameter rNormal = tNormal.reflect();
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(rNormal, tOrigin, tUp, tWidth);
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point should have been found to be inside the region bounded by the plane after the normal was reflected.", isInside);
+  }
+
+  void testEvaluatePointOutsideForwardPlane()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1.001)); //Just outside
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2.001)); //Just outside
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3.001)); //Just outside
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point should have been found to be outside the region bounded by the plane.", !isInside);
+  }
+
+  void testEvaluatePointOutsideBackwardPlane()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(-1.001)); //Just outside
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(-2.001)); //Just outside
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(-3.001)); //Just outside
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point should have been found to be outside the region bounded by the plane.", !isInside);
+  }
+
+  void testEvaluateOnPlanePointDecreaseX()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(0.999)); //Just inside
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point (while on the plane origin) should have been found to be inside the region bounded by the plane after an incremental decrease in the point x-value.", isInside);
+  }
+
+  void testEvaluateOnPlanePointIncreaseX()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1.001)); //Just outside
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point (while on the plane origin) should have been found to be outside the region bounded by the plane after an incremental increase in the point x-value.", !isInside);
+  }
+
+  void testEvaluateOnPlanePointDecreaseY()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(1.999)); //Just inside
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point (while on the plane origin) should have been found to be inside the region bounded by the plane after an incremental decrease in the point y-value.", isInside);
+  }
+
+  void testEvaluateOnPlanePointIncreaseY()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2.001)); //Just outside
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3)); //Just on
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point (while on the plane origin) should have been found to be outside the region bounded by the plane after an incremental increase in the point y-value.", !isInside);
+  }
+
+  void testEvaluateOnPlanePointDecreaseZ()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(2.999)); //Just inside
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point (while on the plane origin) should have been found to be inside the region bounded by the plane after an incremental decrease in the point z-value.", isInside);
+  }
+
+  void testEvaluateOnPlanePointIncreaseZ()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::MDAlgorithms;
+
+    MockPoint3D point;
+    EXPECT_CALL(point, getX()).Times(2).WillRepeatedly(testing::Return(1)); //Just on
+    EXPECT_CALL(point, getY()).Times(2).WillRepeatedly(testing::Return(2)); //Just on
+    EXPECT_CALL(point, getZ()).Times(2).WillRepeatedly(testing::Return(3.001)); //Just outside
+
+    NormalParameter tNormal(1, 2, 3);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth(std::sqrt((1 * 1) + (2 * 2.0) + (3 * 3)) * 2.0); // Width set up so that points 1,2,3 and -1,-2,-3 are within boundary
+
+    UpParameter tUp;//Not important at all in this test
+
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    bool isInside = plane.evaluate(&point);
+    TSM_ASSERT("The point (while on the plane origin) should have been found to be outside the region bounded by the plane after an incremental increase in the point z-value.", !isInside);
+  }
+
+  void testToXML()
+  {
+    using namespace Mantid::MDAlgorithms;
+    NormalParameter tNormal(1, 0, 0);
+    OriginParameter tOrigin(0, 0, 0);
+    UpParameter tUp(0, 1, 0);
+    WidthParameter tWidth(3);
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+    TSM_ASSERT_EQUALS("The xml generated by this function did not match the expected schema.", "<Function><Type>PlaneImplicitFunction</Type><ParameterList><Parameter><Type>NormalParameter</Type><Value>1.0000, 0.0000, 0.0000</Value></Parameter><Parameter><Type>OriginParameter</Type><Value>0.0000, 0.0000, 0.0000</Value></Parameter><Parameter><Type>UpParameter</Type><Value>0.0000, 1.0000, 0.0000</Value></Parameter><Parameter><Type>WidthParameter</Type><Value>3.0000</Value></Parameter></ParameterList></Function>", plane.toXMLString());
+  }
+
+  void testEqual()
+  {
+    using namespace Mantid::MDAlgorithms;
+    NormalParameter n(1, 2, 3);
+    OriginParameter o(4, 5, 6);
+    UpParameter up(7, 8, 9);
+    WidthParameter width(10);
+    PlaneImplicitFunction A(n, o, up, width);
+    PlaneImplicitFunction B(n, o, up, width);
+    TSM_ASSERT_EQUALS("These two objects should be considered equal.", A, B);
+  }
+
+  void testNotEqual()
+  {
+    using namespace Mantid::MDAlgorithms;
+    NormalParameter n1(1, 2, 3);
+    OriginParameter o1(4, 5, 6);
+    WidthParameter width1(10);
+    UpParameter up1(7, 8, 9);
+    NormalParameter n2(0, 0, 0);
+    OriginParameter o2(0, 0, 0);
+    UpParameter up2(0, 0, 0);
+    WidthParameter width2(0);
+    PlaneImplicitFunction A(n1, o1, up1, width1); //Base comparison
+    PlaneImplicitFunction B(n2, o1, up1, width1); //Differ normal only
+    PlaneImplicitFunction C(n1, o2, up1, width1); //Differ origin only
+    PlaneImplicitFunction D(n1, o1, up2, width1); //Differ up only
+    PlaneImplicitFunction E(n1, o1, up1, width2); //Differ width only
+    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, B);
+    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, C);
+    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, D);
+    TSM_ASSERT_DIFFERS("These two objects should not be considered equal.", A, E);
+  }
+
+
+  void testWellFormedRotationMatrix()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::Geometry;
+
+    NormalParameter tNormal(0.5, 0, 0.5);
+    UpParameter tUp(0, 1, 0);
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth; // Width unimportant for this test, so left invalid.
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    Matrix<double> rotationMatrix = extractRotationMatrix(plane);
+    //Copy and modify.
+    Matrix<double> transposeRotationMatrix = rotationMatrix;
+    transposeRotationMatrix.Transpose();
+    //Copy and modify.
+    Matrix<double> invertRotationMatrix = rotationMatrix;
+    invertRotationMatrix.Invert();
+
+    TSM_ASSERT_DELTA("The determinant of a rotation matrix is always 1", 1, rotationMatrix.determinant(), 0.001);
+    TSM_ASSERT_EQUALS("The inverse of a rotation matrix is equal to its transpose", invertRotationMatrix, transposeRotationMatrix);
+  }
+
+  void testNonOrthogonalUpandNormalThows()
+  {
+    using namespace Mantid::MDAlgorithms;
+    using namespace Mantid::Geometry;
+
+    NormalParameter tNormal(0.5, 1, 0.5);
+    UpParameter tUp(0, 1, 0); // tUp and tNormal are not orthogonal!
+    OriginParameter tOrigin(0, 0, 0);
+    WidthParameter tWidth; // Width unimportant for this test, so left invalid.
+    PlaneImplicitFunction plane(tNormal, tOrigin, tUp, tWidth);
+
+    TSM_ASSERT_THROWS("Attempting to calculate rotation matrix from two vectors that are not orthogonal. Should throw.", plane.asRotationMatrixVector(), std::logic_error);
+  }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/SingleValueParameterBaseTest.h b/Code/Mantid/Framework/MDAlgorithms/test/SingleValueParameterBaseTest.h
index 6698377d2a130f00680a7525931de78434e06648..2e55bd5cdee118a4d1045e24742affbee9533a35 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/SingleValueParameterBaseTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/SingleValueParameterBaseTest.h
@@ -1,87 +1,87 @@
-
-#ifndef SINGLE_VALUE_PARAMETER_TEST_H
-#define SINGLE_VALUE_PARAMETER_TEST_H 
-
-template <typename SingleValueParameter>
-class SingleValueParameterTests
-{
-public:
-
-  void testGetName(std::string expectedValue)
-  {
-    SingleValueParameter svp;
-    TSM_ASSERT_EQUALS("getName not configured correctly", expectedValue, svp.getName());
-    TSM_ASSERT_EQUALS("getName does not match parameterName", SingleValueParameter::parameterName() , svp.getName());
-  }
-
-  void testIsValid()
-  {
-    SingleValueParameter svp(0);
-    TSM_ASSERT_EQUALS("The Parameter should be valid.", true, svp.isValid());
-  }
-
-  void testIsNotValid()
-  {
-    SingleValueParameter svp;
-    TSM_ASSERT_EQUALS("Parameter constructed via parameterless constructor should be invalid.", false, svp.isValid());	 
-  }
-
-  void testAssigment()
-  {
-    SingleValueParameter A;
-    SingleValueParameter B(2);
-    A = B;
-    TSM_ASSERT_EQUALS("Assigned Parameter getValue() is not correct.", 2, A.getValue());
-    TSM_ASSERT_EQUALS("Assigned Parameter isValid() is not same as original.", B.isValid(), A.isValid() );
-  }
-
-  void testClone()
-  {
-    SingleValueParameter original(2);
-    boost::scoped_ptr<SingleValueParameter> cloned(original.clone());
-
-    TSM_ASSERT_EQUALS("Cloned Parameter getValue() is not same as original.", 2, cloned->getValue() );
-    TSM_ASSERT_EQUALS("Cloned Parameter isValid() is not same as original.", original.isValid(), cloned->isValid() );
-  }
-
-  void testCopy()
-  {
-    SingleValueParameter original(2);
-    SingleValueParameter copy(original);
-
-    TSM_ASSERT_EQUALS("Copied Parameter getValue() is not same as original.", 2, copy.getValue() );
-    TSM_ASSERT_EQUALS("Copied Parameter isValid() is not same as original.", original.isValid(), copy.isValid() );
-  }
-
-  void testToXML()
-  {
-    SingleValueParameter svp(1);
-    std::string expectation = "<Parameter><Type>" + svp.getName() + "</Type><Value>1.0000</Value></Parameter>";
-    TSM_ASSERT_EQUALS("The generated xml for the Parameter does not match the specification.", expectation, svp.toXMLString());
-  }
-
-  void testEqual()
-  {
-    SingleValueParameter A(2);
-    SingleValueParameter B(2);
-
-    TSM_ASSERT_EQUALS("The two parameter instances are not considered equal, but should be.", A, B);
-  }
-
-  void testNotEqual()
-  {
-    SingleValueParameter A(2);
-    SingleValueParameter B(1);
-
-    TSM_ASSERT_DIFFERS("The two parameter instances are considered equal, but should not be.", A, B);
-  }
-
-  void testInvalidIfUnsigned()
-  {
-    SingleValueParameter A(-1);
-    std::string message = "Cannot have a negative: " + A.getName();
-    TSM_ASSERT_EQUALS(message.c_str(), false, A.isValid());
-  }
-};
-
-#endif
+
+#ifndef SINGLE_VALUE_PARAMETER_TEST_H
+#define SINGLE_VALUE_PARAMETER_TEST_H 
+
+template <typename SingleValueParameter>
+class SingleValueParameterTests
+{
+public:
+
+  void testGetName(std::string expectedValue)
+  {
+    SingleValueParameter svp;
+    TSM_ASSERT_EQUALS("getName not configured correctly", expectedValue, svp.getName());
+    TSM_ASSERT_EQUALS("getName does not match parameterName", SingleValueParameter::parameterName() , svp.getName());
+  }
+
+  void testIsValid()
+  {
+    SingleValueParameter svp(0);
+    TSM_ASSERT_EQUALS("The Parameter should be valid.", true, svp.isValid());
+  }
+
+  void testIsNotValid()
+  {
+    SingleValueParameter svp;
+    TSM_ASSERT_EQUALS("Parameter constructed via parameterless constructor should be invalid.", false, svp.isValid());	 
+  }
+
+  void testAssigment()
+  {
+    SingleValueParameter A;
+    SingleValueParameter B(2);
+    A = B;
+    TSM_ASSERT_EQUALS("Assigned Parameter getValue() is not correct.", 2, A.getValue());
+    TSM_ASSERT_EQUALS("Assigned Parameter isValid() is not same as original.", B.isValid(), A.isValid() );
+  }
+
+  void testClone()
+  {
+    SingleValueParameter original(2);
+    boost::scoped_ptr<SingleValueParameter> cloned(original.clone());
+
+    TSM_ASSERT_EQUALS("Cloned Parameter getValue() is not same as original.", 2, cloned->getValue() );
+    TSM_ASSERT_EQUALS("Cloned Parameter isValid() is not same as original.", original.isValid(), cloned->isValid() );
+  }
+
+  void testCopy()
+  {
+    SingleValueParameter original(2);
+    SingleValueParameter copy(original);
+
+    TSM_ASSERT_EQUALS("Copied Parameter getValue() is not same as original.", 2, copy.getValue() );
+    TSM_ASSERT_EQUALS("Copied Parameter isValid() is not same as original.", original.isValid(), copy.isValid() );
+  }
+
+  void testToXML()
+  {
+    SingleValueParameter svp(1);
+    std::string expectation = "<Parameter><Type>" + svp.getName() + "</Type><Value>1.0000</Value></Parameter>";
+    TSM_ASSERT_EQUALS("The generated xml for the Parameter does not match the specification.", expectation, svp.toXMLString());
+  }
+
+  void testEqual()
+  {
+    SingleValueParameter A(2);
+    SingleValueParameter B(2);
+
+    TSM_ASSERT_EQUALS("The two parameter instances are not considered equal, but should be.", A, B);
+  }
+
+  void testNotEqual()
+  {
+    SingleValueParameter A(2);
+    SingleValueParameter B(1);
+
+    TSM_ASSERT_DIFFERS("The two parameter instances are considered equal, but should not be.", A, B);
+  }
+
+  void testInvalidIfUnsigned()
+  {
+    SingleValueParameter A(-1);
+    std::string message = "Cannot have a negative: " + A.getName();
+    TSM_ASSERT_EQUALS(message.c_str(), false, A.isValid());
+  }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/VectorMathematicsTest.h b/Code/Mantid/Framework/MDAlgorithms/test/VectorMathematicsTest.h
index 6d10141c539581ab441373e83ead43888058752a..606d4726948823d43786b184eeaf22b044f61aa5 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/VectorMathematicsTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/VectorMathematicsTest.h
@@ -1,81 +1,81 @@
-#ifndef VECTOR_MATHEMATICS_TEST_H_
-#define VECTOR_MATHEMATICS_TEST_H_
-
-#include "MantidGeometry/V3D.h"
-#include "MantidMDAlgorithms/VectorMathematics.h"
-
-using namespace Mantid::MDAlgorithms;
-
-class VectorMathematicsTest : public CxxTest::TestSuite
-{
-
-public:
-
-	void testDotProductOrthogonal(void)
-	{
-		//a.b = 0 if a and b are orthogonal.
-		double a1 = 0;
-		double a2 = 1;
-		double a3 = 0;
-		double b1 = 1;
-		double b2 = 0;
-		double b3 = 0;
-		double result = dotProduct(a1, a2, a3, b1, b2, b3);
-		TSM_ASSERT_EQUALS("The calculated dot product is incorrect", 0, result);
-	}
-	
-	void testDotProductParallel(void)
-	{
-		//a.b = 1 if a and b are parallel.
-		double a1 = 1;
-		double a2 = 0;
-		double a3 = 0;
-		double b1 = 1;
-		double b2 = 0;
-		double b3 = 0;
-		double result = dotProduct(a1, a2, a3, b1, b2, b3);
-		TSM_ASSERT_EQUALS("The calculated dot product is incorrect", 1, result);
-	}
-
-	void testCrossProductOrthogonal(void)
-	{
-	  using Mantid::Geometry::V3D;
-	  double a1 = 1;
-	  double a2 = 0;
-	  double a3 = 0;
-	  double b1 = 0;
-	  double b2 = 1;
-	  double b3 = 0;
-	  V3D result = crossProduct(a1, a2, a3, b1, b2, b3);
-	  TSM_ASSERT_EQUALS("The calculated x component of the cross product is incorrect", 0, result.X());
-	  TSM_ASSERT_EQUALS("The calculated y component of the cross product is incorrect", 0, result.Y());
-	  TSM_ASSERT_EQUALS("The calculated z component of the cross product is incorrect", 1, result.Z());
-	}
-	
-  void testCrossProductParallel(void)
-  {
-    using Mantid::Geometry::V3D;
-    double a1 = 1;
-    double a2 = 0;
-    double a3 = 0;
-    double b1 = 1;
-    double b2 = 0;
-    double b3 = 0;
-    V3D result = crossProduct(a1, a2, a3, b1, b2, b3);
-    TSM_ASSERT_EQUALS("The calculated x component of the cross product is incorrect", 0, result.X());
-    TSM_ASSERT_EQUALS("The calculated y component of the cross product is incorrect", 0, result.Y());
-    TSM_ASSERT_EQUALS("The calculated z component of the cross product is incorrect", 0, result.Z());
-  }
-
-	void testAbsolute(void)
-	{
-	  double a = 0;
-		double b = 3;
-		double c = 4;
-	  TSM_ASSERT_EQUALS("The magnitude value has been calculated incorrectly", 5, absolute(a, b, c));
-	}
-
-	
-};
-
-#endif
+#ifndef VECTOR_MATHEMATICS_TEST_H_
+#define VECTOR_MATHEMATICS_TEST_H_
+
+#include "MantidGeometry/V3D.h"
+#include "MantidMDAlgorithms/VectorMathematics.h"
+
+using namespace Mantid::MDAlgorithms;
+
+class VectorMathematicsTest : public CxxTest::TestSuite
+{
+
+public:
+
+	void testDotProductOrthogonal(void)
+	{
+		//a.b = 0 if a and b are orthogonal.
+		double a1 = 0;
+		double a2 = 1;
+		double a3 = 0;
+		double b1 = 1;
+		double b2 = 0;
+		double b3 = 0;
+		double result = dotProduct(a1, a2, a3, b1, b2, b3);
+		TSM_ASSERT_EQUALS("The calculated dot product is incorrect", 0, result);
+	}
+	
+	void testDotProductParallel(void)
+	{
+		//a.b = 1 if a and b are parallel.
+		double a1 = 1;
+		double a2 = 0;
+		double a3 = 0;
+		double b1 = 1;
+		double b2 = 0;
+		double b3 = 0;
+		double result = dotProduct(a1, a2, a3, b1, b2, b3);
+		TSM_ASSERT_EQUALS("The calculated dot product is incorrect", 1, result);
+	}
+
+	void testCrossProductOrthogonal(void)
+	{
+	  using Mantid::Geometry::V3D;
+	  double a1 = 1;
+	  double a2 = 0;
+	  double a3 = 0;
+	  double b1 = 0;
+	  double b2 = 1;
+	  double b3 = 0;
+	  V3D result = crossProduct(a1, a2, a3, b1, b2, b3);
+	  TSM_ASSERT_EQUALS("The calculated x component of the cross product is incorrect", 0, result.X());
+	  TSM_ASSERT_EQUALS("The calculated y component of the cross product is incorrect", 0, result.Y());
+	  TSM_ASSERT_EQUALS("The calculated z component of the cross product is incorrect", 1, result.Z());
+	}
+	
+  void testCrossProductParallel(void)
+  {
+    using Mantid::Geometry::V3D;
+    double a1 = 1;
+    double a2 = 0;
+    double a3 = 0;
+    double b1 = 1;
+    double b2 = 0;
+    double b3 = 0;
+    V3D result = crossProduct(a1, a2, a3, b1, b2, b3);
+    TSM_ASSERT_EQUALS("The calculated x component of the cross product is incorrect", 0, result.X());
+    TSM_ASSERT_EQUALS("The calculated y component of the cross product is incorrect", 0, result.Y());
+    TSM_ASSERT_EQUALS("The calculated z component of the cross product is incorrect", 0, result.Z());
+  }
+
+	void testAbsolute(void)
+	{
+	  double a = 0;
+		double b = 3;
+		double c = 4;
+	  TSM_ASSERT_EQUALS("The magnitude value has been calculated incorrectly", 5, absolute(a, b, c));
+	}
+
+	
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterParserTest.h b/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterParserTest.h
index a0c0f8739c09032eaada2144145f310029022ade..69035be8ae2da5945e99230917711cd123ac6d26 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterParserTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterParserTest.h
@@ -1,85 +1,85 @@
-#ifndef TEST_WIDTH_PARAMETER_PARSER_H_
-#define TEST_WIDTH_PARAMETER_PARSER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include "MantidMDAlgorithms/SingleValueParameterParser.h"
-
-#include <Poco/DOM/DOMParser.h>
-#include <Poco/DOM/Document.h>
-#include <Poco/DOM/Element.h>
-#include <Poco/DOM/NodeList.h>
-#include <Poco/DOM/NodeIterator.h>
-#include <Poco/DOM/NodeFilter.h>
-#include <Poco/File.h>
-#include <Poco/Path.h>
-using namespace Mantid::MDAlgorithms;
-class  WidthParameterParserTest : public CxxTest::TestSuite
-{
-private:
-
-  //Mock class
-  class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
-  {
-  public:
-    MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
-    MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
-  };
-
-public:
-
-
-  void testParseWidthParameterFragment()
-  {
-    using namespace Mantid::MDAlgorithms;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>WidthParameter</Type><Value>3</Value></Parameter>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    WidthParameterParser parser;
-    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-    WidthParameter* pWidthParam = dynamic_cast<WidthParameter*>(iparam);
-    TSM_ASSERT("The paramter generated should be an WidthParamter", NULL != pWidthParam);
-    TSM_ASSERT_EQUALS("Numeric value has not been parsed correctly", 3, pWidthParam->getValue() );
-  }
-
-  void testChainOfResponsibility()
-  {
-    using namespace Mantid::MDAlgorithms;
-    Poco::XML::DOMParser pParser;
-    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
-    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
-    Poco::XML::Element* pRootElem = pDoc->documentElement();
-
-    SuccessorParameterParser* successor = new SuccessorParameterParser;
-    EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
-
-    WidthParameterParser parser;
-
-    parser.setSuccessorParser(successor);
-    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
-
-    TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
-  }
-
-  void testCanParseXMLOutput()
-  { 
-    //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
-    WidthParameter originalWidth(2);
-
-    Poco::XML::DOMParser pParser;
-    Poco::XML::Document* pDoc = pParser.parseString(originalWidth.toXMLString());
-
-    WidthParameterParser widthParser;
-    WidthParameter* synthWidth = dynamic_cast<WidthParameter*>(widthParser.createParameter(pDoc->documentElement()));
-
-    TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. values do not match", originalWidth.getValue() ,  synthWidth->getValue());
-
-    delete synthWidth;
-  }
-
-};
-
-#endif
+#ifndef TEST_WIDTH_PARAMETER_PARSER_H_
+#define TEST_WIDTH_PARAMETER_PARSER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include "MantidMDAlgorithms/SingleValueParameterParser.h"
+
+#include <Poco/DOM/DOMParser.h>
+#include <Poco/DOM/Document.h>
+#include <Poco/DOM/Element.h>
+#include <Poco/DOM/NodeList.h>
+#include <Poco/DOM/NodeIterator.h>
+#include <Poco/DOM/NodeFilter.h>
+#include <Poco/File.h>
+#include <Poco/Path.h>
+using namespace Mantid::MDAlgorithms;
+class  WidthParameterParserTest : public CxxTest::TestSuite
+{
+private:
+
+  //Mock class
+  class SuccessorParameterParser : public Mantid::API::ImplicitFunctionParameterParser 
+  {
+  public:
+    MOCK_METHOD1(createParameter, Mantid::API::ImplicitFunctionParameter*(Poco::XML::Element* parameterElement));
+    MOCK_METHOD1(setSuccessorParser, void(Mantid::API::ImplicitFunctionParameterParser* parameterParser));
+  };
+
+public:
+
+
+  void testParseWidthParameterFragment()
+  {
+    using namespace Mantid::MDAlgorithms;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>WidthParameter</Type><Value>3</Value></Parameter>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    WidthParameterParser parser;
+    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+    WidthParameter* pWidthParam = dynamic_cast<WidthParameter*>(iparam);
+    TSM_ASSERT("The paramter generated should be an WidthParamter", NULL != pWidthParam);
+    TSM_ASSERT_EQUALS("Numeric value has not been parsed correctly", 3, pWidthParam->getValue() );
+  }
+
+  void testChainOfResponsibility()
+  {
+    using namespace Mantid::MDAlgorithms;
+    Poco::XML::DOMParser pParser;
+    std::string xmlToParse = "<?xml version=\"1.0\" encoding=\"utf-8\"?><Parameter><Type>UnknownParameter</Type><Value>1, 2, 3</Value></Parameter>";
+    Poco::XML::Document* pDoc = pParser.parseString(xmlToParse);
+    Poco::XML::Element* pRootElem = pDoc->documentElement();
+
+    SuccessorParameterParser* successor = new SuccessorParameterParser;
+    EXPECT_CALL(*successor, createParameter(testing::_)).Times(1);
+
+    WidthParameterParser parser;
+
+    parser.setSuccessorParser(successor);
+    Mantid::API::ImplicitFunctionParameter* iparam = parser.createParameter(pRootElem);
+
+    TSM_ASSERT("Chain of responsiblity did not execute as expected for OriginParameter type.", testing::Mock::VerifyAndClearExpectations(successor))
+  }
+
+  void testCanParseXMLOutput()
+  { 
+    //Circular check that xml given by an origin parameter can be used to create a new one using the parser.
+    WidthParameter originalWidth(2);
+
+    Poco::XML::DOMParser pParser;
+    Poco::XML::Document* pDoc = pParser.parseString(originalWidth.toXMLString());
+
+    WidthParameterParser widthParser;
+    WidthParameter* synthWidth = dynamic_cast<WidthParameter*>(widthParser.createParameter(pDoc->documentElement()));
+
+    TSM_ASSERT_EQUALS("Formats used for xml parsing and xml output are not synchronised. values do not match", originalWidth.getValue() ,  synthWidth->getValue());
+
+    delete synthWidth;
+  }
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterTest.h b/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterTest.h
index be2b58fbb921351036cb467d43ae3f0dc9581a31..2824dc8ed7cbd9c1d0bf0221fc17b8b63312cca0 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterTest.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/WidthParameterTest.h
@@ -1,66 +1,66 @@
-#ifndef TEST_WIDTH_PARAMETER_H_
-#define TEST_WIDTH_PARAMETER_H_
-
-#include <cxxtest/TestSuite.h>
-#include <boost/scoped_ptr.hpp>
-#include "SingleValueParameterBaseTest.h"
-#include "MantidMDAlgorithms/WidthParameter.h"
-
-using namespace Mantid::MDAlgorithms;
-typedef SingleValueParameterTests<WidthParameter> SVPTWidth;
-class WidthParameterTest :  public CxxTest::TestSuite, public SVPTWidth
-{
-public:
-
-  void testGetName()
-  {
-    SVPTWidth::testGetName("WidthParameter");
-  }
-
-  void testIsValid()
-  {
-    SVPTWidth::testIsValid();
-  }
-
-  void testIsNotValid()
-  {
-    SVPTWidth::testIsNotValid();
-  }
-
-  void testAssigment()
-  {
-    SVPTWidth::testAssigment();
-  }
-
-  void testClone()
-  {
-    SVPTWidth::testClone();
-  }
-
-  void testCopy()
-  {
-    SVPTWidth::testCopy();
-  }
-
-  void testToXML()
-  {
-    SVPTWidth::testToXML();
-  }
-
-  void testEqual()
-  {
-    SVPTWidth::testEqual();
-  }
-
-  void testNotEqual()
-  {
-    SVPTWidth::testNotEqual();
-  }
-
-  void testInvalidIfUnsigned()
-  {
-    SVPTWidth::testInvalidIfUnsigned();
-  }
-};
-
-#endif
+#ifndef TEST_WIDTH_PARAMETER_H_
+#define TEST_WIDTH_PARAMETER_H_
+
+#include <cxxtest/TestSuite.h>
+#include <boost/scoped_ptr.hpp>
+#include "SingleValueParameterBaseTest.h"
+#include "MantidMDAlgorithms/WidthParameter.h"
+
+using namespace Mantid::MDAlgorithms;
+typedef SingleValueParameterTests<WidthParameter> SVPTWidth;
+class WidthParameterTest :  public CxxTest::TestSuite, public SVPTWidth
+{
+public:
+
+  void testGetName()
+  {
+    SVPTWidth::testGetName("WidthParameter");
+  }
+
+  void testIsValid()
+  {
+    SVPTWidth::testIsValid();
+  }
+
+  void testIsNotValid()
+  {
+    SVPTWidth::testIsNotValid();
+  }
+
+  void testAssigment()
+  {
+    SVPTWidth::testAssigment();
+  }
+
+  void testClone()
+  {
+    SVPTWidth::testClone();
+  }
+
+  void testCopy()
+  {
+    SVPTWidth::testCopy();
+  }
+
+  void testToXML()
+  {
+    SVPTWidth::testToXML();
+  }
+
+  void testEqual()
+  {
+    SVPTWidth::testEqual();
+  }
+
+  void testNotEqual()
+  {
+    SVPTWidth::testNotEqual();
+  }
+
+  void testInvalidIfUnsigned()
+  {
+    SVPTWidth::testInvalidIfUnsigned();
+  }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/testCPComponents.h b/Code/Mantid/Framework/MDAlgorithms/test/testCPComponents.h
index b5f8aef9ef3ec0bf48092d67ed09bb2a18107f8a..7b3b8651d73d3f00738b420bfb8f0ac10410ce99 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/testCPComponents.h
+++ b/Code/Mantid/Framework/MDAlgorithms/test/testCPComponents.h
@@ -1,26 +1,26 @@
-#ifndef H_CP_REBINNING
-#define H_CP_REBINNING
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidMDAlgorithms/CenterpieceRebinning.h"
-using namespace Mantid;
-using namespace API;
-using namespace Kernel;
-using namespace MDDataObjects;
-using namespace MDAlgorithms;
-
-class MockMDWorkspace:public MDWorkspace
-{
-public:
-    MockMDWorkspace(unsigned int nDim=4,unsigned int nRecDim=3):MDWorkspace(nDim,nRecDim){};
-
-};
-
-class testCPComponents :    public CxxTest::TestSuite
-{
-       std::auto_ptr<MockMDWorkspace> pOrigin;
- public:
-     testPreselectCells(){
-     }
-};
-#endif
+#ifndef H_CP_REBINNING
+#define H_CP_REBINNING
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidMDAlgorithms/CenterpieceRebinning.h"
+using namespace Mantid;
+using namespace API;
+using namespace Kernel;
+using namespace MDDataObjects;
+using namespace MDAlgorithms;
+
+class MockMDWorkspace:public MDWorkspace
+{
+public:
+    MockMDWorkspace(unsigned int nDim=4,unsigned int nRecDim=3):MDWorkspace(nDim,nRecDim){};
+
+};
+
+class testCPComponents :    public CxxTest::TestSuite
+{
+       std::auto_ptr<MockMDWorkspace> pOrigin;
+ public:
+     testPreselectCells(){
+     }
+};
+#endif
diff --git a/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.cpp b/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.cpp
index eb33a4d97505d06936f92d74b019873eafa950be..ac6525ebf574faf48752b017dfc05f69f6e85b6f 100644
--- a/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.cpp
+++ b/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.cpp
@@ -1,56 +1,56 @@
-/* Generated file, do not edit */
-
-#ifndef CXXTEST_RUNNING
-#define CXXTEST_RUNNING
-#endif
-
-#define _CXXTEST_HAVE_STD
-#define _CXXTEST_HAVE_EH
-#include <cxxtest/TestListener.h>
-#include <cxxtest/TestTracker.h>
-#include <cxxtest/TestRunner.h>
-#include <cxxtest/RealDescriptions.h>
-
-#include "C:/Users/wkc26243.NDLT369/Documents/work/MANTID/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.h"
-
-static testCPrebinning suite_testCPrebinning;
-
-static CxxTest::List Tests_testCPrebinning = { 0, 0 };
-CxxTest::StaticSuiteDescription suiteDescription_testCPrebinning( "C:/Users/wkc26243.NDLT369/Documents/work/MANTID/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.h", 43, "testCPrebinning", suite_testCPrebinning, Tests_testCPrebinning );
-
-static class TestDescription_testCPrebinning_testRebinInit : public CxxTest::RealTestDescription {
-public:
- TestDescription_testCPrebinning_testRebinInit() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 50, "testRebinInit" ) {}
- void runTest() { suite_testCPrebinning.testRebinInit(); }
-} testDescription_testCPrebinning_testRebinInit;
-
-static class TestDescription_testCPrebinning_testGetSlicingProperty : public CxxTest::RealTestDescription {
-public:
- TestDescription_testCPrebinning_testGetSlicingProperty() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 68, "testGetSlicingProperty" ) {}
- void runTest() { suite_testCPrebinning.testGetSlicingProperty(); }
-} testDescription_testCPrebinning_testGetSlicingProperty;
-
-static class TestDescription_testCPrebinning_testCPRExec : public CxxTest::RealTestDescription {
-public:
- TestDescription_testCPrebinning_testCPRExec() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 75, "testCPRExec" ) {}
- void runTest() { suite_testCPrebinning.testCPRExec(); }
-} testDescription_testCPrebinning_testCPRExec;
-
-static class TestDescription_testCPrebinning_testRebinnedWSExists : public CxxTest::RealTestDescription {
-public:
- TestDescription_testCPrebinning_testRebinnedWSExists() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 79, "testRebinnedWSExists" ) {}
- void runTest() { suite_testCPrebinning.testRebinnedWSExists(); }
-} testDescription_testCPrebinning_testRebinnedWSExists;
-
-static class TestDescription_testCPrebinning_testEqRebinCorrectness : public CxxTest::RealTestDescription {
-public:
- TestDescription_testCPrebinning_testEqRebinCorrectness() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 87, "testEqRebinCorrectness" ) {}
- void runTest() { suite_testCPrebinning.testEqRebinCorrectness(); }
-} testDescription_testCPrebinning_testEqRebinCorrectness;
-
-static class TestDescription_testCPrebinning_testCPRRebinAgainSmaller : public CxxTest::RealTestDescription {
-public:
- TestDescription_testCPrebinning_testCPRRebinAgainSmaller() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 102, "testCPRRebinAgainSmaller" ) {}
- void runTest() { suite_testCPrebinning.testCPRRebinAgainSmaller(); }
-} testDescription_testCPrebinning_testCPRRebinAgainSmaller;
-
+/* Generated file, do not edit */
+
+#ifndef CXXTEST_RUNNING
+#define CXXTEST_RUNNING
+#endif
+
+#define _CXXTEST_HAVE_STD
+#define _CXXTEST_HAVE_EH
+#include <cxxtest/TestListener.h>
+#include <cxxtest/TestTracker.h>
+#include <cxxtest/TestRunner.h>
+#include <cxxtest/RealDescriptions.h>
+
+#include "C:/Users/wkc26243.NDLT369/Documents/work/MANTID/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.h"
+
+static testCPrebinning suite_testCPrebinning;
+
+static CxxTest::List Tests_testCPrebinning = { 0, 0 };
+CxxTest::StaticSuiteDescription suiteDescription_testCPrebinning( "C:/Users/wkc26243.NDLT369/Documents/work/MANTID/Code/Mantid/Framework/MDAlgorithms/test/testCPrebinning.h", 43, "testCPrebinning", suite_testCPrebinning, Tests_testCPrebinning );
+
+static class TestDescription_testCPrebinning_testRebinInit : public CxxTest::RealTestDescription {
+public:
+ TestDescription_testCPrebinning_testRebinInit() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 50, "testRebinInit" ) {}
+ void runTest() { suite_testCPrebinning.testRebinInit(); }
+} testDescription_testCPrebinning_testRebinInit;
+
+static class TestDescription_testCPrebinning_testGetSlicingProperty : public CxxTest::RealTestDescription {
+public:
+ TestDescription_testCPrebinning_testGetSlicingProperty() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 68, "testGetSlicingProperty" ) {}
+ void runTest() { suite_testCPrebinning.testGetSlicingProperty(); }
+} testDescription_testCPrebinning_testGetSlicingProperty;
+
+static class TestDescription_testCPrebinning_testCPRExec : public CxxTest::RealTestDescription {
+public:
+ TestDescription_testCPrebinning_testCPRExec() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 75, "testCPRExec" ) {}
+ void runTest() { suite_testCPrebinning.testCPRExec(); }
+} testDescription_testCPrebinning_testCPRExec;
+
+static class TestDescription_testCPrebinning_testRebinnedWSExists : public CxxTest::RealTestDescription {
+public:
+ TestDescription_testCPrebinning_testRebinnedWSExists() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 79, "testRebinnedWSExists" ) {}
+ void runTest() { suite_testCPrebinning.testRebinnedWSExists(); }
+} testDescription_testCPrebinning_testRebinnedWSExists;
+
+static class TestDescription_testCPrebinning_testEqRebinCorrectness : public CxxTest::RealTestDescription {
+public:
+ TestDescription_testCPrebinning_testEqRebinCorrectness() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 87, "testEqRebinCorrectness" ) {}
+ void runTest() { suite_testCPrebinning.testEqRebinCorrectness(); }
+} testDescription_testCPrebinning_testEqRebinCorrectness;
+
+static class TestDescription_testCPrebinning_testCPRRebinAgainSmaller : public CxxTest::RealTestDescription {
+public:
+ TestDescription_testCPrebinning_testCPRRebinAgainSmaller() : CxxTest::RealTestDescription( Tests_testCPrebinning, suiteDescription_testCPrebinning, 102, "testCPRRebinAgainSmaller" ) {}
+ void runTest() { suite_testCPrebinning.testCPRRebinAgainSmaller(); }
+} testDescription_testCPrebinning_testCPRRebinAgainSmaller;
+
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/H5pubconf.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/H5pubconf.h
index 5d30bb7e01080e2a783a604f7c650990b3159de0..5e13b92869f2674c96cf56881990cfbb1482b6ab 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/H5pubconf.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/H5pubconf.h
@@ -1,745 +1,745 @@
-/* H5pubconf.h  Generated By CMake during the configuration */
-
-#ifndef H5_CONFIG_H_
-#define H5_CONFIG_H_
-
-/* Define if the Windows virtual file driver should be compiled */
-#define H5_HAVE_WINDOWS 1
-
-/* Define if the Windows virtual file driver should use buffered IO functions */
-/* #undef WINDOWS_USE_STDIO */
-
-/* Define the maximum write size for the Windows file driver.  Larger writes
-   will be split into many writes.  Safe values are 1 <= WINDOWS_MAX_BUF <= 2GB-1. */
-#define WINDOWS_MAX_BUF (1024 * 1024 * 1024)
-
-/* Defined if HDF5 was built with CMake AND build as a shared library */
-/* #undef H5_BUILT_AS_DYNAMIC_LIB */
-
-/* Defined if HDF5 CPP  was built with CMake AND build as a shared library  */
-/* #undef H5_CPP_BUILT_AS_DYNAMIC_LIB */
-
-/* Defined if HDF5 HL was built with CMake AND build as a shared library */
-/* #undef H5_HL_BUILT_AS_DYNAMIC_LIB */
-
-/* Define if building universal (internal helper macro) */
-/* #undef H5_AC_APPLE_UNIVERSAL_BUILD */
-
-/* Define if your system generates wrong code for log2 routine. */
-/* #undef H5_BAD_LOG2_CODE_GENERATED */
-
-/* Define if the memory buffers being written to disk should be cleared before
-   writing. */
-#define H5_CLEAR_MEMORY 1
-
-/* Define if your system can handle converting denormalized floating-point
-   values. */
-#define H5_CONVERT_DENORMAL_FLOAT 1
-
-/* Define if C++ compiler recognizes offsetof */
-/* #undef H5_CXX_HAVE_OFFSETOF */
-
-/* Define the default virtual file driver to compile */
-#define H5_DEFAULT_VFD H5FD_WINDOWS
-
-/* Define if `dev_t' is a scalar */
-/* #undef H5_DEV_T_IS_SCALAR */
-
-/* Define to dummy `main' function (if any) required to link to the Fortran
-   libraries. */
-/* #undef H5_FC_DUMMY_MAIN */
-
-/* Define if F77 and FC dummy `main' functions are identical. */
-/* #undef H5_FC_DUMMY_MAIN_EQ_F77 */
-
-/* Define to a macro mangling the given C identifier (in lower and upper
-   case), which must not contain underscores, for linking with Fortran. */
-#define H5_FC_FUNC(name,NAME) name ## _
-
-/* As FC_FUNC, but for C identifiers containing underscores. */
-#define H5_FC_FUNC_(name,NAME) name ## _
-
-/* Define if your system can handle overflow converting floating-point to
-   integer values. */
-#define H5_FP_TO_INTEGER_OVERFLOW_WORKS 1
-
-/* Define if your system roundup accurately converting floating-point to
-   unsigned long long values. */
-#define H5_FP_TO_ULLONG_ACCURATE 1
-
-/* Define if your system has right maximum convert floating-point to unsigned
-   long long values. */
-/* #undef H5_FP_TO_ULLONG_RIGHT_MAXIMUM */
-
-/* Define if gettimeofday() populates the tz pointer passed in */
-/* #undef H5_GETTIMEOFDAY_GIVES_TZ */
-
-/* Define to 1 if you have the `alarm' function. */
-/* #undef H5_HAVE_ALARM */
-
-/* Define if the __attribute__(()) extension is present */
-/* #undef H5_HAVE_ATTRIBUTE */
-
-/* Define to 1 if you have the `BSDgettimeofday' function. */
-/* #undef H5_HAVE_BSDGETTIMEOFDAY */
-
-/* Define if the compiler understands C99 designated initialization of structs
-   and unions */
-/* #undef H5_HAVE_C99_DESIGNATED_INITIALIZER */
-
-/* Define if the compiler understands the __func__ keyword */
-/* #undef H5_HAVE_C99_FUNC */
-
-/* Define if the function stack tracing code is to be compiled in */
-/* #undef H5_HAVE_CODESTACK */
-
-/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.
-   */
-#define H5_HAVE_DECL_TZNAME 1
-
-/* Define to 1 if you have the `difftime' function. */
-#define H5_HAVE_DIFFTIME 1
-
-/* Define if the direct I/O virtual file driver should be compiled */
-/* #undef H5_HAVE_DIRECT */
-
-/* Define to 1 if you have the <dlfcn.h> header file. */
-/* #undef H5_HAVE_DLFCN_H */
-
-/* Define to 1 if you have the <dmalloc.h> header file. */
-/* #undef H5_HAVE_DMALLOC_H */
-
-/* Define if library information should be embedded in the executables */
-/* #undef H5_HAVE_EMBEDDED_LIBINFO */
-
-/* Define to 1 if you have the <features.h> header file. */
-/* #undef H5_HAVE_FEATURES_H */
-
-/* Define if support for deflate (zlib) filter is enabled */
-/* #undef H5_HAVE_FILTER_DEFLATE */
-
-/* Define if support for Fletcher32 checksum is enabled */
-#define H5_HAVE_FILTER_FLETCHER32 1
-
-/* Define if support for nbit filter is enabled */
-#define H5_HAVE_FILTER_NBIT 1
-
-/* Define if support for scaleoffset filter is enabled */
-#define H5_HAVE_FILTER_SCALEOFFSET 1
-
-/* Define if support for shuffle filter is enabled */
-#define H5_HAVE_FILTER_SHUFFLE 1
-
-/* Define if support for szip filter is enabled */
-/* #undef H5_HAVE_FILTER_SZIP */
-
-/* Define to 1 if you have the `fork' function. */
-/* #undef H5_HAVE_FORK */
-
-/* Define to 1 if you have the `frexpf' function. */
-/* #undef H5_HAVE_FREXPF */
-
-/* Define to 1 if you have the `frexpl' function. */
-/* #undef H5_HAVE_FREXPL */
-
-/* Define to 1 if you have the `fseek64' function. */
-/* #undef H5_HAVE_FSEEK64 */
-
-/* Define to 1 if you have the `fseeko' function. */
-/* #undef H5_HAVE_FSEEKO */
-
-/* Define to 1 if you have the `fstat64' function. */
-/* #undef H5_HAVE_FSTAT64 */
-
-/* Define to 1 if you have the `ftello' function. */
-/* #undef H5_HAVE_FTELLO */
-
-/* Define to 1 if you have the `ftruncate64' function. */
-/* #undef H5_HAVE_FTRUNCATE64 */
-
-/* Define if the compiler understands the __FUNCTION__ keyword */
-#define H5_HAVE_FUNCTION 1
-
-/* Define to 1 if you have the `GetConsoleScreenBufferInfo' function. */
-/* #undef H5_HAVE_GETCONSOLESCREENBUFFERINFO */
-
-/* Define to 1 if you have the `gethostname' function. */
-#define H5_HAVE_GETHOSTNAME 1
-
-/* Define to 1 if you have the `getpwuid' function. */
-/* #undef H5_HAVE_GETPWUID */
-
-/* Define to 1 if you have the `getrusage' function. */
-/* #undef H5_HAVE_GETRUSAGE */
-
-/* Define to 1 if you have the `gettextinfo' function. */
-/* #undef H5_HAVE_GETTEXTINFO */
-
-/* Define to 1 if you have the `gettimeofday' function. */
-/* #undef H5_HAVE_GETTIMEOFDAY */
-
-/* Define to 1 if you have the `gettimeofday' function declared in time.h . */
-/* #undef H5_HAVE_TIME_GETTIMEOFDAY */
-
-/* Define to 1 if you have the `gettimeofday' function declared in time.h . */
-/* #undef H5_HAVE_SYS_TIME_GETTIMEOFDAY */
-
-/* Define to 1 if you have the `get_fpc_csr' function. */
-/* #undef H5_HAVE_GET_FPC_CSR */
-
-/* Define if we have GPFS support */
-/* #undef H5_HAVE_GPFS */
-
-/* Define to 1 if you have the <gpfs.h> header file. */
-/* #undef H5_HAVE_GPFS_H */
-
-/* Define if h5dump packed bits feature is enabled */
-#define H5_HAVE_H5DUMP_PACKED_BITS 1
-
-/* Define if library will contain instrumentation to detect correct
-   optimization operation */
-/* #undef H5_HAVE_INSTRUMENTED_LIBRARY */
-
-/* Define to 1 if you have the <inttypes.h> header file. */
-/* #undef H5_HAVE_INTTYPES_H */
-
-/* Define to 1 if you have the `ioctl' function. */
-/* #undef H5_HAVE_IOCTL */
-
-/* Define to 1 if you have the <io.h> header file. */
-#define H5_HAVE_IO_H 1
-
-/* Define to 1 if you have the `dmalloc' library (-ldmalloc). */
-/* #undef H5_HAVE_LIBDMALLOC */
-
-/* Define to 1 if you have the `lmpe' library (-llmpe). */
-/* #undef H5_HAVE_LIBLMPE */
-
-/* Define to 1 if you have the `m' library (-lm). */
-#define H5_HAVE_LIBM 1
-
-/* Define to 1 if you have the `mpe' library (-lmpe). */
-/* #undef H5_HAVE_LIBMPE */
-
-/* Define to 1 if you have the `mpi' library (-lmpi). */
-/* #undef H5_HAVE_LIBMPI */
-
-/* Define to 1 if you have the `mpich' library (-lmpich). */
-/* #undef H5_HAVE_LIBMPICH */
-
-/* Define to 1 if you have the `mpio' library (-lmpio). */
-/* #undef H5_HAVE_LIBMPIO */
-
-/* Define to 1 if you have the `nsl' library (-lnsl). */
-/* #undef H5_HAVE_LIBNSL */
-
-/* Define to 1 if you have the `pthread' library (-lpthread). */
-/* #undef H5_HAVE_LIBPTHREAD */
-
-/* Define to 1 if you have the `socket' library (-lsocket). */
-/* #undef H5_HAVE_LIBSOCKET */
-
-/* Define to 1 if you have the `sz' library (-lsz). */
-/* #undef H5_HAVE_LIBSZ */
-
-/* Define to 1 if you have the `z' library (-lz). */
-/* #undef H5_HAVE_LIBZ */
-
-/* Define to 1 if you have the `longjmp' function. */
-#define H5_HAVE_LONGJMP 1
-
-/* Define to 1 if you have the `lseek64' function. */
-/* #undef H5_HAVE_LSEEK64 */
-
-/* Define to 1 if you have the `lstat' function. */
-/* #undef H5_HAVE_LSTAT */
-
-/* Define to 1 if you have the <memory.h> header file. */
-#define H5_HAVE_MEMORY_H 1
-
-/* Define if we have MPE support */
-/* #undef H5_HAVE_MPE */
-
-/* Define to 1 if you have the <mpe.h> header file. */
-/* #undef H5_HAVE_MPE_H */
-
-/* Define if MPI_File_get_size works correctly */
-/* #undef H5_HAVE_MPI_GET_SIZE */
-
-/* Define if `MPI_Comm_c2f' and `MPI_Comm_f2c' exists */
-/* #undef H5_HAVE_MPI_MULTI_LANG_Comm */
-
-/* Define if `MPI_Info_c2f' and `MPI_Info_f2c' exists */
-/* #undef H5_HAVE_MPI_MULTI_LANG_Info */
-
-/* Define if we have parallel support */
-/* #undef H5_HAVE_PARALLEL */
-
-/* Define to 1 if you have the <pthread.h> header file. */
-/* #undef H5_HAVE_PTHREAD_H */
-
-/* Define to 1 if you have the `random' function. */
-/* #undef H5_HAVE_RANDOM */
-
-/* Define to 1 if you have the `rand_r' function. */
-/* #undef H5_HAVE_RAND_R */
-
-/* Define to 1 if you have the <setjmp.h> header file. */
-#define H5_HAVE_SETJMP_H 1
-
-/* Define to 1 if you have the `setsysinfo' function. */
-/* #undef H5_HAVE_SETSYSINFO */
-
-/* Define to 1 if you have the `sigaction' function. */
-/* #undef H5_HAVE_SIGACTION */
-
-/* Define to 1 if you have the `siglongjmp' function. */
-/* #undef H5_HAVE_SIGLONGJMP */
-
-/* Define to 1 if you have the `signal' function. */
-#define H5_HAVE_SIGNAL 1
-
-/* Define to 1 if you have the `snprintf' function. */
-/* #undef H5_HAVE_SNPRINTF */
-
-/* Define to 1 if you have the `srandom' function. */
-/* #undef H5_HAVE_SRANDOM */
-
-/* Define to 1 if you have the `stat64' function. */
-/* #undef H5_HAVE_STAT64 */
-
-/* Define if `struct stat' has the `st_blocks' field */
-/* #undef H5_HAVE_STAT_ST_BLOCKS */
-
-/* Define to 1 if you have the <stddef.h> header file. */
-#define H5_HAVE_STDDEF_H 1
-
-/* Define to 1 if you have the <stdint.h> header file. */
-/* #undef H5_HAVE_STDINT_H */
-
-/* Define to 1 if you have the <stdlib.h> header file. */
-#define H5_HAVE_STDLIB_H 1
-
-/* Define to 1 if you have the `strdup' function. */
-#define H5_HAVE_STRDUP 1
-
-/* Define to 1 if you have the <strings.h> header file. */
-/* #undef H5_HAVE_STRINGS_H */
-
-/* Define to 1 if you have the <string.h> header file. */
-#define H5_HAVE_STRING_H 1
-
-/* Define if `struct text_info' is defined */
-/* #undef H5_HAVE_STRUCT_TEXT_INFO */
-
-/* Define if `struct timezone' is defined */
-/* #undef H5_HAVE_STRUCT_TIMEZONE */
-
-/* Define to 1 if `struct tm' is a member of `tm_zone'. */
-/* #undef H5_HAVE_STRUCT_TM_TM_ZONE */
-
-/* Define if `struct videoconfig' is defined */
-/* #undef H5_HAVE_STRUCT_VIDEOCONFIG */
-
-/* Define to 1 if you have the `symlink' function. */
-/* #undef H5_HAVE_SYMLINK */
-
-/* Define to 1 if you have the `system' function. */
-#define H5_HAVE_SYSTEM 1
-
-/* Define to 1 if you have the <sys/fpu.h> header file. */
-/* #undef H5_HAVE_SYS_FPU_H */
-
-/* Define to 1 if you have the <sys/ioctl.h> header file. */
-/* #undef H5_HAVE_SYS_IOCTL_H */
-
-/* Define to 1 if you have the <sys/proc.h> header file. */
-/* #undef H5_HAVE_SYS_PROC_H */
-
-/* Define to 1 if you have the <sys/resource.h> header file. */
-/* #undef H5_HAVE_SYS_RESOURCE_H */
-
-/* Define to 1 if you have the <sys/socket.h> header file. */
-/* #undef H5_HAVE_SYS_SOCKET_H */
-
-/* Define to 1 if you have the <sys/stat.h> header file. */
-#define H5_HAVE_SYS_STAT_H 1
-
-/* Define to 1 if you have the <sys/sysinfo.h> header file. */
-/* #undef H5_HAVE_SYS_SYSINFO_H */
-
-/* Define to 1 if you have the <sys/timeb.h> header file. */
-#define H5_HAVE_SYS_TIMEB_H 1
-
-/* Define to 1 if you have the <time.h> header file. */
-#define H5_HAVE_TIME_H 1
-
-/* Define to 1 if you have the <sys/time.h> header file. */
-/* #undef H5_HAVE_SYS_TIME_H */
-
-/* Define to 1 if you have the <sys/types.h> header file. */
-#define H5_HAVE_SYS_TYPES_H 1
-
-/* Define to 1 if you have the <szlib.h> header file. */
-/* #undef H5_HAVE_SZLIB_H */
-
-/* Define if we have thread safe support */
-/* #undef H5_HAVE_THREADSAFE */
-
-/* Define if `timezone' is a global variable */
-#define H5_HAVE_TIMEZONE 1
-
-/* Define if the ioctl TIOCGETD is defined */
-/* #undef H5_HAVE_TIOCGETD */
-
-/* Define if the ioctl TIOGWINSZ is defined */
-/* #undef H5_HAVE_TIOCGWINSZ */
-
-/* Define to 1 if you have the `tmpfile' function. */
-#define H5_HAVE_TMPFILE 1
-
-/* Define if `tm_gmtoff' is a member of `struct tm' */
-/* #undef H5_HAVE_TM_GMTOFF */
-
-/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
-   `HAVE_STRUCT_TM_TM_ZONE' instead. */
-/* #undef H5_HAVE_TM_ZONE */
-
-/* Define to 1 if you don't have `tm_zone' but do have the external array
-   `tzname'. */
-/* #undef H5_HAVE_TZNAME */
-
-/* Define to 1 if you have the <unistd.h> header file. */
-/* #undef H5_HAVE_UNISTD_H */
-
-/* Define to 1 if you have the `vasprintf' function. */
-/* #undef H5_HAVE_VASPRINTF */
-
-/* Define to 1 if you have the `vsnprintf' function. */
-#define H5_HAVE_VSNPRINTF 1
-
-/* Define to 1 if you have the `waitpid' function. */
-/* #undef H5_HAVE_WAITPID */
-
-/* Define if your system has window style path name. */
-#define H5_HAVE_WINDOW_PATH 1
-
-/* Define to 1 if you have the <winsock.h> header file. */
-#define H5_HAVE_WINSOCK_H 1
-
-/* Define to 1 if you have the <zlib.h> header file. */
-/* #undef H5_HAVE_ZLIB_H */
-
-/* Define to 1 if you have the `_getvideoconfig' function. */
-/* #undef H5_HAVE__GETVIDEOCONFIG */
-
-/* Define to 1 if you have the `_scrsize' function. */
-/* #undef H5_HAVE__SCRSIZE */
-
-/* Define if `__tm_gmtoff' is a member of `struct tm' */
-/* #undef H5_HAVE___TM_GMTOFF */
-
-/* Define if your system can't handle converting floating-point values to long
-   long. */
-/* #undef H5_HW_FP_TO_LLONG_NOT_WORKS */
-
-/* Define if HDF5's high-level library headers should be included in hdf5.h */
-/* #undef H5_INCLUDE_HL */
-
-/* Define if your system can accurately convert from integers to long double
-   values. */
-#define H5_INTEGER_TO_LDOUBLE_ACCURATE 1
-
-/* Define if your system can convert long double to integers accurately. */
-#define H5_LDOUBLE_TO_INTEGER_ACCURATE 1
-
-/* Define if your system can convert from long double to integer values. */
-#define H5_LDOUBLE_TO_INTEGER_WORKS 1
-
-/* Define if your system can convert long double to (unsigned) long long
-   values correctly. */
-#define H5_LDOUBLE_TO_LLONG_ACCURATE 1
-
-/* Define if your system can convert long double to unsigned int values
-   correctly. */
-#define H5_LDOUBLE_TO_UINT_ACCURATE 1
-
-/* Define if your system can compile long long to floating-point casts. */
-#define H5_LLONG_TO_FP_CAST_WORKS 1
-
-/* Define if your system can convert (unsigned) long long to long double
-   values correctly. */
-#define H5_LLONG_TO_LDOUBLE_CORRECT 1
-
-/* Define to the sub-directory in which libtool stores uninstalled libraries.
-   */
-/* #undef H5_LT_OBJDIR */
-
-/* Define if the metadata trace file code is to be compiled in */
-/* #undef H5_METADATA_TRACE_FILE */
-
-/* Define if your system can handle complicated MPI derived datatype
-   correctly. */
-/* #undef H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS */
-
-/* Define if your system's `MPI_File_set_size' function works for files over
-   2GB. */
-/* #undef H5_MPI_FILE_SET_SIZE_BIG */
-
-/* Define if your system can handle special collective IO properly. */
-/* #undef H5_MPI_SPECIAL_COLLECTIVE_IO_WORKS */
-
-/* Define if we can violate pointer alignment restrictions */
-#define H5_NO_ALIGNMENT_RESTRICTIONS 1
-
-/* Define if deprecated public API symbols are disabled */
-/* #undef H5_NO_DEPRECATED_SYMBOLS */
-
-/* Define if shared writing must be disabled (CodeWarrior only) */
-/* #undef H5_NO_SHARED_WRITING */
-
-/* Name of package */
-#define H5_PACKAGE "hdf5"
-
-/* Define to the address where bug reports for this package should be sent. */
-#define H5_PACKAGE_BUGREPORT "help@hdfgroup.org"
-
-/* Define to the full name of this package. */
-#define H5_PACKAGE_NAME "HDF5"
-
-/* Define to the full name and version of this package. */
-#define H5_PACKAGE_STRING "HDF5 1.8.5"
-
-/* Define to the one symbol short name of this package. */
-#define H5_PACKAGE_TARNAME "hdf5"
-
-/* Define to the home page for this package. */
-#define H5_PACKAGE_URL "htt://www.hdfgroup.org"
-
-/* Define to the version of this package. */
-#define H5_PACKAGE_VERSION "1.8.5"
-
-/* Width for printf() for type `long long' or `__int64', use `ll' */
-#define H5_PRINTF_LL_WIDTH "ll"
-
-/* The size of `char', as computed by sizeof. */
-#define H5_SIZEOF_CHAR 1
-
-/* The size of `double', as computed by sizeof. */
-#define H5_SIZEOF_DOUBLE 8
-
-/* The size of `float', as computed by sizeof. */
-#define H5_SIZEOF_FLOAT 4
-
-/* The size of `int', as computed by sizeof. */
-#define H5_SIZEOF_INT 4
-
-/* The size of `int16_t', as computed by sizeof. */
-#define H5_SIZEOF_INT16_T 0
-
-/* The size of `int32_t', as computed by sizeof. */
-#define H5_SIZEOF_INT32_T 0
-
-/* The size of `int64_t', as computed by sizeof. */
-#define H5_SIZEOF_INT64_T 0
-
-/* The size of `int8_t', as computed by sizeof. */
-#define H5_SIZEOF_INT8_T 0
-
-/* The size of `int_fast16_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_FAST16_T 0
-
-/* The size of `int_fast32_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_FAST32_T 0
-
-/* The size of `int_fast64_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_FAST64_T 0
-
-/* The size of `int_fast8_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_FAST8_T 0
-
-/* The size of `int_least16_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_LEAST16_T 0
-
-/* The size of `int_least32_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_LEAST32_T 0
-
-/* The size of `int_least64_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_LEAST64_T 0
-
-/* The size of `int_least8_t', as computed by sizeof. */
-#define H5_SIZEOF_INT_LEAST8_T 0
-
-#if !defined(__APPLE__)
-/* The size of `size_t', as computed by sizeof. */
-#define H5_SIZEOF_SIZE_T 8
-
-/* The size of `ssize_t', as computed by sizeof. */
-#define H5_SIZEOF_SSIZE_T 0
-
-/* The size of `long', as computed by sizeof. */
-#define H5_SIZEOF_LONG 4
-
-#else
-   # if defined(__LP64__) && __LP64__
-  #define H5_SIZEOF_LONG 8
-  #define H5_SIZEOF_SIZE_T 8
-  #define H5_SIZEOF_SSIZE_T 8
-  # else
-  #define H5_SIZEOF_LONG 4
-  #define H5_SIZEOF_SIZE_T 4
-  #define H5_SIZEOF_SSIZE_T 4
-  # endif
-
-#endif
-
-/* The size of `long double', as computed by sizeof. */
-#define H5_SIZEOF_LONG_DOUBLE 8
-
-/* Define size of long long and/or __int64 bit integer type only if the type
-   exists.  */
-#if !defined(__APPLE__)
- #define H5_SIZEOF_LONG_LONG 8
-#else
- #define H5_SIZEOF_LONG_LONG 8
-#endif
-
-/* The size of `off64_t', as computed by sizeof. */
-#define H5_SIZEOF_OFF64_T 0
-
-/* The size of `off_t', as computed by sizeof. */
-#define H5_SIZEOF_OFF_T 4
-
-/* The size of `short', as computed by sizeof. */
-#define H5_SIZEOF_SHORT 2
-
-/* The size of `uint16_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT16_T 0
-
-/* The size of `uint32_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT32_T 0
-
-/* The size of `uint64_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT64_T 0
-
-/* The size of `uint8_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT8_T 0
-
-/* The size of `uint_fast16_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_FAST16_T 0
-
-/* The size of `uint_fast32_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_FAST32_T 0
-
-/* The size of `uint_fast64_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_FAST64_T 0
-
-/* The size of `uint_fast8_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_FAST8_T 0
-
-/* The size of `uint_least16_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_LEAST16_T 0
-
-/* The size of `uint_least32_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_LEAST32_T 0
-
-/* The size of `uint_least64_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_LEAST64_T 0
-
-/* The size of `uint_least8_t', as computed by sizeof. */
-#define H5_SIZEOF_UINT_LEAST8_T 0
-
-/* The size of `unsigned', as computed by sizeof. */
-#define H5_SIZEOF_UNSIGNED 4
-
-/* The size of `__int64', as computed by sizeof. */
-#define H5_SIZEOF___INT64 8
-
-/* Define to 1 if you have the ANSI C header files. */
-#define H5_STDC_HEADERS 1
-
-/* Define if strict file format checks are enabled */
-/* #undef H5_STRICT_FORMAT_CHECKS */
-
-/* Define if your system supports pthread_attr_setscope(&attribute,
-   PTHREAD_SCOPE_SYSTEM) call. */
-/* #undef H5_SYSTEM_SCOPE_THREADS */
-
-/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
-/* #undef H5_TIME_WITH_SYS_TIME */
-
-/* Define to 1 if your <sys/time.h> declares `struct tm'. */
-/* #undef H5_TM_IN_SYS_TIME */
-
-/* Define if your system can compile unsigned long long to floating-point
-   casts. */
-#define H5_ULLONG_TO_FP_CAST_WORKS 1
-
-/* Define if your system can convert unsigned long long to long double with
-   correct precision. */
-/* #undef H5_ULLONG_TO_LDOUBLE_PRECISION */
-
-/* Define if your system accurately converting unsigned long to float values.
-   */
-#define H5_ULONG_TO_FLOAT_ACCURATE 1
-
-/* Define if your system can accurately convert unsigned (long) long values to
-   floating-point values. */
-/* #undef H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE */
-
-/* Define using v1.6 public API symbols by default */
-/* #undef H5_USE_16_API_DEFAULT */
-
-/* Define if a memory checking tool will be used on the library, to cause
-   library to be very picky about memory operations and also disable the
-   internal free list manager code. */
-/* #undef H5_USING_MEMCHECKER */
-
-/* Version number of package */
-#define VERSION "1.8.5"
-
-/* Define if vsnprintf() returns the correct value for formatted strings that
-   don't fit into size allowed */
-/* #undef H5_VSNPRINTF_WORKS */
-
-/* Data accuracy is prefered to speed during data conversions */
-#define H5_WANT_DATA_ACCURACY 1
-
-/* Check exception handling functions during data conversions */
-#define H5_WANT_DCONV_EXCEPTION 1
-
-/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
-   significant byte first (like Motorola and SPARC, unlike Intel). */
-#if !defined(__APPLE__)
-# ifndef WORDS_BIGENDIAN
-#  undef WORDS_BIGENDIAN
-# endif
-#else
-# if defined __BIG_ENDIAN__
-#  define WORDS_BIGENDIAN 1
-# endif
-#endif
-
-/* Define to empty if `const' does not conform to ANSI C. */
-/* #undef H5_const */
-
-/* Define to `__inline__' or `__inline' if that's what the C compiler
-   calls it, or to nothing if 'inline' is not supported under any name.  */
-#ifndef __cplusplus
-#define H5_inline __inline
-#endif
-
-/* Define to `long int' if <sys/types.h> does not define. */
-/* #undef H5_off_t */
-
-/* Define to `unsigned long' if <sys/types.h> does not define. */
-/* #undef H5_size_t */
-
-/* Define to `long' if <sys/types.h> does not define. */
-/* #undef H5_ssize_t */
-
-#if defined(__cplusplus) && defined(inline)
-#undef inline
-#endif
-
-#endif
+/* H5pubconf.h  Generated By CMake during the configuration */
+
+#ifndef H5_CONFIG_H_
+#define H5_CONFIG_H_
+
+/* Define if the Windows virtual file driver should be compiled */
+#define H5_HAVE_WINDOWS 1
+
+/* Define if the Windows virtual file driver should use buffered IO functions */
+/* #undef WINDOWS_USE_STDIO */
+
+/* Define the maximum write size for the Windows file driver.  Larger writes
+   will be split into many writes.  Safe values are 1 <= WINDOWS_MAX_BUF <= 2GB-1. */
+#define WINDOWS_MAX_BUF (1024 * 1024 * 1024)
+
+/* Defined if HDF5 was built with CMake AND build as a shared library */
+/* #undef H5_BUILT_AS_DYNAMIC_LIB */
+
+/* Defined if HDF5 CPP  was built with CMake AND build as a shared library  */
+/* #undef H5_CPP_BUILT_AS_DYNAMIC_LIB */
+
+/* Defined if HDF5 HL was built with CMake AND build as a shared library */
+/* #undef H5_HL_BUILT_AS_DYNAMIC_LIB */
+
+/* Define if building universal (internal helper macro) */
+/* #undef H5_AC_APPLE_UNIVERSAL_BUILD */
+
+/* Define if your system generates wrong code for log2 routine. */
+/* #undef H5_BAD_LOG2_CODE_GENERATED */
+
+/* Define if the memory buffers being written to disk should be cleared before
+   writing. */
+#define H5_CLEAR_MEMORY 1
+
+/* Define if your system can handle converting denormalized floating-point
+   values. */
+#define H5_CONVERT_DENORMAL_FLOAT 1
+
+/* Define if C++ compiler recognizes offsetof */
+/* #undef H5_CXX_HAVE_OFFSETOF */
+
+/* Define the default virtual file driver to compile */
+#define H5_DEFAULT_VFD H5FD_WINDOWS
+
+/* Define if `dev_t' is a scalar */
+/* #undef H5_DEV_T_IS_SCALAR */
+
+/* Define to dummy `main' function (if any) required to link to the Fortran
+   libraries. */
+/* #undef H5_FC_DUMMY_MAIN */
+
+/* Define if F77 and FC dummy `main' functions are identical. */
+/* #undef H5_FC_DUMMY_MAIN_EQ_F77 */
+
+/* Define to a macro mangling the given C identifier (in lower and upper
+   case), which must not contain underscores, for linking with Fortran. */
+#define H5_FC_FUNC(name,NAME) name ## _
+
+/* As FC_FUNC, but for C identifiers containing underscores. */
+#define H5_FC_FUNC_(name,NAME) name ## _
+
+/* Define if your system can handle overflow converting floating-point to
+   integer values. */
+#define H5_FP_TO_INTEGER_OVERFLOW_WORKS 1
+
+/* Define if your system roundup accurately converting floating-point to
+   unsigned long long values. */
+#define H5_FP_TO_ULLONG_ACCURATE 1
+
+/* Define if your system has right maximum convert floating-point to unsigned
+   long long values. */
+/* #undef H5_FP_TO_ULLONG_RIGHT_MAXIMUM */
+
+/* Define if gettimeofday() populates the tz pointer passed in */
+/* #undef H5_GETTIMEOFDAY_GIVES_TZ */
+
+/* Define to 1 if you have the `alarm' function. */
+/* #undef H5_HAVE_ALARM */
+
+/* Define if the __attribute__(()) extension is present */
+/* #undef H5_HAVE_ATTRIBUTE */
+
+/* Define to 1 if you have the `BSDgettimeofday' function. */
+/* #undef H5_HAVE_BSDGETTIMEOFDAY */
+
+/* Define if the compiler understands C99 designated initialization of structs
+   and unions */
+/* #undef H5_HAVE_C99_DESIGNATED_INITIALIZER */
+
+/* Define if the compiler understands the __func__ keyword */
+/* #undef H5_HAVE_C99_FUNC */
+
+/* Define if the function stack tracing code is to be compiled in */
+/* #undef H5_HAVE_CODESTACK */
+
+/* Define to 1 if you have the declaration of `tzname', and to 0 if you don't.
+   */
+#define H5_HAVE_DECL_TZNAME 1
+
+/* Define to 1 if you have the `difftime' function. */
+#define H5_HAVE_DIFFTIME 1
+
+/* Define if the direct I/O virtual file driver should be compiled */
+/* #undef H5_HAVE_DIRECT */
+
+/* Define to 1 if you have the <dlfcn.h> header file. */
+/* #undef H5_HAVE_DLFCN_H */
+
+/* Define to 1 if you have the <dmalloc.h> header file. */
+/* #undef H5_HAVE_DMALLOC_H */
+
+/* Define if library information should be embedded in the executables */
+/* #undef H5_HAVE_EMBEDDED_LIBINFO */
+
+/* Define to 1 if you have the <features.h> header file. */
+/* #undef H5_HAVE_FEATURES_H */
+
+/* Define if support for deflate (zlib) filter is enabled */
+/* #undef H5_HAVE_FILTER_DEFLATE */
+
+/* Define if support for Fletcher32 checksum is enabled */
+#define H5_HAVE_FILTER_FLETCHER32 1
+
+/* Define if support for nbit filter is enabled */
+#define H5_HAVE_FILTER_NBIT 1
+
+/* Define if support for scaleoffset filter is enabled */
+#define H5_HAVE_FILTER_SCALEOFFSET 1
+
+/* Define if support for shuffle filter is enabled */
+#define H5_HAVE_FILTER_SHUFFLE 1
+
+/* Define if support for szip filter is enabled */
+/* #undef H5_HAVE_FILTER_SZIP */
+
+/* Define to 1 if you have the `fork' function. */
+/* #undef H5_HAVE_FORK */
+
+/* Define to 1 if you have the `frexpf' function. */
+/* #undef H5_HAVE_FREXPF */
+
+/* Define to 1 if you have the `frexpl' function. */
+/* #undef H5_HAVE_FREXPL */
+
+/* Define to 1 if you have the `fseek64' function. */
+/* #undef H5_HAVE_FSEEK64 */
+
+/* Define to 1 if you have the `fseeko' function. */
+/* #undef H5_HAVE_FSEEKO */
+
+/* Define to 1 if you have the `fstat64' function. */
+/* #undef H5_HAVE_FSTAT64 */
+
+/* Define to 1 if you have the `ftello' function. */
+/* #undef H5_HAVE_FTELLO */
+
+/* Define to 1 if you have the `ftruncate64' function. */
+/* #undef H5_HAVE_FTRUNCATE64 */
+
+/* Define if the compiler understands the __FUNCTION__ keyword */
+#define H5_HAVE_FUNCTION 1
+
+/* Define to 1 if you have the `GetConsoleScreenBufferInfo' function. */
+/* #undef H5_HAVE_GETCONSOLESCREENBUFFERINFO */
+
+/* Define to 1 if you have the `gethostname' function. */
+#define H5_HAVE_GETHOSTNAME 1
+
+/* Define to 1 if you have the `getpwuid' function. */
+/* #undef H5_HAVE_GETPWUID */
+
+/* Define to 1 if you have the `getrusage' function. */
+/* #undef H5_HAVE_GETRUSAGE */
+
+/* Define to 1 if you have the `gettextinfo' function. */
+/* #undef H5_HAVE_GETTEXTINFO */
+
+/* Define to 1 if you have the `gettimeofday' function. */
+/* #undef H5_HAVE_GETTIMEOFDAY */
+
+/* Define to 1 if you have the `gettimeofday' function declared in time.h . */
+/* #undef H5_HAVE_TIME_GETTIMEOFDAY */
+
+/* Define to 1 if you have the `gettimeofday' function declared in time.h . */
+/* #undef H5_HAVE_SYS_TIME_GETTIMEOFDAY */
+
+/* Define to 1 if you have the `get_fpc_csr' function. */
+/* #undef H5_HAVE_GET_FPC_CSR */
+
+/* Define if we have GPFS support */
+/* #undef H5_HAVE_GPFS */
+
+/* Define to 1 if you have the <gpfs.h> header file. */
+/* #undef H5_HAVE_GPFS_H */
+
+/* Define if h5dump packed bits feature is enabled */
+#define H5_HAVE_H5DUMP_PACKED_BITS 1
+
+/* Define if library will contain instrumentation to detect correct
+   optimization operation */
+/* #undef H5_HAVE_INSTRUMENTED_LIBRARY */
+
+/* Define to 1 if you have the <inttypes.h> header file. */
+/* #undef H5_HAVE_INTTYPES_H */
+
+/* Define to 1 if you have the `ioctl' function. */
+/* #undef H5_HAVE_IOCTL */
+
+/* Define to 1 if you have the <io.h> header file. */
+#define H5_HAVE_IO_H 1
+
+/* Define to 1 if you have the `dmalloc' library (-ldmalloc). */
+/* #undef H5_HAVE_LIBDMALLOC */
+
+/* Define to 1 if you have the `lmpe' library (-llmpe). */
+/* #undef H5_HAVE_LIBLMPE */
+
+/* Define to 1 if you have the `m' library (-lm). */
+#define H5_HAVE_LIBM 1
+
+/* Define to 1 if you have the `mpe' library (-lmpe). */
+/* #undef H5_HAVE_LIBMPE */
+
+/* Define to 1 if you have the `mpi' library (-lmpi). */
+/* #undef H5_HAVE_LIBMPI */
+
+/* Define to 1 if you have the `mpich' library (-lmpich). */
+/* #undef H5_HAVE_LIBMPICH */
+
+/* Define to 1 if you have the `mpio' library (-lmpio). */
+/* #undef H5_HAVE_LIBMPIO */
+
+/* Define to 1 if you have the `nsl' library (-lnsl). */
+/* #undef H5_HAVE_LIBNSL */
+
+/* Define to 1 if you have the `pthread' library (-lpthread). */
+/* #undef H5_HAVE_LIBPTHREAD */
+
+/* Define to 1 if you have the `socket' library (-lsocket). */
+/* #undef H5_HAVE_LIBSOCKET */
+
+/* Define to 1 if you have the `sz' library (-lsz). */
+/* #undef H5_HAVE_LIBSZ */
+
+/* Define to 1 if you have the `z' library (-lz). */
+/* #undef H5_HAVE_LIBZ */
+
+/* Define to 1 if you have the `longjmp' function. */
+#define H5_HAVE_LONGJMP 1
+
+/* Define to 1 if you have the `lseek64' function. */
+/* #undef H5_HAVE_LSEEK64 */
+
+/* Define to 1 if you have the `lstat' function. */
+/* #undef H5_HAVE_LSTAT */
+
+/* Define to 1 if you have the <memory.h> header file. */
+#define H5_HAVE_MEMORY_H 1
+
+/* Define if we have MPE support */
+/* #undef H5_HAVE_MPE */
+
+/* Define to 1 if you have the <mpe.h> header file. */
+/* #undef H5_HAVE_MPE_H */
+
+/* Define if MPI_File_get_size works correctly */
+/* #undef H5_HAVE_MPI_GET_SIZE */
+
+/* Define if `MPI_Comm_c2f' and `MPI_Comm_f2c' exists */
+/* #undef H5_HAVE_MPI_MULTI_LANG_Comm */
+
+/* Define if `MPI_Info_c2f' and `MPI_Info_f2c' exists */
+/* #undef H5_HAVE_MPI_MULTI_LANG_Info */
+
+/* Define if we have parallel support */
+/* #undef H5_HAVE_PARALLEL */
+
+/* Define to 1 if you have the <pthread.h> header file. */
+/* #undef H5_HAVE_PTHREAD_H */
+
+/* Define to 1 if you have the `random' function. */
+/* #undef H5_HAVE_RANDOM */
+
+/* Define to 1 if you have the `rand_r' function. */
+/* #undef H5_HAVE_RAND_R */
+
+/* Define to 1 if you have the <setjmp.h> header file. */
+#define H5_HAVE_SETJMP_H 1
+
+/* Define to 1 if you have the `setsysinfo' function. */
+/* #undef H5_HAVE_SETSYSINFO */
+
+/* Define to 1 if you have the `sigaction' function. */
+/* #undef H5_HAVE_SIGACTION */
+
+/* Define to 1 if you have the `siglongjmp' function. */
+/* #undef H5_HAVE_SIGLONGJMP */
+
+/* Define to 1 if you have the `signal' function. */
+#define H5_HAVE_SIGNAL 1
+
+/* Define to 1 if you have the `snprintf' function. */
+/* #undef H5_HAVE_SNPRINTF */
+
+/* Define to 1 if you have the `srandom' function. */
+/* #undef H5_HAVE_SRANDOM */
+
+/* Define to 1 if you have the `stat64' function. */
+/* #undef H5_HAVE_STAT64 */
+
+/* Define if `struct stat' has the `st_blocks' field */
+/* #undef H5_HAVE_STAT_ST_BLOCKS */
+
+/* Define to 1 if you have the <stddef.h> header file. */
+#define H5_HAVE_STDDEF_H 1
+
+/* Define to 1 if you have the <stdint.h> header file. */
+/* #undef H5_HAVE_STDINT_H */
+
+/* Define to 1 if you have the <stdlib.h> header file. */
+#define H5_HAVE_STDLIB_H 1
+
+/* Define to 1 if you have the `strdup' function. */
+#define H5_HAVE_STRDUP 1
+
+/* Define to 1 if you have the <strings.h> header file. */
+/* #undef H5_HAVE_STRINGS_H */
+
+/* Define to 1 if you have the <string.h> header file. */
+#define H5_HAVE_STRING_H 1
+
+/* Define if `struct text_info' is defined */
+/* #undef H5_HAVE_STRUCT_TEXT_INFO */
+
+/* Define if `struct timezone' is defined */
+/* #undef H5_HAVE_STRUCT_TIMEZONE */
+
+/* Define to 1 if `struct tm' is a member of `tm_zone'. */
+/* #undef H5_HAVE_STRUCT_TM_TM_ZONE */
+
+/* Define if `struct videoconfig' is defined */
+/* #undef H5_HAVE_STRUCT_VIDEOCONFIG */
+
+/* Define to 1 if you have the `symlink' function. */
+/* #undef H5_HAVE_SYMLINK */
+
+/* Define to 1 if you have the `system' function. */
+#define H5_HAVE_SYSTEM 1
+
+/* Define to 1 if you have the <sys/fpu.h> header file. */
+/* #undef H5_HAVE_SYS_FPU_H */
+
+/* Define to 1 if you have the <sys/ioctl.h> header file. */
+/* #undef H5_HAVE_SYS_IOCTL_H */
+
+/* Define to 1 if you have the <sys/proc.h> header file. */
+/* #undef H5_HAVE_SYS_PROC_H */
+
+/* Define to 1 if you have the <sys/resource.h> header file. */
+/* #undef H5_HAVE_SYS_RESOURCE_H */
+
+/* Define to 1 if you have the <sys/socket.h> header file. */
+/* #undef H5_HAVE_SYS_SOCKET_H */
+
+/* Define to 1 if you have the <sys/stat.h> header file. */
+#define H5_HAVE_SYS_STAT_H 1
+
+/* Define to 1 if you have the <sys/sysinfo.h> header file. */
+/* #undef H5_HAVE_SYS_SYSINFO_H */
+
+/* Define to 1 if you have the <sys/timeb.h> header file. */
+#define H5_HAVE_SYS_TIMEB_H 1
+
+/* Define to 1 if you have the <time.h> header file. */
+#define H5_HAVE_TIME_H 1
+
+/* Define to 1 if you have the <sys/time.h> header file. */
+/* #undef H5_HAVE_SYS_TIME_H */
+
+/* Define to 1 if you have the <sys/types.h> header file. */
+#define H5_HAVE_SYS_TYPES_H 1
+
+/* Define to 1 if you have the <szlib.h> header file. */
+/* #undef H5_HAVE_SZLIB_H */
+
+/* Define if we have thread safe support */
+/* #undef H5_HAVE_THREADSAFE */
+
+/* Define if `timezone' is a global variable */
+#define H5_HAVE_TIMEZONE 1
+
+/* Define if the ioctl TIOCGETD is defined */
+/* #undef H5_HAVE_TIOCGETD */
+
+/* Define if the ioctl TIOGWINSZ is defined */
+/* #undef H5_HAVE_TIOCGWINSZ */
+
+/* Define to 1 if you have the `tmpfile' function. */
+#define H5_HAVE_TMPFILE 1
+
+/* Define if `tm_gmtoff' is a member of `struct tm' */
+/* #undef H5_HAVE_TM_GMTOFF */
+
+/* Define to 1 if your `struct tm' has `tm_zone'. Deprecated, use
+   `HAVE_STRUCT_TM_TM_ZONE' instead. */
+/* #undef H5_HAVE_TM_ZONE */
+
+/* Define to 1 if you don't have `tm_zone' but do have the external array
+   `tzname'. */
+/* #undef H5_HAVE_TZNAME */
+
+/* Define to 1 if you have the <unistd.h> header file. */
+/* #undef H5_HAVE_UNISTD_H */
+
+/* Define to 1 if you have the `vasprintf' function. */
+/* #undef H5_HAVE_VASPRINTF */
+
+/* Define to 1 if you have the `vsnprintf' function. */
+#define H5_HAVE_VSNPRINTF 1
+
+/* Define to 1 if you have the `waitpid' function. */
+/* #undef H5_HAVE_WAITPID */
+
+/* Define if your system has window style path name. */
+#define H5_HAVE_WINDOW_PATH 1
+
+/* Define to 1 if you have the <winsock.h> header file. */
+#define H5_HAVE_WINSOCK_H 1
+
+/* Define to 1 if you have the <zlib.h> header file. */
+/* #undef H5_HAVE_ZLIB_H */
+
+/* Define to 1 if you have the `_getvideoconfig' function. */
+/* #undef H5_HAVE__GETVIDEOCONFIG */
+
+/* Define to 1 if you have the `_scrsize' function. */
+/* #undef H5_HAVE__SCRSIZE */
+
+/* Define if `__tm_gmtoff' is a member of `struct tm' */
+/* #undef H5_HAVE___TM_GMTOFF */
+
+/* Define if your system can't handle converting floating-point values to long
+   long. */
+/* #undef H5_HW_FP_TO_LLONG_NOT_WORKS */
+
+/* Define if HDF5's high-level library headers should be included in hdf5.h */
+/* #undef H5_INCLUDE_HL */
+
+/* Define if your system can accurately convert from integers to long double
+   values. */
+#define H5_INTEGER_TO_LDOUBLE_ACCURATE 1
+
+/* Define if your system can convert long double to integers accurately. */
+#define H5_LDOUBLE_TO_INTEGER_ACCURATE 1
+
+/* Define if your system can convert from long double to integer values. */
+#define H5_LDOUBLE_TO_INTEGER_WORKS 1
+
+/* Define if your system can convert long double to (unsigned) long long
+   values correctly. */
+#define H5_LDOUBLE_TO_LLONG_ACCURATE 1
+
+/* Define if your system can convert long double to unsigned int values
+   correctly. */
+#define H5_LDOUBLE_TO_UINT_ACCURATE 1
+
+/* Define if your system can compile long long to floating-point casts. */
+#define H5_LLONG_TO_FP_CAST_WORKS 1
+
+/* Define if your system can convert (unsigned) long long to long double
+   values correctly. */
+#define H5_LLONG_TO_LDOUBLE_CORRECT 1
+
+/* Define to the sub-directory in which libtool stores uninstalled libraries.
+   */
+/* #undef H5_LT_OBJDIR */
+
+/* Define if the metadata trace file code is to be compiled in */
+/* #undef H5_METADATA_TRACE_FILE */
+
+/* Define if your system can handle complicated MPI derived datatype
+   correctly. */
+/* #undef H5_MPI_COMPLEX_DERIVED_DATATYPE_WORKS */
+
+/* Define if your system's `MPI_File_set_size' function works for files over
+   2GB. */
+/* #undef H5_MPI_FILE_SET_SIZE_BIG */
+
+/* Define if your system can handle special collective IO properly. */
+/* #undef H5_MPI_SPECIAL_COLLECTIVE_IO_WORKS */
+
+/* Define if we can violate pointer alignment restrictions */
+#define H5_NO_ALIGNMENT_RESTRICTIONS 1
+
+/* Define if deprecated public API symbols are disabled */
+/* #undef H5_NO_DEPRECATED_SYMBOLS */
+
+/* Define if shared writing must be disabled (CodeWarrior only) */
+/* #undef H5_NO_SHARED_WRITING */
+
+/* Name of package */
+#define H5_PACKAGE "hdf5"
+
+/* Define to the address where bug reports for this package should be sent. */
+#define H5_PACKAGE_BUGREPORT "help@hdfgroup.org"
+
+/* Define to the full name of this package. */
+#define H5_PACKAGE_NAME "HDF5"
+
+/* Define to the full name and version of this package. */
+#define H5_PACKAGE_STRING "HDF5 1.8.5"
+
+/* Define to the one symbol short name of this package. */
+#define H5_PACKAGE_TARNAME "hdf5"
+
+/* Define to the home page for this package. */
+#define H5_PACKAGE_URL "htt://www.hdfgroup.org"
+
+/* Define to the version of this package. */
+#define H5_PACKAGE_VERSION "1.8.5"
+
+/* Width for printf() for type `long long' or `__int64', use `ll' */
+#define H5_PRINTF_LL_WIDTH "ll"
+
+/* The size of `char', as computed by sizeof. */
+#define H5_SIZEOF_CHAR 1
+
+/* The size of `double', as computed by sizeof. */
+#define H5_SIZEOF_DOUBLE 8
+
+/* The size of `float', as computed by sizeof. */
+#define H5_SIZEOF_FLOAT 4
+
+/* The size of `int', as computed by sizeof. */
+#define H5_SIZEOF_INT 4
+
+/* The size of `int16_t', as computed by sizeof. */
+#define H5_SIZEOF_INT16_T 0
+
+/* The size of `int32_t', as computed by sizeof. */
+#define H5_SIZEOF_INT32_T 0
+
+/* The size of `int64_t', as computed by sizeof. */
+#define H5_SIZEOF_INT64_T 0
+
+/* The size of `int8_t', as computed by sizeof. */
+#define H5_SIZEOF_INT8_T 0
+
+/* The size of `int_fast16_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_FAST16_T 0
+
+/* The size of `int_fast32_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_FAST32_T 0
+
+/* The size of `int_fast64_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_FAST64_T 0
+
+/* The size of `int_fast8_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_FAST8_T 0
+
+/* The size of `int_least16_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_LEAST16_T 0
+
+/* The size of `int_least32_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_LEAST32_T 0
+
+/* The size of `int_least64_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_LEAST64_T 0
+
+/* The size of `int_least8_t', as computed by sizeof. */
+#define H5_SIZEOF_INT_LEAST8_T 0
+
+#if !defined(__APPLE__)
+/* The size of `size_t', as computed by sizeof. */
+#define H5_SIZEOF_SIZE_T 8
+
+/* The size of `ssize_t', as computed by sizeof. */
+#define H5_SIZEOF_SSIZE_T 0
+
+/* The size of `long', as computed by sizeof. */
+#define H5_SIZEOF_LONG 4
+
+#else
+   # if defined(__LP64__) && __LP64__
+  #define H5_SIZEOF_LONG 8
+  #define H5_SIZEOF_SIZE_T 8
+  #define H5_SIZEOF_SSIZE_T 8
+  # else
+  #define H5_SIZEOF_LONG 4
+  #define H5_SIZEOF_SIZE_T 4
+  #define H5_SIZEOF_SSIZE_T 4
+  # endif
+
+#endif
+
+/* The size of `long double', as computed by sizeof. */
+#define H5_SIZEOF_LONG_DOUBLE 8
+
+/* Define size of long long and/or __int64 bit integer type only if the type
+   exists.  */
+#if !defined(__APPLE__)
+ #define H5_SIZEOF_LONG_LONG 8
+#else
+ #define H5_SIZEOF_LONG_LONG 8
+#endif
+
+/* The size of `off64_t', as computed by sizeof. */
+#define H5_SIZEOF_OFF64_T 0
+
+/* The size of `off_t', as computed by sizeof. */
+#define H5_SIZEOF_OFF_T 4
+
+/* The size of `short', as computed by sizeof. */
+#define H5_SIZEOF_SHORT 2
+
+/* The size of `uint16_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT16_T 0
+
+/* The size of `uint32_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT32_T 0
+
+/* The size of `uint64_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT64_T 0
+
+/* The size of `uint8_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT8_T 0
+
+/* The size of `uint_fast16_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_FAST16_T 0
+
+/* The size of `uint_fast32_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_FAST32_T 0
+
+/* The size of `uint_fast64_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_FAST64_T 0
+
+/* The size of `uint_fast8_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_FAST8_T 0
+
+/* The size of `uint_least16_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_LEAST16_T 0
+
+/* The size of `uint_least32_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_LEAST32_T 0
+
+/* The size of `uint_least64_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_LEAST64_T 0
+
+/* The size of `uint_least8_t', as computed by sizeof. */
+#define H5_SIZEOF_UINT_LEAST8_T 0
+
+/* The size of `unsigned', as computed by sizeof. */
+#define H5_SIZEOF_UNSIGNED 4
+
+/* The size of `__int64', as computed by sizeof. */
+#define H5_SIZEOF___INT64 8
+
+/* Define to 1 if you have the ANSI C header files. */
+#define H5_STDC_HEADERS 1
+
+/* Define if strict file format checks are enabled */
+/* #undef H5_STRICT_FORMAT_CHECKS */
+
+/* Define if your system supports pthread_attr_setscope(&attribute,
+   PTHREAD_SCOPE_SYSTEM) call. */
+/* #undef H5_SYSTEM_SCOPE_THREADS */
+
+/* Define to 1 if you can safely include both <sys/time.h> and <time.h>. */
+/* #undef H5_TIME_WITH_SYS_TIME */
+
+/* Define to 1 if your <sys/time.h> declares `struct tm'. */
+/* #undef H5_TM_IN_SYS_TIME */
+
+/* Define if your system can compile unsigned long long to floating-point
+   casts. */
+#define H5_ULLONG_TO_FP_CAST_WORKS 1
+
+/* Define if your system can convert unsigned long long to long double with
+   correct precision. */
+/* #undef H5_ULLONG_TO_LDOUBLE_PRECISION */
+
+/* Define if your system accurately converting unsigned long to float values.
+   */
+#define H5_ULONG_TO_FLOAT_ACCURATE 1
+
+/* Define if your system can accurately convert unsigned (long) long values to
+   floating-point values. */
+/* #undef H5_ULONG_TO_FP_BOTTOM_BIT_ACCURATE */
+
+/* Define using v1.6 public API symbols by default */
+/* #undef H5_USE_16_API_DEFAULT */
+
+/* Define if a memory checking tool will be used on the library, to cause
+   library to be very picky about memory operations and also disable the
+   internal free list manager code. */
+/* #undef H5_USING_MEMCHECKER */
+
+/* Version number of package */
+#define VERSION "1.8.5"
+
+/* Define if vsnprintf() returns the correct value for formatted strings that
+   don't fit into size allowed */
+/* #undef H5_VSNPRINTF_WORKS */
+
+/* Data accuracy is prefered to speed during data conversions */
+#define H5_WANT_DATA_ACCURACY 1
+
+/* Check exception handling functions during data conversions */
+#define H5_WANT_DCONV_EXCEPTION 1
+
+/* Define WORDS_BIGENDIAN to 1 if your processor stores words with the most
+   significant byte first (like Motorola and SPARC, unlike Intel). */
+#if !defined(__APPLE__)
+# ifndef WORDS_BIGENDIAN
+#  undef WORDS_BIGENDIAN
+# endif
+#else
+# if defined __BIG_ENDIAN__
+#  define WORDS_BIGENDIAN 1
+# endif
+#endif
+
+/* Define to empty if `const' does not conform to ANSI C. */
+/* #undef H5_const */
+
+/* Define to `__inline__' or `__inline' if that's what the C compiler
+   calls it, or to nothing if 'inline' is not supported under any name.  */
+#ifndef __cplusplus
+#define H5_inline __inline
+#endif
+
+/* Define to `long int' if <sys/types.h> does not define. */
+/* #undef H5_off_t */
+
+/* Define to `unsigned long' if <sys/types.h> does not define. */
+/* #undef H5_size_t */
+
+/* Define to `long' if <sys/types.h> does not define. */
+/* #undef H5_ssize_t */
+
+#if defined(__cplusplus) && defined(inline)
+#undef inline
+#endif
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/IMD_FileFormat.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/IMD_FileFormat.h
index b3787d176a3c4589d6aa890439975b80de2de0ef..5b91a37bc7a6a716e6bd0eddd43540f9b2da54a3 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/IMD_FileFormat.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/IMD_FileFormat.h
@@ -1,95 +1,95 @@
-#ifndef H_FILE_FORMAT
-#define H_FILE_FORMAT
-
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidKernel/System.h"
-#include <vector>
-#include "MantidKernel/Logger.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-
-/** interface to various MDData file formats (and may be other parts of MD-workspace file in a future);
-
-    @author Alex Buts, RAL ISIS
-    @date 28/09/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-namespace Mantid{
-    namespace MDDataObjects{
-// forward declaration of classes, contributing into MD workspace which should be read from file;
-class MDImage;
-class MDPointDescription;
-class MDDataPoints;
-//
-
-/** class describes the interface to file operations, which are supported by generic MD dataset
-*/
-class DLLExport IMD_FileFormat
-{
-public:
-    IMD_FileFormat(const char *file_name);
-	/// is the file with underlying MDWorkspace is open;
-    virtual bool is_open(void)const{return false;}
-
-	//****> MD baisis object (will be expanded?)
-	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
-	///TODO: should be probably MDGeometryBasisDescription, which later used to build the geometry basis from the description;
-	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &)=0;
-
-	//****> MD image object
-	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
-	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &)=0;
-    /// reads the data part of the MD Image 
-    virtual void read_MDImg_data(MDImage &)=0; 
-
-	//****> datapoints object
-	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
-	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
-	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const=0;
-    /// tries to read MDDataPoint (pixels) part of the dataset into memory. Usually impossible for TOF instruments but may be the best method for 3-pl axis
-    virtual bool read_pix(MDDataPoints &)=0; 
-    /// read part of the dataset, specified by the vector of MDImage cell numbers. 
-    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)=0; 
-    /// obtain the number of data points (pixels) stored in the dataset;
-    virtual uint64_t getNPix(void)=0;
-
-//
-    virtual void write_mdd(const MDImage &)=0;
-//  virtual void write_pix(const MDDataPoints &)=0;
-//  virtual void write_pix_subset(const std::vector<size_t> &cell_indexes, const str::vector<char> &pix_buf)=0;
-    virtual ~IMD_FileFormat(void){};
-
-     /// Get the file name associated with this reader.
-	virtual std::string getFileName() const{return File_name;}
-protected: 
-   /// name of a file which keeps mdd dataset;
-    std::string File_name;
-
-     /// logger -> to provide logging, for MD dataset file operations
-    static Mantid::Kernel::Logger& f_log;
-
-};
-
-} // MDDataObjects
-} // Mantid;
-#endif
+#ifndef H_FILE_FORMAT
+#define H_FILE_FORMAT
+
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidKernel/System.h"
+#include <vector>
+#include "MantidKernel/Logger.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+
+/** interface to various MDData file formats (and may be other parts of MD-workspace file in a future);
+
+    @author Alex Buts, RAL ISIS
+    @date 28/09/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+namespace Mantid{
+    namespace MDDataObjects{
+// forward declaration of classes, contributing into MD workspace which should be read from file;
+class MDImage;
+class MDPointDescription;
+class MDDataPoints;
+//
+
+/** class describes the interface to file operations, which are supported by generic MD dataset
+*/
+class DLLExport IMD_FileFormat
+{
+public:
+    IMD_FileFormat(const char *file_name);
+	/// is the file with underlying MDWorkspace is open;
+    virtual bool is_open(void)const{return false;}
+
+	//****> MD baisis object (will be expanded?)
+	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
+	///TODO: should be probably MDGeometryBasisDescription, which later used to build the geometry basis from the description;
+	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &)=0;
+
+	//****> MD image object
+	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
+	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &)=0;
+    /// reads the data part of the MD Image 
+    virtual void read_MDImg_data(MDImage &)=0; 
+
+	//****> datapoints object
+	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
+	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
+	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const=0;
+    /// tries to read MDDataPoint (pixels) part of the dataset into memory. Usually impossible for TOF instruments but may be the best method for 3-pl axis
+    virtual bool read_pix(MDDataPoints &)=0; 
+    /// read part of the dataset, specified by the vector of MDImage cell numbers. 
+    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)=0; 
+    /// obtain the number of data points (pixels) stored in the dataset;
+    virtual uint64_t getNPix(void)=0;
+
+//
+    virtual void write_mdd(const MDImage &)=0;
+//  virtual void write_pix(const MDDataPoints &)=0;
+//  virtual void write_pix_subset(const std::vector<size_t> &cell_indexes, const str::vector<char> &pix_buf)=0;
+    virtual ~IMD_FileFormat(void){};
+
+     /// Get the file name associated with this reader.
+	virtual std::string getFileName() const{return File_name;}
+protected: 
+   /// name of a file which keeps mdd dataset;
+    std::string File_name;
+
+     /// logger -> to provide logging, for MD dataset file operations
+    static Mantid::Kernel::Logger& f_log;
+
+};
+
+} // MDDataObjects
+} // Mantid;
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDPoints_MemManager.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDPoints_MemManager.h
index 6882b74803ef986516951781c9d93cfae295749e..9a7d1dd4de5c1b66dd3f86056fc6e90b781fa13f 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDPoints_MemManager.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDPoints_MemManager.h
@@ -1,131 +1,131 @@
-#ifndef MDD_POINTS_MEM_MANAGER_H
-#define MDD_POINTS_MEM_MANAGER_H
-
-#include "MDDataObjects/MDDataPoint.h"
-#include "MDDataObjects/MDImageDatatypes.h"
-#include "MDDataObjects/MD_FileFormatFactory.h"
-#include "MantidAPI/MemoryManager.h"
-#include <boost/shared_ptr.hpp>
-
-/** Class to support memory managment operations performed over arrays of MDDataPoints, which are represented as an arrays of bytes here
-    The array of MDDataPoints is arranged in memory according to MDImage, namely:
-	Every image cell has correspondent block of pixels; The pixels for cell N are located after all pixels contributed to cells with i<N and the size of the block
-	equal to the value necessary to place MD_image_point[N].npix pixels which contribute to the cell N;
- 
-
-    @author Alex Buts, RAL ISIS
-    @date 28/01/2011
-	Inspired by Horace. 
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid
-{
-
-namespace MDDataObjects
-{
-
-//*
-/// the size of the buffer to read pixels (in pixels) while reading parts of datasets --should be optimized for performance and calculated on the basis of performance but how?
-//TODO: move it into configuration
-#define PIX_BUFFER_PREFERRED_SIZE 10000000
-//******************************************
-class DLLExport MDDPoints_MemManager
-{
-public:
-	
-//************************************************************************************************************
-	/// function returns actual number of MDDataPoints (pixels) placed in memory;
-	size_t getNPixInMemory(void)const{return n_data_points_in_memory;}
-	/// function returns number of cells in MD image used to key the MDDataPoints location
-	size_t getNControlCells(void)const{return ImgArray.data_size;}
-	/// helper fucntion to get data buffer size in pixels;
-	size_t getDataBufferSize(const std::vector<char> &data_buffer)const{return data_buffer.size()/this->pixel_size;}
-
-	/// this function used to check if user completed reading a cell in case when all pixels, contributed to cell do not fit to the read buffer;
-	bool is_readCell_completed(void)const{return (n_pix_read_earlier==0)?true:false;}
-
-	/** function adds selected pixels into the collection of the pixels, belonging to this class; Function  returns false if the pixels do not fit memory (free memory); 
-	    if the file reader/writer is not initiated, it initiates it. free_memory is expressed in bytes
-		To force the pixels dataset to be file-based, set the free_memory to 0 */
-    bool  store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
-	                   size_t free_memory,std::vector<char> & target_data_buffer);
-
-	/** function fills supplied buffer with the data describing selected pixels (pixels contributing into the cells -- number supplied) when all initial pixels data are placed in memory
-	 *  returns the index of the last processed cell  */
-    size_t get_pix_from_memory(const std::vector<char> &source_data_buffer,const std::vector<size_t> & selected_cells,size_t starting_cell,std::vector<char> &target_pix_buf,size_t &npix_placed_in_buffer);
-  /** function analyses the request for the memory, compares it with free memory and modifies actual DataBuffer accordingly, allocating necessary memory if able to do so; 
-     * If the buffer has not been allocated it allocates it;
-       if it was, it reallocates buffer if the size requested is bigger than existing. The buffer size is specified in pixels, not bytes; 
-	   Typical 4D pixel with folat signal and error values and non-compressed indexes occupies 36bytes  (9*4-byte values)  
-	   Throws if can not do the job */
-    void alloc_pix_array(std::vector<char> &DataBuffer,size_t buf_size=PIX_BUFFER_PREFERRED_SIZE);
-
-	/// constructor, which initiate references to MDImagData, which describes data keys and pixel size 
-	MDDPoints_MemManager(MD_img_data const & ImgArray,size_t nImageCells,unsigned int pix_size);
-	virtual ~MDDPoints_MemManager();
-
-	// internal functions; protected for tests;
-protected:
-  // internal functions and variables connected with functions above had wired through them.
- /// function adds set of selected pixels(datapoints) to the preallocated data buffer;
-	void add_pixels_in_memory(std::vector<char> &data_buffer,const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels);
-private:
-	/// function adds new pixels in memory into the free positions, prepared for them before (memory is prepared properly); It relies on previous state of pix_location
-	void add_new_pixels(const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
-                             std::vector<char> &target_buffer);
-	/// function moves existing data within the MD points data buffer to free space for new chunk of data points;
-     void expand_existing_data_in_place(std::vector<char> &old_buffer,size_t n_additional_pixels);
-     void expand_existing_data_in_new_place(std::vector<char> &old_buffer,std::vector<char> &new_buffer,size_t n_additional_pixels);
- /// calculate the locations of the data points blocks with relation to the image cells, assuming all this can fit to memory;
-    virtual size_t init_pix_locations_in_memory();
-//***********************************************************************************************************************************
-
-	static Kernel::Logger& g_log;
-   // should not copy construct
-	MDDPoints_MemManager(const MDDPoints_MemManager &);
-	// should not assign
-    MDDPoints_MemManager & operator = (const MDDPoints_MemManager & other);
-
-//**************************************************************************************************
-	/// number of data points loaded to memory;
-	size_t    n_data_points_in_memory;
-    /// the size of the pixel (DataPoint, event)(single point of data in reciprocal space) in bytes
-    unsigned int pixel_size; 
-	/// pointer to the MD image data, which is the source of the information about the location of data points within Image cells
-	MD_img_data const & ImgArray;
-	/// the array of size nCells (Cells are the MD image cells) which describes location of each blocks of pixels coresponding a the cell in memory;
-    std::vector<size_t> pix_location;
-
-//********* Internal variables controlling read from memory operations;
-	/// this variable describes the state of the pix_location array; The variable is true if real pixel location which corresponds to the MD image has been calculated
-	bool pix_locations_calculated;
-	/// this  variabless are necessary to process the case when only part of the pixels contributed into the particular cell fits the data buffer;
-	size_t n_pix_read_earlier,    //< this desctibes how meny pixels were read from the current cell during previous incomplete read operation;
-	       n_last_processed_cell;
-
-
-};
-
-}
-}
+#ifndef MDD_POINTS_MEM_MANAGER_H
+#define MDD_POINTS_MEM_MANAGER_H
+
+#include "MDDataObjects/MDDataPoint.h"
+#include "MDDataObjects/MDImageDatatypes.h"
+#include "MDDataObjects/MD_FileFormatFactory.h"
+#include "MantidAPI/MemoryManager.h"
+#include <boost/shared_ptr.hpp>
+
+/** Class to support memory managment operations performed over arrays of MDDataPoints, which are represented as an arrays of bytes here
+    The array of MDDataPoints is arranged in memory according to MDImage, namely:
+	Every image cell has correspondent block of pixels; The pixels for cell N are located after all pixels contributed to cells with i<N and the size of the block
+	equal to the value necessary to place MD_image_point[N].npix pixels which contribute to the cell N;
+ 
+
+    @author Alex Buts, RAL ISIS
+    @date 28/01/2011
+	Inspired by Horace. 
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid
+{
+
+namespace MDDataObjects
+{
+
+//*
+/// the size of the buffer to read pixels (in pixels) while reading parts of datasets --should be optimized for performance and calculated on the basis of performance but how?
+//TODO: move it into configuration
+#define PIX_BUFFER_PREFERRED_SIZE 10000000
+//******************************************
+class DLLExport MDDPoints_MemManager
+{
+public:
+	
+//************************************************************************************************************
+	/// function returns actual number of MDDataPoints (pixels) placed in memory;
+	size_t getNPixInMemory(void)const{return n_data_points_in_memory;}
+	/// function returns number of cells in MD image used to key the MDDataPoints location
+	size_t getNControlCells(void)const{return ImgArray.data_size;}
+	/// helper fucntion to get data buffer size in pixels;
+	size_t getDataBufferSize(const std::vector<char> &data_buffer)const{return data_buffer.size()/this->pixel_size;}
+
+	/// this function used to check if user completed reading a cell in case when all pixels, contributed to cell do not fit to the read buffer;
+	bool is_readCell_completed(void)const{return (n_pix_read_earlier==0)?true:false;}
+
+	/** function adds selected pixels into the collection of the pixels, belonging to this class; Function  returns false if the pixels do not fit memory (free memory); 
+	    if the file reader/writer is not initiated, it initiates it. free_memory is expressed in bytes
+		To force the pixels dataset to be file-based, set the free_memory to 0 */
+    bool  store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
+	                   size_t free_memory,std::vector<char> & target_data_buffer);
+
+	/** function fills supplied buffer with the data describing selected pixels (pixels contributing into the cells -- number supplied) when all initial pixels data are placed in memory
+	 *  returns the index of the last processed cell  */
+    size_t get_pix_from_memory(const std::vector<char> &source_data_buffer,const std::vector<size_t> & selected_cells,size_t starting_cell,std::vector<char> &target_pix_buf,size_t &npix_placed_in_buffer);
+  /** function analyses the request for the memory, compares it with free memory and modifies actual DataBuffer accordingly, allocating necessary memory if able to do so; 
+     * If the buffer has not been allocated it allocates it;
+       if it was, it reallocates buffer if the size requested is bigger than existing. The buffer size is specified in pixels, not bytes; 
+	   Typical 4D pixel with folat signal and error values and non-compressed indexes occupies 36bytes  (9*4-byte values)  
+	   Throws if can not do the job */
+    void alloc_pix_array(std::vector<char> &DataBuffer,size_t buf_size=PIX_BUFFER_PREFERRED_SIZE);
+
+	/// constructor, which initiate references to MDImagData, which describes data keys and pixel size 
+	MDDPoints_MemManager(MD_img_data const & ImgArray,size_t nImageCells,unsigned int pix_size);
+	virtual ~MDDPoints_MemManager();
+
+	// internal functions; protected for tests;
+protected:
+  // internal functions and variables connected with functions above had wired through them.
+ /// function adds set of selected pixels(datapoints) to the preallocated data buffer;
+	void add_pixels_in_memory(std::vector<char> &data_buffer,const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels);
+private:
+	/// function adds new pixels in memory into the free positions, prepared for them before (memory is prepared properly); It relies on previous state of pix_location
+	void add_new_pixels(const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
+                             std::vector<char> &target_buffer);
+	/// function moves existing data within the MD points data buffer to free space for new chunk of data points;
+     void expand_existing_data_in_place(std::vector<char> &old_buffer,size_t n_additional_pixels);
+     void expand_existing_data_in_new_place(std::vector<char> &old_buffer,std::vector<char> &new_buffer,size_t n_additional_pixels);
+ /// calculate the locations of the data points blocks with relation to the image cells, assuming all this can fit to memory;
+    virtual size_t init_pix_locations_in_memory();
+//***********************************************************************************************************************************
+
+	static Kernel::Logger& g_log;
+   // should not copy construct
+	MDDPoints_MemManager(const MDDPoints_MemManager &);
+	// should not assign
+    MDDPoints_MemManager & operator = (const MDDPoints_MemManager & other);
+
+//**************************************************************************************************
+	/// number of data points loaded to memory;
+	size_t    n_data_points_in_memory;
+    /// the size of the pixel (DataPoint, event)(single point of data in reciprocal space) in bytes
+    unsigned int pixel_size; 
+	/// pointer to the MD image data, which is the source of the information about the location of data points within Image cells
+	MD_img_data const & ImgArray;
+	/// the array of size nCells (Cells are the MD image cells) which describes location of each blocks of pixels coresponding a the cell in memory;
+    std::vector<size_t> pix_location;
+
+//********* Internal variables controlling read from memory operations;
+	/// this variable describes the state of the pix_location array; The variable is true if real pixel location which corresponds to the MD image has been calculated
+	bool pix_locations_calculated;
+	/// this  variabless are necessary to process the case when only part of the pixels contributed into the particular cell fits the data buffer;
+	size_t n_pix_read_earlier,    //< this desctibes how meny pixels were read from the current cell during previous incomplete read operation;
+	       n_last_processed_cell;
+
+
+};
+
+}
+}
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoint.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoint.h
index 7f282e3cf59da83a8755cdd9e340950ced567c7f..0d123a12994a6ff307b069e017f4123d03c5d2de 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoint.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoint.h
@@ -1,391 +1,391 @@
-#ifndef MD_DATAPOINT_H
-#define MD_DATAPOINT_H
-
-#include "MDDataObjects/MDDataPointDescription.h"
-
-/**  path-through classes which provide transformation of the data from pixel buffer format to the data fields format; 
-*   
-*
-* Templated for efficiency as critical
-*
-* It is hard-coded in the class that the run indexes and the detector indexes are present in the data and are located 
-* after two double sized image fields namely signal and error.  This can be modified in more regular fashion;
-*
-* CODED FOR LITTLE ENDIAN -> big endian is not checked and not supported at the moment
-*
-
-    @author Alex Buts, RAL ISIS
-    @date 17/10/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-    
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-namespace Mantid
-{
-namespace MDDataObjects
-{
-//********************************************************************************************************************************************************************
-//********************************************************************************************************************************************************************
-/** the class to work with the pixels buffer itself. Class works the MDpoints having equal index fields*/
- template<class T=float, class I=uint16_t,class S=double>
- class MDDataPointEqual: public MDPointDescription
- {
-  
- public:
-  //------------------------------------------------------------------------------------------------
-  /** The constructor which defines the size of the dataset, number of fields in
-   *  this dataset and data location in memory.
-   *
-   *  This constructor should be used mainly for debugging and unit tests as relies on default column names only,
-   */
-   MDDataPointEqual(char * buf, unsigned int nDims=4,unsigned int nData=2,unsigned int nIDfields=3):
-   pDataBuffer(buf),
-   MDPointDescription()
-   {
-     bool old_column_names(true);
-     if(this->PixDescriptor.NumDimensions != nDims||this->PixDescriptor.NumDataFields!=nData||this->PixDescriptor.NumDimIDs!=nIDfields){
-        old_column_names=false;
-     }
-     this->PixDescriptor.NumDimensions = nDims;
-     this->PixDescriptor.NumDataFields = nData;
-     this->PixDescriptor.NumDimIDs     = nIDfields;
-     if(!old_column_names){
-       this->buildDefaultIDs(this->PixDescriptor);
-     }
-     this->buildPixel();
-   }
-
- //------------------------------------------------------------------------------------------------
-  /** Main constructor which defines the size of the dataset,
-   * number of fields in this dataset and data location in memory and on hdd.
-   *   
-   */
-   MDDataPointEqual(char * buf, const MDPointDescription &pixSignature):
-   pDataBuffer(buf),
-   MDPointDescription(pixSignature)    
-   {
-     buildPixel();
-   }
-   
- public:
-   // Accessors:;
-   /// obtain the value of correspondent data field;
-   T getDataField(unsigned int nField,size_t n_point)const{return *(reinterpret_cast<T *>     (pDataBuffer + n_point*MDPointStride+field_loc[nField]));}
-   /// function returns signal
-   S getSignal(size_t n_point)                       const{return *(reinterpret_cast<S *>(pDataBuffer + n_point*MDPointStride+pSignal));}
-   /// function returns error
-   S getError  (size_t n_point)                      const{return *(reinterpret_cast<S *>(pDataBuffer + n_point*MDPointStride +pError));}
-   /// function returns and dimension index e.g. position of this dimension in some kind of look-up table
-   I getIndex(unsigned int nf,size_t n_point)        const{return *(reinterpret_cast<I *>     (pDataBuffer + n_point*MDPointStride+field_loc[PixIndex+nf]));}
-   /// get size (in bytes) for the MDdataPoint;
-   unsigned int sizeofMDDataPoint(void)              const{return MDPointStride;}
-   /// returns the total number of data point fields as sum of all contributing fields, e.g. dimensions, datas and signals
-   unsigned int getNumPointFields(void)              const{return n_dimensions+n_indFields+n_signals;}
-   /// get the numbers of all contributing fields separately
-   unsigned int getNumDimensions(void)              const{return n_dimensions;}
-   unsigned int getNumSignals(void)                 const{return n_signals;}
-   unsigned int getNumDimIndex(void)                const{return n_indFields;}
-   /// copy pixel from the specified location among origin pixels to the specified location among target pixels
-   void copyPixel(size_t iOrigin, char *targetBuff, size_t iTarget)const{
-     memcpy(targetBuff+MDPointStride*iTarget,pDataBuffer+MDPointStride*iOrigin,MDPointStride);
-   }
-   //************************************************************************************************************************
-   //Mutators
-   /// function sets pointer to new target buffer for this class
-     void setBuffer(char *newTargetBuf){
-         this->pDataBuffer = newTargetBuf;
-     }
-  //------------------------------------------------------------------------------------------------
-  /** function sets data from external source into MDDataPoint format 
-   *
-   *  @param ind ::           - the location of the pixel in the MDDataPoints dataset
-   *  @param dim_fields ::    - the values of the dimension coordinates (may be absent)
-   *  @param Signal_fields :: Signal and error for histogram data, absent for event data
-   *  @param iFields ::       - array of dimension ID in some look-up table; 
-   */
-   void setData(size_t ind,T dim_fields[],S SignalFields[],I iFields[]){
-     unsigned int i0;
-
-     char *const base = pDataBuffer+ind*MDPointStride;
-     // copy dimension values (axis values)
-     memcpy(base,dim_fields,sizeof(T)*n_dimensions);
-     // copy signals
-     i0 = n_dimensions;
-     memcpy(base+field_loc[i0],SignalFields,sizeof(S)*n_signals);
-
-     // this part is specialized for coding detectors from runID and dimID
-     i0=PixIndex;
-     memcpy(base+field_loc[i0],iFields,sizeof(I)*n_indFields);
-
-
-   }
- /** function sets data from external source into MDDataPoint format using the information that signal and dimension fields are equal
-   *
-   *  @param ind ::           - the location of the pixel in the MDDataPoints dataset
-   *  @param sdim_fields ::   - the values of the dimension coordinates (may be absent) and signals places in the same array
-   *  @param iFields ::       - array of dimension ID in some look-up table; 
-   */
-   void setData(size_t ind,T sdim_fields[],I iFields[]){
-     unsigned int i0;
-
-     char *const base = pDataBuffer+ind*MDPointStride;
-     // copy dimension values (axis values)
-     memcpy(base,sdim_fields,sizeof(T)*(n_dimensions+n_signals));
-     // this part is specialized for coding detectors from runID and dimID
-     i0=PixIndex;
-     memcpy(base+field_loc[i0],iFields,sizeof(I)*n_indFields);
-
-   }
-   //
-   //
-   ~MDDataPointEqual(){
-     delete [] field_loc;
-   }
-// 
- protected:
-   // numbers of different fields in the data array;
-   unsigned int n_dimensions, //< number of dataset dimensions
-                n_indFields,  //< number of integer identifiers (indexes) for the dimensions values
-                n_signals;    // < number of signal fields
-   // the location of the beginning of the data buffer
-   char *  pDataBuffer;
- /// the size of one data point in bytes;
-   unsigned int MDPointStride;
-   unsigned int *field_loc;
-
-   unsigned int pSignal,pError,pPixIndex,PixIndex;
-   // auxiliary 
-   std::vector<unsigned int> field_lengths;
- //*************************************************************************************************************
- /// the main constructor function;
-   void buildPixel(void)
-   {
-     unsigned int i;
-     // set the length of main fields as the function of the template initialisation parameters
-     if(this->PixInfo().DimLength  != sizeof(T)||
-        this->PixInfo().DimIDlength != sizeof(I)||
-	    this->PixInfo().SignalLength!= sizeof(S)){
-			throw(std::invalid_argument("MDDataPoint template initiated with parameters which different from the MDDataPointDescription"));
-	 }
-
-     n_dimensions = this->PixInfo().NumDimensions;
-     n_indFields  = this->PixInfo().NumDimIDs;
-     n_signals    = this->PixInfo().NumDataFields;
-  
-
-     // arrange array for all data fields length-es which can be present in the data structure and set its initial values to sizeof(T);
-      this->field_lengths.assign(n_dimensions+n_signals+n_indFields,sizeof(T));
-   
-      // set field sizes of signals to size of double;
-      for(i=n_dimensions;i<n_dimensions+n_signals;i++){
-        this->field_lengths[i]=sizeof(S);
-      }
-      // set field sizes of all integer indicators to sizeof(I); Some fields will be combined in a partucular way
-      for(i=n_dimensions+n_signals;i<n_dimensions+n_signals+n_indFields;i++){
-        this->field_lengths[i]=sizeof(I);
-      }
-     // allocate and calculate the field locations
-     unsigned int n_fields      = n_dimensions+n_signals+n_indFields;
-     PixIndex                   = n_dimensions+n_signals;
-     field_loc                  = new unsigned int[n_fields];
-
-     field_loc[0] = 0;
-     for(i=1;i<n_fields;i++){
-        field_loc[i]=field_loc[i-1]+field_lengths[i-1];
-     }
-   // set up specific pointers for fast accessors;
-     MDPointStride= field_loc[n_fields-1]+field_lengths[n_fields-1];
-     pSignal      = field_loc[n_dimensions];
-     pError       = field_loc[n_dimensions+1];
-     pPixIndex    = field_loc[PixIndex];
-
-
-   }
-
-};
-//********************************************************************************************************************************************************************
-/** the class to work with the pixels buffer itself*/
- template<class T=float, class I=uint16_t,class S=double>
- class MDDataPoint: public MDDataPointEqual<T,I,S>
- {
-  
- public:
-  //------------------------------------------------------------------------------------------------
-  /** The constructor which defines the size of the dataset, number of fields in
-   *  this dataset and data location in memory.
-   *
-   *  This constructor should be used mainly for debugging and unit tests as relies on default column names only,
-   */
-   MDDataPoint(char * buf, unsigned int nDims=4,unsigned int nData=2,unsigned int nIDfields=3):
-	   MDDataPointEqual<T,I,S>::MDDataPointEqual(buf,nDims,nData,nIDfields),
-   pix_id_shift(0),PixIDMask(0),RunIDMask(0),indexBufSize(0)
-   {
-     this->modifyPixel();
-   }
-
- //------------------------------------------------------------------------------------------------
-  /** Main constructor which defines the size of the dataset,
-   * number of fields in this dataset and data location in memory and on hdd.
-   *   
-   */
-   MDDataPoint(char * buf, const MDPointDescription &pixSignature):
-	   MDDataPointEqual<T,I,S>::MDDataPointEqual(buf,pixSignature),
-   pix_id_shift(0),PixIDMask(0),RunIDMask(0),indexBufSize(0)
-   {
-	this->modifyPixel();
-   }
-   
- public:
-   // Additional Accessors:;
-   // these two are coded for particular type of experiments -> number of runs (2^pix_id_shift-1) <~2^9, number of pixels <~ 2^(23)
-   uint32_t getRunID(size_t n_point)  const{return   RunIDMask&(*(reinterpret_cast<uint32_t *>(MDDataPointEqual<T,I,S>::pDataBuffer+n_point*MDDataPointEqual<T,I,S>::MDPointStride+ MDDataPointEqual<T,I,S>::pPixIndex)));}
-   uint32_t getPixID(size_t n_point)  const{return ((PixIDMask)&(*(reinterpret_cast<uint32_t *>(MDDataPointEqual<T,I,S>::pDataBuffer+n_point*MDDataPointEqual<T,I,S>::MDPointStride +MDDataPointEqual<T,I,S>::pPixIndex)))>>pix_id_shift);}
-   //************************************************************************************************************************
-   //Mutators
-     
-  //------------------------------------------------------------------------------------------------
-  /** function sets data from external source into MDDataPoint format and is specialized
-   *  for Horace data e.g. expetcs no more than 2^pix_id_shift-1 runs and no more than
-   *  2^(32-pix_id_shift) pixels (unique detectors)
-   *
-   *  @param ind ::           - the location of the pixel in the MDDataPoints dataset
-   *  @param dim_fields ::    - the values of the dimension coordinates (may be absent)
-   *  @param Signal_fields :: Signal and error for histogram data, absent for event data
-   *  @param iFields ::       - array of dimension ID in some look-up table; this function assumes that 2 first 
-   *                         fields represent the detector location (detectorId and runID)
-   */
-   void setData(unsigned int ind,T dim_fields[],S SignalFields[],int iFields[]){
-     unsigned int i,i0;
-
-     char *const base = MDDataPointEqual<T,I,S>::pDataBuffer+ind*MDDataPointEqual<T,I,S>::MDPointStride;
-     // copy dimension values (axis values)
-     memcpy(base,dim_fields,sizeof(T)*MDDataPointEqual<T,I,S>::n_dimensions);
-     // copy signals
-     i0 = MDDataPointEqual<T,I,S>::n_dimensions;
-     memcpy(base+MDDataPointEqual<T,I,S>::field_loc[i0],SignalFields,sizeof(S)*MDDataPointEqual<T,I,S>::n_signals);
-
-     // this part is specialized for coding detectors from runID and dimID
-     i0=MDDataPointEqual<T,I,S>::PixIndex;
-     // compress n_runs and n_pixels into single 32 bit word
-     uint32_t *pBuf = (uint32_t *)pWorkingBuf;
-     uint32_t  w1   = (uint32_t)iFields[0];
-     uint32_t  w2   = (uint32_t)iFields[1];
-     *pBuf = (w1&RunIDMask)|((w2<<pix_id_shift)&(~RunIDMask));
-
-     // deal with remaining dimention indexes
-     unsigned int ic = sizeof(uint32_t)/sizeof(I);
-     if(ic==0)ic=1;
-     for(i=2;i<MDDataPointEqual<T,I,S>::n_indFields;i++){
-       pWorkingBuf[ic]=(I)iFields[i];
-       ic++;
-     }
-     // copy indexes into data buffer;
-      memcpy(base + MDDataPointEqual<T,I,S>::field_loc[i0],pWorkingBuf,indexBufSize);
-
-   }
-   /// modified version of above, used when signal and dimension fields are the same width
-  void setData(unsigned int ind,T dim_sig_fields[],int iFields[]){
-     unsigned int i,i0;
-
-     char *const base = MDDataPointEqual<T,I,S>::pDataBuffer+ind*MDDataPointEqual<T,I,S>::MDPointStride;
-     // copy dimension values (axis values) and short signals
-     memcpy(base,dim_sig_fields,sizeof(T)*(MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals));
-   
-     // this part is specialized for coding detectors from runID and dimID
-     i0=MDDataPointEqual<T,I,S>::PixIndex;
-     // compress n_runs and n_pixels into single 32 bit word
-     uint32_t *pBuf = (uint32_t *)pWorkingBuf;
-     uint32_t  w1   = (uint32_t)iFields[0];
-     uint32_t  w2   = (uint32_t)iFields[1];
-     *pBuf = (w1&RunIDMask)|((w2<<pix_id_shift)&(~RunIDMask));
-
-     // deal with remaining dimention indexes
-     unsigned int ic = sizeof(uint32_t)/sizeof(I);
-     if(ic==0)ic=1;
-     for(i=2;i<MDDataPointEqual<T,I,S>::n_indFields;i++){
-       pWorkingBuf[ic]=(I)iFields[i];
-       ic++;
-     }
-     // copy indexes into data buffer;
-      memcpy(base + MDDataPointEqual<T,I,S>::field_loc[i0],pWorkingBuf,indexBufSize);
-
-   }
-   ~MDDataPoint(){
-     delete [] pWorkingBuf;
-   }
-// 
- private:
-   // data to support packing pixID and RunId into one integer word -> shift is basis and other are derived;
-   uint32_t pix_id_shift,PixIDMask,RunIDMask,indexBufSize;
-   // auxiliary 
-   I*           pWorkingBuf;
- //*************************************************************************************************************
- /// the overloaded constructor function, modifies the pixel representation in memory
-   void modifyPixel(void)
-   {
-     unsigned int i;
-
-     pix_id_shift= this->PixDescriptor.NumPixCompressionBits;
-
-     pWorkingBuf = new I[MDDataPointEqual<T,I,S>::n_indFields];
-  
-     // specialisation : two first index fields are packed into one 32 bit field
-     if(MDDataPointEqual<T,I,S>::n_indFields>1){
-        this->field_lengths[MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals]  =2;
-        this->field_lengths[MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals+1]=2;
-     }else{
-	   if(sizeof(I)<4){
-			this->field_lengths[MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals]  =4;
-	   }
-	 }
-	 //
-     unsigned int n_fields      = MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals+MDDataPointEqual<T,I,S>::n_indFields;
-
-     // recalculate new field length
-     MDDataPointEqual<T,I,S>::field_loc[0] = 0;
-     for(i=1;i<n_fields;i++){
-    	 MDDataPointEqual<T,I,S>::field_loc[i]=MDDataPointEqual<T,I,S>::field_loc[i-1]+ MDDataPointEqual<T,I,S>::field_lengths[i-1];
-     }
-   // set up specific pointers for fast accessors;
-     MDDataPointEqual<T,I,S>::MDPointStride= MDDataPointEqual<T,I,S>::field_loc[n_fields-1]+MDDataPointEqual<T,I,S>::field_lengths[n_fields-1];
-     MDDataPointEqual<T,I,S>::pSignal      = MDDataPointEqual<T,I,S>::field_loc[MDDataPointEqual<T,I,S>::n_dimensions];
-     MDDataPointEqual<T,I,S>::pError       = MDDataPointEqual<T,I,S>::field_loc[MDDataPointEqual<T,I,S>::n_dimensions+1];
-     MDDataPointEqual<T,I,S>::pPixIndex    = MDDataPointEqual<T,I,S>::field_loc[MDDataPointEqual<T,I,S>::PixIndex];
-
-   // this defines PixID masks and RinID mask -- it is assumed that these data are present in all experiments and are packed into one 32bit word
-     if(MDDataPointEqual<T,I,S>::n_indFields<2) return;
-
-     RunIDMask=0;
-     for(i=0;i<pix_id_shift;i++){        RunIDMask=(RunIDMask<<1)|0x1;
-     }
-     PixIDMask=(~RunIDMask)>>pix_id_shift;
-    // calculate the size of buffer for data indexes;
-     indexBufSize = sizeof(uint32_t);
-     if(MDDataPointEqual<T,I,S>::n_indFields>2){
-       indexBufSize+=sizeof(I)*(MDDataPointEqual<T,I,S>::n_indFields-2);
-     }
-      
-   }
-};
-
-}
-}
-
-#endif
+#ifndef MD_DATAPOINT_H
+#define MD_DATAPOINT_H
+
+#include "MDDataObjects/MDDataPointDescription.h"
+
+/**  path-through classes which provide transformation of the data from pixel buffer format to the data fields format; 
+*   
+*
+* Templated for efficiency as critical
+*
+* It is hard-coded in the class that the run indexes and the detector indexes are present in the data and are located 
+* after two double sized image fields namely signal and error.  This can be modified in more regular fashion;
+*
+* CODED FOR LITTLE ENDIAN -> big endian is not checked and not supported at the moment
+*
+
+    @author Alex Buts, RAL ISIS
+    @date 17/10/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+    
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+namespace Mantid
+{
+namespace MDDataObjects
+{
+//********************************************************************************************************************************************************************
+//********************************************************************************************************************************************************************
+/** the class to work with the pixels buffer itself. Class works the MDpoints having equal index fields*/
+ template<class T=float, class I=uint16_t,class S=double>
+ class MDDataPointEqual: public MDPointDescription
+ {
+  
+ public:
+  //------------------------------------------------------------------------------------------------
+  /** The constructor which defines the size of the dataset, number of fields in
+   *  this dataset and data location in memory.
+   *
+   *  This constructor should be used mainly for debugging and unit tests as relies on default column names only,
+   */
+   MDDataPointEqual(char * buf, unsigned int nDims=4,unsigned int nData=2,unsigned int nIDfields=3):
+   pDataBuffer(buf),
+   MDPointDescription()
+   {
+     bool old_column_names(true);
+     if(this->PixDescriptor.NumDimensions != nDims||this->PixDescriptor.NumDataFields!=nData||this->PixDescriptor.NumDimIDs!=nIDfields){
+        old_column_names=false;
+     }
+     this->PixDescriptor.NumDimensions = nDims;
+     this->PixDescriptor.NumDataFields = nData;
+     this->PixDescriptor.NumDimIDs     = nIDfields;
+     if(!old_column_names){
+       this->buildDefaultIDs(this->PixDescriptor);
+     }
+     this->buildPixel();
+   }
+
+ //------------------------------------------------------------------------------------------------
+  /** Main constructor which defines the size of the dataset,
+   * number of fields in this dataset and data location in memory and on hdd.
+   *   
+   */
+   MDDataPointEqual(char * buf, const MDPointDescription &pixSignature):
+   pDataBuffer(buf),
+   MDPointDescription(pixSignature)    
+   {
+     buildPixel();
+   }
+   
+ public:
+   // Accessors:;
+   /// obtain the value of correspondent data field;
+   T getDataField(unsigned int nField,size_t n_point)const{return *(reinterpret_cast<T *>     (pDataBuffer + n_point*MDPointStride+field_loc[nField]));}
+   /// function returns signal
+   S getSignal(size_t n_point)                       const{return *(reinterpret_cast<S *>(pDataBuffer + n_point*MDPointStride+pSignal));}
+   /// function returns error
+   S getError  (size_t n_point)                      const{return *(reinterpret_cast<S *>(pDataBuffer + n_point*MDPointStride +pError));}
+   /// function returns and dimension index e.g. position of this dimension in some kind of look-up table
+   I getIndex(unsigned int nf,size_t n_point)        const{return *(reinterpret_cast<I *>     (pDataBuffer + n_point*MDPointStride+field_loc[PixIndex+nf]));}
+   /// get size (in bytes) for the MDdataPoint;
+   unsigned int sizeofMDDataPoint(void)              const{return MDPointStride;}
+   /// returns the total number of data point fields as sum of all contributing fields, e.g. dimensions, datas and signals
+   unsigned int getNumPointFields(void)              const{return n_dimensions+n_indFields+n_signals;}
+   /// get the numbers of all contributing fields separately
+   unsigned int getNumDimensions(void)              const{return n_dimensions;}
+   unsigned int getNumSignals(void)                 const{return n_signals;}
+   unsigned int getNumDimIndex(void)                const{return n_indFields;}
+   /// copy pixel from the specified location among origin pixels to the specified location among target pixels
+   void copyPixel(size_t iOrigin, char *targetBuff, size_t iTarget)const{
+     memcpy(targetBuff+MDPointStride*iTarget,pDataBuffer+MDPointStride*iOrigin,MDPointStride);
+   }
+   //************************************************************************************************************************
+   //Mutators
+   /// function sets pointer to new target buffer for this class
+     void setBuffer(char *newTargetBuf){
+         this->pDataBuffer = newTargetBuf;
+     }
+  //------------------------------------------------------------------------------------------------
+  /** function sets data from external source into MDDataPoint format 
+   *
+   *  @param ind ::           - the location of the pixel in the MDDataPoints dataset
+   *  @param dim_fields ::    - the values of the dimension coordinates (may be absent)
+   *  @param Signal_fields :: Signal and error for histogram data, absent for event data
+   *  @param iFields ::       - array of dimension ID in some look-up table; 
+   */
+   void setData(size_t ind,T dim_fields[],S SignalFields[],I iFields[]){
+     unsigned int i0;
+
+     char *const base = pDataBuffer+ind*MDPointStride;
+     // copy dimension values (axis values)
+     memcpy(base,dim_fields,sizeof(T)*n_dimensions);
+     // copy signals
+     i0 = n_dimensions;
+     memcpy(base+field_loc[i0],SignalFields,sizeof(S)*n_signals);
+
+     // this part is specialized for coding detectors from runID and dimID
+     i0=PixIndex;
+     memcpy(base+field_loc[i0],iFields,sizeof(I)*n_indFields);
+
+
+   }
+ /** function sets data from external source into MDDataPoint format using the information that signal and dimension fields are equal
+   *
+   *  @param ind ::           - the location of the pixel in the MDDataPoints dataset
+   *  @param sdim_fields ::   - the values of the dimension coordinates (may be absent) and signals places in the same array
+   *  @param iFields ::       - array of dimension ID in some look-up table; 
+   */
+   void setData(size_t ind,T sdim_fields[],I iFields[]){
+     unsigned int i0;
+
+     char *const base = pDataBuffer+ind*MDPointStride;
+     // copy dimension values (axis values)
+     memcpy(base,sdim_fields,sizeof(T)*(n_dimensions+n_signals));
+     // this part is specialized for coding detectors from runID and dimID
+     i0=PixIndex;
+     memcpy(base+field_loc[i0],iFields,sizeof(I)*n_indFields);
+
+   }
+   //
+   //
+   ~MDDataPointEqual(){
+     delete [] field_loc;
+   }
+// 
+ protected:
+   // numbers of different fields in the data array;
+   unsigned int n_dimensions, //< number of dataset dimensions
+                n_indFields,  //< number of integer identifiers (indexes) for the dimensions values
+                n_signals;    // < number of signal fields
+   // the location of the beginning of the data buffer
+   char *  pDataBuffer;
+ /// the size of one data point in bytes;
+   unsigned int MDPointStride;
+   unsigned int *field_loc;
+
+   unsigned int pSignal,pError,pPixIndex,PixIndex;
+   // auxiliary 
+   std::vector<unsigned int> field_lengths;
+ //*************************************************************************************************************
+ /// the main constructor function;
+   void buildPixel(void)
+   {
+     unsigned int i;
+     // set the length of main fields as the function of the template initialisation parameters
+     if(this->PixInfo().DimLength  != sizeof(T)||
+        this->PixInfo().DimIDlength != sizeof(I)||
+	    this->PixInfo().SignalLength!= sizeof(S)){
+			throw(std::invalid_argument("MDDataPoint template initiated with parameters which different from the MDDataPointDescription"));
+	 }
+
+     n_dimensions = this->PixInfo().NumDimensions;
+     n_indFields  = this->PixInfo().NumDimIDs;
+     n_signals    = this->PixInfo().NumDataFields;
+  
+
+     // arrange array for all data fields length-es which can be present in the data structure and set its initial values to sizeof(T);
+      this->field_lengths.assign(n_dimensions+n_signals+n_indFields,sizeof(T));
+   
+      // set field sizes of signals to size of double;
+      for(i=n_dimensions;i<n_dimensions+n_signals;i++){
+        this->field_lengths[i]=sizeof(S);
+      }
+      // set field sizes of all integer indicators to sizeof(I); Some fields will be combined in a partucular way
+      for(i=n_dimensions+n_signals;i<n_dimensions+n_signals+n_indFields;i++){
+        this->field_lengths[i]=sizeof(I);
+      }
+     // allocate and calculate the field locations
+     unsigned int n_fields      = n_dimensions+n_signals+n_indFields;
+     PixIndex                   = n_dimensions+n_signals;
+     field_loc                  = new unsigned int[n_fields];
+
+     field_loc[0] = 0;
+     for(i=1;i<n_fields;i++){
+        field_loc[i]=field_loc[i-1]+field_lengths[i-1];
+     }
+   // set up specific pointers for fast accessors;
+     MDPointStride= field_loc[n_fields-1]+field_lengths[n_fields-1];
+     pSignal      = field_loc[n_dimensions];
+     pError       = field_loc[n_dimensions+1];
+     pPixIndex    = field_loc[PixIndex];
+
+
+   }
+
+};
+//********************************************************************************************************************************************************************
+/** the class to work with the pixels buffer itself*/
+ template<class T=float, class I=uint16_t,class S=double>
+ class MDDataPoint: public MDDataPointEqual<T,I,S>
+ {
+  
+ public:
+  //------------------------------------------------------------------------------------------------
+  /** The constructor which defines the size of the dataset, number of fields in
+   *  this dataset and data location in memory.
+   *
+   *  This constructor should be used mainly for debugging and unit tests as relies on default column names only,
+   */
+   MDDataPoint(char * buf, unsigned int nDims=4,unsigned int nData=2,unsigned int nIDfields=3):
+	   MDDataPointEqual<T,I,S>::MDDataPointEqual(buf,nDims,nData,nIDfields),
+   pix_id_shift(0),PixIDMask(0),RunIDMask(0),indexBufSize(0)
+   {
+     this->modifyPixel();
+   }
+
+ //------------------------------------------------------------------------------------------------
+  /** Main constructor which defines the size of the dataset,
+   * number of fields in this dataset and data location in memory and on hdd.
+   *   
+   */
+   MDDataPoint(char * buf, const MDPointDescription &pixSignature):
+	   MDDataPointEqual<T,I,S>::MDDataPointEqual(buf,pixSignature),
+   pix_id_shift(0),PixIDMask(0),RunIDMask(0),indexBufSize(0)
+   {
+	this->modifyPixel();
+   }
+   
+ public:
+   // Additional Accessors:;
+   // these two are coded for particular type of experiments -> number of runs (2^pix_id_shift-1) <~2^9, number of pixels <~ 2^(23)
+   uint32_t getRunID(size_t n_point)  const{return   RunIDMask&(*(reinterpret_cast<uint32_t *>(MDDataPointEqual<T,I,S>::pDataBuffer+n_point*MDDataPointEqual<T,I,S>::MDPointStride+ MDDataPointEqual<T,I,S>::pPixIndex)));}
+   uint32_t getPixID(size_t n_point)  const{return ((PixIDMask)&(*(reinterpret_cast<uint32_t *>(MDDataPointEqual<T,I,S>::pDataBuffer+n_point*MDDataPointEqual<T,I,S>::MDPointStride +MDDataPointEqual<T,I,S>::pPixIndex)))>>pix_id_shift);}
+   //************************************************************************************************************************
+   //Mutators
+     
+  //------------------------------------------------------------------------------------------------
+  /** function sets data from external source into MDDataPoint format and is specialized
+   *  for Horace data e.g. expetcs no more than 2^pix_id_shift-1 runs and no more than
+   *  2^(32-pix_id_shift) pixels (unique detectors)
+   *
+   *  @param ind ::           - the location of the pixel in the MDDataPoints dataset
+   *  @param dim_fields ::    - the values of the dimension coordinates (may be absent)
+   *  @param Signal_fields :: Signal and error for histogram data, absent for event data
+   *  @param iFields ::       - array of dimension ID in some look-up table; this function assumes that 2 first 
+   *                         fields represent the detector location (detectorId and runID)
+   */
+   void setData(unsigned int ind,T dim_fields[],S SignalFields[],int iFields[]){
+     unsigned int i,i0;
+
+     char *const base = MDDataPointEqual<T,I,S>::pDataBuffer+ind*MDDataPointEqual<T,I,S>::MDPointStride;
+     // copy dimension values (axis values)
+     memcpy(base,dim_fields,sizeof(T)*MDDataPointEqual<T,I,S>::n_dimensions);
+     // copy signals
+     i0 = MDDataPointEqual<T,I,S>::n_dimensions;
+     memcpy(base+MDDataPointEqual<T,I,S>::field_loc[i0],SignalFields,sizeof(S)*MDDataPointEqual<T,I,S>::n_signals);
+
+     // this part is specialized for coding detectors from runID and dimID
+     i0=MDDataPointEqual<T,I,S>::PixIndex;
+     // compress n_runs and n_pixels into single 32 bit word
+     uint32_t *pBuf = (uint32_t *)pWorkingBuf;
+     uint32_t  w1   = (uint32_t)iFields[0];
+     uint32_t  w2   = (uint32_t)iFields[1];
+     *pBuf = (w1&RunIDMask)|((w2<<pix_id_shift)&(~RunIDMask));
+
+     // deal with remaining dimention indexes
+     unsigned int ic = sizeof(uint32_t)/sizeof(I);
+     if(ic==0)ic=1;
+     for(i=2;i<MDDataPointEqual<T,I,S>::n_indFields;i++){
+       pWorkingBuf[ic]=(I)iFields[i];
+       ic++;
+     }
+     // copy indexes into data buffer;
+      memcpy(base + MDDataPointEqual<T,I,S>::field_loc[i0],pWorkingBuf,indexBufSize);
+
+   }
+   /// modified version of above, used when signal and dimension fields are the same width
+  void setData(unsigned int ind,T dim_sig_fields[],int iFields[]){
+     unsigned int i,i0;
+
+     char *const base = MDDataPointEqual<T,I,S>::pDataBuffer+ind*MDDataPointEqual<T,I,S>::MDPointStride;
+     // copy dimension values (axis values) and short signals
+     memcpy(base,dim_sig_fields,sizeof(T)*(MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals));
+   
+     // this part is specialized for coding detectors from runID and dimID
+     i0=MDDataPointEqual<T,I,S>::PixIndex;
+     // compress n_runs and n_pixels into single 32 bit word
+     uint32_t *pBuf = (uint32_t *)pWorkingBuf;
+     uint32_t  w1   = (uint32_t)iFields[0];
+     uint32_t  w2   = (uint32_t)iFields[1];
+     *pBuf = (w1&RunIDMask)|((w2<<pix_id_shift)&(~RunIDMask));
+
+     // deal with remaining dimention indexes
+     unsigned int ic = sizeof(uint32_t)/sizeof(I);
+     if(ic==0)ic=1;
+     for(i=2;i<MDDataPointEqual<T,I,S>::n_indFields;i++){
+       pWorkingBuf[ic]=(I)iFields[i];
+       ic++;
+     }
+     // copy indexes into data buffer;
+      memcpy(base + MDDataPointEqual<T,I,S>::field_loc[i0],pWorkingBuf,indexBufSize);
+
+   }
+   ~MDDataPoint(){
+     delete [] pWorkingBuf;
+   }
+// 
+ private:
+   // data to support packing pixID and RunId into one integer word -> shift is basis and other are derived;
+   uint32_t pix_id_shift,PixIDMask,RunIDMask,indexBufSize;
+   // auxiliary 
+   I*           pWorkingBuf;
+ //*************************************************************************************************************
+ /// the overloaded constructor function, modifies the pixel representation in memory
+   void modifyPixel(void)
+   {
+     unsigned int i;
+
+     pix_id_shift= this->PixDescriptor.NumPixCompressionBits;
+
+     pWorkingBuf = new I[MDDataPointEqual<T,I,S>::n_indFields];
+  
+     // specialisation : two first index fields are packed into one 32 bit field
+     if(MDDataPointEqual<T,I,S>::n_indFields>1){
+        this->field_lengths[MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals]  =2;
+        this->field_lengths[MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals+1]=2;
+     }else{
+	   if(sizeof(I)<4){
+			this->field_lengths[MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals]  =4;
+	   }
+	 }
+	 //
+     unsigned int n_fields      = MDDataPointEqual<T,I,S>::n_dimensions+MDDataPointEqual<T,I,S>::n_signals+MDDataPointEqual<T,I,S>::n_indFields;
+
+     // recalculate new field length
+     MDDataPointEqual<T,I,S>::field_loc[0] = 0;
+     for(i=1;i<n_fields;i++){
+    	 MDDataPointEqual<T,I,S>::field_loc[i]=MDDataPointEqual<T,I,S>::field_loc[i-1]+ MDDataPointEqual<T,I,S>::field_lengths[i-1];
+     }
+   // set up specific pointers for fast accessors;
+     MDDataPointEqual<T,I,S>::MDPointStride= MDDataPointEqual<T,I,S>::field_loc[n_fields-1]+MDDataPointEqual<T,I,S>::field_lengths[n_fields-1];
+     MDDataPointEqual<T,I,S>::pSignal      = MDDataPointEqual<T,I,S>::field_loc[MDDataPointEqual<T,I,S>::n_dimensions];
+     MDDataPointEqual<T,I,S>::pError       = MDDataPointEqual<T,I,S>::field_loc[MDDataPointEqual<T,I,S>::n_dimensions+1];
+     MDDataPointEqual<T,I,S>::pPixIndex    = MDDataPointEqual<T,I,S>::field_loc[MDDataPointEqual<T,I,S>::PixIndex];
+
+   // this defines PixID masks and RinID mask -- it is assumed that these data are present in all experiments and are packed into one 32bit word
+     if(MDDataPointEqual<T,I,S>::n_indFields<2) return;
+
+     RunIDMask=0;
+     for(i=0;i<pix_id_shift;i++){        RunIDMask=(RunIDMask<<1)|0x1;
+     }
+     PixIDMask=(~RunIDMask)>>pix_id_shift;
+    // calculate the size of buffer for data indexes;
+     indexBufSize = sizeof(uint32_t);
+     if(MDDataPointEqual<T,I,S>::n_indFields>2){
+       indexBufSize+=sizeof(I)*(MDDataPointEqual<T,I,S>::n_indFields-2);
+     }
+      
+   }
+};
+
+}
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPointDescription.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPointDescription.h
index 09a74ac49fb1befda8627fb2808e16b8f2e41a0d..4882f1ffde18a2feacba0ee2864c5dc3e4ad2cfd 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPointDescription.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPointDescription.h
@@ -1,112 +1,112 @@
-#ifndef MD_DATAPOINT_DESCRIPTION_H
-#define MD_DATAPOINT_DESCRIPTION_H
-
-#include "MantidKernel/System.h"
-#include <vector> 
-//#include <string>
-#include <cstring>
-#include <stdexcept>
-#include "MantidKernel/DllExport.h"
-
-/**  the description for classes, which process the MDDataPoints packed into data buffer
-*    The class describes the location and srtucre of classes, which process this data buffer
-*
-*
-
-    @author Alex Buts, RAL ISIS
-    @date 10/12/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-    
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-namespace Mantid
-{
-namespace MDDataObjects
-{
-//********************************************************************************************************************************************************************
-//********************************************************************************************************************************************************************
-
-/** the names of the fields, present in the MDPixelDescription class 
-  * and describe the format of the MDPixelDescriptions class */
-struct MDPointStructure{
-  unsigned int NumDimensions;    //< number of dimensions in the dataset
-  unsigned int NumRecDimensions; //< number of reciprocal dimensions among these dimensions
-  unsigned int NumDataFields;    //< datafields -> signal and error for histohram data or 0 for event data
-  unsigned int NumDimIDs;        //< some dimensions values are described by an ID, which allows to pick up the dimension value from look-up table
-  unsigned int DimIDlength;      //< DimID are usually short words, the size of these words is expredssed in bytes (default 2)
-  unsigned int SignalLength;       //< Signals are often doubles
-  unsigned int DimLength;        //< Dimension fields can be float or double (default float 4)
-  bool         DimFieldsPresent; //< dimension fields  can be absent; their values would be calculated dynamically on the basis of  DimIDs and look-up tables;
-  bool         DataFieldsPresent; //< data fields can be absent for event data; false here actually means an event data
-  unsigned int NumPixCompressionBits; //< Run number and detector number corresponding to the reciprocal dimensions of TOF experiments can be placed in single 32 bit word;
-                                   // 10 in NumPixCompression means that it is pissible to have 2^10-1 (1023) different experiments and 2^22 detectors (4M) coded by this field 
-                                  // 0 here should mean a class with even DimID fields -> implemented;
-                                 //TO DO: does this specialisation is practically usefull?  necessary?
-  MDPointStructure():NumDimensions(4),NumRecDimensions(3),NumDataFields(2),NumDimIDs(3),
-	                       DimIDlength(2),DimLength(4),SignalLength(8),
-                           DimFieldsPresent(true),DataFieldsPresent(true),NumPixCompressionBits(10){}
-};
-
-//********************************************************************************************************************************************************************
-//********************************************************************************************************************************************************************
-/** Small helper class describing format of the MDDataPoint in a form, 
- *  which can be conveniently stored on HDD or transferred between classes
- *  allowing to instanciate  proper version of MDDataPoint which does the
- * job transforming data from and to the HDD format
- */
-class DLLExport MDPointDescription
-{
-public:
-MDPointDescription(const MDPointStructure &pixInfo,const std::vector<std::string> &dataTags);
-// use default tags;
-MDPointDescription(const MDPointStructure &pixInfo);
-// use defauld pixInfo and defailt tags
-MDPointDescription();
-		           
-MDPointStructure & PixInfo(){return PixDescriptor;}
- /** Returns the column name, first come the names of dimensions (if any), data
-   * (if any) after that and indexes of dimensions to follow (these are always present)
-   *  no way to idenfify what are dimensios, what are signals or what are
-   *  the indexes except counting them and comparing with the numbers of dimensions,
-   *  signals and indexes from the MDPoindDescriptor
-   */
-std::string getColumnName(unsigned int nColumn)const{return dataIDs.at(nColumn);}
-
- /// gets all column names together; see the getColumnName description
- std::vector<std::string> getColumnNames(void) const{return dataIDs;}
- /// function returns the part of the colum-names which corresponds to the dimensions information;
- std::vector<std::string> getDimensionsID(void)const;
-
- /// returns the size of the described MDDataPoint in bytes
- unsigned int sizeofMDDPoint(void)const;
-protected:
-        MDPointStructure PixDescriptor;
-  /** The names (tags) of every dimension column and every data column;
-   * The former has to coincide (and would be obtained from) MDgeometryBasis,
-   * and first columns (if present) have to represent
-   * reciprocal dimensions;
-   */
-   std::vector<std::string> dataIDs;
-
-   void buildDefaultIDs(const MDPointStructure &pixInfo);
-};
-} // endnamespaces;
-}
-#endif
+#ifndef MD_DATAPOINT_DESCRIPTION_H
+#define MD_DATAPOINT_DESCRIPTION_H
+
+#include "MantidKernel/System.h"
+#include <vector> 
+//#include <string>
+#include <cstring>
+#include <stdexcept>
+#include "MantidKernel/DllExport.h"
+
+/**  the description for classes, which process the MDDataPoints packed into data buffer
+*    The class describes the location and srtucre of classes, which process this data buffer
+*
+*
+
+    @author Alex Buts, RAL ISIS
+    @date 10/12/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+    
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+namespace Mantid
+{
+namespace MDDataObjects
+{
+//********************************************************************************************************************************************************************
+//********************************************************************************************************************************************************************
+
+/** the names of the fields, present in the MDPixelDescription class 
+  * and describe the format of the MDPixelDescriptions class */
+struct MDPointStructure{
+  unsigned int NumDimensions;    //< number of dimensions in the dataset
+  unsigned int NumRecDimensions; //< number of reciprocal dimensions among these dimensions
+  unsigned int NumDataFields;    //< datafields -> signal and error for histohram data or 0 for event data
+  unsigned int NumDimIDs;        //< some dimensions values are described by an ID, which allows to pick up the dimension value from look-up table
+  unsigned int DimIDlength;      //< DimID are usually short words, the size of these words is expredssed in bytes (default 2)
+  unsigned int SignalLength;       //< Signals are often doubles
+  unsigned int DimLength;        //< Dimension fields can be float or double (default float 4)
+  bool         DimFieldsPresent; //< dimension fields  can be absent; their values would be calculated dynamically on the basis of  DimIDs and look-up tables;
+  bool         DataFieldsPresent; //< data fields can be absent for event data; false here actually means an event data
+  unsigned int NumPixCompressionBits; //< Run number and detector number corresponding to the reciprocal dimensions of TOF experiments can be placed in single 32 bit word;
+                                   // 10 in NumPixCompression means that it is pissible to have 2^10-1 (1023) different experiments and 2^22 detectors (4M) coded by this field 
+                                  // 0 here should mean a class with even DimID fields -> implemented;
+                                 //TO DO: does this specialisation is practically usefull?  necessary?
+  MDPointStructure():NumDimensions(4),NumRecDimensions(3),NumDataFields(2),NumDimIDs(3),
+	                       DimIDlength(2),DimLength(4),SignalLength(8),
+                           DimFieldsPresent(true),DataFieldsPresent(true),NumPixCompressionBits(10){}
+};
+
+//********************************************************************************************************************************************************************
+//********************************************************************************************************************************************************************
+/** Small helper class describing format of the MDDataPoint in a form, 
+ *  which can be conveniently stored on HDD or transferred between classes
+ *  allowing to instanciate  proper version of MDDataPoint which does the
+ * job transforming data from and to the HDD format
+ */
+class DLLExport MDPointDescription
+{
+public:
+MDPointDescription(const MDPointStructure &pixInfo,const std::vector<std::string> &dataTags);
+// use default tags;
+MDPointDescription(const MDPointStructure &pixInfo);
+// use defauld pixInfo and defailt tags
+MDPointDescription();
+		           
+MDPointStructure & PixInfo(){return PixDescriptor;}
+ /** Returns the column name, first come the names of dimensions (if any), data
+   * (if any) after that and indexes of dimensions to follow (these are always present)
+   *  no way to idenfify what are dimensios, what are signals or what are
+   *  the indexes except counting them and comparing with the numbers of dimensions,
+   *  signals and indexes from the MDPoindDescriptor
+   */
+std::string getColumnName(unsigned int nColumn)const{return dataIDs.at(nColumn);}
+
+ /// gets all column names together; see the getColumnName description
+ std::vector<std::string> getColumnNames(void) const{return dataIDs;}
+ /// function returns the part of the colum-names which corresponds to the dimensions information;
+ std::vector<std::string> getDimensionsID(void)const;
+
+ /// returns the size of the described MDDataPoint in bytes
+ unsigned int sizeofMDDPoint(void)const;
+protected:
+        MDPointStructure PixDescriptor;
+  /** The names (tags) of every dimension column and every data column;
+   * The former has to coincide (and would be obtained from) MDgeometryBasis,
+   * and first columns (if present) have to represent
+   * reciprocal dimensions;
+   */
+   std::vector<std::string> dataIDs;
+
+   void buildDefaultIDs(const MDPointStructure &pixInfo);
+};
+} // endnamespaces;
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoints.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoints.h
index eb7ffe980767cbce4c7abef01cad5a373e663cf9..1f4401fbe5406bd41b55b2a7f0f43aaa6395fca0 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoints.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDDataPoints.h
@@ -1,171 +1,171 @@
-#ifndef H_MD_Pixels
-#define H_MD_Pixels
-
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MDDataObjects/MDDataPoint.h"
-#include "MDDataObjects/MD_FileFormatFactory.h"
-#include "MDDataObjects/MDDPoints_MemManager.h"
-#include "MantidAPI/MemoryManager.h"
-#include <boost/shared_ptr.hpp>
-
-/** Class to support operations on single data pixels, as obtained from the instrument.
- *  Currently it contains information on the location of the pixel in
-    the reciprocal space but this can change as this information
-    can be computed at the run time.
-    
-    @author Alex Buts, RAL ISIS
-    @date 01/10/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid
-{
-
-namespace MDDataObjects
-{
-
-//* MDPixels
-//********************************************************************************************************************************************************************
-struct MDPointsLocations
-{
-    size_t   n_data_points;
-    uint64_t points_location;
-    MDPointsLocations():n_data_points(0),points_location(0){};
-};
-//********************************************************************************************************************************************************************
-  class MDImage;
-  class MDDataPointsDescription: public MDPointDescription
-  {
-  public:
-	  MDDataPointsDescription(const MDPointDescription &descr):
-	  /// this one describes structure of single pixel as it is defined and written on HDD
-      MDPointDescription(descr)
-	  { }
-  private:
-	  // this has not been defined at the moment, but will provide the description for possible lookup tables
-	  std::vector<double> lookup_tables;
-  };
-  
-  //**********************************************************************************************************************
-  class DLLExport MDDataPoints
-  {
-  public:
-    MDDataPoints(const MDDataPointsDescription &description);
-    virtual ~MDDataPoints();
-/******************************************************************************************************
-    /** initialises MDDataPoints, as file-based structure;
-	  *  allocates all necessary arrays and provides it with  valid data reader; 
-      * if the input dataReader is absent, the function initializes its own dataReader and sets output 
-      * temporary scrach file to accept pixels data 
-     */
-	virtual void initialize(boost::shared_ptr<const MDImage> spImage,boost::shared_ptr<IMD_FileFormat> in_spFile);
-    // initialises MDDataPoints as memory based; it will switch to fileBased later
-	virtual void initialize(boost::shared_ptr<const MDImage> pMDImage);
-   
-	/// return file current file reader (should we let the factory to remember them and return on request?
-    virtual boost::shared_ptr<IMD_FileFormat> getFileReader(void)const{return this->spFileReader;}
-    /// check if the MDDataPoints class is initialized;
-    bool is_initialized(void)const;
-
-	//*********>  MEMORY  <*************************************************************************
-    /// check if the pixels are all in memory;
-    bool isMemoryBased(void)const{return memBased;}
-	///
-	std::vector<char> * get_pBuffer(size_t buf_size=PIX_BUFFER_PREFERRED_SIZE);
-
-    /// function returns numnber of pixels (dataPoints) contributiong into the MD-dataset; The pixels may be on HDD or in memory  
-    uint64_t getNumPixels(void)const{return n_data_points;}
-    /// get the size of the allocated data buffer (may or may not have valid data in it); Identify main memory footprint;
-	size_t getMemorySize()const{return DataBuffer.size();}
-    /** returns the size of the buffer allocated for pixels (the number of pixels possible to fit the buffer; 
-      * The actual size in bytes will depend on pixel size  -- see get memory size*/
-     size_t get_pix_bufSize(void)const;
-     /// the function provides memory footprint of the class in the form commont to other MD classes
-    size_t sizeofPixelBuffer(void)const{ return getMemorySize();}
-     /// get the pixel MDDataPoint size (in bytes)
-	unsigned int sizeofMDDataPoint(void)const{return pixDescription.sizeofMDDPoint();}
-   /// structure of an MDDataPoint
-    MDDataPointsDescription const & getMDPointDescription(void)const{return pixDescription;}
-
-  /// sets the datapoints based in file instead of memory; if memory was allocated for the data before, it should be freed and all data should be damped to HDD 
-  // TODO: implement it properly
-    virtual void set_file_based();
-	//**********************************************************************************************
-
-	/// function returns minimal value for dimension i
-    double &rPixMin(unsigned int i){return *(&box_min[0]+i);}
-    /// function returns maximal value for dimension i
-    double &rPixMax(unsigned int i){return *(&box_max[0]+i);}
-	//
-    /// get part of the dataset, specified by the vector of MDImage cell numbers. 
-    virtual size_t get_pix_subset(const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
-   /** function adds pixels,from the array of input pixels, selected by indexes in array of pix_selected to internal structure of data indexes 
-     which can be actually on HDD or in memory */
-    void store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels);
-
-
-    /** function returns the part of the colum-names which corresponds to the dimensions information;
-     * the order of the ID corresponds to the order of the data in the datatables */
-    std::vector<std::string> getDimensionsID(void)const{return pixDescription.getDimensionsID();}
- 
-  protected:
-
-  private:
-    /** the parameter identify if the class data are file or memory based
-     * usually it is HD based and memory used for small datasets, debugging
-     * or in a future when PC-s are big     */
-    bool memBased;
-	/// The class which describes the structure of sinle data point (pixel)
-	 MDDataPointsDescription pixDescription;
-    /// the data, describing the detector pixels(events, MDPoints etc.)
-    uint64_t  n_data_points;  //< number of data points contributing to dataset
-    /// size the data buffer in pixels (data_points) rather then in bytes as in DataBuffer.size();
-    size_t  data_buffer_size; 
-	/** the data buffer which keeps information on MDDataPoints(pixels) loaded to memory or provide space to loat these data
-	 all operations with change of this databuffer or modification of its contents should be done through the MDDPoints_MemManager */
-	std::vector<char> DataBuffer;
-
-    std::auto_ptr<MDDPoints_MemManager> pMemoryMGR;
-     /// minimal values of ranges the data pixels are in; size is nDimensions
-    std::vector<double> box_min;
-    /// maximal values of ranges the data pixels are in; size is nDimensions
-    std::vector<double> box_max;
-
-
-    // private for the time being but may be needed in a future
-    MDDataPoints(const MDDataPoints& p);
-    MDDataPoints & operator = (const MDDataPoints & other);
-    //Shared pointer Allows access to current geometry owned by MDImage
-    boost::shared_ptr<const MDImage> spMDImage; 
-    /** Shared pointer to the file reader responsible for data exchange with the data file. For input forkspace it has to be
-     *  initated by the data reader from the MDWorkspace and for the output workspace it may be initated by the factory if
-     * the memory is not sufficient to keep incoming pixels; It also has to be initated when (if) save workpace algorithm is called;
-     */
-    boost::shared_ptr<IMD_FileFormat> spFileReader;
-    /// Common logger for logging all MD Workspace operations;
-    static Kernel::Logger& g_log;
-
-
-   };
-}
-}
-#endif
+#ifndef H_MD_Pixels
+#define H_MD_Pixels
+
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MDDataObjects/MDDataPoint.h"
+#include "MDDataObjects/MD_FileFormatFactory.h"
+#include "MDDataObjects/MDDPoints_MemManager.h"
+#include "MantidAPI/MemoryManager.h"
+#include <boost/shared_ptr.hpp>
+
+/** Class to support operations on single data pixels, as obtained from the instrument.
+ *  Currently it contains information on the location of the pixel in
+    the reciprocal space but this can change as this information
+    can be computed at the run time.
+    
+    @author Alex Buts, RAL ISIS
+    @date 01/10/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid
+{
+
+namespace MDDataObjects
+{
+
+//* MDPixels
+//********************************************************************************************************************************************************************
+struct MDPointsLocations
+{
+    size_t   n_data_points;
+    uint64_t points_location;
+    MDPointsLocations():n_data_points(0),points_location(0){};
+};
+//********************************************************************************************************************************************************************
+  class MDImage;
+  class MDDataPointsDescription: public MDPointDescription
+  {
+  public:
+	  MDDataPointsDescription(const MDPointDescription &descr):
+	  /// this one describes structure of single pixel as it is defined and written on HDD
+      MDPointDescription(descr)
+	  { }
+  private:
+	  // this has not been defined at the moment, but will provide the description for possible lookup tables
+	  std::vector<double> lookup_tables;
+  };
+  
+  //**********************************************************************************************************************
+  class DLLExport MDDataPoints
+  {
+  public:
+    MDDataPoints(const MDDataPointsDescription &description);
+    virtual ~MDDataPoints();
+/******************************************************************************************************
+    /** initialises MDDataPoints, as file-based structure;
+	  *  allocates all necessary arrays and provides it with  valid data reader; 
+      * if the input dataReader is absent, the function initializes its own dataReader and sets output 
+      * temporary scrach file to accept pixels data 
+     */
+	virtual void initialize(boost::shared_ptr<const MDImage> spImage,boost::shared_ptr<IMD_FileFormat> in_spFile);
+    // initialises MDDataPoints as memory based; it will switch to fileBased later
+	virtual void initialize(boost::shared_ptr<const MDImage> pMDImage);
+   
+	/// return file current file reader (should we let the factory to remember them and return on request?
+    virtual boost::shared_ptr<IMD_FileFormat> getFileReader(void)const{return this->spFileReader;}
+    /// check if the MDDataPoints class is initialized;
+    bool is_initialized(void)const;
+
+	//*********>  MEMORY  <*************************************************************************
+    /// check if the pixels are all in memory;
+    bool isMemoryBased(void)const{return memBased;}
+	///
+	std::vector<char> * get_pBuffer(size_t buf_size=PIX_BUFFER_PREFERRED_SIZE);
+
+    /// function returns numnber of pixels (dataPoints) contributiong into the MD-dataset; The pixels may be on HDD or in memory  
+    uint64_t getNumPixels(void)const{return n_data_points;}
+    /// get the size of the allocated data buffer (may or may not have valid data in it); Identify main memory footprint;
+	size_t getMemorySize()const{return DataBuffer.size();}
+    /** returns the size of the buffer allocated for pixels (the number of pixels possible to fit the buffer; 
+      * The actual size in bytes will depend on pixel size  -- see get memory size*/
+     size_t get_pix_bufSize(void)const;
+     /// the function provides memory footprint of the class in the form commont to other MD classes
+    size_t sizeofPixelBuffer(void)const{ return getMemorySize();}
+     /// get the pixel MDDataPoint size (in bytes)
+	unsigned int sizeofMDDataPoint(void)const{return pixDescription.sizeofMDDPoint();}
+   /// structure of an MDDataPoint
+    MDDataPointsDescription const & getMDPointDescription(void)const{return pixDescription;}
+
+  /// sets the datapoints based in file instead of memory; if memory was allocated for the data before, it should be freed and all data should be damped to HDD 
+  // TODO: implement it properly
+    virtual void set_file_based();
+	//**********************************************************************************************
+
+	/// function returns minimal value for dimension i
+    double &rPixMin(unsigned int i){return *(&box_min[0]+i);}
+    /// function returns maximal value for dimension i
+    double &rPixMax(unsigned int i){return *(&box_max[0]+i);}
+	//
+    /// get part of the dataset, specified by the vector of MDImage cell numbers. 
+    virtual size_t get_pix_subset(const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
+   /** function adds pixels,from the array of input pixels, selected by indexes in array of pix_selected to internal structure of data indexes 
+     which can be actually on HDD or in memory */
+    void store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels);
+
+
+    /** function returns the part of the colum-names which corresponds to the dimensions information;
+     * the order of the ID corresponds to the order of the data in the datatables */
+    std::vector<std::string> getDimensionsID(void)const{return pixDescription.getDimensionsID();}
+ 
+  protected:
+
+  private:
+    /** the parameter identify if the class data are file or memory based
+     * usually it is HD based and memory used for small datasets, debugging
+     * or in a future when PC-s are big     */
+    bool memBased;
+	/// The class which describes the structure of sinle data point (pixel)
+	 MDDataPointsDescription pixDescription;
+    /// the data, describing the detector pixels(events, MDPoints etc.)
+    uint64_t  n_data_points;  //< number of data points contributing to dataset
+    /// size the data buffer in pixels (data_points) rather then in bytes as in DataBuffer.size();
+    size_t  data_buffer_size; 
+	/** the data buffer which keeps information on MDDataPoints(pixels) loaded to memory or provide space to loat these data
+	 all operations with change of this databuffer or modification of its contents should be done through the MDDPoints_MemManager */
+	std::vector<char> DataBuffer;
+
+    std::auto_ptr<MDDPoints_MemManager> pMemoryMGR;
+     /// minimal values of ranges the data pixels are in; size is nDimensions
+    std::vector<double> box_min;
+    /// maximal values of ranges the data pixels are in; size is nDimensions
+    std::vector<double> box_max;
+
+
+    // private for the time being but may be needed in a future
+    MDDataPoints(const MDDataPoints& p);
+    MDDataPoints & operator = (const MDDataPoints & other);
+    //Shared pointer Allows access to current geometry owned by MDImage
+    boost::shared_ptr<const MDImage> spMDImage; 
+    /** Shared pointer to the file reader responsible for data exchange with the data file. For input forkspace it has to be
+     *  initated by the data reader from the MDWorkspace and for the output workspace it may be initated by the factory if
+     * the memory is not sufficient to keep incoming pixels; It also has to be initated when (if) save workpace algorithm is called;
+     */
+    boost::shared_ptr<IMD_FileFormat> spFileReader;
+    /// Common logger for logging all MD Workspace operations;
+    static Kernel::Logger& g_log;
+
+
+   };
+}
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImage.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImage.h
index 4852608009cec2471ed5b0f22c1c1d3d9e6c4fdf..63d5c4e7a51a9683f96550bbc5ca9a5b54f285e9 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImage.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImage.h
@@ -1,189 +1,189 @@
-#ifndef MD_IMAGE_H
-#define MD_IMAGE_H
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-
-#include "MDDataObjects/stdafx.h"
-#include "MDDataObjects/IMD_FileFormat.h"
-#include "MDDataObjects/MDImageDatatypes.h"
-#include <boost/shared_ptr.hpp>
-
-
-
-/**
- * The kernel of the main class for visualisation and analysis operations,
- * which keeps the data itself and brief information about the data dimensions
- * (its organisation in the 1D array)
- *
- * This is equivalent of multidimensional Horace dataset without detailed pixel
- * information (the largest part of dnd dataset).
- *
- *
- * Note, Janik Zikovsky: It is my understanding that:
- *
- * MDImage is a dense representation of a specific slice of a larger data set,
- * generated from a MDWorkspace by (some kind of) rebinning algorithm.
- *
-
-    @author Alex Buts, RAL ISIS
-    @date 28/09/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-namespace Mantid{
-    namespace MDDataObjects{
-//
-class DLLExport MDImage
-{
-public:
-    /// Embedded type information
-    typedef Mantid::Geometry::MDGeometry GeometryType;
-
-    /// default constructor
-    MDImage(Mantid::Geometry::MDGeometry* p_MDGeometry=NULL);
-	/// the constructor which builds empty image from geometry the description (calling proper geometry initialise inside)
-    MDImage(const Geometry::MDGeometryDescription &Description, const Geometry::MDGeometryBasis & pBasis);
-    // destructor
-    virtual ~MDImage();
-//**********************************************************************************************************************************
-// Functions to obtain parts of MD image as 3D points for visualisation:
-// 
-    /** function returns vector of points left after the selection has been applied to the multidimensinal image
-	*
-    * @param selection :: -- vector of indexes, which specify which dimensions are selected and the location of the selected point
-    *                     e.g. selection[0]=10 -- selects the index 10 in the last expanded dimension or
-    *                     selection.assign(2,10) for 4-D dataset lead to 2D image extracted from 4D image at range of points (:,:,10,10);
-    *                     throws if attempeted to select more dimensions then the number of expanded dimensions
-	*                     if the selection index extends beyond of range for an dimension, function returns last point in this dimension.
-    */
-    void getPointData(const std::vector<unsigned int> &selection,std::vector<point3D> & image_data)const;
-    /// the same as getPointData(std::vector<unsigned int> &selection) but select inial (0) coordinates for all dimensions > 3
-    void getPointData(std::vector<point3D> & image_data)const;
-    /// returns the size of the Image array as 1D array (number of cells)
-    size_t getDataSize(void)const{return MD_IMG_array.data_size;}
-	/// returns the size occupied by the data part of the MD_IMG_array;
-    virtual long getMemorySize()const{return MD_IMG_array.data_array_size*sizeof(MD_image_point);}
-   ///
-    Geometry::MDGeometry * const getGeometry() const { return pMDGeometry.get(); }
- //******************************************************************************************************
-//******************************************************************************************************
-    /** initialises image, build with empty constructor, to working state. 
-	 *  If called on existing image, ignores basis and tries to reshape image as stated in description	*/
-	virtual void initialize(const Geometry::MDGeometryDescription &Description, const Geometry::MDGeometryBasis *const pBasis=NULL);
-	bool is_initialized(void)const;
-    /// get acces to the internal image dataset for further modifications; throws if dataset is undefinded;
-    MD_image_point      * get_pData(void);
-	MD_image_point const* get_const_pData(void)const;
-    /// get acces to the whole MD Image data structure;
-    MD_img_data         * get_pMDImgData(void){return &MD_IMG_array;}
-    MD_img_data  const  & get_MDImgData(void)const{return MD_IMG_array;}
-	//*****************************************************************************************************************************************************************
-	// IMPORTANT non-trivial functions for an algorithm developer:
-	//
-	/** function returns the number of primary pixels (MDdatapoints, events) contributed into the image. it is used to verify if the image has been read properly or
-	*  read at all and is consistent with the MDDataPoints class in the workspace, because the image is used to calculate the the locations of the MDDataPoints in 
-	*  the memory and on HDD. As the image and MDDataPoinsts classes were separated 
-	*  artificially to fit Mantid concepts, a writer of any algorithm which change image have to use correct procedures (below) to modify number of MDDPoints contributing into the image
-	*  to be sure that the number of the contributing points is actually equal to the sum of all npix fields in MD_image_point *data array */
-	uint64_t getNMDDPoints()const{return MD_IMG_array.npixSum;}
-	/** the function used to verify if the npixSum is indeed equal to the sum of all npix fields in MDImage data array; It runs sum of all pixels in image and if this sum is not equal to 
-	 *  actual npixSum, sets the value of MD_IMG_array.npixSum to actual sum of pixels and throws std::invalid_arguments which can be catched and dealt upon */
-	void validateNPix(void);
-	/** function has to be used by algorithms which change the values of the particular MDDataFiels to modify the value of the pixels sum*/
-	void setNpix(uint64_t newNPix){MD_IMG_array.npixSum=newNPix;}
-//*****************************************************************************************************************************************************************
-  //Temporary fix to get 1-D image data
-	MD_image_point getPoint(int index)
-	{
-	  return this->MD_IMG_array.data[index];
-	}
-
-	//Temporary fix to get 3-D image data.
-	MD_image_point getPoint(int i,int j)       const
-	{
-	  return this->MD_IMG_array.data[nCell(i, j)];
-	}
-
-	//Temporary fix to get 3-D image data.
-   MD_image_point getPoint(int i,int j,int k)       const
-   {
-     return this->MD_IMG_array.data[nCell(i, j, k)];
-   }
-
-   //Temporary fix to get4-D image data.
-   MD_image_point getPoint(int i, int j, int k, int t) const
-   {
-     return this->MD_IMG_array.data[nCell(i, j, k, t)];
-   }
-
-  /// get signal as 1D array; Generally for debug purposes or in case of 1D image;
-  double  getSignal(size_t i)     const
-  {
-     return this->MD_IMG_array.data[i].s;
-  }
- 
- protected:
-    // dimensions strides in linear order; formulated in this way for faster access;
-    size_t nd2,nd3,nd4,nd5,nd6,nd7,nd8,nd9,nd10,nd11;
-
-//*************************************************
-//*************************************************
- //
- // location of cell in 1D data array shaped as 4 or less dimensional array;
-     size_t nCell(int i)                    const{ return (i);}
-     size_t nCell(int i,int j)              const{ return (i+j*nd2); }
-     size_t nCell(int i,int j,int k)        const{ return (i+j*nd2+k*nd3); }
-     size_t nCell(int i,int j,int k, int n) const{ return (i+j*nd2+k*nd3+n*nd4);}
-
-/// MD workspace logger
-     static Kernel::Logger& g_log;
-
-private:
- 
-
-  std::auto_ptr<Geometry::MDGeometry> pMDGeometry;
-//
-   MD_img_data    MD_IMG_array;
- 
-
-  // probably temporary
-  MDImage & operator = (const MDImage & other);
-  // copy constructor;
-  MDImage(const MDImage & other);
-
-    /** function reshapes the geomerty of the array according to the pAxis array request; resets the data size in total MD_IMG_array  */
-    void reshape_geometry(const Geometry::MDGeometryDescription &transf);
-
-/// Clear all allocated memory as in the destructor; user usually do not need to call this function unless wants to clear image manually and then initiate it again
-///	Otherwise it used internaly for reshaping the object for e.g. changing from defaults to something else. 
-    void clear_class();
-	/// function allocates memory for the MD image and resets all necessary auxilary settings;
-	void alloc_image_data();
-	/// function sets the shape of existing MD array according to MDGeometry;
-	void set_imgArray_shape();
-};
-typedef boost::shared_ptr<Mantid::MDDataObjects::MDImage> MDImage_sptr;
-//
-}
-}
-#endif
+#ifndef MD_IMAGE_H
+#define MD_IMAGE_H
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+
+#include "MDDataObjects/stdafx.h"
+#include "MDDataObjects/IMD_FileFormat.h"
+#include "MDDataObjects/MDImageDatatypes.h"
+#include <boost/shared_ptr.hpp>
+
+
+
+/**
+ * The kernel of the main class for visualisation and analysis operations,
+ * which keeps the data itself and brief information about the data dimensions
+ * (its organisation in the 1D array)
+ *
+ * This is equivalent of multidimensional Horace dataset without detailed pixel
+ * information (the largest part of dnd dataset).
+ *
+ *
+ * Note, Janik Zikovsky: It is my understanding that:
+ *
+ * MDImage is a dense representation of a specific slice of a larger data set,
+ * generated from a MDWorkspace by (some kind of) rebinning algorithm.
+ *
+
+    @author Alex Buts, RAL ISIS
+    @date 28/09/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+namespace Mantid{
+    namespace MDDataObjects{
+//
+class DLLExport MDImage
+{
+public:
+    /// Embedded type information
+    typedef Mantid::Geometry::MDGeometry GeometryType;
+
+    /// default constructor
+    MDImage(Mantid::Geometry::MDGeometry* p_MDGeometry=NULL);
+	/// the constructor which builds empty image from geometry the description (calling proper geometry initialise inside)
+    MDImage(const Geometry::MDGeometryDescription &Description, const Geometry::MDGeometryBasis & pBasis);
+    // destructor
+    virtual ~MDImage();
+//**********************************************************************************************************************************
+// Functions to obtain parts of MD image as 3D points for visualisation:
+// 
+    /** function returns vector of points left after the selection has been applied to the multidimensinal image
+	*
+    * @param selection :: -- vector of indexes, which specify which dimensions are selected and the location of the selected point
+    *                     e.g. selection[0]=10 -- selects the index 10 in the last expanded dimension or
+    *                     selection.assign(2,10) for 4-D dataset lead to 2D image extracted from 4D image at range of points (:,:,10,10);
+    *                     throws if attempeted to select more dimensions then the number of expanded dimensions
+	*                     if the selection index extends beyond of range for an dimension, function returns last point in this dimension.
+    */
+    void getPointData(const std::vector<unsigned int> &selection,std::vector<point3D> & image_data)const;
+    /// the same as getPointData(std::vector<unsigned int> &selection) but select inial (0) coordinates for all dimensions > 3
+    void getPointData(std::vector<point3D> & image_data)const;
+    /// returns the size of the Image array as 1D array (number of cells)
+    size_t getDataSize(void)const{return MD_IMG_array.data_size;}
+	/// returns the size occupied by the data part of the MD_IMG_array;
+    virtual long getMemorySize()const{return MD_IMG_array.data_array_size*sizeof(MD_image_point);}
+   ///
+    Geometry::MDGeometry * const getGeometry() const { return pMDGeometry.get(); }
+ //******************************************************************************************************
+//******************************************************************************************************
+    /** initialises image, build with empty constructor, to working state. 
+	 *  If called on existing image, ignores basis and tries to reshape image as stated in description	*/
+	virtual void initialize(const Geometry::MDGeometryDescription &Description, const Geometry::MDGeometryBasis *const pBasis=NULL);
+	bool is_initialized(void)const;
+    /// get acces to the internal image dataset for further modifications; throws if dataset is undefinded;
+    MD_image_point      * get_pData(void);
+	MD_image_point const* get_const_pData(void)const;
+    /// get acces to the whole MD Image data structure;
+    MD_img_data         * get_pMDImgData(void){return &MD_IMG_array;}
+    MD_img_data  const  & get_MDImgData(void)const{return MD_IMG_array;}
+	//*****************************************************************************************************************************************************************
+	// IMPORTANT non-trivial functions for an algorithm developer:
+	//
+	/** function returns the number of primary pixels (MDdatapoints, events) contributed into the image. it is used to verify if the image has been read properly or
+	*  read at all and is consistent with the MDDataPoints class in the workspace, because the image is used to calculate the the locations of the MDDataPoints in 
+	*  the memory and on HDD. As the image and MDDataPoinsts classes were separated 
+	*  artificially to fit Mantid concepts, a writer of any algorithm which change image have to use correct procedures (below) to modify number of MDDPoints contributing into the image
+	*  to be sure that the number of the contributing points is actually equal to the sum of all npix fields in MD_image_point *data array */
+	uint64_t getNMDDPoints()const{return MD_IMG_array.npixSum;}
+	/** the function used to verify if the npixSum is indeed equal to the sum of all npix fields in MDImage data array; It runs sum of all pixels in image and if this sum is not equal to 
+	 *  actual npixSum, sets the value of MD_IMG_array.npixSum to actual sum of pixels and throws std::invalid_arguments which can be catched and dealt upon */
+	void validateNPix(void);
+	/** function has to be used by algorithms which change the values of the particular MDDataFiels to modify the value of the pixels sum*/
+	void setNpix(uint64_t newNPix){MD_IMG_array.npixSum=newNPix;}
+//*****************************************************************************************************************************************************************
+  //Temporary fix to get 1-D image data
+	MD_image_point getPoint(int index)
+	{
+	  return this->MD_IMG_array.data[index];
+	}
+
+	//Temporary fix to get 3-D image data.
+	MD_image_point getPoint(int i,int j)       const
+	{
+	  return this->MD_IMG_array.data[nCell(i, j)];
+	}
+
+	//Temporary fix to get 3-D image data.
+   MD_image_point getPoint(int i,int j,int k)       const
+   {
+     return this->MD_IMG_array.data[nCell(i, j, k)];
+   }
+
+   //Temporary fix to get4-D image data.
+   MD_image_point getPoint(int i, int j, int k, int t) const
+   {
+     return this->MD_IMG_array.data[nCell(i, j, k, t)];
+   }
+
+  /// get signal as 1D array; Generally for debug purposes or in case of 1D image;
+  double  getSignal(size_t i)     const
+  {
+     return this->MD_IMG_array.data[i].s;
+  }
+ 
+ protected:
+    // dimensions strides in linear order; formulated in this way for faster access;
+    size_t nd2,nd3,nd4,nd5,nd6,nd7,nd8,nd9,nd10,nd11;
+
+//*************************************************
+//*************************************************
+ //
+ // location of cell in 1D data array shaped as 4 or less dimensional array;
+     size_t nCell(int i)                    const{ return (i);}
+     size_t nCell(int i,int j)              const{ return (i+j*nd2); }
+     size_t nCell(int i,int j,int k)        const{ return (i+j*nd2+k*nd3); }
+     size_t nCell(int i,int j,int k, int n) const{ return (i+j*nd2+k*nd3+n*nd4);}
+
+/// MD workspace logger
+     static Kernel::Logger& g_log;
+
+private:
+ 
+
+  std::auto_ptr<Geometry::MDGeometry> pMDGeometry;
+//
+   MD_img_data    MD_IMG_array;
+ 
+
+  // probably temporary
+  MDImage & operator = (const MDImage & other);
+  // copy constructor;
+  MDImage(const MDImage & other);
+
+    /** function reshapes the geomerty of the array according to the pAxis array request; resets the data size in total MD_IMG_array  */
+    void reshape_geometry(const Geometry::MDGeometryDescription &transf);
+
+/// Clear all allocated memory as in the destructor; user usually do not need to call this function unless wants to clear image manually and then initiate it again
+///	Otherwise it used internaly for reshaping the object for e.g. changing from defaults to something else. 
+    void clear_class();
+	/// function allocates memory for the MD image and resets all necessary auxilary settings;
+	void alloc_image_data();
+	/// function sets the shape of existing MD array according to MDGeometry;
+	void set_imgArray_shape();
+};
+typedef boost::shared_ptr<Mantid::MDDataObjects::MDImage> MDImage_sptr;
+//
+}
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImageDatatypes.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImageDatatypes.h
index 8e765bbb38849899cada35aa42d72fb471bbcb2d..94c4bd38c4376126833924cdb2cda3246a7fb5f4 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImageDatatypes.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDImageDatatypes.h
@@ -1,107 +1,107 @@
-#ifndef MD_IMAGE_DATATYPES_H
-#define MD_IMAGE_DATATYPES_H
-#include <vector>
-// to get uint64_t datatype
-#include <MantidKernel/System.h>
-/** The header contains the description of the datatypes, used by MDImage
- * There are currently three structures:
- <ul>
- * <li><b> MD_image_point</b> -- the structure describiung single point(cell) in multidimensional image array </li>
- * <li><b> MD_img_data   </b> -- the structure holding MD dimensional array above plus some additional information 
-                                  about this array, like min, max and extend in each dimensions </li>
- * <li><b> point3D       </b>   -- Point3D short class used for visualisation purposes, through casting MD-point into 3D space
- *                                 effective casting involves dealing with sequence of points so, nothing big or essential in the class.  </li>
- </ul>
- * 
- * 
- *
-
-    @author Alex Buts, RAL ISIS
-    @date 28/09/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid{
-       namespace MDDataObjects{
-/** the structure describes an cell of MD_image array
-     the connectivity of this point with other ppoints of this array can be established using MDGeometry
-  */
-struct MD_image_point
-{
-        double      s;    // signal 
-        double     err;   // error
-        uint64_t   npix;  // numer of data points (pixels) contributed into this point;
-		MD_image_point():s(0),err(0),npix(0){}
-};
-
-/// structure of the multidimension data array, which is the basis of MDData class and should be exposed to modyfying algorighms
-struct MD_img_data{
-    size_t data_size;              ///< size of the data points array expressed as 1D array (number of data cells);
-	size_t data_array_size;        ///< size of allocated part of MD_Image_point *data block (may be bigger then data_size)
-    MD_image_point *data;           ///< multidimensional array of image cells, represented as a single dimensional array;
-	uint64_t npixSum;              ///< sum of all npix fields in the data array; Used to check if the image is consistent with MDDPoints;
-    // descriptors for dimensions;
-    std::vector<size_t>dimStride;
-    std::vector<size_t>dimSize;     ///< number of bin in this dimension
-	// Min-max values for real data should sit with MDData points
-    std::vector<double> min_value;  /**< min value of cut upplied in the selected dimension   -- should be the range set in geometry*/ 
-    std::vector<double> max_value;  /**< max value of data extend in the selected dimension  */
-    MD_img_data():data_size(0),data_array_size(0),data(NULL),npixSum(0){}
-
-};
-
-//*  the class descrines a point in 3D space and how you can cast an N-d point into it
-class DLLExport point3D
-{
-
-public:
-    point3D(void):x(0),y(0),z(0){};
-    point3D(double x0, double y0, double z0):x(x0),y(y0),z(z0),s(0){};
-
-    ~point3D(){};
-
-    inline double GetX() const{return x;}
-    inline double GetY() const{return y;}
-    inline double GetZ() const{return z;}
-    double GetS()const{return s;}
- //   double GetErr()const{return err;}
- //   unsigned int GetNpix()const{return npix;}
-
-    double &X(){return x;}
-    double &Y(){return y;}
-    double &Z(){return z;}
-    double &S(){return s;}
- //   double &Err(){return err;}
- //   unsigned long &Npix(){return npix;}
-	point3D &operator=(const  MD_image_point &data){
-		this->s  = data.s;
-		return *this;
-	}
- private:
-    double x,y,z;
-    double s;   // signal field;
- 
-};
-
-}
-}
-#endif
+#ifndef MD_IMAGE_DATATYPES_H
+#define MD_IMAGE_DATATYPES_H
+#include <vector>
+// to get uint64_t datatype
+#include <MantidKernel/System.h>
+/** The header contains the description of the datatypes, used by MDImage
+ * There are currently three structures:
+ <ul>
+ * <li><b> MD_image_point</b> -- the structure describiung single point(cell) in multidimensional image array </li>
+ * <li><b> MD_img_data   </b> -- the structure holding MD dimensional array above plus some additional information 
+                                  about this array, like min, max and extend in each dimensions </li>
+ * <li><b> point3D       </b>   -- Point3D short class used for visualisation purposes, through casting MD-point into 3D space
+ *                                 effective casting involves dealing with sequence of points so, nothing big or essential in the class.  </li>
+ </ul>
+ * 
+ * 
+ *
+
+    @author Alex Buts, RAL ISIS
+    @date 28/09/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid{
+       namespace MDDataObjects{
+/** the structure describes an cell of MD_image array
+     the connectivity of this point with other ppoints of this array can be established using MDGeometry
+  */
+struct MD_image_point
+{
+        double      s;    // signal 
+        double     err;   // error
+        uint64_t   npix;  // numer of data points (pixels) contributed into this point;
+		MD_image_point():s(0),err(0),npix(0){}
+};
+
+/// structure of the multidimension data array, which is the basis of MDData class and should be exposed to modyfying algorighms
+struct MD_img_data{
+    size_t data_size;              ///< size of the data points array expressed as 1D array (number of data cells);
+	size_t data_array_size;        ///< size of allocated part of MD_Image_point *data block (may be bigger then data_size)
+    MD_image_point *data;           ///< multidimensional array of image cells, represented as a single dimensional array;
+	uint64_t npixSum;              ///< sum of all npix fields in the data array; Used to check if the image is consistent with MDDPoints;
+    // descriptors for dimensions;
+    std::vector<size_t>dimStride;
+    std::vector<size_t>dimSize;     ///< number of bin in this dimension
+	// Min-max values for real data should sit with MDData points
+    std::vector<double> min_value;  /**< min value of cut upplied in the selected dimension   -- should be the range set in geometry*/ 
+    std::vector<double> max_value;  /**< max value of data extend in the selected dimension  */
+    MD_img_data():data_size(0),data_array_size(0),data(NULL),npixSum(0){}
+
+};
+
+//*  the class descrines a point in 3D space and how you can cast an N-d point into it
+class DLLExport point3D
+{
+
+public:
+    point3D(void):x(0),y(0),z(0){};
+    point3D(double x0, double y0, double z0):x(x0),y(y0),z(z0),s(0){};
+
+    ~point3D(){};
+
+    inline double GetX() const{return x;}
+    inline double GetY() const{return y;}
+    inline double GetZ() const{return z;}
+    double GetS()const{return s;}
+ //   double GetErr()const{return err;}
+ //   unsigned int GetNpix()const{return npix;}
+
+    double &X(){return x;}
+    double &Y(){return y;}
+    double &Z(){return z;}
+    double &S(){return s;}
+ //   double &Err(){return err;}
+ //   unsigned long &Npix(){return npix;}
+	point3D &operator=(const  MD_image_point &data){
+		this->s  = data.s;
+		return *this;
+	}
+ private:
+    double x,y,z;
+    double s;   // signal field;
+ 
+};
+
+}
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDTestWorkspace.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDTestWorkspace.h
index 9bf890095713dc94493b1d41129cbf5b16a56838..ab54bddd3f4d9a761c01150bb7530da73c54c82d 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDTestWorkspace.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDTestWorkspace.h
@@ -1,92 +1,92 @@
-#ifndef MD_TEST_WORKSPACE_H
-#define MD_TEST_WORKSPACE_H
-
-#include "MDDataObjects/MDWorkspace.h"
-#include "MDDataObjects/MD_FileTestDataGenerator.h"
-
-/**  Class builds a workspace filled with test data points. It repeats the logic of an load algorithm, but separated 
-     here for fast data access;
-     The class intended to test use an algorithm on a huge datasets without caring about an IO operations
-
-    @author Alex Buts, RAL ISIS
-    @date 21/01/2011
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-
-*/
-
-
-namespace Mantid
-{
-namespace MDDataObjects
-{
-
-class MDTestWorkspace
-{
-   // auxiliary variables extracted from workspace;
-    IMD_FileFormat           * pReader;
-    MDDataPoints             * pMDDPoints;
-    MDImage                  * pMDImg;
-  // workspace itself
-    MDWorkspace_sptr spMDWs;
-
-    void createTestWorkspace(IMD_FileFormat *pReader){
-    // shared pointers are related to the objects, which are referenced within another objects, and auto-pointers -- to the single 
-        std::auto_ptr<Geometry::MDGeometryBasis> pBasis;
-        // create emtpy geometry and initiate it with the basis generated by a test file reader;
-        pBasis = std::auto_ptr<Geometry::MDGeometryBasis>(new Geometry::MDGeometryBasis());
-        pReader->read_basis(*pBasis);
-
-        // read a geometry description from an test data reader
-        Geometry::MDGeometryDescription geomDescr(pBasis->getNumDims(),pBasis->getNumReciprocalDims());
-        pReader->read_MDGeomDescription(geomDescr);
-
-//		pReader->read_MDImg_data(
-
-        // read test point description 
-        //TODO: The test point description is correlated with rebinning algorithm. Decorrelate
-        MDPointDescription pd = pReader->read_pointDescriptions();
-
-        // create and initate new workspace with data above .
-        spMDWs = MDWorkspace_sptr(new MDWorkspace());
-        spMDWs->init(std::auto_ptr<IMD_FileFormat>(pReader),pBasis,geomDescr,pd);
-
-         pMDImg                    = spMDWs->get_spMDImage().get();
-         pMDDPoints                = spMDWs->get_spMDDPoints().get();
-
-         // tries to read all MDPoints in memory; It is impossible here, so it sets the workspace location to not in memory;
-         pReader->read_pix(*pMDDPoints);
-     
-    }
-public:
-    MDTestWorkspace() {
-        pReader=new MD_FileTestDataGenerator("testFile");
-        createTestWorkspace(pReader);
-    }
-
-    ~MDTestWorkspace(){
-     }
-    MDWorkspace_sptr get_spWS(){return spMDWs;}
-};
-
-} // end namespaces;
-}
+#ifndef MD_TEST_WORKSPACE_H
+#define MD_TEST_WORKSPACE_H
+
+#include "MDDataObjects/MDWorkspace.h"
+#include "MDDataObjects/MD_FileTestDataGenerator.h"
+
+/**  Class builds a workspace filled with test data points. It repeats the logic of an load algorithm, but separated 
+     here for fast data access;
+     The class intended to test use an algorithm on a huge datasets without caring about an IO operations
+
+    @author Alex Buts, RAL ISIS
+    @date 21/01/2011
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+
+*/
+
+
+namespace Mantid
+{
+namespace MDDataObjects
+{
+
+class MDTestWorkspace
+{
+   // auxiliary variables extracted from workspace;
+    IMD_FileFormat           * pReader;
+    MDDataPoints             * pMDDPoints;
+    MDImage                  * pMDImg;
+  // workspace itself
+    MDWorkspace_sptr spMDWs;
+
+    void createTestWorkspace(IMD_FileFormat *pReader){
+    // shared pointers are related to the objects, which are referenced within another objects, and auto-pointers -- to the single 
+        std::auto_ptr<Geometry::MDGeometryBasis> pBasis;
+        // create emtpy geometry and initiate it with the basis generated by a test file reader;
+        pBasis = std::auto_ptr<Geometry::MDGeometryBasis>(new Geometry::MDGeometryBasis());
+        pReader->read_basis(*pBasis);
+
+        // read a geometry description from an test data reader
+        Geometry::MDGeometryDescription geomDescr(pBasis->getNumDims(),pBasis->getNumReciprocalDims());
+        pReader->read_MDGeomDescription(geomDescr);
+
+//		pReader->read_MDImg_data(
+
+        // read test point description 
+        //TODO: The test point description is correlated with rebinning algorithm. Decorrelate
+        MDPointDescription pd = pReader->read_pointDescriptions();
+
+        // create and initate new workspace with data above .
+        spMDWs = MDWorkspace_sptr(new MDWorkspace());
+        spMDWs->init(std::auto_ptr<IMD_FileFormat>(pReader),pBasis,geomDescr,pd);
+
+         pMDImg                    = spMDWs->get_spMDImage().get();
+         pMDDPoints                = spMDWs->get_spMDDPoints().get();
+
+         // tries to read all MDPoints in memory; It is impossible here, so it sets the workspace location to not in memory;
+         pReader->read_pix(*pMDDPoints);
+     
+    }
+public:
+    MDTestWorkspace() {
+        pReader=new MD_FileTestDataGenerator("testFile");
+        createTestWorkspace(pReader);
+    }
+
+    ~MDTestWorkspace(){
+     }
+    MDWorkspace_sptr get_spWS(){return spMDWs;}
+};
+
+} // end namespaces;
+}
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspace.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspace.h
index 7a7ea020301f89dd409d6ed82716a9c6055003c7..7f841a419f0effe1ddc27b5bae52d1b817a12ef0 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspace.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspace.h
@@ -1,271 +1,271 @@
-#ifndef H_MD_WORKSPACE
-#define H_MD_WORKSPACE
-#include <map>
-#include "MDDataObjects/MDDataPoints.h"
-#include "MDDataObjects/MDImage.h"
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MantidAPI/IMDWorkspace.h"
-#include "MDDataObjects/IMD_FileFormat.h"
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MantidGeometry/Instrument/Instrument.h"
-
-
-/** MD-workspace -> main class which keeps all data objects necessary for work with 
-*   MD data used in visualisation and analysis
-*
-*  MDWorkspace: a workspace containing multidimensional scattering data.
-*  For instance, this may represent the data from a single run, transformed 
-*  to reciprocal space = 3 dimensions.
-*  Add an energy loss for inelastic instruments = 4 dimensions.
-*  Add another dimension, for example, Temperature = 5 dimensions.
-*
-*  A single MD workspace may combine the data from several runs.
-*
-*   There are 5 objects (components) intended to be here.
-*  <li> 1)  MD_basis describing a reciprocal lattice of a crystal + additional dimensions (e.g. energy exchange or temperature)</li>
-*  <li> 2)  MDImage composed of MD geometry and MD Image data itself </li>
-*  <li> 3)  MDDataPoints -- class responsible for providing all data obtained from experiments transformed to reciprocal space </li>
-*  <li> 4)  fileFormat   -- class providing reading/writing operations for all other classes -> supports different file formats </li>
-*  <li> 5)  InstrumentDescription -- neded for simulation and analysis; not implemented at the moment 
-TODO: implement  </li>
-*
-* The components provide interfaces to all workspace  public set functions
-* and to the one not included in separate components (like get_detectors)    (in a future)
-*
-
-
-@author Alex Buts, RAL ISIS
-@date 08/10/2010
-
-Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-This file is part of Mantid.
-
-Mantid is free software; you can redistribute it and/or modify
-it under the terms of the GNU General Public License as published by
-the Free Software Foundation; either version 3 of the License, or
-(at your option) any later version.
-
-Mantid is distributed in the hope that it will be useful,
-but WITHOUT ANY WARRANTY; without even the implied warranty of
-MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-GNU General Public License for more details.
-
-You should have received a copy of the GNU General Public License
-along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid
-{
-  namespace MDDataObjects
-  {
-
-    //Seam method
-    boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints> getDataPoints(boost::shared_ptr<MDImage> imageData);
-
-    //Seam method.
-    boost::shared_ptr<Mantid::MDDataObjects::MDImage> getImageData(const Mantid::Geometry::MDGeometry* geometry);
-
-    typedef std::map<size_t, Mantid::Geometry::MDPoint> MDPointMap;
-    typedef std::map<size_t, Mantid::Geometry::MDCell> MDCellMap;
-    class DLLExport MDWorkspace :  public API::IMDWorkspace
-    {
-    public:
-
-      MDWorkspace(unsigned int nDimensions=4,unsigned int nRecDims=3);
-
-      virtual size_t getMemorySize(void) const;
-
-      //  IMD workspace interface functions
-     /// return ID specifying the workspace kind
-      virtual const std::string id() const { return "MD-Workspace"; }
-      /// provides number of dimensions the workspace contains
-      virtual unsigned int getNumDims(void) const{return m_spMDImage->getGeometry()->getNumDims();}
-
-	  ///OBSOLETE? or should be modified as does not work properly at the moment  Total share pointers mess;
-      void init(boost::shared_ptr<IMD_FileFormat> spFile, Mantid::Geometry::MDGeometry* geometry);
-	  /** initialize from another workspace but with different MD image and (sub) set of data points; 
-	   the basis and the instrument description(s) are the same and copied from the source
-
-	   TODO: All set methods have to be ready to make copy-construction of the corresponding object and analyse reference counter if 
-	   shared pointers to be implemented. 
-
-	   file manager will be different so should come from somewhere. Probably from factory when requested
-	   save algorithm will have this file property and should create proper file manager.
-	   the workspace itself will allocate temporary file for its internal usage -- this file will be basis for final workspace file when saved;
-	   */
-	  void init(boost::shared_ptr<const MDWorkspace> SourceWorkspace,const Geometry::MDGeometryDescription *const transf=NULL);
-
-      /** Initialize on the basis of separate components */
-	  void init(std::auto_ptr<IMD_FileFormat> pFile,
-                std::auto_ptr<Geometry::MDGeometryBasis> pBasis,
-                const Geometry::MDGeometryDescription &geomDescr,
-                const MDPointDescription &pd);
-
-      virtual ~MDWorkspace(void)
-      {
-      };
-
-      /// read the the pixels corresponding to cells in the vector cell_num
-      size_t read_pix_selection(const std::vector<size_t> &cells_nums,size_t &start_cell,std::vector<char> &pix_buf,size_t &n_pix_in_buffer);
-
-      Mantid::Geometry::MDGeometry const * const getGeometry() const;
-      /// read MD image into memory TODO: do we still need this function? Let's try disable and see
-      // void read_MDImg();
-      /// read the whole pixels dataset in the memory
-      void read_pix(void);
-      /// function writes the MDD data using current file reader; if the file is not opened, a default file reader is used. 
-      void write_mdd();
-      /// function writes back MDD data to the existing dataset attached to the class;  Should throw if the size of the data changed (and this should not happen)
-      //    bool write_mdd(void);
-      /// get variois components of the workspace
-	  Mantid::Geometry::MDGeometryBasis &   get_const_MDBaisis()  const{return *(m_spMDBasis.get());}
-      Mantid::Geometry::MDGeometry      &   get_const_MDGeometry()const{return *(m_spMDImage->getGeometry());}
-      Mantid::MDDataObjects::MDImage    &   get_const_MDImage()   const{return *(m_spMDImage.get());}
-      Mantid::MDDataObjects::MDDataPoints & get_const_MDDPoints() const{return *(m_spDataPoints.get());}
-      IMD_FileFormat                      & get_const_FileReader()const{return *(m_spFile);}      
-
-	  // it seems we can not alow this for safety reasons; From other size, how algorithms  would modify this?
-	  // geometry should be unmutable from outside of workspace and withoug MDImageData;
-      //Mantid::Geometry::MDGeometry const *        get_spMDGeometry(){return m_spMDImage->getGeometry();}
-      boost::shared_ptr<Mantid::MDDataObjects::MDImage> get_spMDImage()      {return m_spMDImage;}
-      boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints>get_spMDDPoints(){return m_spDataPoints;}
-      IMD_FileFormat *                                  get_pFileReader(){return m_spFile.get();}
-
-	
-      
-        /// Gets the number of points(MDDataPoints, events) contributed to the workspace.
-      ///TODO: resolve -- do we need number of points contributed to workspace or availible in it -- > different things if we 
-      /// assume existence of DND objects
-      virtual uint64_t getNPoints() const;
-
+#ifndef H_MD_WORKSPACE
+#define H_MD_WORKSPACE
+#include <map>
+#include "MDDataObjects/MDDataPoints.h"
+#include "MDDataObjects/MDImage.h"
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MantidAPI/IMDWorkspace.h"
+#include "MDDataObjects/IMD_FileFormat.h"
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MantidGeometry/Instrument/Instrument.h"
+
+
+/** MD-workspace -> main class which keeps all data objects necessary for work with 
+*   MD data used in visualisation and analysis
+*
+*  MDWorkspace: a workspace containing multidimensional scattering data.
+*  For instance, this may represent the data from a single run, transformed 
+*  to reciprocal space = 3 dimensions.
+*  Add an energy loss for inelastic instruments = 4 dimensions.
+*  Add another dimension, for example, Temperature = 5 dimensions.
+*
+*  A single MD workspace may combine the data from several runs.
+*
+*   There are 5 objects (components) intended to be here.
+*  <li> 1)  MD_basis describing a reciprocal lattice of a crystal + additional dimensions (e.g. energy exchange or temperature)</li>
+*  <li> 2)  MDImage composed of MD geometry and MD Image data itself </li>
+*  <li> 3)  MDDataPoints -- class responsible for providing all data obtained from experiments transformed to reciprocal space </li>
+*  <li> 4)  fileFormat   -- class providing reading/writing operations for all other classes -> supports different file formats </li>
+*  <li> 5)  InstrumentDescription -- neded for simulation and analysis; not implemented at the moment 
+TODO: implement  </li>
+*
+* The components provide interfaces to all workspace  public set functions
+* and to the one not included in separate components (like get_detectors)    (in a future)
+*
+
+
+@author Alex Buts, RAL ISIS
+@date 08/10/2010
+
+Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+This file is part of Mantid.
+
+Mantid is free software; you can redistribute it and/or modify
+it under the terms of the GNU General Public License as published by
+the Free Software Foundation; either version 3 of the License, or
+(at your option) any later version.
+
+Mantid is distributed in the hope that it will be useful,
+but WITHOUT ANY WARRANTY; without even the implied warranty of
+MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid
+{
+  namespace MDDataObjects
+  {
+
+    //Seam method
+    boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints> getDataPoints(boost::shared_ptr<MDImage> imageData);
+
+    //Seam method.
+    boost::shared_ptr<Mantid::MDDataObjects::MDImage> getImageData(const Mantid::Geometry::MDGeometry* geometry);
+
+    typedef std::map<size_t, Mantid::Geometry::MDPoint> MDPointMap;
+    typedef std::map<size_t, Mantid::Geometry::MDCell> MDCellMap;
+    class DLLExport MDWorkspace :  public API::IMDWorkspace
+    {
+    public:
+
+      MDWorkspace(unsigned int nDimensions=4,unsigned int nRecDims=3);
+
+      virtual size_t getMemorySize(void) const;
+
+      //  IMD workspace interface functions
+     /// return ID specifying the workspace kind
+      virtual const std::string id() const { return "MD-Workspace"; }
+      /// provides number of dimensions the workspace contains
+      virtual unsigned int getNumDims(void) const{return m_spMDImage->getGeometry()->getNumDims();}
+
+	  ///OBSOLETE? or should be modified as does not work properly at the moment  Total share pointers mess;
+      void init(boost::shared_ptr<IMD_FileFormat> spFile, Mantid::Geometry::MDGeometry* geometry);
+	  /** initialize from another workspace but with different MD image and (sub) set of data points; 
+	   the basis and the instrument description(s) are the same and copied from the source
+
+	   TODO: All set methods have to be ready to make copy-construction of the corresponding object and analyse reference counter if 
+	   shared pointers to be implemented. 
+
+	   file manager will be different so should come from somewhere. Probably from factory when requested
+	   save algorithm will have this file property and should create proper file manager.
+	   the workspace itself will allocate temporary file for its internal usage -- this file will be basis for final workspace file when saved;
+	   */
+	  void init(boost::shared_ptr<const MDWorkspace> SourceWorkspace,const Geometry::MDGeometryDescription *const transf=NULL);
+
+      /** Initialize on the basis of separate components */
+	  void init(std::auto_ptr<IMD_FileFormat> pFile,
+                std::auto_ptr<Geometry::MDGeometryBasis> pBasis,
+                const Geometry::MDGeometryDescription &geomDescr,
+                const MDPointDescription &pd);
+
+      virtual ~MDWorkspace(void)
+      {
+      };
+
+      /// read the the pixels corresponding to cells in the vector cell_num
+      size_t read_pix_selection(const std::vector<size_t> &cells_nums,size_t &start_cell,std::vector<char> &pix_buf,size_t &n_pix_in_buffer);
+
+      Mantid::Geometry::MDGeometry const * const getGeometry() const;
+      /// read MD image into memory TODO: do we still need this function? Let's try disable and see
+      // void read_MDImg();
+      /// read the whole pixels dataset in the memory
+      void read_pix(void);
+      /// function writes the MDD data using current file reader; if the file is not opened, a default file reader is used. 
+      void write_mdd();
+      /// function writes back MDD data to the existing dataset attached to the class;  Should throw if the size of the data changed (and this should not happen)
+      //    bool write_mdd(void);
+      /// get variois components of the workspace
+	  Mantid::Geometry::MDGeometryBasis &   get_const_MDBaisis()  const{return *(m_spMDBasis.get());}
+      Mantid::Geometry::MDGeometry      &   get_const_MDGeometry()const{return *(m_spMDImage->getGeometry());}
+      Mantid::MDDataObjects::MDImage    &   get_const_MDImage()   const{return *(m_spMDImage.get());}
+      Mantid::MDDataObjects::MDDataPoints & get_const_MDDPoints() const{return *(m_spDataPoints.get());}
+      IMD_FileFormat                      & get_const_FileReader()const{return *(m_spFile);}      
+
+	  // it seems we can not alow this for safety reasons; From other size, how algorithms  would modify this?
+	  // geometry should be unmutable from outside of workspace and withoug MDImageData;
+      //Mantid::Geometry::MDGeometry const *        get_spMDGeometry(){return m_spMDImage->getGeometry();}
+      boost::shared_ptr<Mantid::MDDataObjects::MDImage> get_spMDImage()      {return m_spMDImage;}
+      boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints>get_spMDDPoints(){return m_spDataPoints;}
+      IMD_FileFormat *                                  get_pFileReader(){return m_spFile.get();}
+
+	
+      
+        /// Gets the number of points(MDDataPoints, events) contributed to the workspace.
+      ///TODO: resolve -- do we need number of points contributed to workspace or availible in it -- > different things if we 
+      /// assume existence of DND objects
+      virtual uint64_t getNPoints() const;
+
       /// Get the number of dimensions
       virtual int getNDimensions() const;
 
-      /// Get the x-dimension mapping.
-      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getXDimension() const;
-
-      /// Get the y-dimension mapping.
-      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getYDimension() const;
-
-      /// Get the z-dimension mapping.
-      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getZDimension() const;
-
-      /// Get the t-dimension mapping.
-      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> gettDimension() const;
-
-      /// Get the dimension with the specified id.
-      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getDimension(std::string id) const;
-
+      /// Get the x-dimension mapping.
+      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getXDimension() const;
+
+      /// Get the y-dimension mapping.
+      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getYDimension() const;
+
+      /// Get the z-dimension mapping.
+      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getZDimension() const;
+
+      /// Get the t-dimension mapping.
+      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> gettDimension() const;
+
+      /// Get the dimension with the specified id.
+      virtual boost::shared_ptr<const Mantid::Geometry::IMDDimension> getDimension(std::string id) const;
+
       /// Get the dimension ids in their order
       virtual const std::vector<std::string> getDimensionIDs() const;
 
-      /// Get the point at the specified index.
-      virtual const Mantid::Geometry::SignalAggregate& getPoint(unsigned int index) const;
-
-      /// Get the cell at the specified index/increment.
-      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment) const;
-
-      /// Get the cell at the specified index/increment.
-      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment, unsigned int dim2Increment) const;
-
-      /// Get the cell at the specified index/increment.
-      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment) const;
-
-      /// Get the cell at the specified index/increment.
-      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment, unsigned int dim4Increment) const;
-
-      /// Get the cell at the specified index/increment.
-      virtual const Mantid::Geometry::SignalAggregate& getCell(...) const;
-
-      /// Get the location of the workspace on disk, supports Horace implementation of rebinning.
-      virtual std::string getWSLocation() const;
-
-      /// Get the geometry xml.
-      virtual std::string getGeometryXML() const;
-
-      void setInstrument(const Mantid::Geometry::IInstrument_sptr& instr);
-
-    private:
-      /// Cache. Gives MDWorkspace ownership of MDPoints (as an IMDWorkspace), while allowing polymorphic behaviour.
-      /// Note this is NOT an optimized implementation yet, but it does support lazy instantiation.
-      mutable MDPointMap m_mdPointMap;
-      /// Cache. Gives MDWorkspace ownership of MDCells (as an IMDWorkspace), while allowing polymorphic behaviour.
-      /// Note this is NOT an optimized implementation yet, but it does support lazy instantiation.
-      mutable MDCellMap m_mdCellMap;
-
-      // Shared pointer to a base instrument.
-      mutable boost::shared_ptr<Mantid::Geometry::Instrument> sptr_instrument;
-
-      /// The instrument parameter map.
-      mutable boost::shared_ptr<Geometry::ParameterMap> m_parmap;
-
-      static Kernel::Logger& g_log;
-	  /// pointer to the geometry basis e.g. the unit cell of the bravis latice of the crystal and additional dimensions
-	  boost::shared_ptr<Mantid::Geometry::MDGeometryBasis> m_spMDBasis;
-      /// Pointer to MD Image of cells, which aslo provides the data 
-      boost::shared_ptr<Mantid::MDDataObjects::MDImage> m_spMDImage;
-
-      /// Internal data storage, class provides placement and IO (pack/unpack) operations for sparce array of data points.
-      boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints> m_spDataPoints;
-
-      /// Pointer to a file reader/writer
-      boost::shared_ptr<Mantid::MDDataObjects::IMD_FileFormat> m_spFile;
-      /// no copy constructor -- its meaning is unclear; 
-      MDWorkspace(const MDWorkspace &){};
-
-      /// Determine if a new IMDWorkspace MDCell is required.
-      inline bool newCellRequired(const size_t& singleDimensionIndex, const MD_image_point& mdImagePoint) const;
-
-     };
-
-    ///shared pointer to the MD workspace base class
-    typedef boost::shared_ptr<MDWorkspace> MDWorkspace_sptr;
-    ///shared pointer to the MD workspace base class (const version)
-    typedef boost::shared_ptr<const MDWorkspace> MDWorkspace_const_sptr;
-
-
-/// Non-member helper. Does not need access to private fields.
-/// Creates coordinates to represent cell in 4D given a set of dimensions
-Mantid::Geometry::VecCoordinate create4DPolyhedron(
-    unsigned int dim1Increment,
-    unsigned int dim2Increment,
-    unsigned int dim3Increment,
-    unsigned int dim4Increment,
-    Mantid::Geometry::IMDDimension_sptr xDimension,
-    Mantid::Geometry::IMDDimension_sptr yDimension,
-    Mantid::Geometry::IMDDimension_sptr zDimension,
-    Mantid::Geometry::IMDDimension_sptr tDimension);
-
-/// Non-member helper. Does not need access to private fields.
-/// Creates coordinates to represent cell in 3D given a set of dimensions
-Mantid::Geometry::VecCoordinate createPolyhedron(
-    unsigned int dim1Increment,
-    unsigned int dim2Increment,
-    unsigned int dim3Increment,
-    Mantid::Geometry::IMDDimension_sptr xDimension,
-    Mantid::Geometry::IMDDimension_sptr yDimension,
-    Mantid::Geometry::IMDDimension_sptr zDimension);
-
-/// Non-member helper. Does not need access to private fields.
-/// Creates coordinates to represent cell in 2D given a set of dimensions
-Mantid::Geometry::VecCoordinate createPolygon(
-    unsigned int dim1Increment,
-    unsigned int dim2Increment,
-    Mantid::Geometry::IMDDimension_sptr xDimension,
-    Mantid::Geometry::IMDDimension_sptr yDimension);
-
-/// Non-member helper. Does not need access to private fields.
-/// Creates coordinates to represent cell in 1D given a set of dimensions
-Mantid::Geometry::VecCoordinate createLine(
-    unsigned int dim1Increment,
-    Mantid::Geometry::IMDDimension_sptr xDimension);
-
-
-}
-}
-
-#endif
+      /// Get the point at the specified index.
+      virtual const Mantid::Geometry::SignalAggregate& getPoint(unsigned int index) const;
+
+      /// Get the cell at the specified index/increment.
+      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment) const;
+
+      /// Get the cell at the specified index/increment.
+      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment, unsigned int dim2Increment) const;
+
+      /// Get the cell at the specified index/increment.
+      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment) const;
+
+      /// Get the cell at the specified index/increment.
+      virtual const Mantid::Geometry::SignalAggregate& getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment, unsigned int dim4Increment) const;
+
+      /// Get the cell at the specified index/increment.
+      virtual const Mantid::Geometry::SignalAggregate& getCell(...) const;
+
+      /// Get the location of the workspace on disk, supports Horace implementation of rebinning.
+      virtual std::string getWSLocation() const;
+
+      /// Get the geometry xml.
+      virtual std::string getGeometryXML() const;
+
+      void setInstrument(const Mantid::Geometry::IInstrument_sptr& instr);
+
+    private:
+      /// Cache. Gives MDWorkspace ownership of MDPoints (as an IMDWorkspace), while allowing polymorphic behaviour.
+      /// Note this is NOT an optimized implementation yet, but it does support lazy instantiation.
+      mutable MDPointMap m_mdPointMap;
+      /// Cache. Gives MDWorkspace ownership of MDCells (as an IMDWorkspace), while allowing polymorphic behaviour.
+      /// Note this is NOT an optimized implementation yet, but it does support lazy instantiation.
+      mutable MDCellMap m_mdCellMap;
+
+      // Shared pointer to a base instrument.
+      mutable boost::shared_ptr<Mantid::Geometry::Instrument> sptr_instrument;
+
+      /// The instrument parameter map.
+      mutable boost::shared_ptr<Geometry::ParameterMap> m_parmap;
+
+      static Kernel::Logger& g_log;
+	  /// pointer to the geometry basis e.g. the unit cell of the bravis latice of the crystal and additional dimensions
+	  boost::shared_ptr<Mantid::Geometry::MDGeometryBasis> m_spMDBasis;
+      /// Pointer to MD Image of cells, which aslo provides the data 
+      boost::shared_ptr<Mantid::MDDataObjects::MDImage> m_spMDImage;
+
+      /// Internal data storage, class provides placement and IO (pack/unpack) operations for sparce array of data points.
+      boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints> m_spDataPoints;
+
+      /// Pointer to a file reader/writer
+      boost::shared_ptr<Mantid::MDDataObjects::IMD_FileFormat> m_spFile;
+      /// no copy constructor -- its meaning is unclear; 
+      MDWorkspace(const MDWorkspace &){};
+
+      /// Determine if a new IMDWorkspace MDCell is required.
+      inline bool newCellRequired(const size_t& singleDimensionIndex, const MD_image_point& mdImagePoint) const;
+
+     };
+
+    ///shared pointer to the MD workspace base class
+    typedef boost::shared_ptr<MDWorkspace> MDWorkspace_sptr;
+    ///shared pointer to the MD workspace base class (const version)
+    typedef boost::shared_ptr<const MDWorkspace> MDWorkspace_const_sptr;
+
+
+/// Non-member helper. Does not need access to private fields.
+/// Creates coordinates to represent cell in 4D given a set of dimensions
+Mantid::Geometry::VecCoordinate create4DPolyhedron(
+    unsigned int dim1Increment,
+    unsigned int dim2Increment,
+    unsigned int dim3Increment,
+    unsigned int dim4Increment,
+    Mantid::Geometry::IMDDimension_sptr xDimension,
+    Mantid::Geometry::IMDDimension_sptr yDimension,
+    Mantid::Geometry::IMDDimension_sptr zDimension,
+    Mantid::Geometry::IMDDimension_sptr tDimension);
+
+/// Non-member helper. Does not need access to private fields.
+/// Creates coordinates to represent cell in 3D given a set of dimensions
+Mantid::Geometry::VecCoordinate createPolyhedron(
+    unsigned int dim1Increment,
+    unsigned int dim2Increment,
+    unsigned int dim3Increment,
+    Mantid::Geometry::IMDDimension_sptr xDimension,
+    Mantid::Geometry::IMDDimension_sptr yDimension,
+    Mantid::Geometry::IMDDimension_sptr zDimension);
+
+/// Non-member helper. Does not need access to private fields.
+/// Creates coordinates to represent cell in 2D given a set of dimensions
+Mantid::Geometry::VecCoordinate createPolygon(
+    unsigned int dim1Increment,
+    unsigned int dim2Increment,
+    Mantid::Geometry::IMDDimension_sptr xDimension,
+    Mantid::Geometry::IMDDimension_sptr yDimension);
+
+/// Non-member helper. Does not need access to private fields.
+/// Creates coordinates to represent cell in 1D given a set of dimensions
+Mantid::Geometry::VecCoordinate createLine(
+    unsigned int dim1Increment,
+    Mantid::Geometry::IMDDimension_sptr xDimension);
+
+
+}
+}
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspaceHelper.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspaceHelper.h
index ca94a3764d59a38a10fbd2f15c77a8170125b949..4f0412637f5f8f5ec4a2a35e445da60e6e37069d 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspaceHelper.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MDWorkspaceHelper.h
@@ -1,43 +1,43 @@
-#ifndef MD_WORKSPACE_HELPER_H
-#define MD_WORKSPACE_HELPER_H
-
-#include "MDDataObjects/MDWorkspace.h"
-/** set of classes intended to produce different MDWorkspaces for debugging and testing purposes
-
-    @author Alex Buts, RAL ISIS
-    @date 19/11/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-namespace Mantid
-{
-namespace MDDataObjects
-{
-class MDWorkspaceMockData10: public MDWorkspace
-{
-public:
-  MDWorkspaceMockData10(unsigned int nDims=4,unsigned int nRecDims=3);
-
-};
-}
-}
-
+#ifndef MD_WORKSPACE_HELPER_H
+#define MD_WORKSPACE_HELPER_H
+
+#include "MDDataObjects/MDWorkspace.h"
+/** set of classes intended to produce different MDWorkspaces for debugging and testing purposes
+
+    @author Alex Buts, RAL ISIS
+    @date 19/11/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+namespace Mantid
+{
+namespace MDDataObjects
+{
+class MDWorkspaceMockData10: public MDWorkspace
+{
+public:
+  MDWorkspaceMockData10(unsigned int nDims=4,unsigned int nRecDims=3);
+
+};
+}
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileFormatFactory.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileFormatFactory.h
index 834c544252070fdf6453d855e13f94bfe25cfdfe..ccc9ac313b24c829857a347c87edfc6825e9820f 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileFormatFactory.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileFormatFactory.h
@@ -1,96 +1,96 @@
-#ifndef MD_FILE_FORMAT_FACTORY_H
-#define MD_FILE_FORMAT_FACTORY_H
-//----------------------------------------------------------------------
-// Includes
-//----------------------------------------------------------------------
-#include "MDDataObjects/IMD_FileFormat.h"
-
-#include "MantidKernel/System.h"
-
-/** The class takes the file name and returns file the reader/writer which would understand and interpret the file format 
- *  of the file, provided. If the file is not found, the factory returns the default reader or the one, modified 
- *
- *  The file reader has to satisfy IMD_FileFormat interface
- *
- * not a factory in Mantid sence, as the rules to select file format are defined within the class, so user who creates new format
- * has to add these rules to the class manualy 
- *
- * Proper Mantid factory will be build if this class widely used in a future;
-
-    @author Alex Buts, RAL ISIS
-    @date 03/12/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-      Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-namespace Mantid
-{
-namespace MDDataObjects
-{
-	/** the enum describes the request, a user can make to ask for a particular file reader 
-	 *  we are not suppose to handle very complex requests as the file reader should be selected
-	 *  acdording to the file format
-	*/
-	enum user_request{
-		best_fit,  //< default file reader
-		test_data  //< the reader, which does not reads the file, but returns fake data for rebinning;
-	};
-
-class DLLExport MD_FileFormatFactory
-{
-public:
-	/** function returns the file reader which would understand the file format of the file,
-	 *  defined by the file name provided.
-	 *
-	 *  If the file has not been found, the function assumes the 
-	 *  new file and returns defauld file reader, bound to this new file
-	 */
-	static std::auto_ptr<IMD_FileFormat> getFileReader(const char *fileName,user_request rec=best_fit);
-    /** function returns a new file reader/writer with unique temporary name generated by the factory 
-     * used for allocation of temporary working files for a target MD workspace; If the target file name 
-     * is present, and the file name exists, the file reader get called, while if the file is new, 
-     * the new file is created where requested;
-     */
-    static std::auto_ptr<IMD_FileFormat> getFileReader(user_request rec=best_fit,const char *fileName=NULL);
-private:
-	// singleton holder
-	static MD_FileFormatFactory *pFactory;
-	// default constructor and others;
-	MD_FileFormatFactory();
-	~MD_FileFormatFactory();
-	// no copying
-	MD_FileFormatFactory(const MD_FileFormatFactory &);
-	MD_FileFormatFactory & operator= (const MD_FileFormatFactory &);
-
-   /// logger -> to provide logging, for MD dataset file operations
-    static Mantid::Kernel::Logger& f_log;
-
-	IMD_FileFormat* select_file_reader(const char *file_name,user_request rec=best_fit);
-	/// function checks if the file provided is binary Horace format file;
-	bool isHoraceFile(const char *fileName);
-
-};
-/** helper function providing a new file name as a from template and a counter
- *  function checks if a temporary file exists and increases the counter untill finds a file name with free number
-*/
-DLLExport std::string get_unique_tmp_fileName(void);
-} // end namespaces
-}
-#endif
+#ifndef MD_FILE_FORMAT_FACTORY_H
+#define MD_FILE_FORMAT_FACTORY_H
+//----------------------------------------------------------------------
+// Includes
+//----------------------------------------------------------------------
+#include "MDDataObjects/IMD_FileFormat.h"
+
+#include "MantidKernel/System.h"
+
+/** The class takes the file name and returns file the reader/writer which would understand and interpret the file format 
+ *  of the file, provided. If the file is not found, the factory returns the default reader or the one, modified 
+ *
+ *  The file reader has to satisfy IMD_FileFormat interface
+ *
+ * not a factory in Mantid sence, as the rules to select file format are defined within the class, so user who creates new format
+ * has to add these rules to the class manualy 
+ *
+ * Proper Mantid factory will be build if this class widely used in a future;
+
+    @author Alex Buts, RAL ISIS
+    @date 03/12/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+      Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+namespace Mantid
+{
+namespace MDDataObjects
+{
+	/** the enum describes the request, a user can make to ask for a particular file reader 
+	 *  we are not suppose to handle very complex requests as the file reader should be selected
+	 *  acdording to the file format
+	*/
+	enum user_request{
+		best_fit,  //< default file reader
+		test_data  //< the reader, which does not reads the file, but returns fake data for rebinning;
+	};
+
+class DLLExport MD_FileFormatFactory
+{
+public:
+	/** function returns the file reader which would understand the file format of the file,
+	 *  defined by the file name provided.
+	 *
+	 *  If the file has not been found, the function assumes the 
+	 *  new file and returns defauld file reader, bound to this new file
+	 */
+	static std::auto_ptr<IMD_FileFormat> getFileReader(const char *fileName,user_request rec=best_fit);
+    /** function returns a new file reader/writer with unique temporary name generated by the factory 
+     * used for allocation of temporary working files for a target MD workspace; If the target file name 
+     * is present, and the file name exists, the file reader get called, while if the file is new, 
+     * the new file is created where requested;
+     */
+    static std::auto_ptr<IMD_FileFormat> getFileReader(user_request rec=best_fit,const char *fileName=NULL);
+private:
+	// singleton holder
+	static MD_FileFormatFactory *pFactory;
+	// default constructor and others;
+	MD_FileFormatFactory();
+	~MD_FileFormatFactory();
+	// no copying
+	MD_FileFormatFactory(const MD_FileFormatFactory &);
+	MD_FileFormatFactory & operator= (const MD_FileFormatFactory &);
+
+   /// logger -> to provide logging, for MD dataset file operations
+    static Mantid::Kernel::Logger& f_log;
+
+	IMD_FileFormat* select_file_reader(const char *file_name,user_request rec=best_fit);
+	/// function checks if the file provided is binary Horace format file;
+	bool isHoraceFile(const char *fileName);
+
+};
+/** helper function providing a new file name as a from template and a counter
+ *  function checks if a temporary file exists and increases the counter untill finds a file name with free number
+*/
+DLLExport std::string get_unique_tmp_fileName(void);
+} // end namespaces
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileHoraceReader.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileHoraceReader.h
index 75cbec66e6cb0325dda761d8182e4834fc8ad2e3..a14af5e082a3fba7bf4dcc0b869fc282d4e4edbb 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileHoraceReader.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileHoraceReader.h
@@ -1,143 +1,143 @@
-#ifndef FILE_HDF_HORACE_READER_H
-#define FILE_HDF_HORACE_READER_H
-//
-
-#include <iostream>
-#include <fstream>
-#include "MDDataObjects/IMD_FileFormat.h"
-
-
-/**  Class supports Horace(MATLAB)-written binary mdd data format and will be used at the initial stage of the development;
-*    to read the data initially provided by MATLAB, Horace
-
-    @author Alex Buts, RAL ISIS
-    @date 01/10/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-
-*/
-
-namespace Mantid{
-namespace MDDataObjects{
-	namespace HoraceReader{
-
-/// horace data locations in bytes from the beginning of the horace binary file
-/// some have fixed positions but most not.
-struct data_positions{
-	std::streamoff  if_sqw_start,
-	                n_dims_start,
-	                sqw_header_start;
-	std::vector<std::streamoff> component_headers_starts;
-	std::streamoff detectors_start,
-		data_start,
-		geom_start,
-		npax_start,
-		s_start,
-		err_start,
-		n_cell_pix_start,
-		min_max_start,
-		pix_start;
-	data_positions():if_sqw_start(18),n_dims_start(22),sqw_header_start(26),
-		detectors_start(0),data_start(0),geom_start(0),s_start(0), // the following values have to be identified from the file itself
-		min_max_start(0),
-		err_start(0),n_cell_pix_start(0),pix_start(0){}; // the following values have to be identified from the file itself
-};
-//
-class DLLExport MD_FileHoraceReader :    public IMD_FileFormat
-{  
-public:
-	MD_FileHoraceReader(const char *file_name);
-
-	virtual bool is_open(void)const{return fileStreamHolder.is_open();}
-
-	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
-	// no basis exists in Horace dataset so this funtion initialises default basis qx qy qz
-	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &);
-
-	//****> MD image object
-	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
-	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &);
-   // read DND object data; Image has to exist and be initiated;
-    virtual void read_MDImg_data(MDImage & mdd);
-   
-
-	//****> datapoints object
-	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
-	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
-	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
-    /// read whole pixels information in memory; usually impossible, then returns false;
-	// TODO: Implement;
-	virtual bool read_pix(MDDataPoints & sqw){throw(Kernel::Exception::NotImplementedError("Read all pixels funtion is not implemented at the moment as target obect for it is in nucleus state"));}
-    /// read the information from the data pixels, specified by the numbers of selected cells, returns the number of cells actually processed 
-    /// by this read operation and number of pixels found in these cells;
-    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
-    /// get number of data pixels(points) contributing into the dataset;
-    virtual uint64_t getNPix(void);
-    /// not implemented and probably will not be as we will develop our own mdd_hdf format
-    virtual void write_mdd(const MDImage & dnd){throw(Kernel::Exception::NotImplementedError("write_mdd-Horace format function is not supported and should not be used"));}
-    
-	virtual ~MD_FileHoraceReader(void);
-
-	// private, but protected for test purposes;
-protected:
- 	/// the variable which keeps the opened Horace data stream
-	std::ifstream fileStreamHolder;
-	/// the structure holding positions for all important parts of the file
-	data_positions positions;
-	/// Various Horace data field which are initiated by constructor but requested by our IO operations
-	unsigned int nDims; //< number of dimensions; Horace understands 4 and 3 reciprocal so should be 4
-	/// number of bins in every non-integrated dimension
-	std::vector<size_t> nBins;
-	// size of the multidimensional image in the HDD file (in cells)
-	size_t     mdImageSize;
-	/// number of data points (pixels) contributing into the MD image and present in the file;
-	uint64_t     nDataPoints;
-
-///**** auxilary functions dealing with different parts of Horace file;
-	/// skips main sqw header, calculates its size and reads the number of contributing files and sets the location of first contributed
-	/// file header
-	void parse_sqw_main_header();
-	/// reads one component header and returns the locations for the next header or part of the file
-	std::streamoff parse_component_header(std::streamoff start_location);
-	/// analyse  detectors data (or their length)
-	std::streamoff parse_sqw_detpar(std::streamoff detectors_start);
-	/// 
-	void  parse_data_locations(std::streamoff data_start);
-private:
-	/// horace data are written on HDD as 9 double words; this function compress them into
-	/// four float, two double and 3 uint16_t;
-	void compact_hor_data(char *buffer,size_t &buf_size);
-	// the size of data block for Horace reader;
-	static const unsigned int hbs=9*4;
-    // the array specifying the locations of MD points wrt MD cells;
-    std::vector<uint64_t> hor_points_locations;
-
-	// Function performing work previously in GOTO statement.
-    void inline validateFileStreamHolder(std::ifstream& fileStreamHolder);
- 
-};
-
-
-
-} // end namespaces
-} 
-}
-#endif
+#ifndef FILE_HDF_HORACE_READER_H
+#define FILE_HDF_HORACE_READER_H
+//
+
+#include <iostream>
+#include <fstream>
+#include "MDDataObjects/IMD_FileFormat.h"
+
+
+/**  Class supports Horace(MATLAB)-written binary mdd data format and will be used at the initial stage of the development;
+*    to read the data initially provided by MATLAB, Horace
+
+    @author Alex Buts, RAL ISIS
+    @date 01/10/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+
+*/
+
+namespace Mantid{
+namespace MDDataObjects{
+	namespace HoraceReader{
+
+/// horace data locations in bytes from the beginning of the horace binary file
+/// some have fixed positions but most not.
+struct data_positions{
+	std::streamoff  if_sqw_start,
+	                n_dims_start,
+	                sqw_header_start;
+	std::vector<std::streamoff> component_headers_starts;
+	std::streamoff detectors_start,
+		data_start,
+		geom_start,
+		npax_start,
+		s_start,
+		err_start,
+		n_cell_pix_start,
+		min_max_start,
+		pix_start;
+	data_positions():if_sqw_start(18),n_dims_start(22),sqw_header_start(26),
+		detectors_start(0),data_start(0),geom_start(0),s_start(0), // the following values have to be identified from the file itself
+		min_max_start(0),
+		err_start(0),n_cell_pix_start(0),pix_start(0){}; // the following values have to be identified from the file itself
+};
+//
+class DLLExport MD_FileHoraceReader :    public IMD_FileFormat
+{  
+public:
+	MD_FileHoraceReader(const char *file_name);
+
+	virtual bool is_open(void)const{return fileStreamHolder.is_open();}
+
+	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
+	// no basis exists in Horace dataset so this funtion initialises default basis qx qy qz
+	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &);
+
+	//****> MD image object
+	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
+	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &);
+   // read DND object data; Image has to exist and be initiated;
+    virtual void read_MDImg_data(MDImage & mdd);
+   
+
+	//****> datapoints object
+	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
+	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
+	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
+    /// read whole pixels information in memory; usually impossible, then returns false;
+	// TODO: Implement;
+	virtual bool read_pix(MDDataPoints & sqw){throw(Kernel::Exception::NotImplementedError("Read all pixels funtion is not implemented at the moment as target obect for it is in nucleus state"));}
+    /// read the information from the data pixels, specified by the numbers of selected cells, returns the number of cells actually processed 
+    /// by this read operation and number of pixels found in these cells;
+    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
+    /// get number of data pixels(points) contributing into the dataset;
+    virtual uint64_t getNPix(void);
+    /// not implemented and probably will not be as we will develop our own mdd_hdf format
+    virtual void write_mdd(const MDImage & dnd){throw(Kernel::Exception::NotImplementedError("write_mdd-Horace format function is not supported and should not be used"));}
+    
+	virtual ~MD_FileHoraceReader(void);
+
+	// private, but protected for test purposes;
+protected:
+ 	/// the variable which keeps the opened Horace data stream
+	std::ifstream fileStreamHolder;
+	/// the structure holding positions for all important parts of the file
+	data_positions positions;
+	/// Various Horace data field which are initiated by constructor but requested by our IO operations
+	unsigned int nDims; //< number of dimensions; Horace understands 4 and 3 reciprocal so should be 4
+	/// number of bins in every non-integrated dimension
+	std::vector<size_t> nBins;
+	// size of the multidimensional image in the HDD file (in cells)
+	size_t     mdImageSize;
+	/// number of data points (pixels) contributing into the MD image and present in the file;
+	uint64_t     nDataPoints;
+
+///**** auxilary functions dealing with different parts of Horace file;
+	/// skips main sqw header, calculates its size and reads the number of contributing files and sets the location of first contributed
+	/// file header
+	void parse_sqw_main_header();
+	/// reads one component header and returns the locations for the next header or part of the file
+	std::streamoff parse_component_header(std::streamoff start_location);
+	/// analyse  detectors data (or their length)
+	std::streamoff parse_sqw_detpar(std::streamoff detectors_start);
+	/// 
+	void  parse_data_locations(std::streamoff data_start);
+private:
+	/// horace data are written on HDD as 9 double words; this function compress them into
+	/// four float, two double and 3 uint16_t;
+	void compact_hor_data(char *buffer,size_t &buf_size);
+	// the size of data block for Horace reader;
+	static const unsigned int hbs=9*4;
+    // the array specifying the locations of MD points wrt MD cells;
+    std::vector<uint64_t> hor_points_locations;
+
+	// Function performing work previously in GOTO statement.
+    void inline validateFileStreamHolder(std::ifstream& fileStreamHolder);
+ 
+};
+
+
+
+} // end namespaces
+} 
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileTestDataGenerator.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileTestDataGenerator.h
index b1a7021160ecedfebf0ed558b15e368f94574300..1dec55ca1eb58ddcc95ea7ab702019ad83308c50 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileTestDataGenerator.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_FileTestDataGenerator.h
@@ -1,115 +1,115 @@
-#ifndef FILE_TEST_DATA_GENERATOR_H
-#define FILE_TEST_DATA_GENERATOR_H
-//
-
-#include <iostream>
-#include <fstream>
-#include "MDDataObjects/IMD_FileFormat.h"
-
-
-/**  Class generates test data for in-depth testing dynamic rebinning algorithms 
-
-    @author Alex Buts, RAL ISIS
-    @date 22/12/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-
-*/
-
-namespace Mantid{
-namespace MDDataObjects{
-// forward declaration for the class, which describes the pixels data
-class MDPointDescription;
-//
-class DLLExport MD_FileTestDataGenerator :    public IMD_FileFormat
-{  
-public:
-    /** test file generator takes its parameters from file name e.g:
-     data4x3_a0b50c50d50 defines 4 dimensional dataset with 3 reciprocal dimensions where 
-     the structure is as above and 
-     data, x, a, b, c, d [e etc] are the key-words defining the values;
-     e.g. here the first dimension is integrated and three others have 50 bins; 
-     TODO: not implemented -- implement; currently doung 4x3 
-    */
-	MD_FileTestDataGenerator(const char *file_name);
-
-	virtual bool is_open(void)const{return true;}
-
-	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
-	// no basis exists in Horace dataset so this funtion initialises default basis qx qy qz
-	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &);
-
-	//****> MD image object
-	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
-	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &);
-   // read DND object data; Image has to exist and be initiated;
-    virtual void read_MDImg_data(MDImage & mdd);
-   
-
-	//****> datapoints object
-	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
-	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
-	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
-    /// read whole pixels information in memory; usually impossible, then returns false;
-    virtual bool read_pix(MDDataPoints & sqw);
-    /// read the information from the data pixels, specified by the numbers of selected cells, returns the number of cells actually processed 
-    /// by this read operation and number of pixels found in these cells;
-    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
-    /// get number of data pixels(points) contributing into the dataset;
-    virtual uint64_t getNPix(void);
-    /// not implemented 
-    virtual void write_mdd(const MDImage & dnd){throw(Kernel::Exception::NotImplementedError("not implemented at the moment"));}
-    
-	virtual ~MD_FileTestDataGenerator(void);
-
-	// private, but protected for test purposes;
-private:
- // these values imitate the values that shoud be located in file 
-
-	unsigned int nDims; //< number of dimensions;
-	/// number of bins in every non-integrated dimension
-	std::vector<size_t> nBins;
-	// size of the multidimensional image in the HDD file (in cells)
-	size_t     mdImageSize;
-	/// number of data points (pixels) contributing into the MD image and present in the file;
-	uint64_t   nDataPoints;
-   /// number of cells in the MDImage;
-    size_t nCells;
-
-    /// pointer to MDDataPointDescription
-    mutable MDPointDescription *pPointDescr;
-    /// number of bytes a pixel occupies
-    mutable unsigned int  sizeof_pixel;
-
-    float        *dat_sig_fields;
-    uint32_t     *ind_fields;
-
-    void fill_image_data1D(unsigned int nBins);
-    void fill_image();
-    /// internal auxiliary function, which returns n-Dimensional cell index calculated from the cell number;
-    std::vector<size_t> cell_indexes(size_t cell_num,const std::vector<size_t> &dim_strides);
-};
-
-
-
-} // end namespaces
-}
-#endif
+#ifndef FILE_TEST_DATA_GENERATOR_H
+#define FILE_TEST_DATA_GENERATOR_H
+//
+
+#include <iostream>
+#include <fstream>
+#include "MDDataObjects/IMD_FileFormat.h"
+
+
+/**  Class generates test data for in-depth testing dynamic rebinning algorithms 
+
+    @author Alex Buts, RAL ISIS
+    @date 22/12/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+
+*/
+
+namespace Mantid{
+namespace MDDataObjects{
+// forward declaration for the class, which describes the pixels data
+class MDPointDescription;
+//
+class DLLExport MD_FileTestDataGenerator :    public IMD_FileFormat
+{  
+public:
+    /** test file generator takes its parameters from file name e.g:
+     data4x3_a0b50c50d50 defines 4 dimensional dataset with 3 reciprocal dimensions where 
+     the structure is as above and 
+     data, x, a, b, c, d [e etc] are the key-words defining the values;
+     e.g. here the first dimension is integrated and three others have 50 bins; 
+     TODO: not implemented -- implement; currently doung 4x3 
+    */
+	MD_FileTestDataGenerator(const char *file_name);
+
+	virtual bool is_open(void)const{return true;}
+
+	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
+	// no basis exists in Horace dataset so this funtion initialises default basis qx qy qz
+	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &);
+
+	//****> MD image object
+	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
+	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &);
+   // read DND object data; Image has to exist and be initiated;
+    virtual void read_MDImg_data(MDImage & mdd);
+   
+
+	//****> datapoints object
+	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
+	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
+	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
+    /// read whole pixels information in memory; usually impossible, then returns false;
+    virtual bool read_pix(MDDataPoints & sqw);
+    /// read the information from the data pixels, specified by the numbers of selected cells, returns the number of cells actually processed 
+    /// by this read operation and number of pixels found in these cells;
+    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
+    /// get number of data pixels(points) contributing into the dataset;
+    virtual uint64_t getNPix(void);
+    /// not implemented 
+    virtual void write_mdd(const MDImage & dnd){throw(Kernel::Exception::NotImplementedError("not implemented at the moment"));}
+    
+	virtual ~MD_FileTestDataGenerator(void);
+
+	// private, but protected for test purposes;
+private:
+ // these values imitate the values that shoud be located in file 
+
+	unsigned int nDims; //< number of dimensions;
+	/// number of bins in every non-integrated dimension
+	std::vector<size_t> nBins;
+	// size of the multidimensional image in the HDD file (in cells)
+	size_t     mdImageSize;
+	/// number of data points (pixels) contributing into the MD image and present in the file;
+	uint64_t   nDataPoints;
+   /// number of cells in the MDImage;
+    size_t nCells;
+
+    /// pointer to MDDataPointDescription
+    mutable MDPointDescription *pPointDescr;
+    /// number of bytes a pixel occupies
+    mutable unsigned int  sizeof_pixel;
+
+    float        *dat_sig_fields;
+    uint32_t     *ind_fields;
+
+    void fill_image_data1D(unsigned int nBins);
+    void fill_image();
+    /// internal auxiliary function, which returns n-Dimensional cell index calculated from the cell number;
+    std::vector<size_t> cell_indexes(size_t cell_num,const std::vector<size_t> &dim_strides);
+};
+
+
+
+} // end namespaces
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfMatlab.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfMatlab.h
index df0ebe1325d6a3c1970899de9301a4b8e8747938..45c0711a587e6e60a5a1da601ae5be35593d52af 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfMatlab.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfMatlab.h
@@ -1,155 +1,155 @@
-#ifndef FILE_HDF_MATLAB_ND_H
-#define FILE_HDF_MATLAB_ND_H
-//
-//#include <../../../Third_Party/include/hdf5/hdf5.h>
-#include <hdf5.h>
-#include "MDDataObjects/IMD_FileFormat.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MDDataObjects/MDDataPoints.h"
-
-// TEMPORARY COMPARTIBILITY FUNCIONS with HDF1.6 -- should be enabled if HDF1.6 is used
-// #define HDF_1_6
-
-/**    Class supports MATLAB-written hdf5 mdd data format and will be used at the initial stage of the development;
-*      to read the data initially provided by MATLAB, Horace
-
-    @author Alex Buts, RAL ISIS
-    @date 01/10/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-
-*/
-
-namespace Mantid{
-    namespace MDDataObjects{
-//
-//******************************************************************************************************************
-// couple of structures and MATPAB compartibility functions defined here
-// MATLAB datatypes which may be written into hdf HORACE file
-enum matlab_attrib_kind
-{
-    double_scalar,
-    double_array,
-    char_array, // usually string e.g. 1D array of characters
-    empty,
-    char_cellarray,
-    double_cellarray
-};
-
-// functions used to understand Horace-written HDF5 file format;
-/// structure describing the Horace pixels. It is here for tests and compartibility stuff;
-struct sqw_pixel{
-    double qx;  //| 
-    double qy;  //| 3 Coordinates of each pixel in Q space
-    double qz;  //|
-    double En;  //| and the pixel enerty 
-    double s;   // pixels signal;
-    double err; // pixels error (variance i.e. error bar squared)
-
-
-// this the info about compressed direct picture, which describes the pixel in direct space; It is not used at the moment by Horace
-    int    irun; //    Run index in the header block from which pixel came          | these two parameters (or the last one) 
-    int    idet; //    Detector group number in the detector listing for the pixel  | convoluted with detectors.par and cristal orientation
-                 //    describe 3D picture in Q space and can be the source of additional dimensions if a parameter (e.g. T or pressure)
-                 //    changes from run to run
-    int    ien ; //    Energy bin number for the pixel in the array in the (irun)th header |-> 4th coordinate dimension
-};      
-//
-class DLLExport MD_File_hdfMatlab :    public IMD_FileFormat
-{
-public:
-    MD_File_hdfMatlab(const char *file_name);
-
-    virtual bool is_open(void)const{return (this->file_handler>0)?true:false;}
-
-	//****> MD baisis object (will be expanded?)
-	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
-	// no basis exists in Horace dataset so this funtion will return defaults
-	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &);
-
-	//****> MD image object
-	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
-	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &);
- 
-    virtual void read_MDImg_data(MDImage & mdd);
-   
-
-	//****> datapoints object
-	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
-	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
-	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
-    /// read whole pixels information in memory; usually impossible, then returns false;
-    virtual bool read_pix(MDDataPoints & sqw);
-    /// read the information from the data pixels, specified by the numbers of selected cells, returns the number of cells actually processed 
-    /// by this read operation and number of pixels found in these cells;
-    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
-    /// get number of data pixels(points) contributing into the dataset;
-    virtual uint64_t getNPix(void);
-    /// not implemented and probably will not be as we will develop our own mdd_hdf format
-    virtual void write_mdd(const MDImage & dnd){throw(Kernel::Exception::NotImplementedError("write_mdd-Matlab format function is not supported and should not be used"));}
-    
-
-    virtual ~MD_File_hdfMatlab(void);
-protected:
-     /// the variable which provides access to the open hdf file
-    hid_t file_handler;
-   /// the variable to access open pixels dataset (necessary for partial read operations)
-    hid_t pixel_dataset_h;
-   // the variable to deal with pixel dataspace; Especially usefull when dealing with number of partial reading operations;
-    hid_t pixel_dataspace_h;
-   /// the variable describes file access mode, which is complicated if parallel access is used 
-    hid_t file_access_mode;
-
-    /// the vector of DND field names used by the reader/writer
-    std::vector<std::string> mdd_field_names;
-    ///  the vector of mdd_hdf attributes used by the reader/writer
-    std::vector<std::string> mdd_attrib_names;
-
-///  number of fields in HORACE sqw dataset;
-    //static const int  DATA_PIX_WIDTH=9;
-	// in fact this is MDDataPoint<>, but as it does not have virtual functions it need to be statically cast to the MDDataPoint;
-	mutable MDPointDescription *pReader; 
-
-// not used at the moment
-//   static std::stringstream ErrBuf;
-// private copy constructor and assighnment
-   MD_File_hdfMatlab(const MD_File_hdfMatlab& p);
-   MD_File_hdfMatlab & operator = (const MD_File_hdfMatlab & other);
-
-   // function checks if pixel dataset is opened and if not opens it. true if it was already opened, false if did nothing
-   bool check_or_open_pix_dataset(void);
-  // the array specifying the locations of MD points wrt MD cells;
-    std::vector<uint64_t> mp_points_locations;
-private:
-
-  
-
-};
-
-// function used to understand Horace written Matlab dataset.
-bool read_matlab_field_attr(hid_t group_ID,const std::string &field_name,void *&data, std::vector<int> &dims,int &rank,matlab_attrib_kind &kind,const std::string &file_name);
-void ** transform_array2cells(void *data, std::vector<int> dims,int rank,matlab_attrib_kind kind,void *pFiller);
-//********************************************************************************************************************************************************************
-
-
-}
-}
-#endif
+#ifndef FILE_HDF_MATLAB_ND_H
+#define FILE_HDF_MATLAB_ND_H
+//
+//#include <../../../Third_Party/include/hdf5/hdf5.h>
+#include <hdf5.h>
+#include "MDDataObjects/IMD_FileFormat.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MDDataObjects/MDDataPoints.h"
+
+// TEMPORARY COMPARTIBILITY FUNCIONS with HDF1.6 -- should be enabled if HDF1.6 is used
+// #define HDF_1_6
+
+/**    Class supports MATLAB-written hdf5 mdd data format and will be used at the initial stage of the development;
+*      to read the data initially provided by MATLAB, Horace
+
+    @author Alex Buts, RAL ISIS
+    @date 01/10/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+
+*/
+
+namespace Mantid{
+    namespace MDDataObjects{
+//
+//******************************************************************************************************************
+// couple of structures and MATPAB compartibility functions defined here
+// MATLAB datatypes which may be written into hdf HORACE file
+enum matlab_attrib_kind
+{
+    double_scalar,
+    double_array,
+    char_array, // usually string e.g. 1D array of characters
+    empty,
+    char_cellarray,
+    double_cellarray
+};
+
+// functions used to understand Horace-written HDF5 file format;
+/// structure describing the Horace pixels. It is here for tests and compartibility stuff;
+struct sqw_pixel{
+    double qx;  //| 
+    double qy;  //| 3 Coordinates of each pixel in Q space
+    double qz;  //|
+    double En;  //| and the pixel enerty 
+    double s;   // pixels signal;
+    double err; // pixels error (variance i.e. error bar squared)
+
+
+// this the info about compressed direct picture, which describes the pixel in direct space; It is not used at the moment by Horace
+    int    irun; //    Run index in the header block from which pixel came          | these two parameters (or the last one) 
+    int    idet; //    Detector group number in the detector listing for the pixel  | convoluted with detectors.par and cristal orientation
+                 //    describe 3D picture in Q space and can be the source of additional dimensions if a parameter (e.g. T or pressure)
+                 //    changes from run to run
+    int    ien ; //    Energy bin number for the pixel in the array in the (irun)th header |-> 4th coordinate dimension
+};      
+//
+class DLLExport MD_File_hdfMatlab :    public IMD_FileFormat
+{
+public:
+    MD_File_hdfMatlab(const char *file_name);
+
+    virtual bool is_open(void)const{return (this->file_handler>0)?true:false;}
+
+	//****> MD baisis object (will be expanded?)
+	/// read the part of MD dataset containing the basis; Current implementations allocate basis from what they are reading
+	// no basis exists in Horace dataset so this funtion will return defaults
+	virtual void read_basis(Mantid::Geometry::MDGeometryBasis &);
+
+	//****> MD image object
+	/// reads the MD geometry description, which allows to build MD geometry from the description and the basis;
+	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &);
+ 
+    virtual void read_MDImg_data(MDImage & mdd);
+   
+
+	//****> datapoints object
+	/// read the description of the data points format and (possibly) service information to calculate the pixel location;
+	/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to point only
+	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
+    /// read whole pixels information in memory; usually impossible, then returns false;
+    virtual bool read_pix(MDDataPoints & sqw);
+    /// read the information from the data pixels, specified by the numbers of selected cells, returns the number of cells actually processed 
+    /// by this read operation and number of pixels found in these cells;
+    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer);
+    /// get number of data pixels(points) contributing into the dataset;
+    virtual uint64_t getNPix(void);
+    /// not implemented and probably will not be as we will develop our own mdd_hdf format
+    virtual void write_mdd(const MDImage & dnd){throw(Kernel::Exception::NotImplementedError("write_mdd-Matlab format function is not supported and should not be used"));}
+    
+
+    virtual ~MD_File_hdfMatlab(void);
+protected:
+     /// the variable which provides access to the open hdf file
+    hid_t file_handler;
+   /// the variable to access open pixels dataset (necessary for partial read operations)
+    hid_t pixel_dataset_h;
+   // the variable to deal with pixel dataspace; Especially usefull when dealing with number of partial reading operations;
+    hid_t pixel_dataspace_h;
+   /// the variable describes file access mode, which is complicated if parallel access is used 
+    hid_t file_access_mode;
+
+    /// the vector of DND field names used by the reader/writer
+    std::vector<std::string> mdd_field_names;
+    ///  the vector of mdd_hdf attributes used by the reader/writer
+    std::vector<std::string> mdd_attrib_names;
+
+///  number of fields in HORACE sqw dataset;
+    //static const int  DATA_PIX_WIDTH=9;
+	// in fact this is MDDataPoint<>, but as it does not have virtual functions it need to be statically cast to the MDDataPoint;
+	mutable MDPointDescription *pReader; 
+
+// not used at the moment
+//   static std::stringstream ErrBuf;
+// private copy constructor and assighnment
+   MD_File_hdfMatlab(const MD_File_hdfMatlab& p);
+   MD_File_hdfMatlab & operator = (const MD_File_hdfMatlab & other);
+
+   // function checks if pixel dataset is opened and if not opens it. true if it was already opened, false if did nothing
+   bool check_or_open_pix_dataset(void);
+  // the array specifying the locations of MD points wrt MD cells;
+    std::vector<uint64_t> mp_points_locations;
+private:
+
+  
+
+};
+
+// function used to understand Horace written Matlab dataset.
+bool read_matlab_field_attr(hid_t group_ID,const std::string &field_name,void *&data, std::vector<int> &dims,int &rank,matlab_attrib_kind &kind,const std::string &file_name);
+void ** transform_array2cells(void *data, std::vector<int> dims,int rank,matlab_attrib_kind kind,void *pFiller);
+//********************************************************************************************************************************************************************
+
+
+}
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfV1.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfV1.h
index 02d71820c8a3f23f0abe0a189ed537f02ced499a..88f9ada106de66b8c203dc51523745497f62938e 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfV1.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/MD_File_hdfV1.h
@@ -1,61 +1,61 @@
-#ifndef H_FILE_HDF
-#define H_FILE_HDF
-#include "MDDataObjects/IMD_FileFormat.h"
-/** stub for a future binary (hdf) file format reader/writer which will be used for datasets.
-
-    @author Alex Buts, RAL ISIS
-    @date 28/09/2010
-
-    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
-
-    This file is part of Mantid.
-
-    Mantid is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 3 of the License, or
-    (at your option) any later version.
-
-    Mantid is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program.  If not, see <http://www.gnu.org/licenses/>.
-
-    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
-    Code Documentation is available at: <http://doxygen.mantidproject.org>
-*/
-
-namespace Mantid{
-    namespace MDDataObjects{
-/// the size of the data page (in bytes), providing optimal speed of data exchange with HDD -- should be calculated;
-#define PAGE_SIZE  4096
-//*****************************************************************************
-class DLLExport MD_File_hdfV1 :    public IMD_FileFormat
-{
-public:
-    MD_File_hdfV1(const char  *file_name);
-    virtual ~MD_File_hdfV1(void){};
-    virtual bool is_open(void)const{return false;}
-    virtual void read_MDImg_data(MDImage &){};
-  
-    virtual bool read_pix(MDDataPoints &){return false; }
-    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer){
-        return 0;}
-    virtual uint64_t getNPix(void){return 0;}
- 
-    virtual void read_basis(Mantid::Geometry::MDGeometryBasis &GeomBasis){}
-
-	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &desc){}
-	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
-
-    virtual void write_mdd(const MDImage &){};
-//  virtual void write_pix(const MDDataPoints &)=0;
-//  virtual void write_pix_subset(const std::vector<size_t> &cell_indexes, const str::vector<char> &pix_buf)=0;
-
- 
-};
-    }
-}
-#endif
+#ifndef H_FILE_HDF
+#define H_FILE_HDF
+#include "MDDataObjects/IMD_FileFormat.h"
+/** stub for a future binary (hdf) file format reader/writer which will be used for datasets.
+
+    @author Alex Buts, RAL ISIS
+    @date 28/09/2010
+
+    Copyright &copy; 2007-10 ISIS Rutherford Appleton Laboratory & NScD Oak Ridge National Laboratory
+
+    This file is part of Mantid.
+
+    Mantid is free software; you can redistribute it and/or modify
+    it under the terms of the GNU General Public License as published by
+    the Free Software Foundation; either version 3 of the License, or
+    (at your option) any later version.
+
+    Mantid is distributed in the hope that it will be useful,
+    but WITHOUT ANY WARRANTY; without even the implied warranty of
+    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+    GNU General Public License for more details.
+
+    You should have received a copy of the GNU General Public License
+    along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+    File change history is stored at: <https://svn.mantidproject.org/mantid/trunk/Code/Mantid>.
+    Code Documentation is available at: <http://doxygen.mantidproject.org>
+*/
+
+namespace Mantid{
+    namespace MDDataObjects{
+/// the size of the data page (in bytes), providing optimal speed of data exchange with HDD -- should be calculated;
+#define PAGE_SIZE  4096
+//*****************************************************************************
+class DLLExport MD_File_hdfV1 :    public IMD_FileFormat
+{
+public:
+    MD_File_hdfV1(const char  *file_name);
+    virtual ~MD_File_hdfV1(void){};
+    virtual bool is_open(void)const{return false;}
+    virtual void read_MDImg_data(MDImage &){};
+  
+    virtual bool read_pix(MDDataPoints &){return false; }
+    virtual size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer){
+        return 0;}
+    virtual uint64_t getNPix(void){return 0;}
+ 
+    virtual void read_basis(Mantid::Geometry::MDGeometryBasis &GeomBasis){}
+
+	virtual void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &desc){}
+	virtual Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const;
+
+    virtual void write_mdd(const MDImage &){};
+//  virtual void write_pix(const MDDataPoints &)=0;
+//  virtual void write_pix_subset(const std::vector<size_t> &cell_indexes, const str::vector<char> &pix_buf)=0;
+
+ 
+};
+    }
+}
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/stdafx.h b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/stdafx.h
index f29882b0d97e593fbe0632a07a82e01e51a3c439..e0bc5b19fe2e7893970aa6ac06d063be2b245211 100644
--- a/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/stdafx.h
+++ b/Code/Mantid/Framework/MDDataObjects/inc/MDDataObjects/stdafx.h
@@ -1,39 +1,39 @@
-// stdafx.h : include file for standard system include files,
-// or project specific include files that are used frequently, but
-// are changed infrequently
-//
-
-#ifndef H_STDAFX_VADDS
-#define H_STDAFX_VADDS
-
-
-#include <iostream>
-#include <vector>
-#include <list>
-#include <fstream>
-#include <sstream>
-#include <string>
-#include <cfloat>
-#include <algorithm>
-#include <limits>
-#include <time.h>
-#include "MantidKernel/Exception.h"
-#include "MantidKernel/Logger.h"
-#include "MantidAPI/Workspace.h"
-
-#ifdef __GNUC__
-#   if __GNUC__ <= 4
-#		 if __GNUC_MINOR__ < 2  // then the compiler do not undertand OpenMP functions, let's define them
-void omp_set_num_threads(int nThreads){};
-#define  omp_get_num_threads() 1
-#		endif
-#	endif
-#endif
-
-template <class T>
-bool isNaN(T val){
-    volatile T buf=val;
-    return (val!=buf);
-}
-
+// stdafx.h : include file for standard system include files,
+// or project specific include files that are used frequently, but
+// are changed infrequently
+//
+
+#ifndef H_STDAFX_VADDS
+#define H_STDAFX_VADDS
+
+
+#include <iostream>
+#include <vector>
+#include <list>
+#include <fstream>
+#include <sstream>
+#include <string>
+#include <cfloat>
+#include <algorithm>
+#include <limits>
+#include <time.h>
+#include "MantidKernel/Exception.h"
+#include "MantidKernel/Logger.h"
+#include "MantidAPI/Workspace.h"
+
+#ifdef __GNUC__
+#   if __GNUC__ <= 4
+#		 if __GNUC_MINOR__ < 2  // then the compiler do not undertand OpenMP functions, let's define them
+void omp_set_num_threads(int nThreads){};
+#define  omp_get_num_threads() 1
+#		endif
+#	endif
+#endif
+
+template <class T>
+bool isNaN(T val){
+    volatile T buf=val;
+    return (val!=buf);
+}
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/src/IMD_FileFormat.cpp b/Code/Mantid/Framework/MDDataObjects/src/IMD_FileFormat.cpp
index 37307715b6cae8cdc96cfe66bcc036b31a9c57b9..e3b0ac23d1baa2e881df305f7639eb61ded23a5c 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/IMD_FileFormat.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/IMD_FileFormat.cpp
@@ -1,19 +1,19 @@
-#include "MDDataObjects/IMD_FileFormat.h"
-#include "MDDataObjects/MDWorkspace.h"
-
-#include <vector>
-
-namespace Mantid
-{
-namespace MDDataObjects
-{
-
- Kernel::Logger& IMD_FileFormat::f_log=Kernel::Logger::get("IMD_fileOperations");
-//***************************************************************************************
-
-IMD_FileFormat::IMD_FileFormat(const char *file_name):
-File_name(file_name)
-{
-}
-} // namespace MDDataObjects
-} // namespace Mantid
+#include "MDDataObjects/IMD_FileFormat.h"
+#include "MDDataObjects/MDWorkspace.h"
+
+#include <vector>
+
+namespace Mantid
+{
+namespace MDDataObjects
+{
+
+ Kernel::Logger& IMD_FileFormat::f_log=Kernel::Logger::get("IMD_fileOperations");
+//***************************************************************************************
+
+IMD_FileFormat::IMD_FileFormat(const char *file_name):
+File_name(file_name)
+{
+}
+} // namespace MDDataObjects
+} // namespace Mantid
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MDDPoints_MemManager.cpp b/Code/Mantid/Framework/MDDataObjects/src/MDDPoints_MemManager.cpp
index 50145261cb84c3c43048fc3df7c08f8e86d8a1f7..0cc6db517121a78376547be15d0fa9f4865ed443 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MDDPoints_MemManager.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MDDPoints_MemManager.cpp
@@ -1,407 +1,407 @@
-#include "MDDataObjects/MDDPoints_MemManager.h"
-
-
-namespace Mantid{
-namespace MDDataObjects{
-using namespace Mantid::Kernel;
-
+#include "MDDataObjects/MDDPoints_MemManager.h"
+
+
+namespace Mantid{
+namespace MDDataObjects{
+using namespace Mantid::Kernel;
+
 // logger for MD workspaces  
-Kernel::Logger& MDDPoints_MemManager::g_log =Kernel::Logger::get("MDWorkspaces");
-
-MDDPoints_MemManager::MDDPoints_MemManager(MD_img_data const & inImgArray,size_t nImageCells,unsigned int pix_size):
-n_data_points_in_memory(0),
-ImgArray (inImgArray),
-pixel_size(pix_size),
-n_pix_read_earlier(0),
-pix_locations_calculated(false)
-{}
-
-
-
-MDDPoints_MemManager::~MDDPoints_MemManager()
-{
-	}
-//
-
-//
-void 
-MDDPoints_MemManager::add_pixels_in_memory(std::vector<char> &data_buffer,const std::vector<char> &all_pixels,const std::vector<bool> &pixel_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels)
-{
-// memory block should be sufficient for place all pixels
-	if(this->n_data_points_in_memory>0){
-		// image and npixels are not consistent
-			if(this->n_data_points_in_memory+n_selected_pixels !=this->ImgArray.npixSum){
-				g_log.error()<<"add_pixels_in_memory: number of pixels contributed to image: "<<ImgArray.npixSum<<" is not equal to number of pixels in memory: "
-					         <<n_data_points_in_memory+n_selected_pixels<<std::endl;
-				throw(std::invalid_argument("MD image is not consistent with MDDataPoints"));
-			}
-			// expand location of existing data in memory to fit new pixels; will throw if buffer is not big enough to fit everything in memory;
-			this->expand_existing_data_in_place(data_buffer,n_selected_pixels);
-		}else{
-			// image and npixels are not consistent;
-			if(n_selected_pixels != this->ImgArray.npixSum){
-				g_log.error()<<"add_pixels_in_memory: number of pixels contributed to image: "<<ImgArray.npixSum<<" is not equal to number of pixels in memory: "
-				         <<n_selected_pixels<<std::endl;
-				throw(std::invalid_argument("MD image is not consistent with MDDataPoints"));
-			}
-
-    	   // if this is the first operation, identify the location of pixels in memory
-			this->init_pix_locations_in_memory();
-	}
-	
-	this->add_new_pixels(all_pixels,pixel_selected,cell_indexes,n_selected_pixels,data_buffer);
-	//
-    this->init_pix_locations_in_memory();
-
-}
-//
-
-void 
-MDDPoints_MemManager::add_new_pixels(const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
-                             std::vector<char> &target_buffer)
-{
-// function adds new pixels to properly allocated and shaped places of memory, providing continuous memory distribution after the operation;
-   const char *source_data   = &all_pixels[0];
-   char       *target_data   = &target_buffer[0];
-   unsigned int data_stride  = this->pixel_size;
-
-	size_t cell_index;
-	size_t ic_retauned_pixels(0);
-	size_t n_all_pixels = pixels_selected.size();
-	for(size_t i=0;i<n_all_pixels;i++){
-		if(pixels_selected[i]){
-			// what cell this pixel belongs to;
-			cell_index = cell_indexes[ic_retauned_pixels];
-			// if pixels are in memory, their location can be described by size_t;
-			size_t location = pix_location[cell_index];
-			pix_location[cell_index]++;
-
-			memcpy(target_data+data_stride*location,source_data+data_stride*i,data_stride);
-			// increase the counter of the retained pixels;
-			ic_retauned_pixels++;
-		}
-	}
-    this->n_data_points_in_memory+= n_selected_pixels;
-	
-
-}
-
-size_t
-MDDPoints_MemManager::init_pix_locations_in_memory()
-{
-   size_t nCells = ImgArray.data_size;
-   this->pix_location.assign(nCells+1,0);
-   size_t max_npix(0);
-   max_npix = ~max_npix;
- 
-
-	MD_image_point *pImgData = ImgArray.data;
-
-    pix_location[0] = 0;
-    // counter for the number of retatined pixels;
-    uint64_t nPix = pImgData[0].npix;
-	uint64_t nPix_location(0);
-	if(nPix>max_npix){
-		g_log.error()<<"init_pix_locations_in_memory: number of the pixels "<<nPix<<" contributed into cell 0 exceeds maximal size of object in memory"<<max_npix<<std::endl;
-		throw(std::invalid_argument("number of pixels in memory exceeds the max integer for this computer"));
-	}
-    for(size_t i=1;i<nCells;i++){
-// the next cell starts from the the boundary of the previous one plus the number of pixels in the previous cell
-		nPix_location  = pix_location[i-1]+ nPix;
-		nPix           = pImgData[i].npix;
-		if(nPix>max_npix||nPix_location>max_npix){
-			g_log.error()<<"init_pix_locations_in_memory: number of the pixels "<<nPix<<" contributed into cell N "<<i<<" exceeds maximal size of object in memory for current architecture"<<max_npix<<std::endl;
-			throw(std::invalid_argument("number of pixels in memory exceeds the max integer for this computer"));
-		}
-        pix_location[i]=(size_t)(nPix_location);
-    }
-	// finalize
-	nPix_location  = pix_location[nCells-1]+ nPix;
-	if(nPix_location>max_npix){
-			g_log.error()<<"init_pix_locations_in_memory: total number of the pixels "<<nPix_location<<" exceeds maximal size of object in memory for current architecture"<<max_npix<<std::endl;
-			throw(std::invalid_argument("number of pixels in memory exceeds the max integer for this computer"));
-	}
-    pix_location[nCells]=(size_t)(nPix_location);
-
-
-	size_t nTotalPix = pix_location[nCells];
-
-	this->pix_locations_calculated=true;
-	return nTotalPix;
-}
-//
-void
-MDDPoints_MemManager::expand_existing_data_in_place(std::vector<char> &data_buffer,size_t n_additional_pixels)
-{
-// the function is called after a consequent rebinning step; At this stage, MD_image_point structure have information about the number of pixels in each cell and
-// pix_location identifies the final positions of the pixels added at previous rebinning step.
-// strictly non-parallel; Should try to use if memory is restricted only; 
-
- // have to fit memory, so size_t
- 	size_t n_pixels_total = this->n_data_points_in_memory+n_additional_pixels;
-	size_t data_buffer_size = this->getDataBufferSize(data_buffer);
-
-	if(n_pixels_total>data_buffer_size){ //  Buffer size verified to be sufficient to place all pixels;
-		this->alloc_pix_array(data_buffer,n_pixels_total);
-
-	}
-	size_t nCells = ImgArray.data_size;
-
-  unsigned int data_stride           = this->pixel_size;
-  if(nCells<2)return;
-  
-  MD_image_point *pImgData = ImgArray.data;
-
-  char      *data   = &data_buffer[0];
-  size_t cells_end     = n_pixels_total;
-  size_t old_block_end = pix_location[nCells];
-  for(size_t i=1;i<nCells;i++){
-	// take the last non-processed cell;
-	size_t cell_num = nCells-i;
-	// identify new block start, sufficient to place all new npix;
-	size_t block_start = cells_end - (size_t)pImgData[cell_num].npix;
-	//
-	size_t old_location=pix_location[cell_num];
-	// the size of data in previous block
-	size_t block_size  = old_block_end-old_location;
-	//
-	memmove(data+block_start*data_stride,data+old_location*data_stride,block_size*data_stride);
-	// moving to the next block which will start from the end of current
-	cells_end = block_start;
-	// pix location will be used as a counter for a free space left after adding the following pixels a.g. as new_pix_location;
-	old_block_end         = old_location;
-	pix_location[cell_num]= block_start+block_size;
-  }
-
-   this->pix_locations_calculated=false; 
-}
-//
-void
-MDDPoints_MemManager::expand_existing_data_in_new_place(std::vector<char> &old_data_buffer,std::vector<char> &new_data_buffer,size_t n_additional_pixels)
-{
- // pix_location provides the locations of free space from previous add operation
-// easy parallelizeble after having second copy of pix_location
-
- // have to fit memory, so size_t
- 	size_t n_pixels_total = this->n_data_points_in_memory+n_additional_pixels;
-
-	// the function is called after a rebinning step; At this stage, MD_image_point structure have information about the number of pixels in each cell and
-	// pix_location identifies the final positions of the pixels added at previous rebinning step. Buffer size is verified to be sufficient to place all pixels;
-	if(n_pixels_total*this->pixel_size>new_data_buffer.size()){
-		g_log.error()<<" The size of allocated data buffer = "<<new_data_buffer.size()<<" is insufficient to add "<<n_additional_pixels<< " pixels in memory, as is already occupied by"
-			<<n_data_points_in_memory<<" pixels\n";
-		throw(std::invalid_argument("can not add new pixels to allocated memory"));
-	}
-
-	MD_image_point *pImgData = ImgArray.data;
-    size_t nCells            = ImgArray.data_size;
-	unsigned int data_stride           = this->pixel_size;
-
-
-   char      *source_data   = &old_data_buffer[0];
-   char      *target_data   = &new_data_buffer[0];
-   size_t new_location = 0;
-   size_t old_location = 0;
-   for(size_t i=0;i<nCells;i++){
-	// the size of data in previous block
-	 size_t block_size  = pix_location[i+1]-old_location;
-	//
- 	memcpy(target_data+new_location*data_stride,source_data+old_location*data_stride,block_size*data_stride);
-	// moving to the next block which will start from the end of current
-	 old_location = pix_location[i+1];
-  
-	 // indicates new free space to add new pixels to
-	 pix_location[i]=new_location+block_size;
-     new_location +=(size_t)pImgData[i].npix;
-  }
-  this->pix_locations_calculated=false;
-}
-//
-size_t 
-MDDPoints_MemManager::get_pix_from_memory(const std::vector<char> &data_buffer,const std::vector<size_t> & selected_cells,size_t starting_cell,std::vector<char> &target_pix_buf,size_t &n_pix_in_buffer)
-{
-	// total number of pixels read during current operation
-	size_t n_pix_read_total(0);
-	// number of pixels in current cell;
-	uint64_t cell_npix;
-
-	if(starting_cell==0){
-		n_pix_read_earlier   =0;
-		n_last_processed_cell=0;
-	}
-	if(starting_cell!=n_last_processed_cell){
-		n_pix_read_earlier   =0;
-	}
-	// this will verify if pixels location corresponds to the image and if not -- calculates the pixels location;
-	if(!this->pix_locations_calculated){
-		this->init_pix_locations_in_memory();
-	}
-
-	unsigned int data_stride = this->pixel_size;
-	char *target_data       = &target_pix_buf[0];
-	const char *source_data = &data_buffer[0];
-
-	size_t buf_capacity_npix = target_pix_buf.size()/data_stride;
-	MD_image_point *pData    = ImgArray.data;
-
-	size_t pix_start_location,n_pix_2read;
-
-
-	size_t cell_num,cell_ind;
-	for(cell_num=starting_cell;cell_num<selected_cells.size();cell_num++){
-		cell_ind  = selected_cells[cell_num];
-		cell_npix = pData[cell_ind].npix;
-		if(cell_npix==0)continue;
-
-		if(buf_capacity_npix>=n_pix_read_total+cell_npix-n_pix_read_earlier){
-			pix_start_location = pix_location[cell_ind]+n_pix_read_earlier;
-			n_pix_2read        = (size_t)(cell_npix-n_pix_read_earlier);
-			memcpy(target_data+data_stride*n_pix_read_total,source_data+data_stride*pix_start_location,n_pix_2read*data_stride);
-			n_pix_read_earlier   = 0;
-		    n_pix_read_total    +=  n_pix_2read;
-		}else{  // next cell contents can not be fit into the buffer;
-			if(buf_capacity_npix>n_pix_read_total){ // there is still place to read something but not the whole cell
-				pix_start_location = pix_location[cell_ind]+n_pix_read_earlier;
-				n_pix_read_earlier =  buf_capacity_npix-n_pix_read_total;
-                memcpy(target_data+data_stride*n_pix_read_total,source_data+data_stride*pix_start_location,n_pix_read_earlier*data_stride);
-				n_pix_read_total+=n_pix_read_earlier;
-				break;
-			}else{                                  // no place to read anything;
-				break;
-			}
-
-		}
-
-
-	}
-
-	n_last_processed_cell=cell_num;
-	n_pix_in_buffer      =(size_t)n_pix_read_total;
-	return cell_num;
-}
-//***************************************************************************************
-void 
-MDDPoints_MemManager::alloc_pix_array(std::vector<char> &data_buffer,size_t buf_size_in_pix)
-{  
-	// data_bufer_size in pixels
-    size_t data_buffer_size = this->getDataBufferSize(data_buffer);
-    if(data_buffer.size()>0){
-       if(buf_size_in_pix<=data_buffer_size){
-           return;
-       }
-   } 
-   
-
-   API::MemoryInfo memInf=API::MemoryManager::Instance().getMemoryInfo();
-
-   size_t  free_memory = memInf.availMemory*1024;
-   size_t max_pix_num = free_memory/this->pixel_size/2;
-   if(buf_size_in_pix>max_pix_num)buf_size_in_pix=max_pix_num;
-
-   data_buffer_size = buf_size_in_pix;
- 
-  // remove fractional parts of pixel
-   size_t dbs = data_buffer_size*this->pixel_size;
-   try{
-	 data_buffer.resize(dbs);
-   }catch(std::bad_alloc &err){
-	  data_buffer_size /= 2;
-	  dbs              /= 2;
-	  if(this->n_data_points_in_memory > data_buffer_size){
-		  	g_log.error()<<" can not re-allocate memory to increase data buffer to "<<data_buffer_size<<" as "<<n_data_points_in_memory<<" MD data points are already in the buffer\n";
-			throw(err);
-	  }
-	  try{
-			data_buffer.resize(dbs);
-	  }catch(std::bad_alloc &){
-		  data_buffer_size /= 2;
-		  dbs                    /= 2;
-		  if(this->n_data_points_in_memory > data_buffer_size){
-			  	g_log.error()<<" can not re-allocate memory to increase data buffer to "<<data_buffer_size<<" as "<<n_data_points_in_memory<<" MD data points are already in the buffer\n";
-				throw(err);
-		  }
-		  try{
-			  	data_buffer.resize(dbs);
-		  }catch(std::bad_alloc &err){
-			  g_log.error()<<" can not allocate memory to keep "<<data_buffer_size<<" MD data points\n";
-			  throw(err);
-		  }
-	  }
-  }
-
- 
-}
-//
-bool  
-MDDPoints_MemManager::store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
-                                  size_t free_memory,std::vector<char> & target_data_buffer)
-{
-	bool memBased(true);
- //  API::MemoryInfo memInf=API::MemoryManager::Instance().getMemoryInfo();
-//   size_t  free_memory = memInf.availMemory*1024;
-	size_t data_buffer_size = this->getDataBufferSize(target_data_buffer);
-	size_t max_num_pix(0);
-	max_num_pix = ~max_num_pix;
-	size_t max_pix_num = free_memory/this->pixel_size;
-	size_t max_npix_fit_memory = ((max_pix_num>max_num_pix)?max_num_pix:max_pix_num);
-	size_t size_requested     = this->n_data_points_in_memory+n_selected_pixels;
-
-	if(size_requested > max_npix_fit_memory){
-		memBased = false;
-	}
-	if(memBased){
-
-		if(size_requested>data_buffer_size){
-		 
- 			  // let's identify what memory we want to allocate for this pixels and for a future;
-				  size_t size_optimal = (size_requested/PIX_BUFFER_PREFERRED_SIZE);
-				  if(size_optimal*PIX_BUFFER_PREFERRED_SIZE!=size_requested)size_optimal++;
-				  size_optimal*=PIX_BUFFER_PREFERRED_SIZE;
-				  if(size_optimal>max_pix_num)size_optimal = max_pix_num;
-
-				  // try to allocate the memory clamed to be free
-				  try{
-					  // 1 try to allocate new buffer
-					  std::vector<char> new_buffer(size_optimal*this->pixel_size);
-					  if(this->n_data_points_in_memory>0){
-						  // copy old data to new buffer and swap buffers;
-						  this->expand_existing_data_in_new_place(target_data_buffer,new_buffer,n_selected_pixels);
-						  new_buffer.swap(target_data_buffer);
-						  data_buffer_size = size_optimal;
-						  new_buffer.clear();
-
-						  // add new data to the buffer; the locations is already prepared;
-						  this->add_new_pixels(all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels,target_data_buffer);
-						  this->init_pix_locations_in_memory();
-					  }else{
-						  new_buffer.swap(target_data_buffer);
-						  data_buffer_size = size_optimal;
-						  size_t nPixInImage=this->init_pix_locations_in_memory();
-						  if(nPixInImage!=n_selected_pixels){
-							  g_log.error()<<"store_pixels:: Number of pixels contributed in MDImage: "<<nPixInImage<<" is not equal to number of actual pixels "<<n_selected_pixels<<std::endl;
-							  throw(std::invalid_argument("store_pixels:: MD image and MDDataPoints are not consistent"));
-						  }
-						  this->add_new_pixels(all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels,target_data_buffer);
-						  this->init_pix_locations_in_memory();
-					  }
-				  }catch(std::bad_alloc &){
-					  try{
-						  // try this as this is slower but trying accomodate pixels in-place which still may be possible
-						  this->add_pixels_in_memory(target_data_buffer,all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels);
-					  }catch(std::bad_alloc &){
-     						memBased = false;
-					  }
-				  }
-
-		}else{  // existing buffer is sufficient or almost sufficient to place all pixels, so no point in allocating new buffer;
-			this->add_pixels_in_memory(target_data_buffer,all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels);
-		}
-	           
-	}else{ // mem_based false
-	}
-	return memBased;
-}
-
-
-}
+Kernel::Logger& MDDPoints_MemManager::g_log =Kernel::Logger::get("MDWorkspaces");
+
+MDDPoints_MemManager::MDDPoints_MemManager(MD_img_data const & inImgArray,size_t nImageCells,unsigned int pix_size):
+n_data_points_in_memory(0),
+ImgArray (inImgArray),
+pixel_size(pix_size),
+n_pix_read_earlier(0),
+pix_locations_calculated(false)
+{}
+
+
+
+MDDPoints_MemManager::~MDDPoints_MemManager()
+{
+	}
+//
+
+//
+void 
+MDDPoints_MemManager::add_pixels_in_memory(std::vector<char> &data_buffer,const std::vector<char> &all_pixels,const std::vector<bool> &pixel_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels)
+{
+// memory block should be sufficient for place all pixels
+	if(this->n_data_points_in_memory>0){
+		// image and npixels are not consistent
+			if(this->n_data_points_in_memory+n_selected_pixels !=this->ImgArray.npixSum){
+				g_log.error()<<"add_pixels_in_memory: number of pixels contributed to image: "<<ImgArray.npixSum<<" is not equal to number of pixels in memory: "
+					         <<n_data_points_in_memory+n_selected_pixels<<std::endl;
+				throw(std::invalid_argument("MD image is not consistent with MDDataPoints"));
+			}
+			// expand location of existing data in memory to fit new pixels; will throw if buffer is not big enough to fit everything in memory;
+			this->expand_existing_data_in_place(data_buffer,n_selected_pixels);
+		}else{
+			// image and npixels are not consistent;
+			if(n_selected_pixels != this->ImgArray.npixSum){
+				g_log.error()<<"add_pixels_in_memory: number of pixels contributed to image: "<<ImgArray.npixSum<<" is not equal to number of pixels in memory: "
+				         <<n_selected_pixels<<std::endl;
+				throw(std::invalid_argument("MD image is not consistent with MDDataPoints"));
+			}
+
+    	   // if this is the first operation, identify the location of pixels in memory
+			this->init_pix_locations_in_memory();
+	}
+	
+	this->add_new_pixels(all_pixels,pixel_selected,cell_indexes,n_selected_pixels,data_buffer);
+	//
+    this->init_pix_locations_in_memory();
+
+}
+//
+
+void 
+MDDPoints_MemManager::add_new_pixels(const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
+                             std::vector<char> &target_buffer)
+{
+// function adds new pixels to properly allocated and shaped places of memory, providing continuous memory distribution after the operation;
+   const char *source_data   = &all_pixels[0];
+   char       *target_data   = &target_buffer[0];
+   unsigned int data_stride  = this->pixel_size;
+
+	size_t cell_index;
+	size_t ic_retauned_pixels(0);
+	size_t n_all_pixels = pixels_selected.size();
+	for(size_t i=0;i<n_all_pixels;i++){
+		if(pixels_selected[i]){
+			// what cell this pixel belongs to;
+			cell_index = cell_indexes[ic_retauned_pixels];
+			// if pixels are in memory, their location can be described by size_t;
+			size_t location = pix_location[cell_index];
+			pix_location[cell_index]++;
+
+			memcpy(target_data+data_stride*location,source_data+data_stride*i,data_stride);
+			// increase the counter of the retained pixels;
+			ic_retauned_pixels++;
+		}
+	}
+    this->n_data_points_in_memory+= n_selected_pixels;
+	
+
+}
+
+size_t
+MDDPoints_MemManager::init_pix_locations_in_memory()
+{
+   size_t nCells = ImgArray.data_size;
+   this->pix_location.assign(nCells+1,0);
+   size_t max_npix(0);
+   max_npix = ~max_npix;
+ 
+
+	MD_image_point *pImgData = ImgArray.data;
+
+    pix_location[0] = 0;
+    // counter for the number of retatined pixels;
+    uint64_t nPix = pImgData[0].npix;
+	uint64_t nPix_location(0);
+	if(nPix>max_npix){
+		g_log.error()<<"init_pix_locations_in_memory: number of the pixels "<<nPix<<" contributed into cell 0 exceeds maximal size of object in memory"<<max_npix<<std::endl;
+		throw(std::invalid_argument("number of pixels in memory exceeds the max integer for this computer"));
+	}
+    for(size_t i=1;i<nCells;i++){
+// the next cell starts from the the boundary of the previous one plus the number of pixels in the previous cell
+		nPix_location  = pix_location[i-1]+ nPix;
+		nPix           = pImgData[i].npix;
+		if(nPix>max_npix||nPix_location>max_npix){
+			g_log.error()<<"init_pix_locations_in_memory: number of the pixels "<<nPix<<" contributed into cell N "<<i<<" exceeds maximal size of object in memory for current architecture"<<max_npix<<std::endl;
+			throw(std::invalid_argument("number of pixels in memory exceeds the max integer for this computer"));
+		}
+        pix_location[i]=(size_t)(nPix_location);
+    }
+	// finalize
+	nPix_location  = pix_location[nCells-1]+ nPix;
+	if(nPix_location>max_npix){
+			g_log.error()<<"init_pix_locations_in_memory: total number of the pixels "<<nPix_location<<" exceeds maximal size of object in memory for current architecture"<<max_npix<<std::endl;
+			throw(std::invalid_argument("number of pixels in memory exceeds the max integer for this computer"));
+	}
+    pix_location[nCells]=(size_t)(nPix_location);
+
+
+	size_t nTotalPix = pix_location[nCells];
+
+	this->pix_locations_calculated=true;
+	return nTotalPix;
+}
+//
+void
+MDDPoints_MemManager::expand_existing_data_in_place(std::vector<char> &data_buffer,size_t n_additional_pixels)
+{
+// the function is called after a consequent rebinning step; At this stage, MD_image_point structure have information about the number of pixels in each cell and
+// pix_location identifies the final positions of the pixels added at previous rebinning step.
+// strictly non-parallel; Should try to use if memory is restricted only; 
+
+ // have to fit memory, so size_t
+ 	size_t n_pixels_total = this->n_data_points_in_memory+n_additional_pixels;
+	size_t data_buffer_size = this->getDataBufferSize(data_buffer);
+
+	if(n_pixels_total>data_buffer_size){ //  Buffer size verified to be sufficient to place all pixels;
+		this->alloc_pix_array(data_buffer,n_pixels_total);
+
+	}
+	size_t nCells = ImgArray.data_size;
+
+  unsigned int data_stride           = this->pixel_size;
+  if(nCells<2)return;
+  
+  MD_image_point *pImgData = ImgArray.data;
+
+  char      *data   = &data_buffer[0];
+  size_t cells_end     = n_pixels_total;
+  size_t old_block_end = pix_location[nCells];
+  for(size_t i=1;i<nCells;i++){
+	// take the last non-processed cell;
+	size_t cell_num = nCells-i;
+	// identify new block start, sufficient to place all new npix;
+	size_t block_start = cells_end - (size_t)pImgData[cell_num].npix;
+	//
+	size_t old_location=pix_location[cell_num];
+	// the size of data in previous block
+	size_t block_size  = old_block_end-old_location;
+	//
+	memmove(data+block_start*data_stride,data+old_location*data_stride,block_size*data_stride);
+	// moving to the next block which will start from the end of current
+	cells_end = block_start;
+	// pix location will be used as a counter for a free space left after adding the following pixels a.g. as new_pix_location;
+	old_block_end         = old_location;
+	pix_location[cell_num]= block_start+block_size;
+  }
+
+   this->pix_locations_calculated=false; 
+}
+//
+void
+MDDPoints_MemManager::expand_existing_data_in_new_place(std::vector<char> &old_data_buffer,std::vector<char> &new_data_buffer,size_t n_additional_pixels)
+{
+ // pix_location provides the locations of free space from previous add operation
+// easy parallelizeble after having second copy of pix_location
+
+ // have to fit memory, so size_t
+ 	size_t n_pixels_total = this->n_data_points_in_memory+n_additional_pixels;
+
+	// the function is called after a rebinning step; At this stage, MD_image_point structure have information about the number of pixels in each cell and
+	// pix_location identifies the final positions of the pixels added at previous rebinning step. Buffer size is verified to be sufficient to place all pixels;
+	if(n_pixels_total*this->pixel_size>new_data_buffer.size()){
+		g_log.error()<<" The size of allocated data buffer = "<<new_data_buffer.size()<<" is insufficient to add "<<n_additional_pixels<< " pixels in memory, as is already occupied by"
+			<<n_data_points_in_memory<<" pixels\n";
+		throw(std::invalid_argument("can not add new pixels to allocated memory"));
+	}
+
+	MD_image_point *pImgData = ImgArray.data;
+    size_t nCells            = ImgArray.data_size;
+	unsigned int data_stride           = this->pixel_size;
+
+
+   char      *source_data   = &old_data_buffer[0];
+   char      *target_data   = &new_data_buffer[0];
+   size_t new_location = 0;
+   size_t old_location = 0;
+   for(size_t i=0;i<nCells;i++){
+	// the size of data in previous block
+	 size_t block_size  = pix_location[i+1]-old_location;
+	//
+ 	memcpy(target_data+new_location*data_stride,source_data+old_location*data_stride,block_size*data_stride);
+	// moving to the next block which will start from the end of current
+	 old_location = pix_location[i+1];
+  
+	 // indicates new free space to add new pixels to
+	 pix_location[i]=new_location+block_size;
+     new_location +=(size_t)pImgData[i].npix;
+  }
+  this->pix_locations_calculated=false;
+}
+//
+size_t 
+MDDPoints_MemManager::get_pix_from_memory(const std::vector<char> &data_buffer,const std::vector<size_t> & selected_cells,size_t starting_cell,std::vector<char> &target_pix_buf,size_t &n_pix_in_buffer)
+{
+	// total number of pixels read during current operation
+	size_t n_pix_read_total(0);
+	// number of pixels in current cell;
+	uint64_t cell_npix;
+
+	if(starting_cell==0){
+		n_pix_read_earlier   =0;
+		n_last_processed_cell=0;
+	}
+	if(starting_cell!=n_last_processed_cell){
+		n_pix_read_earlier   =0;
+	}
+	// this will verify if pixels location corresponds to the image and if not -- calculates the pixels location;
+	if(!this->pix_locations_calculated){
+		this->init_pix_locations_in_memory();
+	}
+
+	unsigned int data_stride = this->pixel_size;
+	char *target_data       = &target_pix_buf[0];
+	const char *source_data = &data_buffer[0];
+
+	size_t buf_capacity_npix = target_pix_buf.size()/data_stride;
+	MD_image_point *pData    = ImgArray.data;
+
+	size_t pix_start_location,n_pix_2read;
+
+
+	size_t cell_num,cell_ind;
+	for(cell_num=starting_cell;cell_num<selected_cells.size();cell_num++){
+		cell_ind  = selected_cells[cell_num];
+		cell_npix = pData[cell_ind].npix;
+		if(cell_npix==0)continue;
+
+		if(buf_capacity_npix>=n_pix_read_total+cell_npix-n_pix_read_earlier){
+			pix_start_location = pix_location[cell_ind]+n_pix_read_earlier;
+			n_pix_2read        = (size_t)(cell_npix-n_pix_read_earlier);
+			memcpy(target_data+data_stride*n_pix_read_total,source_data+data_stride*pix_start_location,n_pix_2read*data_stride);
+			n_pix_read_earlier   = 0;
+		    n_pix_read_total    +=  n_pix_2read;
+		}else{  // next cell contents can not be fit into the buffer;
+			if(buf_capacity_npix>n_pix_read_total){ // there is still place to read something but not the whole cell
+				pix_start_location = pix_location[cell_ind]+n_pix_read_earlier;
+				n_pix_read_earlier =  buf_capacity_npix-n_pix_read_total;
+                memcpy(target_data+data_stride*n_pix_read_total,source_data+data_stride*pix_start_location,n_pix_read_earlier*data_stride);
+				n_pix_read_total+=n_pix_read_earlier;
+				break;
+			}else{                                  // no place to read anything;
+				break;
+			}
+
+		}
+
+
+	}
+
+	n_last_processed_cell=cell_num;
+	n_pix_in_buffer      =(size_t)n_pix_read_total;
+	return cell_num;
+}
+//***************************************************************************************
+void 
+MDDPoints_MemManager::alloc_pix_array(std::vector<char> &data_buffer,size_t buf_size_in_pix)
+{  
+	// data_bufer_size in pixels
+    size_t data_buffer_size = this->getDataBufferSize(data_buffer);
+    if(data_buffer.size()>0){
+       if(buf_size_in_pix<=data_buffer_size){
+           return;
+       }
+   } 
+   
+
+   API::MemoryInfo memInf=API::MemoryManager::Instance().getMemoryInfo();
+
+   size_t  free_memory = memInf.availMemory*1024;
+   size_t max_pix_num = free_memory/this->pixel_size/2;
+   if(buf_size_in_pix>max_pix_num)buf_size_in_pix=max_pix_num;
+
+   data_buffer_size = buf_size_in_pix;
+ 
+  // remove fractional parts of pixel
+   size_t dbs = data_buffer_size*this->pixel_size;
+   try{
+	 data_buffer.resize(dbs);
+   }catch(std::bad_alloc &err){
+	  data_buffer_size /= 2;
+	  dbs              /= 2;
+	  if(this->n_data_points_in_memory > data_buffer_size){
+		  	g_log.error()<<" can not re-allocate memory to increase data buffer to "<<data_buffer_size<<" as "<<n_data_points_in_memory<<" MD data points are already in the buffer\n";
+			throw(err);
+	  }
+	  try{
+			data_buffer.resize(dbs);
+	  }catch(std::bad_alloc &){
+		  data_buffer_size /= 2;
+		  dbs                    /= 2;
+		  if(this->n_data_points_in_memory > data_buffer_size){
+			  	g_log.error()<<" can not re-allocate memory to increase data buffer to "<<data_buffer_size<<" as "<<n_data_points_in_memory<<" MD data points are already in the buffer\n";
+				throw(err);
+		  }
+		  try{
+			  	data_buffer.resize(dbs);
+		  }catch(std::bad_alloc &err){
+			  g_log.error()<<" can not allocate memory to keep "<<data_buffer_size<<" MD data points\n";
+			  throw(err);
+		  }
+	  }
+  }
+
+ 
+}
+//
+bool  
+MDDPoints_MemManager::store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels,
+                                  size_t free_memory,std::vector<char> & target_data_buffer)
+{
+	bool memBased(true);
+ //  API::MemoryInfo memInf=API::MemoryManager::Instance().getMemoryInfo();
+//   size_t  free_memory = memInf.availMemory*1024;
+	size_t data_buffer_size = this->getDataBufferSize(target_data_buffer);
+	size_t max_num_pix(0);
+	max_num_pix = ~max_num_pix;
+	size_t max_pix_num = free_memory/this->pixel_size;
+	size_t max_npix_fit_memory = ((max_pix_num>max_num_pix)?max_num_pix:max_pix_num);
+	size_t size_requested     = this->n_data_points_in_memory+n_selected_pixels;
+
+	if(size_requested > max_npix_fit_memory){
+		memBased = false;
+	}
+	if(memBased){
+
+		if(size_requested>data_buffer_size){
+		 
+ 			  // let's identify what memory we want to allocate for this pixels and for a future;
+				  size_t size_optimal = (size_requested/PIX_BUFFER_PREFERRED_SIZE);
+				  if(size_optimal*PIX_BUFFER_PREFERRED_SIZE!=size_requested)size_optimal++;
+				  size_optimal*=PIX_BUFFER_PREFERRED_SIZE;
+				  if(size_optimal>max_pix_num)size_optimal = max_pix_num;
+
+				  // try to allocate the memory clamed to be free
+				  try{
+					  // 1 try to allocate new buffer
+					  std::vector<char> new_buffer(size_optimal*this->pixel_size);
+					  if(this->n_data_points_in_memory>0){
+						  // copy old data to new buffer and swap buffers;
+						  this->expand_existing_data_in_new_place(target_data_buffer,new_buffer,n_selected_pixels);
+						  new_buffer.swap(target_data_buffer);
+						  data_buffer_size = size_optimal;
+						  new_buffer.clear();
+
+						  // add new data to the buffer; the locations is already prepared;
+						  this->add_new_pixels(all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels,target_data_buffer);
+						  this->init_pix_locations_in_memory();
+					  }else{
+						  new_buffer.swap(target_data_buffer);
+						  data_buffer_size = size_optimal;
+						  size_t nPixInImage=this->init_pix_locations_in_memory();
+						  if(nPixInImage!=n_selected_pixels){
+							  g_log.error()<<"store_pixels:: Number of pixels contributed in MDImage: "<<nPixInImage<<" is not equal to number of actual pixels "<<n_selected_pixels<<std::endl;
+							  throw(std::invalid_argument("store_pixels:: MD image and MDDataPoints are not consistent"));
+						  }
+						  this->add_new_pixels(all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels,target_data_buffer);
+						  this->init_pix_locations_in_memory();
+					  }
+				  }catch(std::bad_alloc &){
+					  try{
+						  // try this as this is slower but trying accomodate pixels in-place which still may be possible
+						  this->add_pixels_in_memory(target_data_buffer,all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels);
+					  }catch(std::bad_alloc &){
+     						memBased = false;
+					  }
+				  }
+
+		}else{  // existing buffer is sufficient or almost sufficient to place all pixels, so no point in allocating new buffer;
+			this->add_pixels_in_memory(target_data_buffer,all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels);
+		}
+	           
+	}else{ // mem_based false
+	}
+	return memBased;
+}
+
+
+}
 }
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MDDataPoint.cpp b/Code/Mantid/Framework/MDDataObjects/src/MDDataPoint.cpp
index 3887237c5adedc3d619a809a4e04aedd868af62c..56f0fcd22916976b2bbd98210bed2db1333f94b6 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MDDataPoint.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MDDataPoint.cpp
@@ -1,9 +1,9 @@
-#include "MDDataObjects/MDDataPoint.h"
-
-namespace Mantid
-{
-namespace MDDataObjects
-{
-
-} // end namespaces;
+#include "MDDataObjects/MDDataPoint.h"
+
+namespace Mantid
+{
+namespace MDDataObjects
+{
+
+} // end namespaces;
 }
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MDDataPointDescription.cpp b/Code/Mantid/Framework/MDDataObjects/src/MDDataPointDescription.cpp
index b43c14fc151ef3fe5dc59b7b51193f591e7eaa22..6287b530e10e0c857900bbefd12488611430eb8c 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MDDataPointDescription.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MDDataPointDescription.cpp
@@ -1,118 +1,118 @@
-#include "MDDataObjects/MDDataPointDescription.h"
-#include <sstream>
-
-
-namespace Mantid
-{
-namespace MDDataObjects
-{
-
-MDPointDescription::MDPointDescription():
-PixDescriptor()
-{
-  buildDefaultIDs(this->PixDescriptor);
-}
-//
-MDPointDescription::MDPointDescription(const MDPointStructure &pixInfo,const std::vector<std::string> &IndataTags):
-dataIDs(IndataTags),PixDescriptor(pixInfo)
-{
-    if(pixInfo.NumRecDimensions>pixInfo.NumDimensions){
-            throw(std::invalid_argument("number of dimensions is lower then the number of reciprocal dimensions"));
-    }
-
-    unsigned int nFields = PixDescriptor.NumDimensions*PixDescriptor.DimFieldsPresent+PixDescriptor.NumDataFields*PixDescriptor.DataFieldsPresent+PixDescriptor.NumDimIDs;
-
-    if(dataIDs.size()!=nFields){
-      throw(std::invalid_argument("number of dimension names has to be equal to the number of data fields;"));
-    }
-}
-//
-unsigned int 
-MDPointDescription::sizeofMDDPoint(void)const
-{
-    unsigned int length(0);
-    if(this->PixDescriptor.DimFieldsPresent){
-     length= PixDescriptor.NumDimensions*PixDescriptor.DimLength;
-    }
-   if(this->PixDescriptor.DataFieldsPresent){
-     length += PixDescriptor.NumDataFields*PixDescriptor.SignalLength;
-   }
-
-   // calculate length of all dataID-s
-   // there could be 2 compressed fields-> more are not currently supported;
-   if(this->PixDescriptor.NumPixCompressionBits>0){
-     // account for compressed fields;
-         int num_dimID = this->PixDescriptor.NumDimIDs;
-         if(num_dimID>=2){
-              num_dimID -=2;
-            // two pixels ID are compressed into 4 bytes;
-              length += 4 + num_dimID*PixDescriptor.DimIDlength;
-         }else{
-              length +=  num_dimID*PixDescriptor.DimIDlength;
-         }
-
-   }else{ // all ID fields have equal length
-        length += PixDescriptor.NumDimIDs*PixDescriptor.DimIDlength;
-   }
-
-    return length;
-}
-//
-std::vector<std::string> 
-MDPointDescription::getDimensionsID(void)const
-{
-    std::vector<std::string> tags(dataIDs.begin(),dataIDs.begin()+PixDescriptor.NumDimensions);
-    return tags;
-}
-//
-void 
-MDPointDescription::buildDefaultIDs(const MDPointStructure &pixInfo)
-{
-
-  unsigned int nFields = pixInfo.NumDimensions+pixInfo.NumDataFields+pixInfo.NumDimIDs;
-  std::stringstream buf;
-  std::vector<std::string> tags(nFields,"");
-  unsigned int i0(0),i1(pixInfo.NumRecDimensions),i;
-  for(i=0;i<i1;i++){
-    buf<<i;
-    tags[i]="q"+buf.str();
-    buf.seekp(std::ios::beg);
-  }
-  i0=i1;
-  i1=pixInfo.NumDimensions;
-  for(i=i0;i<i1;i++){
-    buf<<i;
-    tags[i]="u"+buf.str();
-    buf.seekp(std::ios::beg);
-  }
-  i0=i1;
-  i1=pixInfo.NumDataFields;
-  for(i=0;i<i1;i++){
-    buf<<i;
-    tags[i0+i]="S"+buf.str();
-    buf.seekp(std::ios::beg);
-  }
-  i0+=i1;
-  i1=pixInfo.NumDimIDs;
-  for(i=0;i<i1;i++){
-    buf<<i;
-    tags[i0+i]="Ind"+buf.str();
-    buf.seekp(std::ios::beg);
-  }
-  this->dataIDs = tags;
-}
-
-MDPointDescription::MDPointDescription(const MDPointStructure &pixInfo):
-PixDescriptor(pixInfo)
-{
-    if(pixInfo.NumRecDimensions>pixInfo.NumDimensions){
-            throw(std::invalid_argument("number of dimensions is lower then the number of reciprocal dimensions"));
-    }
-
-
-  this->buildDefaultIDs(pixInfo);
-
-}
-//
-} // namespaces
+#include "MDDataObjects/MDDataPointDescription.h"
+#include <sstream>
+
+
+namespace Mantid
+{
+namespace MDDataObjects
+{
+
+MDPointDescription::MDPointDescription():
+PixDescriptor()
+{
+  buildDefaultIDs(this->PixDescriptor);
+}
+//
+MDPointDescription::MDPointDescription(const MDPointStructure &pixInfo,const std::vector<std::string> &IndataTags):
+dataIDs(IndataTags),PixDescriptor(pixInfo)
+{
+    if(pixInfo.NumRecDimensions>pixInfo.NumDimensions){
+            throw(std::invalid_argument("number of dimensions is lower then the number of reciprocal dimensions"));
+    }
+
+    unsigned int nFields = PixDescriptor.NumDimensions*PixDescriptor.DimFieldsPresent+PixDescriptor.NumDataFields*PixDescriptor.DataFieldsPresent+PixDescriptor.NumDimIDs;
+
+    if(dataIDs.size()!=nFields){
+      throw(std::invalid_argument("number of dimension names has to be equal to the number of data fields;"));
+    }
+}
+//
+unsigned int 
+MDPointDescription::sizeofMDDPoint(void)const
+{
+    unsigned int length(0);
+    if(this->PixDescriptor.DimFieldsPresent){
+     length= PixDescriptor.NumDimensions*PixDescriptor.DimLength;
+    }
+   if(this->PixDescriptor.DataFieldsPresent){
+     length += PixDescriptor.NumDataFields*PixDescriptor.SignalLength;
+   }
+
+   // calculate length of all dataID-s
+   // there could be 2 compressed fields-> more are not currently supported;
+   if(this->PixDescriptor.NumPixCompressionBits>0){
+     // account for compressed fields;
+         int num_dimID = this->PixDescriptor.NumDimIDs;
+         if(num_dimID>=2){
+              num_dimID -=2;
+            // two pixels ID are compressed into 4 bytes;
+              length += 4 + num_dimID*PixDescriptor.DimIDlength;
+         }else{
+              length +=  num_dimID*PixDescriptor.DimIDlength;
+         }
+
+   }else{ // all ID fields have equal length
+        length += PixDescriptor.NumDimIDs*PixDescriptor.DimIDlength;
+   }
+
+    return length;
+}
+//
+std::vector<std::string> 
+MDPointDescription::getDimensionsID(void)const
+{
+    std::vector<std::string> tags(dataIDs.begin(),dataIDs.begin()+PixDescriptor.NumDimensions);
+    return tags;
+}
+//
+void 
+MDPointDescription::buildDefaultIDs(const MDPointStructure &pixInfo)
+{
+
+  unsigned int nFields = pixInfo.NumDimensions+pixInfo.NumDataFields+pixInfo.NumDimIDs;
+  std::stringstream buf;
+  std::vector<std::string> tags(nFields,"");
+  unsigned int i0(0),i1(pixInfo.NumRecDimensions),i;
+  for(i=0;i<i1;i++){
+    buf<<i;
+    tags[i]="q"+buf.str();
+    buf.seekp(std::ios::beg);
+  }
+  i0=i1;
+  i1=pixInfo.NumDimensions;
+  for(i=i0;i<i1;i++){
+    buf<<i;
+    tags[i]="u"+buf.str();
+    buf.seekp(std::ios::beg);
+  }
+  i0=i1;
+  i1=pixInfo.NumDataFields;
+  for(i=0;i<i1;i++){
+    buf<<i;
+    tags[i0+i]="S"+buf.str();
+    buf.seekp(std::ios::beg);
+  }
+  i0+=i1;
+  i1=pixInfo.NumDimIDs;
+  for(i=0;i<i1;i++){
+    buf<<i;
+    tags[i0+i]="Ind"+buf.str();
+    buf.seekp(std::ios::beg);
+  }
+  this->dataIDs = tags;
+}
+
+MDPointDescription::MDPointDescription(const MDPointStructure &pixInfo):
+PixDescriptor(pixInfo)
+{
+    if(pixInfo.NumRecDimensions>pixInfo.NumDimensions){
+            throw(std::invalid_argument("number of dimensions is lower then the number of reciprocal dimensions"));
+    }
+
+
+  this->buildDefaultIDs(pixInfo);
+
+}
+//
+} // namespaces
 }
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MDDataPoints.cpp b/Code/Mantid/Framework/MDDataObjects/src/MDDataPoints.cpp
index bcc87942b0e9eb5103b00f57ed60d7b8d85c11e4..be2725a1fc48ddf49d91d1d0308ec60d4ecb9304 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MDDataPoints.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MDDataPoints.cpp
@@ -1,194 +1,194 @@
-#include "MDDataObjects/stdafx.h"
-#include "MDDataObjects/MDDataPoints.h"
-#include "MDDataObjects/MDImage.h"
-
-namespace Mantid{
-namespace MDDataObjects{
-using namespace Mantid::Kernel;
-
-
+#include "MDDataObjects/stdafx.h"
+#include "MDDataObjects/MDDataPoints.h"
+#include "MDDataObjects/MDImage.h"
+
+namespace Mantid{
+namespace MDDataObjects{
+using namespace Mantid::Kernel;
+
+
 // logger for MD workspaces  
-Kernel::Logger& MDDataPoints::g_log =Kernel::Logger::get("MDWorkspaces");
-
-//------------------------------------------------------------------------------------------------
-void 
-MDDataPoints::store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels)
-{
-	if(this->memBased){
-		if(this->pMemoryMGR.get()){
-			API::MemoryInfo memInf=API::MemoryManager::Instance().getMemoryInfo();
-			size_t  free_memory = memInf.availMemory*1024;
-			this->memBased = pMemoryMGR->store_pixels(all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels,free_memory,DataBuffer);
-			//TODO: this is stub to deal with very frequent possibility of target pixels not fitting memory;
-			if(!this->memBased){
-				g_log.error()<<" can not store rebinned pixels in memory and storing them on HDD is not implemented yet\n";
-				DataBuffer.clear();
-				return;
-			}
-		}else{
-			g_log.error()<<" MDDataPoints have not been initiated properly to use store pixels\n";
-			throw(std::logic_error("Incorrect MDDataPoints class initialisation"));
-		}
-	}else{
-		//TODO: StorePixelsOnHDD, in temporary or permanent swap file;
-	}
-
-}
-
-/** Constructor
- *
- * @param spImage: ???
- * */
-MDDataPoints::MDDataPoints(const MDDataPointsDescription &descr):
-  pixDescription(descr),
-  memBased(true),
-  n_data_points(0),
-  pMemoryMGR(NULL)
-{
-
-  unsigned int nDims = pixDescription.PixInfo().NumDimensions;
-
-  this->box_min.assign(nDims,FLT_MAX);
-  this->box_max.assign(nDims,-FLT_MAX);
-}
-//
-bool 
-MDDataPoints::is_initialized(void)const
-{
-    if(spMDImage.get()!=NULL){
-		if(spMDImage->getNMDDPoints()==this->n_data_points){
-			return true;
-		}else{
-			return false;
-		}
-    }else{
-        return false;
-    }
-}
-//
-
-void 
-MDDataPoints::set_file_based()
-{
-    //TODO: should verify and if there are fresh data in buffer, dump it on HDD (or algorithm should take care about it)
-    this->memBased = false;
-	//throw(Kernel::Exception::NotImplementedError("This functionality is not implemented yet"));
-	// save pixels from memory
-    //this->data_buffer.clear();
-}
-//
-void 
-MDDataPoints::initialize(boost::shared_ptr<const MDImage> spImage,boost::shared_ptr<IMD_FileFormat> in_spFile)
-{
-    this->spMDImage   = spImage;
-    this->spFileReader= in_spFile;
-
-    std::vector<std::string> dim_tags = spMDImage->getGeometry()->getBasisTags();
-    std::vector<std::string> data_tags = this->pixDescription.getColumnNames();
-    // check if the dimensions id are consistant with the data columns i.e. the MDImage and the MDpoints parts of the dataset are consistent
-    for(size_t i=0;i<dim_tags.size();i++){
-        if(std::find(data_tags.begin(),data_tags.end(),dim_tags[i])==data_tags.end()){
-            g_log.error()<<" basis dimension with ID: "<<dim_tags[i]<<" can not be found among the data tags:\n";
-            std::stringstream buf;
-            for(size_t j=0;j<data_tags.size();j++){
-                 buf<<data_tags[j]<<" ";
-            }
-            g_log.error()<<buf.str()<<std::endl;
-            throw(std::invalid_argument("MDDataPoints and MDBasis ID-s are inconsistent"));
-        }
-    }
-
-   this->n_data_points          = this->spFileReader->getNPix();
-   // check if the image is synchroneous with the MDDataPoints dataset;
-   if(spMDImage->getNMDDPoints() != this->n_data_points){
-	// Data point initialization done this way can be suppported by an empty image only; will throw otherwise
-	   if(spMDImage->getNMDDPoints()!=0){
-		   g_log.error()<<" Number of points contributed into MD image = "<<spMDImage->getNMDDPoints()<<" is not consistent with number of points in MD Dataset ="<<this->n_data_points<<std::endl;
-           throw(std::logic_error("MD data image and MDDataPoints part of the workspace are non-synchronous "));
-	   } // if the image is empty, workspace would be not initialized;
-   }
-
-   this->memBased                = false;
-   
-   unsigned int nDims= this->spMDImage->getGeometry()->getNumDims();
-   this->box_min.assign(nDims,FLT_MAX);
-   this->box_max.assign(nDims,-FLT_MAX);
-
-   // initialize memory managment and control class
- 
-   pMemoryMGR = std::auto_ptr<MDDPoints_MemManager>(new MDDPoints_MemManager(spMDImage->get_MDImgData(),spMDImage->getDataSize(),this->pixDescription.sizeofMDDPoint()));
-   size_t buf_size = ((this->n_data_points<PIX_BUFFER_PREFERRED_SIZE)?(size_t)this->n_data_points:PIX_BUFFER_PREFERRED_SIZE);
-   pMemoryMGR->alloc_pix_array(DataBuffer,buf_size);
-
-}
-size_t 
-MDDataPoints::get_pix_bufSize(void)const
-{
-	if(pMemoryMGR.get()){
-		return pMemoryMGR->getDataBufferSize(DataBuffer);
-	}else{
-		g_log.error()<<"MDDataPoints::get_pix_bufSize MDDataPoints class has not been initiated properly\n";
-		throw(std::invalid_argument("Call to non-initated MDDataPoints class"));
-	}
-
-}
-// 
-void
-MDDataPoints::initialize(boost::shared_ptr<const MDImage> pImage)
-{
-	this->spMDImage  = pImage;
-
-// Data point initialization done this way can be suppported by an empty image only throw otherwise; it will initiate empty target workspace for use with algorithms. 
-	if(pImage->getNMDDPoints()!=0){
-     	 g_log.error()<<" this kind of initialisation for MDDataPoints can be performed by an empty image only\n";
-	     throw(std::logic_error("this kind of initialisation for MDDataPoints can be performed by an empty image only"));
- 	}
-
-  
-    this->n_data_points           = 0;
-	this->memBased                = true;
-
-   unsigned int nDims= this->spMDImage->getGeometry()->getNumDims();
-
-   this->box_min.assign(nDims,FLT_MAX);
-   this->box_max.assign(nDims,-FLT_MAX);
-  // initialize memory managment and control class
- 
-   pMemoryMGR = std::auto_ptr<MDDPoints_MemManager>(new MDDPoints_MemManager(spMDImage->get_MDImgData(),spMDImage->getDataSize(),this->pixDescription.sizeofMDDPoint()));
-  
-
-    
-}
-  /// load part of the dataset, specified by the vector of MDImage cell numbers into memory. 
-size_t 
-MDDataPoints::get_pix_subset(const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
-{
-    size_t ind_cell_read;
-	if(this->memBased){
-		ind_cell_read  = this->pMemoryMGR->get_pix_from_memory(pix_buf,selected_cells,starting_cell,pix_buf,n_pix_in_buffer);
-	}else{
-		ind_cell_read = this->spFileReader->read_pix_subset(*spMDImage,selected_cells,starting_cell,pix_buf,n_pix_in_buffer);
-	}
-    return ind_cell_read; 
-}
-std::vector<char> *
-MDDataPoints::get_pBuffer(size_t buf_size)
-{
-	if(this->pMemoryMGR.get()){
-		// this will analyse the state of the data and do nothing if size is sufficient or try reallocating sufficient size and keep the data if the size is not sufficient;
-		pMemoryMGR->alloc_pix_array(DataBuffer,buf_size);
-		return &DataBuffer;
-	}else{
-		g_log.error()<<" MDDataPoints have not been initialized properly\n";
-		throw(Kernel::Exception::NullPointerException("MDDataPoints::get_pBuffer","The object has not been initiated properly"));
-	}
-}
-
-//***************************************************************************************
-MDDataPoints::~MDDataPoints()
-{
-
-}
-
-}
-}
+Kernel::Logger& MDDataPoints::g_log =Kernel::Logger::get("MDWorkspaces");
+
+//------------------------------------------------------------------------------------------------
+void 
+MDDataPoints::store_pixels(const std::vector<char> &all_new_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels)
+{
+	if(this->memBased){
+		if(this->pMemoryMGR.get()){
+			API::MemoryInfo memInf=API::MemoryManager::Instance().getMemoryInfo();
+			size_t  free_memory = memInf.availMemory*1024;
+			this->memBased = pMemoryMGR->store_pixels(all_new_pixels,pixels_selected,cell_indexes,n_selected_pixels,free_memory,DataBuffer);
+			//TODO: this is stub to deal with very frequent possibility of target pixels not fitting memory;
+			if(!this->memBased){
+				g_log.error()<<" can not store rebinned pixels in memory and storing them on HDD is not implemented yet\n";
+				DataBuffer.clear();
+				return;
+			}
+		}else{
+			g_log.error()<<" MDDataPoints have not been initiated properly to use store pixels\n";
+			throw(std::logic_error("Incorrect MDDataPoints class initialisation"));
+		}
+	}else{
+		//TODO: StorePixelsOnHDD, in temporary or permanent swap file;
+	}
+
+}
+
+/** Constructor
+ *
+ * @param spImage: ???
+ * */
+MDDataPoints::MDDataPoints(const MDDataPointsDescription &descr):
+  pixDescription(descr),
+  memBased(true),
+  n_data_points(0),
+  pMemoryMGR(NULL)
+{
+
+  unsigned int nDims = pixDescription.PixInfo().NumDimensions;
+
+  this->box_min.assign(nDims,FLT_MAX);
+  this->box_max.assign(nDims,-FLT_MAX);
+}
+//
+bool 
+MDDataPoints::is_initialized(void)const
+{
+    if(spMDImage.get()!=NULL){
+		if(spMDImage->getNMDDPoints()==this->n_data_points){
+			return true;
+		}else{
+			return false;
+		}
+    }else{
+        return false;
+    }
+}
+//
+
+void 
+MDDataPoints::set_file_based()
+{
+    //TODO: should verify and if there are fresh data in buffer, dump it on HDD (or algorithm should take care about it)
+    this->memBased = false;
+	//throw(Kernel::Exception::NotImplementedError("This functionality is not implemented yet"));
+	// save pixels from memory
+    //this->data_buffer.clear();
+}
+//
+void 
+MDDataPoints::initialize(boost::shared_ptr<const MDImage> spImage,boost::shared_ptr<IMD_FileFormat> in_spFile)
+{
+    this->spMDImage   = spImage;
+    this->spFileReader= in_spFile;
+
+    std::vector<std::string> dim_tags = spMDImage->getGeometry()->getBasisTags();
+    std::vector<std::string> data_tags = this->pixDescription.getColumnNames();
+    // check if the dimensions id are consistant with the data columns i.e. the MDImage and the MDpoints parts of the dataset are consistent
+    for(size_t i=0;i<dim_tags.size();i++){
+        if(std::find(data_tags.begin(),data_tags.end(),dim_tags[i])==data_tags.end()){
+            g_log.error()<<" basis dimension with ID: "<<dim_tags[i]<<" can not be found among the data tags:\n";
+            std::stringstream buf;
+            for(size_t j=0;j<data_tags.size();j++){
+                 buf<<data_tags[j]<<" ";
+            }
+            g_log.error()<<buf.str()<<std::endl;
+            throw(std::invalid_argument("MDDataPoints and MDBasis ID-s are inconsistent"));
+        }
+    }
+
+   this->n_data_points          = this->spFileReader->getNPix();
+   // check if the image is synchroneous with the MDDataPoints dataset;
+   if(spMDImage->getNMDDPoints() != this->n_data_points){
+	// Data point initialization done this way can be suppported by an empty image only; will throw otherwise
+	   if(spMDImage->getNMDDPoints()!=0){
+		   g_log.error()<<" Number of points contributed into MD image = "<<spMDImage->getNMDDPoints()<<" is not consistent with number of points in MD Dataset ="<<this->n_data_points<<std::endl;
+           throw(std::logic_error("MD data image and MDDataPoints part of the workspace are non-synchronous "));
+	   } // if the image is empty, workspace would be not initialized;
+   }
+
+   this->memBased                = false;
+   
+   unsigned int nDims= this->spMDImage->getGeometry()->getNumDims();
+   this->box_min.assign(nDims,FLT_MAX);
+   this->box_max.assign(nDims,-FLT_MAX);
+
+   // initialize memory managment and control class
+ 
+   pMemoryMGR = std::auto_ptr<MDDPoints_MemManager>(new MDDPoints_MemManager(spMDImage->get_MDImgData(),spMDImage->getDataSize(),this->pixDescription.sizeofMDDPoint()));
+   size_t buf_size = ((this->n_data_points<PIX_BUFFER_PREFERRED_SIZE)?(size_t)this->n_data_points:PIX_BUFFER_PREFERRED_SIZE);
+   pMemoryMGR->alloc_pix_array(DataBuffer,buf_size);
+
+}
+size_t 
+MDDataPoints::get_pix_bufSize(void)const
+{
+	if(pMemoryMGR.get()){
+		return pMemoryMGR->getDataBufferSize(DataBuffer);
+	}else{
+		g_log.error()<<"MDDataPoints::get_pix_bufSize MDDataPoints class has not been initiated properly\n";
+		throw(std::invalid_argument("Call to non-initated MDDataPoints class"));
+	}
+
+}
+// 
+void
+MDDataPoints::initialize(boost::shared_ptr<const MDImage> pImage)
+{
+	this->spMDImage  = pImage;
+
+// Data point initialization done this way can be suppported by an empty image only throw otherwise; it will initiate empty target workspace for use with algorithms. 
+	if(pImage->getNMDDPoints()!=0){
+     	 g_log.error()<<" this kind of initialisation for MDDataPoints can be performed by an empty image only\n";
+	     throw(std::logic_error("this kind of initialisation for MDDataPoints can be performed by an empty image only"));
+ 	}
+
+  
+    this->n_data_points           = 0;
+	this->memBased                = true;
+
+   unsigned int nDims= this->spMDImage->getGeometry()->getNumDims();
+
+   this->box_min.assign(nDims,FLT_MAX);
+   this->box_max.assign(nDims,-FLT_MAX);
+  // initialize memory managment and control class
+ 
+   pMemoryMGR = std::auto_ptr<MDDPoints_MemManager>(new MDDPoints_MemManager(spMDImage->get_MDImgData(),spMDImage->getDataSize(),this->pixDescription.sizeofMDDPoint()));
+  
+
+    
+}
+  /// load part of the dataset, specified by the vector of MDImage cell numbers into memory. 
+size_t 
+MDDataPoints::get_pix_subset(const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
+{
+    size_t ind_cell_read;
+	if(this->memBased){
+		ind_cell_read  = this->pMemoryMGR->get_pix_from_memory(pix_buf,selected_cells,starting_cell,pix_buf,n_pix_in_buffer);
+	}else{
+		ind_cell_read = this->spFileReader->read_pix_subset(*spMDImage,selected_cells,starting_cell,pix_buf,n_pix_in_buffer);
+	}
+    return ind_cell_read; 
+}
+std::vector<char> *
+MDDataPoints::get_pBuffer(size_t buf_size)
+{
+	if(this->pMemoryMGR.get()){
+		// this will analyse the state of the data and do nothing if size is sufficient or try reallocating sufficient size and keep the data if the size is not sufficient;
+		pMemoryMGR->alloc_pix_array(DataBuffer,buf_size);
+		return &DataBuffer;
+	}else{
+		g_log.error()<<" MDDataPoints have not been initialized properly\n";
+		throw(Kernel::Exception::NullPointerException("MDDataPoints::get_pBuffer","The object has not been initiated properly"));
+	}
+}
+
+//***************************************************************************************
+MDDataPoints::~MDDataPoints()
+{
+
+}
+
+}
+}
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MDImage.cpp b/Code/Mantid/Framework/MDDataObjects/src/MDImage.cpp
index 624a428044b08c0c6617627b1d6af0ceb2ad054b..95fff2c29c847e89d35436bfe56c105eaf8e6a47 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MDImage.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MDImage.cpp
@@ -1,325 +1,325 @@
-#include "MDDataObjects/stdafx.h"
-#include "MDDataObjects/MDImage.h"
-#include "MantidGeometry/MDGeometry/MDCell.h"
-
-
-namespace Mantid{
-    namespace MDDataObjects{
-//
-    using namespace Mantid::API;
-    using namespace Mantid::Kernel;
-    using namespace Mantid::Geometry;
-
-
-// logger for MD workspaces  
-Kernel::Logger& MDImage::g_log =Kernel::Logger::get("MDWorkspaces");
-
-
-void
-MDImage::getPointData(std::vector<point3D> &image_points)const{
-    std::vector<unsigned int> selection;
-    if(this->pMDGeometry->getNumExpandedDims()>3){
-        selection.assign(this->pMDGeometry->getNumExpandedDims()-3,0);
-    }else{
-        selection.resize(0);
-    }
-    this->getPointData(selection,image_points);
-
-}
-//
-void
-MDImage::getPointData(const std::vector<unsigned int> &selection,std::vector<point3D> &image_points)const
-{
-    unsigned int selection_size  =  (unsigned int )selection.size();
-    if(selection_size >this->pMDGeometry->getNumExpandedDims()){
-        throw(std::invalid_argument("MDImaegData::getPointData: selection-> attempting to select more dimensions then there are expanded dimensions"));
-    }
-    unsigned int i,j,k,iMin,jMin,kMin,iMax,jMax,kMax,isel;
-    size_t   base(0);
-    const IMDDimension *pDim;
-
-    // calculate shift for all selected dimensions;
-    int the_expanded_dim= this->pMDGeometry->getNumExpandedDims()-1;
-    for(int iii=selection_size-1;iii>=0;iii--){
-		pDim = this->pMDGeometry->get_constDimension(the_expanded_dim).get();
-        if(selection[iii]>=pDim->getNBins()){
-            isel=pDim->getNBins()-1;
-        }else{
-            isel=selection[iii];
-        }
-        if(the_expanded_dim>2){  // all lower dimensions shifs will be processed in the loop;
-            base+=pDim->getStride()*isel;
-        }
-        the_expanded_dim--;
-    }
-
-    // check how the selection relates to 3 dimensions we are working with;
-    unsigned int current_selected_dimension(0);
-    size_t   rez_size(0);
-    if(the_expanded_dim>=0){
-        iMin=0;
-        iMax=this->pMDGeometry->get_constDimension(0)->getNBins();
-        rez_size = iMax;
-    }else{
-        iMin=selection[current_selected_dimension];
-        iMax=selection[current_selected_dimension]+1;
-        rez_size = 1;
-        current_selected_dimension++;
-    }
-    std::vector<double> xx;
-	pDim = this->pMDGeometry->get_constDimension(0).get();
-    pDim->getAxisPoints(xx);
-
-
-    if(the_expanded_dim>0){
-        jMin=0;
-        jMax=this->pMDGeometry->get_constDimension(1)->getNBins();
-        rez_size *= jMax;
-    }else{
-        jMin=selection[current_selected_dimension];
-        jMax=selection[current_selected_dimension]+1;
-        current_selected_dimension++;
-    }
-    std::vector<double> yy;
-    (this->pMDGeometry->get_constDimension(1))->getAxisPoints(yy);
-
-    if(the_expanded_dim>1){
-        kMin=0;
-        kMax=this->pMDGeometry->get_constDimension(2)->getNBins();
-        rez_size *= kMax;
-    }else{
-        kMin=selection[current_selected_dimension];
-        kMax=selection[current_selected_dimension]+1;
-        current_selected_dimension++;
-    }
-    std::vector<double> zz;
-    (this->pMDGeometry->get_constDimension(2))->getAxisPoints(zz);
-
-// build full array of 3D points
-	const MD_image_point  *const pData = this->get_const_pData();
-    image_points.resize(rez_size);
-    size_t ic(0);
-    size_t indexZ,indexY,index;
-    for(k=kMin;k<kMax;k++){
-        indexZ=base+nd3*k;
-        for(j=jMin;j<jMax;j++){
-            indexY =indexZ+nd2*j;
-            for(i=iMin;i<iMax;i++){
-                index=indexY+i;
-                image_points[ic].X()=xx[i];
-                image_points[ic].Y()=yy[j];
-                image_points[ic].Z()=zz[k];
-                image_points[ic]  = pData[index];
-                ic++;
-            }
-        }
-    }
-
-}
-//
-//****************************************
-//
-MD_image_point *
-MDImage::get_pData(void)
-{
-    if(MD_IMG_array.data){
-        return MD_IMG_array.data;
-    }else{
-		throw(std::runtime_error("Data memory for Multidimensional dataset has not been allocated"));
-    }
-}
-MD_image_point const*
-MDImage::get_const_pData(void)const
-{
-    if(MD_IMG_array.data){
-        return MD_IMG_array.data;
-    }else{
-		throw(std::runtime_error("Data memory for Multidimensional dataset has not been allocated"));
-    }
-}
-//
-bool 
-MDImage::is_initialized(void)const
-{
-	if(!pMDGeometry.get()||!this->MD_IMG_array.data)return false;
-	return true;
-}
-
-//*******************************************************************************************************
-void
-MDImage::reshape_geometry(const Geometry::MDGeometryDescription &transf)
-{
-
-   // all paxis in the transformation matrix have to be defined properly and in accordance with the transformation data.
-   // also sets the the dimension limits and object limits as the limits from transf class
-   this->pMDGeometry->initialize(transf);
-   this->set_imgArray_shape();
- 
- 
-}
-// 
-void 
-MDImage::set_imgArray_shape()
-{
-	unsigned int nDims = this->pMDGeometry->getNumDims();
-	size_t   i;
-
-    this->MD_IMG_array.dimSize.assign(nDims,0);
-    this->MD_IMG_array.dimStride.assign(MAX_MD_DIMS_POSSIBLE+1,0);
-
-    const IMDDimension *pDim;
-    this->MD_IMG_array.data_size    = 1;
-    size_t  stride(1);
-    for(i=0;i<this->pMDGeometry->getNumDims();i++){
-        pDim                             = (this->pMDGeometry->get_constDimension(i)).get();
-        stride                           = pDim->getStride();
-        this->MD_IMG_array.dimSize[i]    =  pDim->getNBins();
-        this->MD_IMG_array.data_size     *= this->MD_IMG_array.dimSize[i];
-
-        this->MD_IMG_array.dimStride[i]  = stride;
-
-    }
-	if(this->MD_IMG_array.data_size!=this->pMDGeometry->getGeometryExtend()){
-		g_log.error()<<" size of MD image array = " << MD_IMG_array.data_size<<" and differs from the size, described by MDGeometry = "<<pMDGeometry->getGeometryExtend()<<std::endl;
-		throw(std::logic_error(" MD geometry and MD_image_Data are not synchroneous any more. BUGGG!!! "));
-	}
-	this->MD_IMG_array.npixSum = 0;
-
-    this->nd2 =MD_IMG_array.dimStride[1];
-    this->nd3 =MD_IMG_array.dimStride[2];
-    this->nd4 =MD_IMG_array.dimStride[3];
-    this->nd5 =MD_IMG_array.dimStride[4];
-    this->nd6 =MD_IMG_array.dimStride[5];
-    this->nd7 =MD_IMG_array.dimStride[6];
-    this->nd8 =MD_IMG_array.dimStride[7];
-    this->nd9 =MD_IMG_array.dimStride[8];
-    this->nd10=MD_IMG_array.dimStride[9];
-    this->nd11=MD_IMG_array.dimStride[10];
-}
-//
-void
-MDImage::initialize(const MDGeometryDescription &transf,const MDGeometryBasis *const pBasis)
-{
-
-	if(!this->pMDGeometry.get()){
-		if(!pBasis){
-			g_log.error()<<" MDImage::initialize: construction geometry from its description without the basis is imkpossible\n";
-			throw(std::invalid_argument("Constructing geometry from geometry description without the Geometry basis is impossible"));
-		}else{
-			this->pMDGeometry = std::auto_ptr<MDGeometry>(new MDGeometry(*pBasis,transf));
-		}
-	}
-// initiate initial dimensions
-	size_t ImgSize = transf.getImageSize();
-	// reshape geometry and set the data size requested for the image in MD_img_data structure;
-	this->reshape_geometry(transf);
-	if(ImgSize!=MD_IMG_array.data_size){
-		g_log.error()<<"MDImage::initialize: logical error as array data size="<<MD_IMG_array.data_size<< "and differs from the value requested by transformation"<<ImgSize<<std::endl;
-		throw(std::logic_error("MDImage::initialize: MD image geometry and MD image data become  non-synchronous"));
-	}
-
-  // do we have enough existing memory for the data?
-   if(!this->MD_IMG_array.data || ImgSize>this->MD_IMG_array.data_array_size){
-       this->clear_class();
-	// allocate main data array;
-	   this->alloc_image_data();
-   //
-	   this->set_imgArray_shape();
-   }else{
-	    MD_image_point *pData = MD_IMG_array.data;
-		for(unsigned long j=0;j<MD_IMG_array.data_size;j++){
-			pData[j].s   =0;
-			pData[j].err =0;
-			pData[j].npix=0;
-		}
-		MD_IMG_array.npixSum=0;
-   }
- 
-
-}
-// 
-void 
-MDImage::validateNPix(void)
-{
-	uint64_t pix_sum(0);
-    MD_image_point *pData = MD_IMG_array.data;
-	for(size_t j=0;j<MD_IMG_array.data_size;j++){
-			pix_sum+=pData[j].npix;
-	}
-	if(pix_sum!=MD_IMG_array.npixSum){
-		uint64_t old_number = MD_IMG_array.npixSum;
-		MD_IMG_array.npixSum = pix_sum;
-		g_log.warning()<<" the control number of pixels specified in the pixel array = "<<old_number<<" is not equal to the actual number of pixels referred by the cells: "<<pix_sum<<std::endl;
-		throw(std::invalid_argument("sum of pixels numbers is not consistent with the control sum; fixed for now but suggests an error in algorithm produced this image"));
-	}
-
-}
-//
-MDImage::MDImage(Mantid::Geometry::MDGeometry* pGeometry): 
-pMDGeometry(std::auto_ptr<Mantid::Geometry::MDGeometry>(pGeometry)),
-nd2(0),nd3(0),nd4(0),nd5(0),nd6(0),nd7(0),nd8(0),nd9(0),nd10(0),nd11(0)
-{
-  // empty initialisation; currently not supported as will throw later;
-  if(!pGeometry)return;
-
-  int nDims = pMDGeometry->getNumDims();
-  if( nDims >MAX_MD_DIMS_POSSIBLE){
-    throw(std::invalid_argument("MDData::MDData number of dimensions exceeds the possible value"));
-  }
-  MDGeometryDescription descr(*pGeometry);
-  this->initialize(descr);
-
-}
-MDImage::MDImage(const Geometry::MDGeometryDescription &Description, const Geometry::MDGeometryBasis & Basis):
-pMDGeometry(NULL),
-nd2(0),nd3(0),nd4(0),nd5(0),nd6(0),nd7(0),nd8(0),nd9(0),nd10(0),nd11(0)
-{
-	this->initialize(Description,&Basis);
-}
-//
-void
-MDImage::alloc_image_data()
-{
-	size_t ImgSize     = this->pMDGeometry->getGeometryExtend();
-	try{
-     	MD_IMG_array.data = new MD_image_point[ImgSize];
-	}catch(std::bad_alloc &err){
-		g_log.error()<<" can not allocate memory for multidimensional image of "<<ImgSize<<" points\n";
-		throw(std::runtime_error("Can not allocate memory for Multidimensional image "));
-	}
-    MD_image_point *pData        = MD_IMG_array.data;
-	MD_IMG_array.data_array_size = ImgSize;
-	MD_IMG_array.data_size       = ImgSize;
-
-
-
-}
-//
-MDImage::~MDImage()
-{
-    this->clear_class();
-}
-//
-
-//***************************************************************************************
-void
-MDImage::clear_class(void)
-{
-    if(MD_IMG_array.data){
-        delete [] MD_IMG_array.data;
-        MD_IMG_array.data = NULL;
-    }
-	if(this->pMDGeometry.get()){
-		this->MD_IMG_array.dimSize.assign(this->pMDGeometry->getNumDims(),0);
-		this->MD_IMG_array.dimStride.assign(this->pMDGeometry->getNumDims()+1,0);
-		this->MD_IMG_array.min_value.assign(this->pMDGeometry->getNumDims(), FLT_MAX);
-		this->MD_IMG_array.max_value.assign(this->pMDGeometry->getNumDims(),-FLT_MAX);
-	}
-	MD_IMG_array.data_array_size=0;
-	MD_IMG_array.data_size     = 0;
-	MD_IMG_array.npixSum       = 0;
-
-}
-
-}
-}
+#include "MDDataObjects/stdafx.h"
+#include "MDDataObjects/MDImage.h"
+#include "MantidGeometry/MDGeometry/MDCell.h"
+
+
+namespace Mantid{
+    namespace MDDataObjects{
+//
+    using namespace Mantid::API;
+    using namespace Mantid::Kernel;
+    using namespace Mantid::Geometry;
+
+
+// logger for MD workspaces  
+Kernel::Logger& MDImage::g_log =Kernel::Logger::get("MDWorkspaces");
+
+
+void
+MDImage::getPointData(std::vector<point3D> &image_points)const{
+    std::vector<unsigned int> selection;
+    if(this->pMDGeometry->getNumExpandedDims()>3){
+        selection.assign(this->pMDGeometry->getNumExpandedDims()-3,0);
+    }else{
+        selection.resize(0);
+    }
+    this->getPointData(selection,image_points);
+
+}
+//
+void
+MDImage::getPointData(const std::vector<unsigned int> &selection,std::vector<point3D> &image_points)const
+{
+    unsigned int selection_size  =  (unsigned int )selection.size();
+    if(selection_size >this->pMDGeometry->getNumExpandedDims()){
+        throw(std::invalid_argument("MDImaegData::getPointData: selection-> attempting to select more dimensions then there are expanded dimensions"));
+    }
+    unsigned int i,j,k,iMin,jMin,kMin,iMax,jMax,kMax,isel;
+    size_t   base(0);
+    const IMDDimension *pDim;
+
+    // calculate shift for all selected dimensions;
+    int the_expanded_dim= this->pMDGeometry->getNumExpandedDims()-1;
+    for(int iii=selection_size-1;iii>=0;iii--){
+		pDim = this->pMDGeometry->get_constDimension(the_expanded_dim).get();
+        if(selection[iii]>=pDim->getNBins()){
+            isel=pDim->getNBins()-1;
+        }else{
+            isel=selection[iii];
+        }
+        if(the_expanded_dim>2){  // all lower dimensions shifs will be processed in the loop;
+            base+=pDim->getStride()*isel;
+        }
+        the_expanded_dim--;
+    }
+
+    // check how the selection relates to 3 dimensions we are working with;
+    unsigned int current_selected_dimension(0);
+    size_t   rez_size(0);
+    if(the_expanded_dim>=0){
+        iMin=0;
+        iMax=this->pMDGeometry->get_constDimension(0)->getNBins();
+        rez_size = iMax;
+    }else{
+        iMin=selection[current_selected_dimension];
+        iMax=selection[current_selected_dimension]+1;
+        rez_size = 1;
+        current_selected_dimension++;
+    }
+    std::vector<double> xx;
+	pDim = this->pMDGeometry->get_constDimension(0).get();
+    pDim->getAxisPoints(xx);
+
+
+    if(the_expanded_dim>0){
+        jMin=0;
+        jMax=this->pMDGeometry->get_constDimension(1)->getNBins();
+        rez_size *= jMax;
+    }else{
+        jMin=selection[current_selected_dimension];
+        jMax=selection[current_selected_dimension]+1;
+        current_selected_dimension++;
+    }
+    std::vector<double> yy;
+    (this->pMDGeometry->get_constDimension(1))->getAxisPoints(yy);
+
+    if(the_expanded_dim>1){
+        kMin=0;
+        kMax=this->pMDGeometry->get_constDimension(2)->getNBins();
+        rez_size *= kMax;
+    }else{
+        kMin=selection[current_selected_dimension];
+        kMax=selection[current_selected_dimension]+1;
+        current_selected_dimension++;
+    }
+    std::vector<double> zz;
+    (this->pMDGeometry->get_constDimension(2))->getAxisPoints(zz);
+
+// build full array of 3D points
+	const MD_image_point  *const pData = this->get_const_pData();
+    image_points.resize(rez_size);
+    size_t ic(0);
+    size_t indexZ,indexY,index;
+    for(k=kMin;k<kMax;k++){
+        indexZ=base+nd3*k;
+        for(j=jMin;j<jMax;j++){
+            indexY =indexZ+nd2*j;
+            for(i=iMin;i<iMax;i++){
+                index=indexY+i;
+                image_points[ic].X()=xx[i];
+                image_points[ic].Y()=yy[j];
+                image_points[ic].Z()=zz[k];
+                image_points[ic]  = pData[index];
+                ic++;
+            }
+        }
+    }
+
+}
+//
+//****************************************
+//
+MD_image_point *
+MDImage::get_pData(void)
+{
+    if(MD_IMG_array.data){
+        return MD_IMG_array.data;
+    }else{
+		throw(std::runtime_error("Data memory for Multidimensional dataset has not been allocated"));
+    }
+}
+MD_image_point const*
+MDImage::get_const_pData(void)const
+{
+    if(MD_IMG_array.data){
+        return MD_IMG_array.data;
+    }else{
+		throw(std::runtime_error("Data memory for Multidimensional dataset has not been allocated"));
+    }
+}
+//
+bool 
+MDImage::is_initialized(void)const
+{
+	if(!pMDGeometry.get()||!this->MD_IMG_array.data)return false;
+	return true;
+}
+
+//*******************************************************************************************************
+void
+MDImage::reshape_geometry(const Geometry::MDGeometryDescription &transf)
+{
+
+   // all paxis in the transformation matrix have to be defined properly and in accordance with the transformation data.
+   // also sets the the dimension limits and object limits as the limits from transf class
+   this->pMDGeometry->initialize(transf);
+   this->set_imgArray_shape();
+ 
+ 
+}
+// 
+void 
+MDImage::set_imgArray_shape()
+{
+	unsigned int nDims = this->pMDGeometry->getNumDims();
+	size_t   i;
+
+    this->MD_IMG_array.dimSize.assign(nDims,0);
+    this->MD_IMG_array.dimStride.assign(MAX_MD_DIMS_POSSIBLE+1,0);
+
+    const IMDDimension *pDim;
+    this->MD_IMG_array.data_size    = 1;
+    size_t  stride(1);
+    for(i=0;i<this->pMDGeometry->getNumDims();i++){
+        pDim                             = (this->pMDGeometry->get_constDimension(i)).get();
+        stride                           = pDim->getStride();
+        this->MD_IMG_array.dimSize[i]    =  pDim->getNBins();
+        this->MD_IMG_array.data_size     *= this->MD_IMG_array.dimSize[i];
+
+        this->MD_IMG_array.dimStride[i]  = stride;
+
+    }
+	if(this->MD_IMG_array.data_size!=this->pMDGeometry->getGeometryExtend()){
+		g_log.error()<<" size of MD image array = " << MD_IMG_array.data_size<<" and differs from the size, described by MDGeometry = "<<pMDGeometry->getGeometryExtend()<<std::endl;
+		throw(std::logic_error(" MD geometry and MD_image_Data are not synchroneous any more. BUGGG!!! "));
+	}
+	this->MD_IMG_array.npixSum = 0;
+
+    this->nd2 =MD_IMG_array.dimStride[1];
+    this->nd3 =MD_IMG_array.dimStride[2];
+    this->nd4 =MD_IMG_array.dimStride[3];
+    this->nd5 =MD_IMG_array.dimStride[4];
+    this->nd6 =MD_IMG_array.dimStride[5];
+    this->nd7 =MD_IMG_array.dimStride[6];
+    this->nd8 =MD_IMG_array.dimStride[7];
+    this->nd9 =MD_IMG_array.dimStride[8];
+    this->nd10=MD_IMG_array.dimStride[9];
+    this->nd11=MD_IMG_array.dimStride[10];
+}
+//
+void
+MDImage::initialize(const MDGeometryDescription &transf,const MDGeometryBasis *const pBasis)
+{
+
+	if(!this->pMDGeometry.get()){
+		if(!pBasis){
+			g_log.error()<<" MDImage::initialize: construction geometry from its description without the basis is imkpossible\n";
+			throw(std::invalid_argument("Constructing geometry from geometry description without the Geometry basis is impossible"));
+		}else{
+			this->pMDGeometry = std::auto_ptr<MDGeometry>(new MDGeometry(*pBasis,transf));
+		}
+	}
+// initiate initial dimensions
+	size_t ImgSize = transf.getImageSize();
+	// reshape geometry and set the data size requested for the image in MD_img_data structure;
+	this->reshape_geometry(transf);
+	if(ImgSize!=MD_IMG_array.data_size){
+		g_log.error()<<"MDImage::initialize: logical error as array data size="<<MD_IMG_array.data_size<< "and differs from the value requested by transformation"<<ImgSize<<std::endl;
+		throw(std::logic_error("MDImage::initialize: MD image geometry and MD image data become  non-synchronous"));
+	}
+
+  // do we have enough existing memory for the data?
+   if(!this->MD_IMG_array.data || ImgSize>this->MD_IMG_array.data_array_size){
+       this->clear_class();
+	// allocate main data array;
+	   this->alloc_image_data();
+   //
+	   this->set_imgArray_shape();
+   }else{
+	    MD_image_point *pData = MD_IMG_array.data;
+		for(unsigned long j=0;j<MD_IMG_array.data_size;j++){
+			pData[j].s   =0;
+			pData[j].err =0;
+			pData[j].npix=0;
+		}
+		MD_IMG_array.npixSum=0;
+   }
+ 
+
+}
+// 
+void 
+MDImage::validateNPix(void)
+{
+	uint64_t pix_sum(0);
+    MD_image_point *pData = MD_IMG_array.data;
+	for(size_t j=0;j<MD_IMG_array.data_size;j++){
+			pix_sum+=pData[j].npix;
+	}
+	if(pix_sum!=MD_IMG_array.npixSum){
+		uint64_t old_number = MD_IMG_array.npixSum;
+		MD_IMG_array.npixSum = pix_sum;
+		g_log.warning()<<" the control number of pixels specified in the pixel array = "<<old_number<<" is not equal to the actual number of pixels referred by the cells: "<<pix_sum<<std::endl;
+		throw(std::invalid_argument("sum of pixels numbers is not consistent with the control sum; fixed for now but suggests an error in algorithm produced this image"));
+	}
+
+}
+//
+MDImage::MDImage(Mantid::Geometry::MDGeometry* pGeometry): 
+pMDGeometry(std::auto_ptr<Mantid::Geometry::MDGeometry>(pGeometry)),
+nd2(0),nd3(0),nd4(0),nd5(0),nd6(0),nd7(0),nd8(0),nd9(0),nd10(0),nd11(0)
+{
+  // empty initialisation; currently not supported as will throw later;
+  if(!pGeometry)return;
+
+  int nDims = pMDGeometry->getNumDims();
+  if( nDims >MAX_MD_DIMS_POSSIBLE){
+    throw(std::invalid_argument("MDData::MDData number of dimensions exceeds the possible value"));
+  }
+  MDGeometryDescription descr(*pGeometry);
+  this->initialize(descr);
+
+}
+MDImage::MDImage(const Geometry::MDGeometryDescription &Description, const Geometry::MDGeometryBasis & Basis):
+pMDGeometry(NULL),
+nd2(0),nd3(0),nd4(0),nd5(0),nd6(0),nd7(0),nd8(0),nd9(0),nd10(0),nd11(0)
+{
+	this->initialize(Description,&Basis);
+}
+//
+void
+MDImage::alloc_image_data()
+{
+	size_t ImgSize     = this->pMDGeometry->getGeometryExtend();
+	try{
+     	MD_IMG_array.data = new MD_image_point[ImgSize];
+	}catch(std::bad_alloc &err){
+		g_log.error()<<" can not allocate memory for multidimensional image of "<<ImgSize<<" points\n";
+		throw(std::runtime_error("Can not allocate memory for Multidimensional image "));
+	}
+    MD_image_point *pData        = MD_IMG_array.data;
+	MD_IMG_array.data_array_size = ImgSize;
+	MD_IMG_array.data_size       = ImgSize;
+
+
+
+}
+//
+MDImage::~MDImage()
+{
+    this->clear_class();
+}
+//
+
+//***************************************************************************************
+void
+MDImage::clear_class(void)
+{
+    if(MD_IMG_array.data){
+        delete [] MD_IMG_array.data;
+        MD_IMG_array.data = NULL;
+    }
+	if(this->pMDGeometry.get()){
+		this->MD_IMG_array.dimSize.assign(this->pMDGeometry->getNumDims(),0);
+		this->MD_IMG_array.dimStride.assign(this->pMDGeometry->getNumDims()+1,0);
+		this->MD_IMG_array.min_value.assign(this->pMDGeometry->getNumDims(), FLT_MAX);
+		this->MD_IMG_array.max_value.assign(this->pMDGeometry->getNumDims(),-FLT_MAX);
+	}
+	MD_IMG_array.data_array_size=0;
+	MD_IMG_array.data_size     = 0;
+	MD_IMG_array.npixSum       = 0;
+
+}
+
+}
+}
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MDWorkspace.cpp b/Code/Mantid/Framework/MDDataObjects/src/MDWorkspace.cpp
index ad3a081698cad8980be1b4ae1f59f0b5573c3cd0..3e4a0dcb2106895654204356e6882f15f052d596 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MDWorkspace.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MDWorkspace.cpp
@@ -1,515 +1,515 @@
-#include "MDDataObjects/stdafx.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidKernel/IPropertyManager.h"
-#include "MDDataObjects/MDIndexCalculator.h"
-
-namespace Mantid{
-  namespace MDDataObjects{
-	  using namespace Kernel;
-	  using namespace Geometry;
-	  using namespace API;
-
-
-    // Register the workspace into the WorkspaceFactory
-    DECLARE_WORKSPACE(MDWorkspace)
-
-
-    // logger for MD workspaces  
-    Kernel::Logger& MDWorkspace::g_log =Kernel::Logger::get("MDWorkspaces");
-
-
-    //----------------------------------------------------------------------------------------------
-     //Seam method.
-     boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints> getDataPoints(boost::shared_ptr<MDImage> imageData)
-     {
-	   MDPointDescription descr;
-       return  boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints>(new MDDataPoints(descr)); //TODO replace with some other factory call.
-     }
-
-     //Seam method.
-     boost::shared_ptr<Mantid::MDDataObjects::MDImage> getImageData(Mantid::Geometry::MDGeometry* geometry)
-     {
-       return boost::shared_ptr<Mantid::MDDataObjects::MDImage>(new MDImage(geometry));
-	 }
-//
-//
-     void MDWorkspace::init(boost::shared_ptr<Mantid::MDDataObjects::IMD_FileFormat> spFile, Mantid::Geometry::MDGeometry* geometry) //TODO: this provides a 'seam' for simplier move to DataHandling in future.
-     {
-       this->m_spFile = spFile;
-       this->m_spMDImage = getImageData(geometry);
-       this->m_spDataPoints = getDataPoints(m_spMDImage); //Takes a pointer to the image data in order to be able to extract an up-to-date geometry.
-       if(NULL != m_spFile.get())
-       {
-         this->m_spDataPoints->initialize(m_spMDImage, m_spFile);
-         this->m_spFile->read_MDImg_data(*m_spMDImage);
-       }
-     }
-//
-void
-MDWorkspace::init(std::auto_ptr<IMD_FileFormat> pFile,
-                std::auto_ptr<Geometry::MDGeometryBasis> pBasis,
-                const Geometry::MDGeometryDescription &geomDescr,
-                const MDPointDescription &pd)
-{
-    // store file reader,
-    this->m_spFile   = boost::shared_ptr<IMD_FileFormat>(pFile.get());
-    pFile.release();
-    // store basis (description?)
-    this->m_spMDBasis =boost::shared_ptr<Geometry::MDGeometryBasis>(pBasis.get());
-    pBasis.release();
-
-    // create new empty image form of its description and the basis
-    this->m_spMDImage  = boost::shared_ptr<MDImage>(new MDImage(geomDescr,*m_spMDBasis));
-
-   // read MDImage data (the keys to the datapoints location) 
-	this->m_spFile->read_MDImg_data(*m_spMDImage);
-  
-   	// constructor MD points-
-	this->m_spDataPoints = boost::shared_ptr<MDDataPoints>(new MDDataPoints(pd));
-  
-    this->m_spDataPoints->initialize(m_spMDImage,m_spFile);
- 
- 
-}
-
-//
-void
-MDWorkspace::init(boost::shared_ptr<const MDWorkspace> SourceWorkspace,const Mantid::Geometry::MDGeometryDescription *const transf)
-{
-	this->m_spMDBasis = boost::shared_ptr<MDGeometryBasis>(new MDGeometryBasis(SourceWorkspace->get_const_MDBaisis()));
-
-	// build old or new geometry
-	std::auto_ptr<MDGeometry> pGeometry;
-	// no changes to new workspace is defined and we are initiating the new workspace as a copy of an old workspace;
-	if(!transf){
-		std::auto_ptr<MDGeometryDescription> oldShape = std::auto_ptr<MDGeometryDescription>(new MDGeometryDescription(*SourceWorkspace->getGeometry()));
-		// we have basis and description, now can build geometry
-		pGeometry = std::auto_ptr<MDGeometry>(new MDGeometry(*m_spMDBasis,*oldShape));
-	}else{
-		pGeometry = std::auto_ptr<MDGeometry>(new MDGeometry(*m_spMDBasis,*transf));
-	}
-	//
-   this->m_spMDImage = boost::shared_ptr<MDImage>(new MDImage(pGeometry.get()));
-   // free the pGeometry as it is now resides with MDImage and should not be deleted by auto_ptr;
-   pGeometry.release();
-
-    // MDDataPoints have to be constructed here and intiated later after the image is build and points need to be saved
-   // fileManager has to be initated for writing workspace but this will happens only when saveWorkspace algorithm is 
-   // called and new file name is known. Temporary file manager has to be created if and when datapoint writing is necessary;
-   MDDataPointsDescription pixDescr = SourceWorkspace->get_const_MDDPoints().getMDPointDescription();
-   this->m_spDataPoints = boost::shared_ptr<MDDataPoints>(new MDDataPoints(pixDescr));
-  
-   //this->DDataPoints
-}
-
-    /** Default constructor - does nothing */
-    MDWorkspace::MDWorkspace(unsigned int nDimensions, unsigned int nRecDims)
-    {
-    }
-
-    //----------------------------------------------------------------------------------------------
-   // void MDWorkspace::read_MDImg()
-   // {
-   //   Geometry::MDGeometryDescription Description;
-	  //this->m_spFile->read_MDGeomDescription(Description);
-	  ////
-	  //this->m_spMDImage->initialize(Description);
-   //   //  read image part of the data
-   //   this->m_spFile->read_MDImg_data(*this->m_spMDImage);
-   //   // alocate memory for pixels;
-   //   m_spDataPoints->alloc_pix_array(m_spFile);
-   //   m_spMDImage->identify_SP_points_locations();
-   // }
-    //
-    void
-    MDWorkspace::read_pix(void)
-    {
-      if(this->m_spFile.get()){
-        m_spFile->read_pix(*m_spDataPoints);
-      }else{
-		  throw(std::runtime_error("read_pix: file reader has not been defined"));
-      }
-
-
-    }
-
-    size_t 
-    MDWorkspace::read_pix_selection(const std::vector<size_t> &cells_nums, size_t &start_cell, std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
-    {
-      if(!this->m_spFile.get()){
-		  throw(std::runtime_error("MDPixels::read_selected_pix: file reader has not been defined"));
-      }
-      return this->m_spFile->read_pix_subset(*m_spMDImage,cells_nums,start_cell,pix_buf,n_pix_in_buffer);
-    } 
-
-    Mantid::Geometry::MDGeometry const * const
-      MDWorkspace::getGeometry() const
-    {
-      return this->m_spMDImage->getGeometry();
-    }
-
-    size_t MDWorkspace::getMemorySize(void) const
-    {
-      return m_spMDImage->getMemorySize() + m_spDataPoints->getMemorySize() ;
-    } 
-
-    void  MDWorkspace::write_mdd(void)
-    {
-      if(this->m_spFile.get()){
-         this->m_spFile->write_mdd(*m_spMDImage);
-      }else{
-		  throw(std::runtime_error("MDPixels::read_selected_pix: file reader has not been defined"));
-      }
-    }
-
-    void  MDWorkspace::setInstrument(const IInstrument_sptr& instr)
-    {
-      boost::shared_ptr<Instrument> tmp = boost::dynamic_pointer_cast<Instrument>(instr);
-      if (tmp->isParametrized())
-      {
-        sptr_instrument = tmp->baseInstrument();
-        m_parmap = tmp->getParameterMap();
-      }
-      else
-      {
-        sptr_instrument=tmp;
-      }
-    }
-
-
-    uint64_t MDWorkspace::getNPoints() const
-    {
-        return this->m_spDataPoints->getNumPixels();
-    }
-
-    int MDWorkspace::getNDimensions() const
-    {
-      return m_spMDImage->getGeometry()->getNumDims();
-    }
-
-    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::getXDimension() const
-    { 
-      return m_spMDImage->getGeometry()->getXDimension(); 
-    }
-
-    boost::shared_ptr< const Mantid::Geometry::IMDDimension> MDWorkspace::getYDimension() const
-    { 
-      return m_spMDImage->getGeometry()->getYDimension();
-    }
-
-    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::getZDimension() const
-    { 
-      return m_spMDImage->getGeometry()->getZDimension();
-    }
-
-    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::gettDimension() const
-    { 
-      return m_spMDImage->getGeometry()->getTDimension();
-    }
-
-    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::getDimension(std::string id) const
-    { 
-		return m_spMDImage->getGeometry()->get_constDimension(id,true); 
-    }
-
+#include "MDDataObjects/stdafx.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidKernel/IPropertyManager.h"
+#include "MDDataObjects/MDIndexCalculator.h"
+
+namespace Mantid{
+  namespace MDDataObjects{
+	  using namespace Kernel;
+	  using namespace Geometry;
+	  using namespace API;
+
+
+    // Register the workspace into the WorkspaceFactory
+    DECLARE_WORKSPACE(MDWorkspace)
+
+
+    // logger for MD workspaces  
+    Kernel::Logger& MDWorkspace::g_log =Kernel::Logger::get("MDWorkspaces");
+
+
+    //----------------------------------------------------------------------------------------------
+     //Seam method.
+     boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints> getDataPoints(boost::shared_ptr<MDImage> imageData)
+     {
+	   MDPointDescription descr;
+       return  boost::shared_ptr<Mantid::MDDataObjects::MDDataPoints>(new MDDataPoints(descr)); //TODO replace with some other factory call.
+     }
+
+     //Seam method.
+     boost::shared_ptr<Mantid::MDDataObjects::MDImage> getImageData(Mantid::Geometry::MDGeometry* geometry)
+     {
+       return boost::shared_ptr<Mantid::MDDataObjects::MDImage>(new MDImage(geometry));
+	 }
+//
+//
+     void MDWorkspace::init(boost::shared_ptr<Mantid::MDDataObjects::IMD_FileFormat> spFile, Mantid::Geometry::MDGeometry* geometry) //TODO: this provides a 'seam' for simplier move to DataHandling in future.
+     {
+       this->m_spFile = spFile;
+       this->m_spMDImage = getImageData(geometry);
+       this->m_spDataPoints = getDataPoints(m_spMDImage); //Takes a pointer to the image data in order to be able to extract an up-to-date geometry.
+       if(NULL != m_spFile.get())
+       {
+         this->m_spDataPoints->initialize(m_spMDImage, m_spFile);
+         this->m_spFile->read_MDImg_data(*m_spMDImage);
+       }
+     }
+//
+void
+MDWorkspace::init(std::auto_ptr<IMD_FileFormat> pFile,
+                std::auto_ptr<Geometry::MDGeometryBasis> pBasis,
+                const Geometry::MDGeometryDescription &geomDescr,
+                const MDPointDescription &pd)
+{
+    // store file reader,
+    this->m_spFile   = boost::shared_ptr<IMD_FileFormat>(pFile.get());
+    pFile.release();
+    // store basis (description?)
+    this->m_spMDBasis =boost::shared_ptr<Geometry::MDGeometryBasis>(pBasis.get());
+    pBasis.release();
+
+    // create new empty image form of its description and the basis
+    this->m_spMDImage  = boost::shared_ptr<MDImage>(new MDImage(geomDescr,*m_spMDBasis));
+
+   // read MDImage data (the keys to the datapoints location) 
+	this->m_spFile->read_MDImg_data(*m_spMDImage);
+  
+   	// constructor MD points-
+	this->m_spDataPoints = boost::shared_ptr<MDDataPoints>(new MDDataPoints(pd));
+  
+    this->m_spDataPoints->initialize(m_spMDImage,m_spFile);
+ 
+ 
+}
+
+//
+void
+MDWorkspace::init(boost::shared_ptr<const MDWorkspace> SourceWorkspace,const Mantid::Geometry::MDGeometryDescription *const transf)
+{
+	this->m_spMDBasis = boost::shared_ptr<MDGeometryBasis>(new MDGeometryBasis(SourceWorkspace->get_const_MDBaisis()));
+
+	// build old or new geometry
+	std::auto_ptr<MDGeometry> pGeometry;
+	// no changes to new workspace is defined and we are initiating the new workspace as a copy of an old workspace;
+	if(!transf){
+		std::auto_ptr<MDGeometryDescription> oldShape = std::auto_ptr<MDGeometryDescription>(new MDGeometryDescription(*SourceWorkspace->getGeometry()));
+		// we have basis and description, now can build geometry
+		pGeometry = std::auto_ptr<MDGeometry>(new MDGeometry(*m_spMDBasis,*oldShape));
+	}else{
+		pGeometry = std::auto_ptr<MDGeometry>(new MDGeometry(*m_spMDBasis,*transf));
+	}
+	//
+   this->m_spMDImage = boost::shared_ptr<MDImage>(new MDImage(pGeometry.get()));
+   // free the pGeometry as it is now resides with MDImage and should not be deleted by auto_ptr;
+   pGeometry.release();
+
+    // MDDataPoints have to be constructed here and intiated later after the image is build and points need to be saved
+   // fileManager has to be initated for writing workspace but this will happens only when saveWorkspace algorithm is 
+   // called and new file name is known. Temporary file manager has to be created if and when datapoint writing is necessary;
+   MDDataPointsDescription pixDescr = SourceWorkspace->get_const_MDDPoints().getMDPointDescription();
+   this->m_spDataPoints = boost::shared_ptr<MDDataPoints>(new MDDataPoints(pixDescr));
+  
+   //this->DDataPoints
+}
+
+    /** Default constructor - does nothing */
+    MDWorkspace::MDWorkspace(unsigned int nDimensions, unsigned int nRecDims)
+    {
+    }
+
+    //----------------------------------------------------------------------------------------------
+   // void MDWorkspace::read_MDImg()
+   // {
+   //   Geometry::MDGeometryDescription Description;
+	  //this->m_spFile->read_MDGeomDescription(Description);
+	  ////
+	  //this->m_spMDImage->initialize(Description);
+   //   //  read image part of the data
+   //   this->m_spFile->read_MDImg_data(*this->m_spMDImage);
+   //   // alocate memory for pixels;
+   //   m_spDataPoints->alloc_pix_array(m_spFile);
+   //   m_spMDImage->identify_SP_points_locations();
+   // }
+    //
+    void
+    MDWorkspace::read_pix(void)
+    {
+      if(this->m_spFile.get()){
+        m_spFile->read_pix(*m_spDataPoints);
+      }else{
+		  throw(std::runtime_error("read_pix: file reader has not been defined"));
+      }
+
+
+    }
+
+    size_t 
+    MDWorkspace::read_pix_selection(const std::vector<size_t> &cells_nums, size_t &start_cell, std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
+    {
+      if(!this->m_spFile.get()){
+		  throw(std::runtime_error("MDPixels::read_selected_pix: file reader has not been defined"));
+      }
+      return this->m_spFile->read_pix_subset(*m_spMDImage,cells_nums,start_cell,pix_buf,n_pix_in_buffer);
+    } 
+
+    Mantid::Geometry::MDGeometry const * const
+      MDWorkspace::getGeometry() const
+    {
+      return this->m_spMDImage->getGeometry();
+    }
+
+    size_t MDWorkspace::getMemorySize(void) const
+    {
+      return m_spMDImage->getMemorySize() + m_spDataPoints->getMemorySize() ;
+    } 
+
+    void  MDWorkspace::write_mdd(void)
+    {
+      if(this->m_spFile.get()){
+         this->m_spFile->write_mdd(*m_spMDImage);
+      }else{
+		  throw(std::runtime_error("MDPixels::read_selected_pix: file reader has not been defined"));
+      }
+    }
+
+    void  MDWorkspace::setInstrument(const IInstrument_sptr& instr)
+    {
+      boost::shared_ptr<Instrument> tmp = boost::dynamic_pointer_cast<Instrument>(instr);
+      if (tmp->isParametrized())
+      {
+        sptr_instrument = tmp->baseInstrument();
+        m_parmap = tmp->getParameterMap();
+      }
+      else
+      {
+        sptr_instrument=tmp;
+      }
+    }
+
+
+    uint64_t MDWorkspace::getNPoints() const
+    {
+        return this->m_spDataPoints->getNumPixels();
+    }
+
+    int MDWorkspace::getNDimensions() const
+    {
+      return m_spMDImage->getGeometry()->getNumDims();
+    }
+
+    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::getXDimension() const
+    { 
+      return m_spMDImage->getGeometry()->getXDimension(); 
+    }
+
+    boost::shared_ptr< const Mantid::Geometry::IMDDimension> MDWorkspace::getYDimension() const
+    { 
+      return m_spMDImage->getGeometry()->getYDimension();
+    }
+
+    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::getZDimension() const
+    { 
+      return m_spMDImage->getGeometry()->getZDimension();
+    }
+
+    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::gettDimension() const
+    { 
+      return m_spMDImage->getGeometry()->getTDimension();
+    }
+
+    boost::shared_ptr<const Mantid::Geometry::IMDDimension> MDWorkspace::getDimension(std::string id) const
+    { 
+		return m_spMDImage->getGeometry()->get_constDimension(id,true); 
+    }
+
     const std::vector<std::string> MDWorkspace::getDimensionIDs() const
-    {
-      MDGeometry const * const geometry = m_spMDImage->getGeometry();
-      std::vector<boost::shared_ptr<IMDDimension> > vecDimensions = geometry->getDimensions();
+    {
+      MDGeometry const * const geometry = m_spMDImage->getGeometry();
+      std::vector<boost::shared_ptr<IMDDimension> > vecDimensions = geometry->getDimensions();
       std::vector<std::string> vecDimensionIds(vecDimensions.size());
-      for(unsigned int i = 0; i < vecDimensions.size() ; i++)
-      {
-        vecDimensionIds[i] = vecDimensions[i]->getDimensionId();
-      }
+      for(unsigned int i = 0; i < vecDimensions.size() ; i++)
+      {
+        vecDimensionIds[i] = vecDimensions[i]->getDimensionId();
+      }
       return vecDimensionIds;
     }
 
-    const Mantid::Geometry::SignalAggregate & MDWorkspace::getPoint(unsigned int index) const
-    {
-      if(index >= this->getNPoints())
-      {
-        throw std::range_error("Requested point is out of range.");
-      }
-      std::vector<char>* pix_buf = m_spDataPoints->get_pBuffer();
-      float *MDDataPoint =(float *)(&(pix_buf->operator[](0)));
-      unsigned int signal_shift = this->getNDimensions();
-      unsigned int data_stride  =  m_spDataPoints->getMDPointDescription().sizeofMDDPoint()/sizeof(float);
-      size_t base = index*data_stride;
-      double signal  = *(MDDataPoint+base+signal_shift);
-      double error= *(MDDataPoint+base+signal_shift+1);
-
-      std::vector<coordinate> vertexes;
-
-      IDetector_sptr detector; //TODO determine detector.
-
-      MDPointMap::const_iterator iter = m_mdPointMap.find(index);
-      if(m_mdPointMap.end() ==  iter || (*iter).second.getSignal() != signal || (*iter).second.getError() != error)
-      {
-        m_mdPointMap[index] =  Mantid::Geometry::MDPoint(signal, error, vertexes, detector, this->sptr_instrument);
-      }
-      return m_mdPointMap[index];
-    }
-
-    inline bool MDWorkspace::newCellRequired(const size_t& singleDimensionIndex, const MD_image_point& mdImagePoint) const
-    {
-      MDCellMap::const_iterator iter = m_mdCellMap.find(singleDimensionIndex);
-      //Current rules for determing whether a cell has changed.
-      return m_mdCellMap.end() ==  iter || 
-        (*iter).second.getSignal() != mdImagePoint.s || 
-        (*iter).second.getError() != mdImagePoint.err;
-    }
-
-    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment) const
-    {
-      MD_image_point point = m_spMDImage->getPoint(dim1Increment);
-      MDGeometry const * const geometry = m_spMDImage->getGeometry();
-      IMDDimension_sptr xDimension = geometry->getXDimension();
-
-      MDCellMap::const_iterator iter = m_mdCellMap.find(dim1Increment);
-      if(true == newCellRequired(dim1Increment, point))
-      {
-        VecCoordinate vertexes = createLine(dim1Increment, xDimension);
-        m_mdCellMap[dim1Increment] = MDCell(point.s, point.err, vertexes);
-      }
-      return m_mdCellMap[dim1Increment];
-    }
-
-    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment, unsigned int dim2Increment) const
-    {
-      MD_image_point point = m_spMDImage->getPoint(dim1Increment, dim2Increment);
-      MDGeometry const * const geometry = m_spMDImage->getGeometry();
-      IMDDimension_sptr xDimension = geometry->getXDimension();
-      IMDDimension_sptr yDimension = geometry->getYDimension();
-
-      //The cell map is agnostic of the dimensionality. Request needs to be forulated into a single dimensional form.
-      MDWorkspaceIndexCalculator<2> calculator;
-      calculator.setDimensionSize(0, xDimension->getNBins());
-      calculator.setDimensionSize(1, yDimension->getNBins());
-      std::vector<size_t> indexes(2);
-      indexes[0] = dim1Increment;
-      indexes[1] = dim2Increment;
-      size_t singleDimensionIndex = calculator.calculateSingleDimensionIndex(indexes);
-
-      if(singleDimensionIndex > calculator.getIndexUpperBounds())
-      {
-        throw std::range_error("Requested cell is out of range.");
-      }
-
-      if(true == newCellRequired(singleDimensionIndex, point))
-      {
-        VecCoordinate vertexes = createPolygon(dim1Increment, dim2Increment, xDimension, yDimension);
-        m_mdCellMap[singleDimensionIndex] =  Mantid::Geometry::MDCell(point.s, point.err, vertexes);
-      }
-      return m_mdCellMap[singleDimensionIndex];
-    }
-
-    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment) const
-    {
-      MD_image_point point = m_spMDImage->getPoint(dim1Increment, dim2Increment, dim3Increment);
-      MDGeometry const * const geometry = m_spMDImage->getGeometry();
-      IMDDimension_sptr xDimension = geometry->getXDimension();
-      IMDDimension_sptr yDimension = geometry->getYDimension();
-      IMDDimension_sptr zDimension = geometry->getZDimension();
-
-      //The cell map is agnostic of the dimensionality. Request needs to be forulated into a single dimensional form.
-      MDWorkspaceIndexCalculator<3> calculator;
-      calculator.setDimensionSize(0, xDimension->getNBins());
-      calculator.setDimensionSize(1, yDimension->getNBins());
-      calculator.setDimensionSize(2, zDimension->getNBins());
-      size_t indexes[] = {dim1Increment, dim2Increment, dim3Increment};
-      VecIndexes vecIndexes(3);
-      std::copy(indexes, indexes+3, vecIndexes.begin());
-      size_t singleDimensionIndex = calculator.calculateSingleDimensionIndex(vecIndexes);
-
-      if(singleDimensionIndex > calculator.getIndexUpperBounds())
-      {
-        throw std::range_error("Requested cell is out of range.");
-      }
-      if(true == newCellRequired(singleDimensionIndex, point))
-      {
-        VecCoordinate vertexes = createPolyhedron(dim1Increment, dim2Increment, dim3Increment, xDimension, yDimension, zDimension);
-        m_mdCellMap[singleDimensionIndex] =  Mantid::Geometry::MDCell(point.s, point.err, vertexes);
-      }
-      return m_mdCellMap[singleDimensionIndex];
-    }
-
-    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment, unsigned int dim4Increment) const
-    {
-      MD_image_point point = m_spMDImage->getPoint(dim1Increment, dim2Increment, dim3Increment, dim4Increment);
-      MDGeometry const * const geometry = m_spMDImage->getGeometry();
-      IMDDimension_sptr xDimension = geometry->getXDimension();
-      IMDDimension_sptr yDimension = geometry->getYDimension();
-      IMDDimension_sptr zDimension = geometry->getZDimension();
-      IMDDimension_sptr tDimension = geometry->getZDimension();
-
-      //The cell map is agnostic of the dimensionality. Request needs to be forulated into a single dimensional form.
-      MDWorkspaceIndexCalculator<4> calculator;
-      calculator.setDimensionSize(0, xDimension->getNBins());
-      calculator.setDimensionSize(1, yDimension->getNBins());
-      calculator.setDimensionSize(2, zDimension->getNBins());
-      calculator.setDimensionSize(3, tDimension->getNBins());
-      size_t indexes[] = {dim1Increment, dim2Increment, dim3Increment, dim4Increment};
-      VecIndexes vecIndexes(4);
-      std::copy(indexes, indexes+4, vecIndexes.begin());
-      size_t singleDimensionIndex = calculator.calculateSingleDimensionIndex(vecIndexes);
-
-      if(singleDimensionIndex > calculator.getIndexUpperBounds())
-      {
-        throw std::range_error("Requested cell is out of range.");
-      }
-      if(true == newCellRequired(singleDimensionIndex, point))
-      {
-        VecCoordinate vertexes = create4DPolyhedron(dim1Increment, dim2Increment, dim3Increment, dim4Increment, xDimension, yDimension, zDimension, tDimension);
-        m_mdCellMap[singleDimensionIndex] =  Mantid::Geometry::MDCell(point.s, point.err, vertexes);
-      }
-      return m_mdCellMap[singleDimensionIndex];
-    }
-
-    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(...) const
-    {
-      throw std::runtime_error("Not implemented");
-    }
-
-    std::string MDWorkspace::getWSLocation() const 
-    {
-      //Forward request to file format.
-      return this->m_spFile->getFileName();
-    }
-
-    std::string MDWorkspace::getGeometryXML() const
-    {
-      //Forward request via image and geometry.
-      return this->m_spMDImage->getGeometry()->toXMLString();
-    }
-
-    VecCoordinate create4DPolyhedron(
-        unsigned int dim1Increment,
-        unsigned int dim2Increment,
-        unsigned int dim3Increment,
-        unsigned int dim4Increment,
-        IMDDimension_sptr xDimension,
-        IMDDimension_sptr yDimension,
-        IMDDimension_sptr zDimension,
-        IMDDimension_sptr tDimension)
-{
-  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
-  double delta_y = (yDimension->getMaximum() - yDimension->getMinimum()) / yDimension->getNBins();
-  double delta_z = (zDimension->getMaximum() - zDimension->getMinimum()) / zDimension->getNBins();
-  double delta_t = (tDimension->getMaximum() - tDimension->getMinimum()) / tDimension->getNBins();
-  //Make two Hexahedrons at each time interval.
-  VecCoordinate vertexes(16);
-  vertexes[0] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, dim3Increment * delta_z,dim4Increment);
-  vertexes[1] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, dim3Increment* delta_z, dim4Increment);
-  vertexes[2] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, dim4Increment);
-  vertexes[3] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, dim4Increment);
-  vertexes[4] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, dim4Increment);
-  vertexes[5] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, dim4Increment);
-  vertexes[6] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment + 1)* delta_z, dim4Increment);
-  vertexes[7] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment+ 1) * delta_z, dim4Increment);
-  vertexes[8] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, dim3Increment * delta_z,delta_t + dim4Increment);
-  vertexes[9] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, dim3Increment* delta_z, delta_t + dim4Increment);
-  vertexes[10] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, delta_t + dim4Increment);
-  vertexes[11] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, delta_t + dim4Increment);
-  vertexes[12] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, delta_t + dim4Increment);
-  vertexes[13] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, delta_t + dim4Increment);
-  vertexes[14] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment + 1)* delta_z, delta_t + dim4Increment);
-  vertexes[15] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment+ 1) * delta_z, delta_t + dim4Increment);
-  return vertexes;
-}
-
-VecCoordinate createPolyhedron(
-    unsigned int dim1Increment,
-    unsigned int dim2Increment,
-    unsigned int dim3Increment,
-    IMDDimension_sptr xDimension,
-    IMDDimension_sptr yDimension,
-    IMDDimension_sptr zDimension)
-{
-  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
-  double delta_y = (yDimension->getMaximum() - yDimension->getMinimum()) / yDimension->getNBins();
-  double delta_z = (zDimension->getMaximum() - zDimension->getMinimum()) / zDimension->getNBins();
-  //Make a Hexahedron
-  VecCoordinate vertexes(8);
-  vertexes[0] = coordinate::createCoordinate3D(dim1Increment * delta_x, dim2Increment * delta_y, dim3Increment * delta_z);
-  vertexes[1] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, dim3Increment* delta_z);
-  vertexes[2] = coordinate::createCoordinate3D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z);
-  vertexes[3] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z);
-  vertexes[4] = coordinate::createCoordinate3D(dim1Increment * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z);
-  vertexes[5] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z);
-  vertexes[6] = coordinate::createCoordinate3D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment + 1)* delta_z);
-  vertexes[7] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment+ 1) * delta_z);
-  return vertexes;
-}
-
-VecCoordinate createPolygon(
-    unsigned int dim1Increment,
-    unsigned int dim2Increment,
-    IMDDimension_sptr xDimension,
-    IMDDimension_sptr yDimension)
-{
-  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
-  double delta_y = (yDimension->getMaximum() - yDimension->getMinimum()) / yDimension->getNBins();
-  //Make a square
-  VecCoordinate vertexes(4);
-  vertexes[0] = coordinate::createCoordinate2D(dim1Increment * delta_x, dim2Increment * delta_y);
-  vertexes[1] = coordinate::createCoordinate2D((dim1Increment + 1) * delta_x, dim2Increment * delta_y);
-  vertexes[2] = coordinate::createCoordinate2D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y);
-  vertexes[3] = coordinate::createCoordinate2D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y);
-  return vertexes;
-}
-
-VecCoordinate createLine(
-    unsigned int dim1Increment,
-    IMDDimension_sptr xDimension)
-{
-  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
-  VecCoordinate vertexes(2);
-  //Make a line
-  vertexes[0] = coordinate::createCoordinate1D(dim1Increment * delta_x);
-  vertexes[1] = coordinate::createCoordinate1D((dim1Increment + 1) * delta_x);
-  return vertexes;
-}
-
-} // namespace
-}
-//*********************************************************************************************************************************************************************************
-namespace Mantid
-{
-  namespace Kernel
-  {
-    template<> DLLExport
-      Mantid::MDDataObjects::MDWorkspace_sptr IPropertyManager::getValue<Mantid::MDDataObjects::MDWorkspace_sptr>(const std::string &name) const
-    {
-      PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_sptr>* prop =
-        dynamic_cast<PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_sptr>*>(getPointerToProperty(name));
-      if (prop)
-      {
-        return *prop;
-      }
-      else
-      {
-        std::string message = "Attempt to assign property "+ name +" to incorrect type";
-        throw std::runtime_error(message);
-      }
-    }
-
-    template<> DLLExport
-      Mantid::MDDataObjects::MDWorkspace_const_sptr IPropertyManager::getValue<Mantid::MDDataObjects::MDWorkspace_const_sptr>(const std::string &name) const
-    {
-      PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_const_sptr>* prop =
-        dynamic_cast<PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_const_sptr>*>(getPointerToProperty(name));
-      if (prop)
-      {
-        return prop->operator()();
-      }
-      else
-      {
-        std::string message = "Attempt to assign property "+ name +" to incorrect type";
-        throw std::runtime_error(message);
-      }
-    }
-
-  } // namespace Kernel
-} // name
-
-
+    const Mantid::Geometry::SignalAggregate & MDWorkspace::getPoint(unsigned int index) const
+    {
+      if(index >= this->getNPoints())
+      {
+        throw std::range_error("Requested point is out of range.");
+      }
+      std::vector<char>* pix_buf = m_spDataPoints->get_pBuffer();
+      float *MDDataPoint =(float *)(&(pix_buf->operator[](0)));
+      unsigned int signal_shift = this->getNDimensions();
+      unsigned int data_stride  =  m_spDataPoints->getMDPointDescription().sizeofMDDPoint()/sizeof(float);
+      size_t base = index*data_stride;
+      double signal  = *(MDDataPoint+base+signal_shift);
+      double error= *(MDDataPoint+base+signal_shift+1);
+
+      std::vector<coordinate> vertexes;
+
+      IDetector_sptr detector; //TODO determine detector.
+
+      MDPointMap::const_iterator iter = m_mdPointMap.find(index);
+      if(m_mdPointMap.end() ==  iter || (*iter).second.getSignal() != signal || (*iter).second.getError() != error)
+      {
+        m_mdPointMap[index] =  Mantid::Geometry::MDPoint(signal, error, vertexes, detector, this->sptr_instrument);
+      }
+      return m_mdPointMap[index];
+    }
+
+    inline bool MDWorkspace::newCellRequired(const size_t& singleDimensionIndex, const MD_image_point& mdImagePoint) const
+    {
+      MDCellMap::const_iterator iter = m_mdCellMap.find(singleDimensionIndex);
+      //Current rules for determing whether a cell has changed.
+      return m_mdCellMap.end() ==  iter || 
+        (*iter).second.getSignal() != mdImagePoint.s || 
+        (*iter).second.getError() != mdImagePoint.err;
+    }
+
+    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment) const
+    {
+      MD_image_point point = m_spMDImage->getPoint(dim1Increment);
+      MDGeometry const * const geometry = m_spMDImage->getGeometry();
+      IMDDimension_sptr xDimension = geometry->getXDimension();
+
+      MDCellMap::const_iterator iter = m_mdCellMap.find(dim1Increment);
+      if(true == newCellRequired(dim1Increment, point))
+      {
+        VecCoordinate vertexes = createLine(dim1Increment, xDimension);
+        m_mdCellMap[dim1Increment] = MDCell(point.s, point.err, vertexes);
+      }
+      return m_mdCellMap[dim1Increment];
+    }
+
+    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment, unsigned int dim2Increment) const
+    {
+      MD_image_point point = m_spMDImage->getPoint(dim1Increment, dim2Increment);
+      MDGeometry const * const geometry = m_spMDImage->getGeometry();
+      IMDDimension_sptr xDimension = geometry->getXDimension();
+      IMDDimension_sptr yDimension = geometry->getYDimension();
+
+      //The cell map is agnostic of the dimensionality. Request needs to be forulated into a single dimensional form.
+      MDWorkspaceIndexCalculator<2> calculator;
+      calculator.setDimensionSize(0, xDimension->getNBins());
+      calculator.setDimensionSize(1, yDimension->getNBins());
+      std::vector<size_t> indexes(2);
+      indexes[0] = dim1Increment;
+      indexes[1] = dim2Increment;
+      size_t singleDimensionIndex = calculator.calculateSingleDimensionIndex(indexes);
+
+      if(singleDimensionIndex > calculator.getIndexUpperBounds())
+      {
+        throw std::range_error("Requested cell is out of range.");
+      }
+
+      if(true == newCellRequired(singleDimensionIndex, point))
+      {
+        VecCoordinate vertexes = createPolygon(dim1Increment, dim2Increment, xDimension, yDimension);
+        m_mdCellMap[singleDimensionIndex] =  Mantid::Geometry::MDCell(point.s, point.err, vertexes);
+      }
+      return m_mdCellMap[singleDimensionIndex];
+    }
+
+    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment) const
+    {
+      MD_image_point point = m_spMDImage->getPoint(dim1Increment, dim2Increment, dim3Increment);
+      MDGeometry const * const geometry = m_spMDImage->getGeometry();
+      IMDDimension_sptr xDimension = geometry->getXDimension();
+      IMDDimension_sptr yDimension = geometry->getYDimension();
+      IMDDimension_sptr zDimension = geometry->getZDimension();
+
+      //The cell map is agnostic of the dimensionality. Request needs to be forulated into a single dimensional form.
+      MDWorkspaceIndexCalculator<3> calculator;
+      calculator.setDimensionSize(0, xDimension->getNBins());
+      calculator.setDimensionSize(1, yDimension->getNBins());
+      calculator.setDimensionSize(2, zDimension->getNBins());
+      size_t indexes[] = {dim1Increment, dim2Increment, dim3Increment};
+      VecIndexes vecIndexes(3);
+      std::copy(indexes, indexes+3, vecIndexes.begin());
+      size_t singleDimensionIndex = calculator.calculateSingleDimensionIndex(vecIndexes);
+
+      if(singleDimensionIndex > calculator.getIndexUpperBounds())
+      {
+        throw std::range_error("Requested cell is out of range.");
+      }
+      if(true == newCellRequired(singleDimensionIndex, point))
+      {
+        VecCoordinate vertexes = createPolyhedron(dim1Increment, dim2Increment, dim3Increment, xDimension, yDimension, zDimension);
+        m_mdCellMap[singleDimensionIndex] =  Mantid::Geometry::MDCell(point.s, point.err, vertexes);
+      }
+      return m_mdCellMap[singleDimensionIndex];
+    }
+
+    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(unsigned int dim1Increment, unsigned int dim2Increment, unsigned int dim3Increment, unsigned int dim4Increment) const
+    {
+      MD_image_point point = m_spMDImage->getPoint(dim1Increment, dim2Increment, dim3Increment, dim4Increment);
+      MDGeometry const * const geometry = m_spMDImage->getGeometry();
+      IMDDimension_sptr xDimension = geometry->getXDimension();
+      IMDDimension_sptr yDimension = geometry->getYDimension();
+      IMDDimension_sptr zDimension = geometry->getZDimension();
+      IMDDimension_sptr tDimension = geometry->getZDimension();
+
+      //The cell map is agnostic of the dimensionality. Request needs to be forulated into a single dimensional form.
+      MDWorkspaceIndexCalculator<4> calculator;
+      calculator.setDimensionSize(0, xDimension->getNBins());
+      calculator.setDimensionSize(1, yDimension->getNBins());
+      calculator.setDimensionSize(2, zDimension->getNBins());
+      calculator.setDimensionSize(3, tDimension->getNBins());
+      size_t indexes[] = {dim1Increment, dim2Increment, dim3Increment, dim4Increment};
+      VecIndexes vecIndexes(4);
+      std::copy(indexes, indexes+4, vecIndexes.begin());
+      size_t singleDimensionIndex = calculator.calculateSingleDimensionIndex(vecIndexes);
+
+      if(singleDimensionIndex > calculator.getIndexUpperBounds())
+      {
+        throw std::range_error("Requested cell is out of range.");
+      }
+      if(true == newCellRequired(singleDimensionIndex, point))
+      {
+        VecCoordinate vertexes = create4DPolyhedron(dim1Increment, dim2Increment, dim3Increment, dim4Increment, xDimension, yDimension, zDimension, tDimension);
+        m_mdCellMap[singleDimensionIndex] =  Mantid::Geometry::MDCell(point.s, point.err, vertexes);
+      }
+      return m_mdCellMap[singleDimensionIndex];
+    }
+
+    const Mantid::Geometry::SignalAggregate& MDWorkspace::getCell(...) const
+    {
+      throw std::runtime_error("Not implemented");
+    }
+
+    std::string MDWorkspace::getWSLocation() const 
+    {
+      //Forward request to file format.
+      return this->m_spFile->getFileName();
+    }
+
+    std::string MDWorkspace::getGeometryXML() const
+    {
+      //Forward request via image and geometry.
+      return this->m_spMDImage->getGeometry()->toXMLString();
+    }
+
+    VecCoordinate create4DPolyhedron(
+        unsigned int dim1Increment,
+        unsigned int dim2Increment,
+        unsigned int dim3Increment,
+        unsigned int dim4Increment,
+        IMDDimension_sptr xDimension,
+        IMDDimension_sptr yDimension,
+        IMDDimension_sptr zDimension,
+        IMDDimension_sptr tDimension)
+{
+  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
+  double delta_y = (yDimension->getMaximum() - yDimension->getMinimum()) / yDimension->getNBins();
+  double delta_z = (zDimension->getMaximum() - zDimension->getMinimum()) / zDimension->getNBins();
+  double delta_t = (tDimension->getMaximum() - tDimension->getMinimum()) / tDimension->getNBins();
+  //Make two Hexahedrons at each time interval.
+  VecCoordinate vertexes(16);
+  vertexes[0] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, dim3Increment * delta_z,dim4Increment);
+  vertexes[1] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, dim3Increment* delta_z, dim4Increment);
+  vertexes[2] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, dim4Increment);
+  vertexes[3] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, dim4Increment);
+  vertexes[4] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, dim4Increment);
+  vertexes[5] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, dim4Increment);
+  vertexes[6] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment + 1)* delta_z, dim4Increment);
+  vertexes[7] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment+ 1) * delta_z, dim4Increment);
+  vertexes[8] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, dim3Increment * delta_z,delta_t + dim4Increment);
+  vertexes[9] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, dim3Increment* delta_z, delta_t + dim4Increment);
+  vertexes[10] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, delta_t + dim4Increment);
+  vertexes[11] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z, delta_t + dim4Increment);
+  vertexes[12] = coordinate::createCoordinate4D(dim1Increment * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, delta_t + dim4Increment);
+  vertexes[13] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z, delta_t + dim4Increment);
+  vertexes[14] = coordinate::createCoordinate4D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment + 1)* delta_z, delta_t + dim4Increment);
+  vertexes[15] = coordinate::createCoordinate4D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment+ 1) * delta_z, delta_t + dim4Increment);
+  return vertexes;
+}
+
+VecCoordinate createPolyhedron(
+    unsigned int dim1Increment,
+    unsigned int dim2Increment,
+    unsigned int dim3Increment,
+    IMDDimension_sptr xDimension,
+    IMDDimension_sptr yDimension,
+    IMDDimension_sptr zDimension)
+{
+  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
+  double delta_y = (yDimension->getMaximum() - yDimension->getMinimum()) / yDimension->getNBins();
+  double delta_z = (zDimension->getMaximum() - zDimension->getMinimum()) / zDimension->getNBins();
+  //Make a Hexahedron
+  VecCoordinate vertexes(8);
+  vertexes[0] = coordinate::createCoordinate3D(dim1Increment * delta_x, dim2Increment * delta_y, dim3Increment * delta_z);
+  vertexes[1] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, dim3Increment* delta_z);
+  vertexes[2] = coordinate::createCoordinate3D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z);
+  vertexes[3] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, dim3Increment* delta_z);
+  vertexes[4] = coordinate::createCoordinate3D(dim1Increment * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z);
+  vertexes[5] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, dim2Increment * delta_y, (dim3Increment + 1)* delta_z);
+  vertexes[6] = coordinate::createCoordinate3D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment + 1)* delta_z);
+  vertexes[7] = coordinate::createCoordinate3D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y, (dim3Increment+ 1) * delta_z);
+  return vertexes;
+}
+
+VecCoordinate createPolygon(
+    unsigned int dim1Increment,
+    unsigned int dim2Increment,
+    IMDDimension_sptr xDimension,
+    IMDDimension_sptr yDimension)
+{
+  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
+  double delta_y = (yDimension->getMaximum() - yDimension->getMinimum()) / yDimension->getNBins();
+  //Make a square
+  VecCoordinate vertexes(4);
+  vertexes[0] = coordinate::createCoordinate2D(dim1Increment * delta_x, dim2Increment * delta_y);
+  vertexes[1] = coordinate::createCoordinate2D((dim1Increment + 1) * delta_x, dim2Increment * delta_y);
+  vertexes[2] = coordinate::createCoordinate2D(dim1Increment * delta_x, (dim2Increment + 1) * delta_y);
+  vertexes[3] = coordinate::createCoordinate2D((dim1Increment + 1) * delta_x, (dim2Increment + 1) * delta_y);
+  return vertexes;
+}
+
+VecCoordinate createLine(
+    unsigned int dim1Increment,
+    IMDDimension_sptr xDimension)
+{
+  double delta_x = (xDimension->getMaximum() - xDimension->getMinimum()) / xDimension->getNBins();
+  VecCoordinate vertexes(2);
+  //Make a line
+  vertexes[0] = coordinate::createCoordinate1D(dim1Increment * delta_x);
+  vertexes[1] = coordinate::createCoordinate1D((dim1Increment + 1) * delta_x);
+  return vertexes;
+}
+
+} // namespace
+}
+//*********************************************************************************************************************************************************************************
+namespace Mantid
+{
+  namespace Kernel
+  {
+    template<> DLLExport
+      Mantid::MDDataObjects::MDWorkspace_sptr IPropertyManager::getValue<Mantid::MDDataObjects::MDWorkspace_sptr>(const std::string &name) const
+    {
+      PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_sptr>* prop =
+        dynamic_cast<PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_sptr>*>(getPointerToProperty(name));
+      if (prop)
+      {
+        return *prop;
+      }
+      else
+      {
+        std::string message = "Attempt to assign property "+ name +" to incorrect type";
+        throw std::runtime_error(message);
+      }
+    }
+
+    template<> DLLExport
+      Mantid::MDDataObjects::MDWorkspace_const_sptr IPropertyManager::getValue<Mantid::MDDataObjects::MDWorkspace_const_sptr>(const std::string &name) const
+    {
+      PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_const_sptr>* prop =
+        dynamic_cast<PropertyWithValue<Mantid::MDDataObjects::MDWorkspace_const_sptr>*>(getPointerToProperty(name));
+      if (prop)
+      {
+        return prop->operator()();
+      }
+      else
+      {
+        std::string message = "Attempt to assign property "+ name +" to incorrect type";
+        throw std::runtime_error(message);
+      }
+    }
+
+  } // namespace Kernel
+} // name
+
+
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MD_FileFormatFactory.cpp b/Code/Mantid/Framework/MDDataObjects/src/MD_FileFormatFactory.cpp
index 7536d9368871d0a8846ff48d09277f497c22efa3..a7f42f3f3d3cdcd41e842b625fcb6dda95a69d21 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MD_FileFormatFactory.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MD_FileFormatFactory.cpp
@@ -1,170 +1,170 @@
-#include "MDDataObjects/MD_FileFormatFactory.h"
-// existing file formats
-#include "MDDataObjects/MD_File_hdfV1.h"
-#include "MDDataObjects/MD_File_hdfMatlab.h"
-#include "MDDataObjects/MD_FileHoraceReader.h"
-#include "MDDataObjects/MD_FileTestDataGenerator.h"
-
-#include "MantidKernel/System.h"
-#include <iostream>
-#include <fstream>
-#include <sstream>
-#include <Poco/File.h>
-
-namespace Mantid
-{
-namespace MDDataObjects
-{
-	using namespace Kernel;
-
-MD_FileFormatFactory* MD_FileFormatFactory::pFactory=NULL;
-
-Kernel::Logger& MD_FileFormatFactory::f_log=Kernel::Logger::get("IMD_fileOperations");
-//--------------------------------------------------------------------------------------
-MD_FileFormatFactory::MD_FileFormatFactory()
-{
-}
-//
-MD_FileFormatFactory::~MD_FileFormatFactory()
-{
-	if(pFactory)delete pFactory;
-	pFactory = NULL;
-}
-//
-std::auto_ptr<IMD_FileFormat> 
-MD_FileFormatFactory::getFileReader(const char *fileName,user_request rec)
-{
-	if(!pFactory)pFactory = new MD_FileFormatFactory();
-	return std::auto_ptr<IMD_FileFormat>(pFactory->select_file_reader(fileName,rec));
-}
-//
-std::auto_ptr<IMD_FileFormat> 
-MD_FileFormatFactory::getFileReader(user_request rec,const char *fileName)
-{
-    if(!pFactory)pFactory = new MD_FileFormatFactory();
-
-    // get test data;
-    if(rec == test_data){
-        if(fileName){
-           return std::auto_ptr<IMD_FileFormat>(pFactory->select_file_reader(fileName,rec));
-        }else{
-           return std::auto_ptr<IMD_FileFormat>(pFactory->select_file_reader("data4x3_50x50x50x50.sqw",rec));
-        }
-    }
-    // get actual file writer; if input file name exists, open exisgting and try to initiate file reader (writer);
-    if(fileName){
-          return getFileReader(fileName,rec);
-     }
-    // if there are no file name given, open a unique temporary file;
-
-    std::string unique_tmp_name = get_unique_tmp_fileName();
-
-    return getFileReader(unique_tmp_name.c_str(),rec);
-}
-// 
-std::string get_unique_tmp_fileName(void){
-
-    std::string defaultFileName("tmp_data_");
-    
-    int ic(0);
-    std::stringstream name_num;
-    name_num<<ic;
-    std::string file_name = defaultFileName+name_num.str()+".sqw";
-    Poco::File tmpFile(file_name);
-    while(tmpFile.exists()){
-        name_num.seekp(std::ios::beg);
-        ic++;
-        name_num<<ic;
-        file_name = defaultFileName+name_num.str()+".sqw";
-        tmpFile = file_name;
-    
-    } 
-    return  file_name;
-   
-}
-//
-IMD_FileFormat *
-MD_FileFormatFactory::select_file_reader(const char *file_name,user_request rec)
-{
-	if(rec == test_data){
-		f_log.information()<<"MD_FileFactory: Enabled test file format for the file: "<<file_name<<std::endl;
-        return (new MD_FileTestDataGenerator(file_name));
-	}
-
-// check if the file exist;
-    std::ifstream infile;
-    infile.open(file_name);
-    infile.close();
-    if (infile.fail()){  // new real file can be the new file format only;
-		std::ofstream outfile;
-		outfile.open(file_name);
-		if(outfile.fail()){
-			f_log.error()<<"MD_FileFactory: can not open or create file: "<<file_name<<std::endl;
-			throw(Exception::FileError("MDData::select_file_reader: Error->can not found or open",file_name));
-		}else{
-			outfile.close();
-			return (new MD_File_hdfV1(file_name));
-		}
-    }
-// check existing file is hdf5 file;
-    htri_t rez=H5Fis_hdf5(file_name);
-    if (rez<=0){
-        if (rez==0){
-			if(isHoraceFile(file_name)){
-				return (new HoraceReader::MD_FileHoraceReader(file_name));
-			}
-            //HACK temporary return new file reader which will be hdf later
-            return (new MD_File_hdfV1(file_name));
-	/*		f_log.error()<<" HDF5 error dealing with file"<<file_name<<std::endl;
-            throw(Exception::FileError("MDData::select_file_reader: Error->the file is not hdf5 file",file_name));*/
-        }else{
-			f_log.error()<<" HDF5 error dealing with file"<<file_name<<std::endl;
-            throw(Exception::FileError("MDData::select_file_reader: Error->unspecified hdf5 error ",file_name));
-        }
-    }else{
-        // ***> to do:: identify internal hdf5 format; only MATLAB is supported at the moment;
-          return (new MD_File_hdfMatlab(file_name));
-    }
-}
-// 
-bool 
-MD_FileFormatFactory::isHoraceFile(const char *fileName)
-{
-	std::ifstream aFile(fileName);
-	if(aFile.bad()){
-		f_log.error()<< "attempt to open existing file"<<fileName<<" for reading have failed\n";
-		std::string errorName(fileName);
-		throw(Kernel::Exception::FileError(" can not open existing file to check if it Horace written",errorName));
-	}
-	char DataBuffer[4+6+8];
-	aFile.read(DataBuffer,4+6+8);
-	if(aFile.bad()){
-		f_log.debug()<< "Can not read first 18 bytes of data from existing binary file: "<<fileName<<" It is probably not a Horace file\n";
-		return false; // probably not Horace file
-	}
-
-
-	int n_symbols= *(reinterpret_cast<uint32_t*>(DataBuffer));
-	if(n_symbols!=6){
-		f_log.debug()<<" first number of the file header is not 6, It is probably not a Horace file\n";
-		return false;
-	}
-	// 6 symbols starting from 4-th 
-	std::string buf(DataBuffer+4,6);
-	if(buf != "horace"){
-		f_log.debug()<<" the program name is not a Horace, definitely not a Horace file\n";
-		return false;
-	}
-
-	double version = *(reinterpret_cast<double *>(DataBuffer+10));
-
-	if(abs(version-2)>std::numeric_limits<float>::epsilon()){
-		f_log.debug()<<" Only version 2 of Horace format file is currently supported and we got the version :"<<version<<std::endl;
-		return false;
-	}
-	// should be happening automatically anyway;
-	aFile.close();
-	return true;
-}
-} // end namespaces
-} 
+#include "MDDataObjects/MD_FileFormatFactory.h"
+// existing file formats
+#include "MDDataObjects/MD_File_hdfV1.h"
+#include "MDDataObjects/MD_File_hdfMatlab.h"
+#include "MDDataObjects/MD_FileHoraceReader.h"
+#include "MDDataObjects/MD_FileTestDataGenerator.h"
+
+#include "MantidKernel/System.h"
+#include <iostream>
+#include <fstream>
+#include <sstream>
+#include <Poco/File.h>
+
+namespace Mantid
+{
+namespace MDDataObjects
+{
+	using namespace Kernel;
+
+MD_FileFormatFactory* MD_FileFormatFactory::pFactory=NULL;
+
+Kernel::Logger& MD_FileFormatFactory::f_log=Kernel::Logger::get("IMD_fileOperations");
+//--------------------------------------------------------------------------------------
+MD_FileFormatFactory::MD_FileFormatFactory()
+{
+}
+//
+MD_FileFormatFactory::~MD_FileFormatFactory()
+{
+	if(pFactory)delete pFactory;
+	pFactory = NULL;
+}
+//
+std::auto_ptr<IMD_FileFormat> 
+MD_FileFormatFactory::getFileReader(const char *fileName,user_request rec)
+{
+	if(!pFactory)pFactory = new MD_FileFormatFactory();
+	return std::auto_ptr<IMD_FileFormat>(pFactory->select_file_reader(fileName,rec));
+}
+//
+std::auto_ptr<IMD_FileFormat> 
+MD_FileFormatFactory::getFileReader(user_request rec,const char *fileName)
+{
+    if(!pFactory)pFactory = new MD_FileFormatFactory();
+
+    // get test data;
+    if(rec == test_data){
+        if(fileName){
+           return std::auto_ptr<IMD_FileFormat>(pFactory->select_file_reader(fileName,rec));
+        }else{
+           return std::auto_ptr<IMD_FileFormat>(pFactory->select_file_reader("data4x3_50x50x50x50.sqw",rec));
+        }
+    }
+    // get actual file writer; if input file name exists, open exisgting and try to initiate file reader (writer);
+    if(fileName){
+          return getFileReader(fileName,rec);
+     }
+    // if there are no file name given, open a unique temporary file;
+
+    std::string unique_tmp_name = get_unique_tmp_fileName();
+
+    return getFileReader(unique_tmp_name.c_str(),rec);
+}
+// 
+std::string get_unique_tmp_fileName(void){
+
+    std::string defaultFileName("tmp_data_");
+    
+    int ic(0);
+    std::stringstream name_num;
+    name_num<<ic;
+    std::string file_name = defaultFileName+name_num.str()+".sqw";
+    Poco::File tmpFile(file_name);
+    while(tmpFile.exists()){
+        name_num.seekp(std::ios::beg);
+        ic++;
+        name_num<<ic;
+        file_name = defaultFileName+name_num.str()+".sqw";
+        tmpFile = file_name;
+    
+    } 
+    return  file_name;
+   
+}
+//
+IMD_FileFormat *
+MD_FileFormatFactory::select_file_reader(const char *file_name,user_request rec)
+{
+	if(rec == test_data){
+		f_log.information()<<"MD_FileFactory: Enabled test file format for the file: "<<file_name<<std::endl;
+        return (new MD_FileTestDataGenerator(file_name));
+	}
+
+// check if the file exist;
+    std::ifstream infile;
+    infile.open(file_name);
+    infile.close();
+    if (infile.fail()){  // new real file can be the new file format only;
+		std::ofstream outfile;
+		outfile.open(file_name);
+		if(outfile.fail()){
+			f_log.error()<<"MD_FileFactory: can not open or create file: "<<file_name<<std::endl;
+			throw(Exception::FileError("MDData::select_file_reader: Error->can not found or open",file_name));
+		}else{
+			outfile.close();
+			return (new MD_File_hdfV1(file_name));
+		}
+    }
+// check existing file is hdf5 file;
+    htri_t rez=H5Fis_hdf5(file_name);
+    if (rez<=0){
+        if (rez==0){
+			if(isHoraceFile(file_name)){
+				return (new HoraceReader::MD_FileHoraceReader(file_name));
+			}
+            //HACK temporary return new file reader which will be hdf later
+            return (new MD_File_hdfV1(file_name));
+	/*		f_log.error()<<" HDF5 error dealing with file"<<file_name<<std::endl;
+            throw(Exception::FileError("MDData::select_file_reader: Error->the file is not hdf5 file",file_name));*/
+        }else{
+			f_log.error()<<" HDF5 error dealing with file"<<file_name<<std::endl;
+            throw(Exception::FileError("MDData::select_file_reader: Error->unspecified hdf5 error ",file_name));
+        }
+    }else{
+        // ***> to do:: identify internal hdf5 format; only MATLAB is supported at the moment;
+          return (new MD_File_hdfMatlab(file_name));
+    }
+}
+// 
+bool 
+MD_FileFormatFactory::isHoraceFile(const char *fileName)
+{
+	std::ifstream aFile(fileName);
+	if(aFile.bad()){
+		f_log.error()<< "attempt to open existing file"<<fileName<<" for reading have failed\n";
+		std::string errorName(fileName);
+		throw(Kernel::Exception::FileError(" can not open existing file to check if it Horace written",errorName));
+	}
+	char DataBuffer[4+6+8];
+	aFile.read(DataBuffer,4+6+8);
+	if(aFile.bad()){
+		f_log.debug()<< "Can not read first 18 bytes of data from existing binary file: "<<fileName<<" It is probably not a Horace file\n";
+		return false; // probably not Horace file
+	}
+
+
+	int n_symbols= *(reinterpret_cast<uint32_t*>(DataBuffer));
+	if(n_symbols!=6){
+		f_log.debug()<<" first number of the file header is not 6, It is probably not a Horace file\n";
+		return false;
+	}
+	// 6 symbols starting from 4-th 
+	std::string buf(DataBuffer+4,6);
+	if(buf != "horace"){
+		f_log.debug()<<" the program name is not a Horace, definitely not a Horace file\n";
+		return false;
+	}
+
+	double version = *(reinterpret_cast<double *>(DataBuffer+10));
+
+	if(abs(version-2)>std::numeric_limits<float>::epsilon()){
+		f_log.debug()<<" Only version 2 of Horace format file is currently supported and we got the version :"<<version<<std::endl;
+		return false;
+	}
+	// should be happening automatically anyway;
+	aFile.close();
+	return true;
+}
+} // end namespaces
+} 
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MD_FileHoraceReader.cpp b/Code/Mantid/Framework/MDDataObjects/src/MD_FileHoraceReader.cpp
index 4f994c77043d4fca2f93d4bb4ae06771d6875e71..9720d414821b73c997b4b72116c70beac85e471c 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MD_FileHoraceReader.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MD_FileHoraceReader.cpp
@@ -1,821 +1,821 @@
-#include "MDDataObjects/MD_FileHoraceReader.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
-
-
-namespace Mantid{
-namespace MDDataObjects{
-namespace HoraceReader{
-using namespace Mantid::Kernel;
-using namespace Mantid::Geometry;
-// here we need float to be 32 bytes long as it is what is embedded in Horace file format;
-// if float on a computer is different from 32 bit, the transformations would be meaningles;
-typedef float float32;
-//
-MD_FileHoraceReader::MD_FileHoraceReader(const char *file_name):
-IMD_FileFormat(file_name),
-positions(),
-mdImageSize(0),
-nDataPoints(0)
-{
-    if(sizeof(float32)!=4){
-        f_log.error()<<"MD_FileHoraceReader is not defined on a computer with non-32-bit float\n";
-        throw(std::bad_cast());
-    }
-
-    std::vector<char> data_buffer;
-
-    fileStreamHolder.open(file_name,std::ios::binary);
-    if(fileStreamHolder.bad()){
-        f_log.error()<<"MD_FileHoraceReader:: error opening existing Horace file "<<File_name<<", which was identified as Horace\n";
-        throw(Kernel::Exception::FileError("Error opening existing Horace file",File_name));
-    }
-    // go to the start of the data fields
-    fileStreamHolder.seekg(positions.if_sqw_start);
-    data_buffer.resize(3*4);
-
-    fileStreamHolder.read(&data_buffer[0],2*4);
-    if(fileStreamHolder.bad()){
-        f_log.error()<<"MD_FileHoraceReader:: error reading dnd/sqw and nDims from the file "<<File_name<<std::endl; 
-        throw(Kernel::Exception::FileError("Error opening existing Horace file",File_name));
-    }
-    int isSQW = *((uint32_t*)(&data_buffer[0]));
-    if(!isSQW){
-        f_log.error()<<" Mantid currently does not support Horace DND files and the file "<<File_name<<" is identified as DND file\n";
-        throw(Exception::FileError("File has not been identified as Horace SQW file",File_name));
-    }
-
-    this->nDims = *((uint32_t*)(&data_buffer[4]));
-    if(nDims != 4){
-        f_log.error()<<"MD_FileHoraceReader:: does not support"<<nDims<<" Dimensions, should be 4\n";
-        throw(Kernel::Exception::FileError("Wrong data in the Horace file",File_name));
-    }
-
-    parse_sqw_main_header();
-
-    // go through all component headers and read them (or calculate their length)
-    std::streamoff next_position = positions.component_headers_starts[0];
-    unsigned int nFiles        = positions.component_headers_starts.size();
-    for(unsigned int i=0;i<nFiles;i++){
-        positions.component_headers_starts[i] = next_position;
-        next_position = parse_component_header(next_position);
-    }
-    positions.detectors_start = next_position;
-    // get detectors
-    positions.data_start      = parse_sqw_detpar(positions.detectors_start);
-    // calculate all other data fields locations;
-    parse_data_locations(positions.data_start);
-}
-
-
-//
-void 
-MD_FileHoraceReader::read_basis(Mantid::Geometry::MDGeometryBasis &basisGeometry)
-{
-   using namespace Mantid::Geometry;
-    std::set<Geometry::MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qx", true, 0));
-    basisDimensions.insert(MDBasisDimension("qy", true, 1));
-    basisDimensions.insert(MDBasisDimension("qz", true, 2));
-    basisDimensions.insert(MDBasisDimension("en", false,3));
-
-    UnitCell cell;
-    basisGeometry.init(basisDimensions,cell);
-    // get_sqw_header should go here and define cell
-}
-//
-void 
-MD_FileHoraceReader::read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &dscrptn)
-{
-    DimensionDescription *pDimDescr;
-    // the description has to already have proper shape of dimensions
-    if(dscrptn.getNumDims()!=this->nDims||dscrptn.getNumRecDims()!=3){
-        f_log.error()<<"read geometry description should receive correct inital object with proper number of orthogonal and reciprocal dimensions\n";
-        f_log.error()<<"expeted to obtain"<<this->nDims<<" total and 3 reciprocal dimensions\n";
-        f_log.error()<<"obtained:        "<<dscrptn.getNumDims()<<" total and "<<dscrptn.getNumRecDims()<<" reciprocal dimensions\n";
-        throw(std::invalid_argument("read_MDGeomDescription for Horace data: input/output object has not been shaped properly"));
-    }
-
-    std::vector<char> buf(4*(3+3+4+16+4+2));
-    unsigned int i,j,ic,i0;
-    // horace tags come from basis, but as they have not been transferred between classes, 
-    // they should be written with image too. 
-    std::vector<std::string> Horace_tags(4);
-    Horace_tags[0]="qx";
-    Horace_tags[1]="qy";
-    Horace_tags[2]="qz";
-    Horace_tags[3]="en";
-
-    this->fileStreamHolder.seekg(this->positions.geom_start,std::ios::beg);
-
-/*
-[data.uoffset, count, ok, mess] = fread_catch(fid,[4,1],'float32'); if ~all(ok); return; end;
-[n, count, ok, mess] = fread_catch(fid,2,'int32'); if ~all(ok); return; end;
-*/
-    this->fileStreamHolder.read(&buf[0],buf.size());
-    // skip allat and adlngldef
-    i0 = 4*(3+3) ; 
-    for(i=0;i<this->nDims;i++){
-        double val = (double)*((float32*)(&buf[i0+i*4]));
-        dscrptn.pDimDescription(i)->data_shift = val;
-    }
-    //TODO: how to use it in our framework?
-    std::vector<double> u_to_Rlu(this->nDims*this->nDims);
-    i0 += this->nDims*4;
-// [data.u_to_rlu, count, ok, mess] = fread_catch(fid,[4,4],'float32'); if ~all(ok); return; end;
-    ic = 0;
-    for(i=0;i<this->nDims;i++){
-        for(j=0;j<this->nDims;j++){
-            u_to_Rlu[ic]=(double)*((float32*)(&buf[i0+4*(i*4+j)]));
-            ic++;
-        }
-    }
-    i0 += ic*4;
-// [data.ulen, count, ok, mess] = fread_catch(fid,[1,4],'float32'); if ~all(ok); return; end;
-//  Length of projection axes vectors in Ang^-1 or meV [row vector]
-    for(i=0;i<this->nDims;i++){
-        dscrptn.pDimDescription(i)->data_scale= *((float32*)(&buf[i0+i*4]));
-    }
-
-    // axis labels size 
-    i0 += nDims*4;
-    unsigned int nRows = *((uint32_t*)(&buf[i0]));
-    unsigned int nCols = *((uint32_t*)(&buf[i0+4]));
-
-
-    // read axis labelsg
-    buf.resize(nRows*nCols);
-   // [ulabel, count, ok, mess] = fread_catch(fid,[n(1),n(2)],'*char'); if ~all(ok); return; end;
-
-    this->fileStreamHolder.read(&buf[0],buf.size());
-
-    //data.ulabel=cellstr(ulabel)';
-    std::string name;
-    char symb;
-    name.resize(nCols);
-    for(i=0;i<nRows;i++){
-        for(j=0;j<nCols;j++){
-            symb   =buf[i+j*nRows]; 
-            name[j] =symb;  // should be trim here;
-        }
-        dscrptn.pDimDescription(i)->AxisName = name;
-        // hardcoded here as we read the dimensions ID (tags and Horace does not do it)
-        dscrptn.pDimDescription(i)->Tag    = Horace_tags[i];
-    }
-
-// pax dax fax...
-    // the order of the id-s in this array has to correspond to the numbers of axis, specified in Horace
-    std::vector<std::string> dimID = dscrptn.getDimensionsTags();
-
-    // resize for iax and npax;
-    buf.resize(4*4*3);
-    this->fileStreamHolder.read(&buf[0],4);
-
-    unsigned int npax =  *((uint32_t*)(&buf[0]));
-    unsigned int niax = 4-npax;
-
-    if(niax>0){
-   //    [data.iax, count, ok, mess] = fread_catch(fid,[1,niax],'int32'); if ~all(ok); return; end;
-   //   [data.iint, count, ok, mess] = fread_catch(fid,[2,niax],'float32'); if ~all(ok); return; end;
-        DimensionDescription *pDimDescr;
-
-        this->fileStreamHolder.read(&buf[0],buf.size());
-        int i_axis_index;
-        for(i=0;i<niax;i++){
-            i_axis_index = *((uint32_t*)(&buf[i*4]));
-            pDimDescr  = dscrptn.pDimDescription(dimID[i_axis_index]);
-
-            pDimDescr->nBins = 1; // this sets this axis integrated
-            pDimDescr->cut_min = *((float32*)(&buf[4*(niax+i*2)])); // min integration value
-            pDimDescr->cut_max = *((float32*)(&buf[4*(niax+i*2+1)])); // max integration value
-        }
-
-    }
-    // processing projection axis;
-    if(npax>0){
-      //[data.pax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
-        this->fileStreamHolder.read(&buf[0],4*npax);
-        //[np,count,ok,mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-        //[data.p{i},count,ok,mess] = fread_catch(fid,np,'float32'); if ~all(ok); return; end;
-
-        for(i=0;i<npax;i++){
-            // matlab indexes started with 1;
-            std::string current_tag = dimID[*((uint32_t*)(&buf[i*4]))-1];
-
-            std::vector<char> axis_buffer(51*4);
-            this->fileStreamHolder.read(&axis_buffer[0],4);
-            unsigned int  nAxisPoints = *((uint32_t*)(&axis_buffer[0]));
-            if(axis_buffer.size()<nAxisPoints*4)axis_buffer.resize(nAxisPoints*4);
-            this->fileStreamHolder.read(&axis_buffer[0],4*nAxisPoints);
-
-            pDimDescr = dscrptn.pDimDescription(current_tag);
-            // this do not describes axis on an irregular grid. 
-            //TODO: implement irregular axis and put check if the grid is regular or not. 
-            pDimDescr->nBins   = nAxisPoints-1; // this sets num-bins
-            pDimDescr->cut_min = *((float32*)(&axis_buffer[4*(0)])); // min axis value
-            pDimDescr->cut_max = *((float32*)(&axis_buffer[4*(nAxisPoints-1)])); // max axis value
-
-
-        }
-    }
-    //display axis are not supported, as data in Horace IMG are not arranged according to display axis. (or are they?);
-    //TODO: check this.
-  //[data.dax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
-
-
-}
-   // read DND object data;
-void 
-MD_FileHoraceReader::read_MDImg_data(MDImage & mdd)
-{
-    size_t i;
-    // get size and allocate read buffer;
-    size_t nCells = mdd.getGeometry()->getGeometryExtend();
-    std::vector<char> buff(nCells*8);
-
-    // get access to the MD image array;
-    MDDataObjects::MD_image_point *pImg_data =  mdd.get_pData();
-    if(!pImg_data){
-        f_log.error()<<"read_MDImg_data:: MD Image has not been initated properly\n";
-        throw(std::invalid_argument(" MD Image has not been initated properly"));
-    }
-    // read signal and error -> presumably errors follow the signal;
-    this->fileStreamHolder.seekg(this->positions.s_start,std::ios::beg);
-    this->fileStreamHolder.read(&buff[0],nCells*8);
-
-
-    for(i=0;i<nCells;i++){
-        pImg_data[i].s   = (double)*((float32*)(&buff[i*4]));
-        pImg_data[i].err = (double)*((float32*)(&buff[(i+nCells)*4]));
-
-    }
-    // read npixels
-    this->fileStreamHolder.seekg(this->positions.n_cell_pix_start,std::ios::beg);
-    this->fileStreamHolder.read(&buff[0],buff.size());
-
-    hor_points_locations.resize(nCells);
-    pImg_data[0].npix = (size_t)*((uint64_t*)(&buff[0*8]));
-    hor_points_locations[0] = 0;
-    for(i=1;i<nCells;i++){
-        pImg_data[i].npix       = (size_t)*((uint64_t*)(&buff[i*8]));
-        hor_points_locations[i] = hor_points_locations[i-1]+pImg_data[i-1].npix;
-    }
-	//
-	mdd.setNpix(hor_points_locations[nCells-1]+pImg_data[nCells-1].npix);
-
-
-}
-   
-MDPointDescription 
-MD_FileHoraceReader::read_pointDescriptions(void)const
-{
-    const char *HoraceDataTags[]={"qx","qy","qz","en","S","err","iRunID","iDetID","iEn"};
-    MDPointStructure  aPointDescr;
-    std::vector<std::string> dataID(HoraceDataTags,HoraceDataTags+9);
-    MDPointDescription defaultDescr(aPointDescr,dataID);
-    return defaultDescr;
-}
- //read whole pixels information in memory; usually impossible, then returns false;
-//bool 
-//MD_FileHoraceReader::read_pix(MDDataPoints & sqw)
-//{
-//	return false;
-//}
-//
-size_t 
-MD_FileHoraceReader::read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
-{
-    size_t i,buffer_availible,cell_index;
-    size_t iCellRead(starting_cell);
-	size_t max_npix_inCell(0);
-	max_npix_inCell=~max_npix_inCell;
-	uint64_t nPix;
-    // timing
-    time_t start,end;
-    time(&start);  //***********************************************>>>
-
-    const MD_image_point *pImgData = dnd.get_const_pData();
-    // buffer size provided;
-    buffer_availible = pix_buf.size()/(hbs);
-
-    // identify data extent fitting the buffer;
-    n_pix_in_buffer = 0;
-    for(i=starting_cell;i<selected_cells.size();i++){
-
-        cell_index      = selected_cells[i];
-		nPix            =pImgData[cell_index].npix;
-		if(nPix>max_npix_inCell){
-			 f_log.error()<<"The reader can not read this dataset as number of pixels contributed into cell"<<i<<" larger then current architecture allows\n";
-			 throw(std::invalid_argument("Data size exceed the possibilities of this computer"));
-		}
-        n_pix_in_buffer+=(size_t)nPix;
-
-        // end the loop earlier
-        if(n_pix_in_buffer>buffer_availible){ 
-            if(i==starting_cell){
-                pix_buf.resize(n_pix_in_buffer*hbs);
-                iCellRead=i;
-            }else{
-                iCellRead=i-1;
-                n_pix_in_buffer-=(size_t)pImgData[cell_index].npix;
-            }
-            break;
-        }
-        iCellRead=i;
-    }
-    time(&end);     //***********************************************<<<<
-    f_log.debug()<<" cells preselected in: "<<difftime (end,start)<<" sec\n";;
-
-    // read data cell after cells indexes as provided;
-    
-    std::streamoff pixels_start;
-    size_t         block_size(0);
-    size_t         block_start(0);
-    size_t         data_buffer_size(0);
-//	
-    size_t ic      = starting_cell;
-    size_t ic_next = ic+1;
-    if(ic_next>iCellRead)ic_next = iCellRead;
-	uint64_t nBytes;
-    time(&start);  //***********************************************>>>
-
-
-	// read untill data buffer is full
-    while(true){
-
-        cell_index      = selected_cells[ic];
-        pixels_start  =   this->positions.pix_start+hbs*hor_points_locations[cell_index];
-
-         // optimisaion possible when cells are adjacent
-        nBytes    = hbs*pImgData[cell_index].npix;
-		if(nBytes> max_npix_inCell){
-			 f_log.error()<<"The reader can not read this dataset as number of pixels contributed into cell"<<cell_index<<" larger then current architecture allows\n";
-			 throw(std::invalid_argument("Data size exceed the possibilities of this computer"));
-		}else{
-			block_size = (size_t)nBytes;
-		}
-
-        // if the next cell follows the current on HDD, we should read them together aggregating adjacent cells;
-        uint64_t next_block = hor_points_locations[cell_index]+pImgData[cell_index].npix;
-        size_t next_index = selected_cells[ic_next];
-        while(hor_points_locations[next_index]==next_block){
-            // block size grows and all other is auxiliary
-			    nBytes = hbs*pImgData[next_index].npix;
-				if(nBytes> max_npix_inCell){
-					 f_log.error()<<"The reader can not read this dataset as number of pixels contributed into cell"<<next_index<<" larger then current architecture allows\n";
-					throw(std::invalid_argument("Data size exceed the possibilities of this computer"));
-				}
-
-            // block size grows and all other is auxiliary
-                block_size    += (size_t)nBytes;
-                ic = ic_next;
-                ic_next++;
-                if(ic_next > iCellRead)break;
-
-                cell_index = selected_cells[ic];
-                next_block = hor_points_locations[cell_index]+pImgData[cell_index].npix;
-                next_index = selected_cells[ic_next];
-            
-        }
-
-       
-        this->fileStreamHolder.seekg(pixels_start,std::ios::beg);
-        this->fileStreamHolder.read(&pix_buf[block_start],block_size);
-        block_start+=block_size;
-
-        // for single cell it is important to add but not to assign the next value, for more then one -- no difference
-        ic++;
-        ic_next++;
-        if(ic>iCellRead)break;
-        if(ic_next>iCellRead)ic_next=iCellRead;
-    }
-    time(&end);     //***********************************************<<<<
-    f_log.debug()<<" cells read in: "<<difftime (end,start)<<" sec\n";;
-    //
-    time(&start);  //*******
-	data_buffer_size = block_start; // latest block size has been already added
-	compact_hor_data(&pix_buf[0],data_buffer_size);  
-    time(&end);   
-    f_log.debug()<<" cells transformed in: "<<difftime (end,start)<<" sec\n";;
-    // returns next cell to read if any or size of the selection
-    return ic;
-}
-void 
-MD_FileHoraceReader::compact_hor_data(char *buffer,size_t &buf_size)
-{
- 
-
-    size_t i;
-    // data size should be in blocks of 9*4
-    size_t data_size = buf_size/(hbs);
-    if(data_size*hbs!= buf_size){
-        f_log.error()<<" Block of Horace data does not arrived for compression in block of 9*4\n";
-        throw(std::invalid_argument(" Block of Horace data does not arrived for compression in block of 9*4"));
-    }
-
-    float      Dim_sig[6];
-    uint32_t   index[3];
-	MDPointDescription pixInfo;
-	pixInfo.PixInfo().DimIDlength =4;
-	pixInfo.PixInfo().SignalLength=4;
-
- 	MDDataPointEqual<float,uint32_t,float> defPoint(buffer,pixInfo);
-    // output buffer size now decreases;
-    buf_size = data_size*defPoint.sizeofMDDataPoint();
-    for(i=0;i<data_size;i++){
-        Dim_sig[0] =(float)*((float *)(buffer+i*hbs));
-        Dim_sig[1] =(float)*((float *)(buffer+i*hbs+4));
-        Dim_sig[2] =(float)*((float *)(buffer+i*hbs+8));
-        Dim_sig[3] =(float)*((float *)(buffer+i*hbs+12));
-
-        index[0]  =(uint32_t)*((uint32_t *)(buffer+i*hbs+16)); 
-        index[1]  =(uint32_t)*((uint32_t *)(buffer+i*hbs+20)); 
-        index[2]  =(uint32_t)*((uint32_t *)(buffer+i*hbs+24)); 
-
-        Dim_sig[4] =(float)*((float*)(buffer+i*hbs+28));
-        Dim_sig[5] =(float)*((float*)(buffer+i*hbs+32));
-        if(Dim_sig[4] == -1e+30){
-            Dim_sig[4] = std::numeric_limits<float>::quiet_NaN();
-            Dim_sig[5] = Dim_sig[4];
-        }
-
-
-        defPoint.setData(i,Dim_sig,index);
-    }
-
-}
-
- /// get number of data pixels(points) contributing into the dataset;
-uint64_t
-MD_FileHoraceReader::getNPix(void)
-{
-    return this->nDataPoints;
-}
-
-// auxiliary functions
-void
-MD_FileHoraceReader::parse_sqw_main_header()
-{ // we do not need this header  at the moment -> just need to calculated its length;
-
-    std::vector<char> data_buffer(4 * 3);
-  this->fileStreamHolder.read(&data_buffer[0], 4);
-  validateFileStreamHolder(fileStreamHolder);
-
-  unsigned int file_name_length = *((uint32_t*) (&data_buffer[0]));
-  //skip main header file name
-  fileStreamHolder.seekg(file_name_length, std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-
-  this->fileStreamHolder.read(&data_buffer[0], 4);
-  unsigned int file_path_length = *((uint32_t*) (&data_buffer[0]));
-  validateFileStreamHolder(fileStreamHolder);
-
-  //skip main header file path
-  fileStreamHolder.seekg(file_path_length, std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-
-  this->fileStreamHolder.read(&data_buffer[0], 4);
-  unsigned int file_title = *((uint32_t*) (&data_buffer[0]));
-  validateFileStreamHolder(fileStreamHolder);
-
-  //skip main header file path
-  fileStreamHolder.seekg(file_title, std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-
-  // indentify number of file headers, contributed into the dataset
-  this->fileStreamHolder.read(&data_buffer[0], 4);
-  unsigned int nFiles = *((uint32_t*) (&data_buffer[0]));
-  validateFileStreamHolder(fileStreamHolder);
-
-  /// allocate space for the component headers positions;
-  positions.component_headers_starts.assign(nFiles, 0);
-
-  std::streamoff last_location = fileStreamHolder.tellg();
-  if (nFiles > 0)
-  {
-    positions.component_headers_starts[0] = last_location;
-  }
-  //return last_location;
-  return;
-
-}
-
-// 
-std::streamoff 
-MD_FileHoraceReader::parse_component_header(std::streamoff start_location)
-{ // we do not need this header  at the moment -> just calculating its length; or may be we do soon?
-    std::vector<char> data_buffer(8);
-/*
-[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-[data.filename, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-
-[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-[data.filepath, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-
-[data.efix,   count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
-[data.emode,  count, ok, mess] = fread_catch(fid,1,    'int32');   if ~all(ok); return; end;
-[data.alatt,  count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
-[data.angdeg, count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
-[data.cu,     count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
-[data.cv,     count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
-[data.psi,    count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
-[data.omega,  count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
-[data.dpsi,   count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
-[data.gl,     count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
-[data.gs,     count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
-
-[ne, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-[data.en,count,ok,mess] = fread_catch(fid, [ne,1], 'float32'); if ~all(ok); return; end;
-
-[data.uoffset, count, ok, mess] = fread_catch(fid,[4,1],'float32'); if ~all(ok); return; end;
-[data.u_to_rlu,count, ok, mess] = fread_catch(fid,[4,4],'float32'); if ~all(ok); return; end;
-[data.ulen,    count, ok, mess] = fread_catch(fid,[1,4],'float32'); if ~all(ok); return; end;
-
-[n, count, ok, mess] = fread_catch(fid,2,'int32'); if ~all(ok); return; end;
-[ulabel, count, ok, mess] = fread_catch(fid,[n(1),n(2)],'*char'); if ~all(ok); return; end;
-data.ulabel=cellstr(ulabel)';
-*/
-
-    std::streamoff end_location = start_location;
-    std::streamoff shift = start_location-this->fileStreamHolder.tellg();
-    // move to spefied location, which should be usually 0;
-    fileStreamHolder.seekg(shift,std::ios_base::cur);
-
-
-
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    validateFileStreamHolder(fileStreamHolder);
-
-    unsigned int file_name_length= *((uint32_t*)(&data_buffer[0]));
-    //skip component header file name
-    fileStreamHolder.seekg(file_name_length,std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    unsigned int file_path_length= *((uint32_t*)(&data_buffer[0]));
-    validateFileStreamHolder(fileStreamHolder);
-
-    //skip component header file path
-    fileStreamHolder.seekg(file_path_length,std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-
-    // move to by specifified nuber of bytes, see Matlab header above;
-    fileStreamHolder.seekg(4*(7+3*4),std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-
-    // read number of energy bins;
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    unsigned int nEn_bins = *((uint32_t*)(&data_buffer[0]));
-    // skip energy values;
-    fileStreamHolder.seekg(4*(nEn_bins),std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-    // skip offsets and conversions;
-    fileStreamHolder.seekg(4*(4+4*4+4),std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-
-    // get labels matix size;
-    this->fileStreamHolder.read(&data_buffer[0],8);
-    validateFileStreamHolder(fileStreamHolder);
-    unsigned int nRows = *((uint32_t*)(&data_buffer[0]));
-    unsigned int nCols = *((uint32_t*)(&data_buffer[4]));
-
-    // skip labels
-    fileStreamHolder.seekg(nRows*nCols,std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-
-    end_location = (unsigned int)fileStreamHolder.tellg();
-    return end_location;
-
-
-}
-//
-std::streamoff
-MD_FileHoraceReader::parse_sqw_detpar(std::streamoff start_location)
-{ //
-        std::vector<char> data_buffer(8);
-/*
-[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-[det.filename, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-
-[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-[det.filepath, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-
-[ndet, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-[det.group, count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
-[det.x2,    count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
-[det.phi,   count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
-[det.azim,  count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
-[det.width, count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
-[det.height,count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
-*/
-
-    std::streamoff end_location = start_location;
-    std::streamoff shift = start_location-this->fileStreamHolder.tellg();
-    // move to specified location, which should be usually 0;
-    fileStreamHolder.seekg(shift,std::ios_base::cur);              validateFileStreamHolder(fileStreamHolder);
-
-
-    this->fileStreamHolder.read(&data_buffer[0],4);                 validateFileStreamHolder(fileStreamHolder);
-
-    unsigned int file_name_length= *((uint32_t*)(&data_buffer[0]));
-    //skip component header file name
-    fileStreamHolder.seekg(file_name_length,std::ios_base::cur);     validateFileStreamHolder(fileStreamHolder);
-
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    unsigned int file_path_length= *((uint32_t*)(&data_buffer[0]));  validateFileStreamHolder(fileStreamHolder);
-    //skip component header file path
-    fileStreamHolder.seekg(file_path_length,std::ios_base::cur);     validateFileStreamHolder(fileStreamHolder);
-
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    unsigned int num_detectors = *((uint32_t*)(&data_buffer[0]));
-//skip detector information
-    fileStreamHolder.seekg(num_detectors*6*4,std::ios_base::cur);  validateFileStreamHolder(fileStreamHolder);
-
-    end_location = fileStreamHolder.tellg();
-    return end_location;
-
-
-}
-void
-MD_FileHoraceReader::parse_data_locations(std::streamoff data_start)
-{
-    std::vector<char> data_buffer(12);
-    unsigned int i;
-
-    std::streamoff end_location = data_start;
-    std::streamoff shift = data_start-this->fileStreamHolder.tellg();
-    // move to specified location, which should be usually 0;
-    fileStreamHolder.seekg(shift,std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-/*   
-    [n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-    [dummy_filename, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-
-    [n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-    [dummy_filepath, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-
-    [n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-    [data.title, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
-*/
-    this->fileStreamHolder.read(&data_buffer[0],4);
-  validateFileStreamHolder(fileStreamHolder);
-
-    unsigned int file_name_length= *((uint32_t*)(&data_buffer[0]));
-    //skip dummy file name
-    fileStreamHolder.seekg(file_name_length,std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    unsigned int file_path_length= *((uint32_t*)(&data_buffer[0]));
-  validateFileStreamHolder(fileStreamHolder);
-    //skip dummy file path
-    fileStreamHolder.seekg(file_path_length,std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-
-    this->fileStreamHolder.read(&data_buffer[0],4);
-    unsigned int data_title_length = *((uint32_t*)(&data_buffer[0]));
-  validateFileStreamHolder(fileStreamHolder);
-    //skip data title
-    fileStreamHolder.seekg(data_title_length,std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-
-    this->positions.geom_start = fileStreamHolder.tellg();
-    // skip geometry information
-/*
-    [data.alatt, count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
-    [data.angdeg, count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
-
-    [data.uoffset, count, ok, mess] = fread_catch(fid,[4,1],'float32'); if ~all(ok); return; end;
-    [data.u_to_rlu, count, ok, mess] = fread_catch(fid,[4,4],'float32'); if ~all(ok); return; end;
-    [data.ulen, count, ok, mess] = fread_catch(fid,[1,4],'float32'); if ~all(ok); return; end;
-*/
-    fileStreamHolder.seekg(4*(3+3+4+16+4),std::ios_base::cur);
-/*
-    [n, count, ok, mess] = fread_catch(fid,2,'int32'); if ~all(ok); return; end;
-    [ulabel, count, ok, mess] = fread_catch(fid,[n(1),n(2)],'*char'); if ~all(ok); return; end;
-    data.ulabel=cellstr(ulabel)';
-*/
-    // get label information and skip labels;
-    this->fileStreamHolder.read(&data_buffer[0],8);
-  validateFileStreamHolder(fileStreamHolder);
-    unsigned int n_labels      = *((uint32_t*)(&data_buffer[0])); 
-    unsigned int labels_length = *((uint32_t*)(&data_buffer[4])); 
-    fileStreamHolder.seekg(n_labels*labels_length,std::ios_base::cur);
-
-    this->positions.npax_start = fileStreamHolder.tellg();
-/*
-    [npax, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-    niax=4-npax;
-    if niax~=0
-        [data.iax, count, ok, mess] = fread_catch(fid,[1,niax],'int32'); if ~all(ok); return; end;
-        [data.iint, count, ok, mess] = fread_catch(fid,[2,niax],'float32'); if ~all(ok); return; end;
-    else
-        data.iax=zeros(1,0);    % create empty index of integration array in standard form
-        data.iint=zeros(2,0);
-    end
-*/
-    this->fileStreamHolder.read(&data_buffer[0],4);
-  validateFileStreamHolder(fileStreamHolder);;
-    unsigned int npax = *((uint32_t*)(&data_buffer[0])); 
-    unsigned int niax = npax-4;
-    if(niax!=0){
-        fileStreamHolder.seekg(3*niax*4,std::ios_base::cur);
-      validateFileStreamHolder(fileStreamHolder);
-    }
-    if(npax!=0){
-        this->nBins.resize(npax);
-        /*
-        [data.pax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
-        psize=zeros(1,npax);    % will contain number of bins along each dimension of plot axes
-        for i=1:npax
-            [np,count,ok,mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
-            [data.p{i},count,ok,mess] = fread_catch(fid,np,'float32'); if ~all(ok); return; end;
-            psize(i)=np-1;
-        end
-        */
-        // skip projection axis
-        fileStreamHolder.seekg(npax*4,std::ios_base::cur);
-      validateFileStreamHolder(fileStreamHolder);
-        this->mdImageSize = 1;
-        unsigned int nAxisPoints;
-        for(i=0;i<npax;i++){
-            this->fileStreamHolder.read(&data_buffer[0],4);
-          validateFileStreamHolder(fileStreamHolder);
-            nAxisPoints = *((uint32_t*)(&data_buffer[0])); 
-            nBins[i] = nAxisPoints-1;
-            this->mdImageSize *= nBins[i] ;
-            fileStreamHolder.seekg(nAxisPoints*4,std::ios_base::cur);
-            validateFileStreamHolder(fileStreamHolder);
-        }
-        /*
-        [data.dax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
-        if length(psize)==1
-            psize=[psize,1];    % make size of a column vector
-        end
-        */
-        // skip display indexes;
-        fileStreamHolder.seekg(npax*4,std::ios_base::cur);
-      validateFileStreamHolder(fileStreamHolder);
-    }
-    // signal start:
-    this->positions.s_start = fileStreamHolder.tellg();
-    // and skip to errors
-    fileStreamHolder.seekg(this->mdImageSize*4,std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-    // error start:
-    this->positions.err_start= fileStreamHolder.tellg();
-    fileStreamHolder.seekg(this->mdImageSize*4,std::ios_base::cur);
-    validateFileStreamHolder(fileStreamHolder);
-    // dnd data file.  we do not suppor this?
-    if(fileStreamHolder.eof()){
-        f_log.error()<<" DND horace data file supplied. This file reader needs SQW Horace type data file\n";
-        throw(std::invalid_argument("DND Horace datasets are not supported by Mantid"));
-    }
-/*
-    % All of the above fields will be present in a valid sqw file. The following need not exist, but to be a valid sqw file,
-    % for any one field to be present all earlier fields must have been written. 
-    position.npix=[];
-    position.pix=[];
-    npixtot=[];
-*/
-
-    this->positions.n_cell_pix_start=fileStreamHolder.tellg();
-    // skip to the end of pixels;
-    fileStreamHolder.seekg(this->mdImageSize*8,std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-    if(fileStreamHolder.eof()){
-        f_log.error()<<" DND b+ horace data file supplied. This file reader needs full SQW Horace type data file\n";
-        throw(std::invalid_argument("DND b+ Horace datasets are not supported by Mantid"));
-    }
-    this->positions.min_max_start = fileStreamHolder.tellg();
-    // skip min-max start
-    //[data.urange,count,ok,mess] = fread_catch(fid,[2,4],'float32'); if ~all(ok); return; end;
-    fileStreamHolder.seekg(8*4,std::ios_base::cur);
-  validateFileStreamHolder(fileStreamHolder);
-    if(fileStreamHolder.eof()){
-        f_log.error()<<" SQW a- horace data file supplied. This file reader needs full SQW Horace type data file\n";
-        throw(std::invalid_argument("SQW a- Horace datasets are not supported by Mantid"));
-    }
-    // skip redundant field and read nPix (number of data points)
-    this->fileStreamHolder.read(&data_buffer[0],12);
-  validateFileStreamHolder(fileStreamHolder);
-    this->nDataPoints =(size_t)( *((uint64_t*)(&data_buffer[4])));
-    this->positions.pix_start = this->fileStreamHolder.tellg();
-}
-
-MD_FileHoraceReader::~MD_FileHoraceReader(void)
-{
-    fileStreamHolder.close();
-}
-    // Function performing work previously in GOTO statement.
-void inline 
-MD_FileHoraceReader::validateFileStreamHolder(std::ifstream& fileStreamHolder)
-{
-    if (fileStreamHolder.bad()){
-        f_log.error() << " Error reading main sqw file header for file " << this->File_name << "\n";
-        throw(Kernel::Exception::FileError("Error reading main sqw file header ", this->File_name));
-    }
-}
-} // end namespaces
-}
-}
+#include "MDDataObjects/MD_FileHoraceReader.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
+
+
+namespace Mantid{
+namespace MDDataObjects{
+namespace HoraceReader{
+using namespace Mantid::Kernel;
+using namespace Mantid::Geometry;
+// here we need float to be 32 bytes long as it is what is embedded in Horace file format;
+// if float on a computer is different from 32 bit, the transformations would be meaningles;
+typedef float float32;
+//
+MD_FileHoraceReader::MD_FileHoraceReader(const char *file_name):
+IMD_FileFormat(file_name),
+positions(),
+mdImageSize(0),
+nDataPoints(0)
+{
+    if(sizeof(float32)!=4){
+        f_log.error()<<"MD_FileHoraceReader is not defined on a computer with non-32-bit float\n";
+        throw(std::bad_cast());
+    }
+
+    std::vector<char> data_buffer;
+
+    fileStreamHolder.open(file_name,std::ios::binary);
+    if(fileStreamHolder.bad()){
+        f_log.error()<<"MD_FileHoraceReader:: error opening existing Horace file "<<File_name<<", which was identified as Horace\n";
+        throw(Kernel::Exception::FileError("Error opening existing Horace file",File_name));
+    }
+    // go to the start of the data fields
+    fileStreamHolder.seekg(positions.if_sqw_start);
+    data_buffer.resize(3*4);
+
+    fileStreamHolder.read(&data_buffer[0],2*4);
+    if(fileStreamHolder.bad()){
+        f_log.error()<<"MD_FileHoraceReader:: error reading dnd/sqw and nDims from the file "<<File_name<<std::endl; 
+        throw(Kernel::Exception::FileError("Error opening existing Horace file",File_name));
+    }
+    int isSQW = *((uint32_t*)(&data_buffer[0]));
+    if(!isSQW){
+        f_log.error()<<" Mantid currently does not support Horace DND files and the file "<<File_name<<" is identified as DND file\n";
+        throw(Exception::FileError("File has not been identified as Horace SQW file",File_name));
+    }
+
+    this->nDims = *((uint32_t*)(&data_buffer[4]));
+    if(nDims != 4){
+        f_log.error()<<"MD_FileHoraceReader:: does not support"<<nDims<<" Dimensions, should be 4\n";
+        throw(Kernel::Exception::FileError("Wrong data in the Horace file",File_name));
+    }
+
+    parse_sqw_main_header();
+
+    // go through all component headers and read them (or calculate their length)
+    std::streamoff next_position = positions.component_headers_starts[0];
+    unsigned int nFiles        = positions.component_headers_starts.size();
+    for(unsigned int i=0;i<nFiles;i++){
+        positions.component_headers_starts[i] = next_position;
+        next_position = parse_component_header(next_position);
+    }
+    positions.detectors_start = next_position;
+    // get detectors
+    positions.data_start      = parse_sqw_detpar(positions.detectors_start);
+    // calculate all other data fields locations;
+    parse_data_locations(positions.data_start);
+}
+
+
+//
+void 
+MD_FileHoraceReader::read_basis(Mantid::Geometry::MDGeometryBasis &basisGeometry)
+{
+   using namespace Mantid::Geometry;
+    std::set<Geometry::MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qx", true, 0));
+    basisDimensions.insert(MDBasisDimension("qy", true, 1));
+    basisDimensions.insert(MDBasisDimension("qz", true, 2));
+    basisDimensions.insert(MDBasisDimension("en", false,3));
+
+    UnitCell cell;
+    basisGeometry.init(basisDimensions,cell);
+    // get_sqw_header should go here and define cell
+}
+//
+void 
+MD_FileHoraceReader::read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &dscrptn)
+{
+    DimensionDescription *pDimDescr;
+    // the description has to already have proper shape of dimensions
+    if(dscrptn.getNumDims()!=this->nDims||dscrptn.getNumRecDims()!=3){
+        f_log.error()<<"read geometry description should receive correct inital object with proper number of orthogonal and reciprocal dimensions\n";
+        f_log.error()<<"expeted to obtain"<<this->nDims<<" total and 3 reciprocal dimensions\n";
+        f_log.error()<<"obtained:        "<<dscrptn.getNumDims()<<" total and "<<dscrptn.getNumRecDims()<<" reciprocal dimensions\n";
+        throw(std::invalid_argument("read_MDGeomDescription for Horace data: input/output object has not been shaped properly"));
+    }
+
+    std::vector<char> buf(4*(3+3+4+16+4+2));
+    unsigned int i,j,ic,i0;
+    // horace tags come from basis, but as they have not been transferred between classes, 
+    // they should be written with image too. 
+    std::vector<std::string> Horace_tags(4);
+    Horace_tags[0]="qx";
+    Horace_tags[1]="qy";
+    Horace_tags[2]="qz";
+    Horace_tags[3]="en";
+
+    this->fileStreamHolder.seekg(this->positions.geom_start,std::ios::beg);
+
+/*
+[data.uoffset, count, ok, mess] = fread_catch(fid,[4,1],'float32'); if ~all(ok); return; end;
+[n, count, ok, mess] = fread_catch(fid,2,'int32'); if ~all(ok); return; end;
+*/
+    this->fileStreamHolder.read(&buf[0],buf.size());
+    // skip allat and adlngldef
+    i0 = 4*(3+3) ; 
+    for(i=0;i<this->nDims;i++){
+        double val = (double)*((float32*)(&buf[i0+i*4]));
+        dscrptn.pDimDescription(i)->data_shift = val;
+    }
+    //TODO: how to use it in our framework?
+    std::vector<double> u_to_Rlu(this->nDims*this->nDims);
+    i0 += this->nDims*4;
+// [data.u_to_rlu, count, ok, mess] = fread_catch(fid,[4,4],'float32'); if ~all(ok); return; end;
+    ic = 0;
+    for(i=0;i<this->nDims;i++){
+        for(j=0;j<this->nDims;j++){
+            u_to_Rlu[ic]=(double)*((float32*)(&buf[i0+4*(i*4+j)]));
+            ic++;
+        }
+    }
+    i0 += ic*4;
+// [data.ulen, count, ok, mess] = fread_catch(fid,[1,4],'float32'); if ~all(ok); return; end;
+//  Length of projection axes vectors in Ang^-1 or meV [row vector]
+    for(i=0;i<this->nDims;i++){
+        dscrptn.pDimDescription(i)->data_scale= *((float32*)(&buf[i0+i*4]));
+    }
+
+    // axis labels size 
+    i0 += nDims*4;
+    unsigned int nRows = *((uint32_t*)(&buf[i0]));
+    unsigned int nCols = *((uint32_t*)(&buf[i0+4]));
+
+
+    // read axis labelsg
+    buf.resize(nRows*nCols);
+   // [ulabel, count, ok, mess] = fread_catch(fid,[n(1),n(2)],'*char'); if ~all(ok); return; end;
+
+    this->fileStreamHolder.read(&buf[0],buf.size());
+
+    //data.ulabel=cellstr(ulabel)';
+    std::string name;
+    char symb;
+    name.resize(nCols);
+    for(i=0;i<nRows;i++){
+        for(j=0;j<nCols;j++){
+            symb   =buf[i+j*nRows]; 
+            name[j] =symb;  // should be trim here;
+        }
+        dscrptn.pDimDescription(i)->AxisName = name;
+        // hardcoded here as we read the dimensions ID (tags and Horace does not do it)
+        dscrptn.pDimDescription(i)->Tag    = Horace_tags[i];
+    }
+
+// pax dax fax...
+    // the order of the id-s in this array has to correspond to the numbers of axis, specified in Horace
+    std::vector<std::string> dimID = dscrptn.getDimensionsTags();
+
+    // resize for iax and npax;
+    buf.resize(4*4*3);
+    this->fileStreamHolder.read(&buf[0],4);
+
+    unsigned int npax =  *((uint32_t*)(&buf[0]));
+    unsigned int niax = 4-npax;
+
+    if(niax>0){
+   //    [data.iax, count, ok, mess] = fread_catch(fid,[1,niax],'int32'); if ~all(ok); return; end;
+   //   [data.iint, count, ok, mess] = fread_catch(fid,[2,niax],'float32'); if ~all(ok); return; end;
+        DimensionDescription *pDimDescr;
+
+        this->fileStreamHolder.read(&buf[0],buf.size());
+        int i_axis_index;
+        for(i=0;i<niax;i++){
+            i_axis_index = *((uint32_t*)(&buf[i*4]));
+            pDimDescr  = dscrptn.pDimDescription(dimID[i_axis_index]);
+
+            pDimDescr->nBins = 1; // this sets this axis integrated
+            pDimDescr->cut_min = *((float32*)(&buf[4*(niax+i*2)])); // min integration value
+            pDimDescr->cut_max = *((float32*)(&buf[4*(niax+i*2+1)])); // max integration value
+        }
+
+    }
+    // processing projection axis;
+    if(npax>0){
+      //[data.pax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
+        this->fileStreamHolder.read(&buf[0],4*npax);
+        //[np,count,ok,mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+        //[data.p{i},count,ok,mess] = fread_catch(fid,np,'float32'); if ~all(ok); return; end;
+
+        for(i=0;i<npax;i++){
+            // matlab indexes started with 1;
+            std::string current_tag = dimID[*((uint32_t*)(&buf[i*4]))-1];
+
+            std::vector<char> axis_buffer(51*4);
+            this->fileStreamHolder.read(&axis_buffer[0],4);
+            unsigned int  nAxisPoints = *((uint32_t*)(&axis_buffer[0]));
+            if(axis_buffer.size()<nAxisPoints*4)axis_buffer.resize(nAxisPoints*4);
+            this->fileStreamHolder.read(&axis_buffer[0],4*nAxisPoints);
+
+            pDimDescr = dscrptn.pDimDescription(current_tag);
+            // this do not describes axis on an irregular grid. 
+            //TODO: implement irregular axis and put check if the grid is regular or not. 
+            pDimDescr->nBins   = nAxisPoints-1; // this sets num-bins
+            pDimDescr->cut_min = *((float32*)(&axis_buffer[4*(0)])); // min axis value
+            pDimDescr->cut_max = *((float32*)(&axis_buffer[4*(nAxisPoints-1)])); // max axis value
+
+
+        }
+    }
+    //display axis are not supported, as data in Horace IMG are not arranged according to display axis. (or are they?);
+    //TODO: check this.
+  //[data.dax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
+
+
+}
+   // read DND object data;
+void 
+MD_FileHoraceReader::read_MDImg_data(MDImage & mdd)
+{
+    size_t i;
+    // get size and allocate read buffer;
+    size_t nCells = mdd.getGeometry()->getGeometryExtend();
+    std::vector<char> buff(nCells*8);
+
+    // get access to the MD image array;
+    MDDataObjects::MD_image_point *pImg_data =  mdd.get_pData();
+    if(!pImg_data){
+        f_log.error()<<"read_MDImg_data:: MD Image has not been initated properly\n";
+        throw(std::invalid_argument(" MD Image has not been initated properly"));
+    }
+    // read signal and error -> presumably errors follow the signal;
+    this->fileStreamHolder.seekg(this->positions.s_start,std::ios::beg);
+    this->fileStreamHolder.read(&buff[0],nCells*8);
+
+
+    for(i=0;i<nCells;i++){
+        pImg_data[i].s   = (double)*((float32*)(&buff[i*4]));
+        pImg_data[i].err = (double)*((float32*)(&buff[(i+nCells)*4]));
+
+    }
+    // read npixels
+    this->fileStreamHolder.seekg(this->positions.n_cell_pix_start,std::ios::beg);
+    this->fileStreamHolder.read(&buff[0],buff.size());
+
+    hor_points_locations.resize(nCells);
+    pImg_data[0].npix = (size_t)*((uint64_t*)(&buff[0*8]));
+    hor_points_locations[0] = 0;
+    for(i=1;i<nCells;i++){
+        pImg_data[i].npix       = (size_t)*((uint64_t*)(&buff[i*8]));
+        hor_points_locations[i] = hor_points_locations[i-1]+pImg_data[i-1].npix;
+    }
+	//
+	mdd.setNpix(hor_points_locations[nCells-1]+pImg_data[nCells-1].npix);
+
+
+}
+   
+MDPointDescription 
+MD_FileHoraceReader::read_pointDescriptions(void)const
+{
+    const char *HoraceDataTags[]={"qx","qy","qz","en","S","err","iRunID","iDetID","iEn"};
+    MDPointStructure  aPointDescr;
+    std::vector<std::string> dataID(HoraceDataTags,HoraceDataTags+9);
+    MDPointDescription defaultDescr(aPointDescr,dataID);
+    return defaultDescr;
+}
+ //read whole pixels information in memory; usually impossible, then returns false;
+//bool 
+//MD_FileHoraceReader::read_pix(MDDataPoints & sqw)
+//{
+//	return false;
+//}
+//
+size_t 
+MD_FileHoraceReader::read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
+{
+    size_t i,buffer_availible,cell_index;
+    size_t iCellRead(starting_cell);
+	size_t max_npix_inCell(0);
+	max_npix_inCell=~max_npix_inCell;
+	uint64_t nPix;
+    // timing
+    time_t start,end;
+    time(&start);  //***********************************************>>>
+
+    const MD_image_point *pImgData = dnd.get_const_pData();
+    // buffer size provided;
+    buffer_availible = pix_buf.size()/(hbs);
+
+    // identify data extent fitting the buffer;
+    n_pix_in_buffer = 0;
+    for(i=starting_cell;i<selected_cells.size();i++){
+
+        cell_index      = selected_cells[i];
+		nPix            =pImgData[cell_index].npix;
+		if(nPix>max_npix_inCell){
+			 f_log.error()<<"The reader can not read this dataset as number of pixels contributed into cell"<<i<<" larger then current architecture allows\n";
+			 throw(std::invalid_argument("Data size exceed the possibilities of this computer"));
+		}
+        n_pix_in_buffer+=(size_t)nPix;
+
+        // end the loop earlier
+        if(n_pix_in_buffer>buffer_availible){ 
+            if(i==starting_cell){
+                pix_buf.resize(n_pix_in_buffer*hbs);
+                iCellRead=i;
+            }else{
+                iCellRead=i-1;
+                n_pix_in_buffer-=(size_t)pImgData[cell_index].npix;
+            }
+            break;
+        }
+        iCellRead=i;
+    }
+    time(&end);     //***********************************************<<<<
+    f_log.debug()<<" cells preselected in: "<<difftime (end,start)<<" sec\n";;
+
+    // read data cell after cells indexes as provided;
+    
+    std::streamoff pixels_start;
+    size_t         block_size(0);
+    size_t         block_start(0);
+    size_t         data_buffer_size(0);
+//	
+    size_t ic      = starting_cell;
+    size_t ic_next = ic+1;
+    if(ic_next>iCellRead)ic_next = iCellRead;
+	uint64_t nBytes;
+    time(&start);  //***********************************************>>>
+
+
+	// read untill data buffer is full
+    while(true){
+
+        cell_index      = selected_cells[ic];
+        pixels_start  =   this->positions.pix_start+hbs*hor_points_locations[cell_index];
+
+         // optimisaion possible when cells are adjacent
+        nBytes    = hbs*pImgData[cell_index].npix;
+		if(nBytes> max_npix_inCell){
+			 f_log.error()<<"The reader can not read this dataset as number of pixels contributed into cell"<<cell_index<<" larger then current architecture allows\n";
+			 throw(std::invalid_argument("Data size exceed the possibilities of this computer"));
+		}else{
+			block_size = (size_t)nBytes;
+		}
+
+        // if the next cell follows the current on HDD, we should read them together aggregating adjacent cells;
+        uint64_t next_block = hor_points_locations[cell_index]+pImgData[cell_index].npix;
+        size_t next_index = selected_cells[ic_next];
+        while(hor_points_locations[next_index]==next_block){
+            // block size grows and all other is auxiliary
+			    nBytes = hbs*pImgData[next_index].npix;
+				if(nBytes> max_npix_inCell){
+					 f_log.error()<<"The reader can not read this dataset as number of pixels contributed into cell"<<next_index<<" larger then current architecture allows\n";
+					throw(std::invalid_argument("Data size exceed the possibilities of this computer"));
+				}
+
+            // block size grows and all other is auxiliary
+                block_size    += (size_t)nBytes;
+                ic = ic_next;
+                ic_next++;
+                if(ic_next > iCellRead)break;
+
+                cell_index = selected_cells[ic];
+                next_block = hor_points_locations[cell_index]+pImgData[cell_index].npix;
+                next_index = selected_cells[ic_next];
+            
+        }
+
+       
+        this->fileStreamHolder.seekg(pixels_start,std::ios::beg);
+        this->fileStreamHolder.read(&pix_buf[block_start],block_size);
+        block_start+=block_size;
+
+        // for single cell it is important to add but not to assign the next value, for more then one -- no difference
+        ic++;
+        ic_next++;
+        if(ic>iCellRead)break;
+        if(ic_next>iCellRead)ic_next=iCellRead;
+    }
+    time(&end);     //***********************************************<<<<
+    f_log.debug()<<" cells read in: "<<difftime (end,start)<<" sec\n";;
+    //
+    time(&start);  //*******
+	data_buffer_size = block_start; // latest block size has been already added
+	compact_hor_data(&pix_buf[0],data_buffer_size);  
+    time(&end);   
+    f_log.debug()<<" cells transformed in: "<<difftime (end,start)<<" sec\n";;
+    // returns next cell to read if any or size of the selection
+    return ic;
+}
+void 
+MD_FileHoraceReader::compact_hor_data(char *buffer,size_t &buf_size)
+{
+ 
+
+    size_t i;
+    // data size should be in blocks of 9*4
+    size_t data_size = buf_size/(hbs);
+    if(data_size*hbs!= buf_size){
+        f_log.error()<<" Block of Horace data does not arrived for compression in block of 9*4\n";
+        throw(std::invalid_argument(" Block of Horace data does not arrived for compression in block of 9*4"));
+    }
+
+    float      Dim_sig[6];
+    uint32_t   index[3];
+	MDPointDescription pixInfo;
+	pixInfo.PixInfo().DimIDlength =4;
+	pixInfo.PixInfo().SignalLength=4;
+
+ 	MDDataPointEqual<float,uint32_t,float> defPoint(buffer,pixInfo);
+    // output buffer size now decreases;
+    buf_size = data_size*defPoint.sizeofMDDataPoint();
+    for(i=0;i<data_size;i++){
+        Dim_sig[0] =(float)*((float *)(buffer+i*hbs));
+        Dim_sig[1] =(float)*((float *)(buffer+i*hbs+4));
+        Dim_sig[2] =(float)*((float *)(buffer+i*hbs+8));
+        Dim_sig[3] =(float)*((float *)(buffer+i*hbs+12));
+
+        index[0]  =(uint32_t)*((uint32_t *)(buffer+i*hbs+16)); 
+        index[1]  =(uint32_t)*((uint32_t *)(buffer+i*hbs+20)); 
+        index[2]  =(uint32_t)*((uint32_t *)(buffer+i*hbs+24)); 
+
+        Dim_sig[4] =(float)*((float*)(buffer+i*hbs+28));
+        Dim_sig[5] =(float)*((float*)(buffer+i*hbs+32));
+        if(Dim_sig[4] == -1e+30){
+            Dim_sig[4] = std::numeric_limits<float>::quiet_NaN();
+            Dim_sig[5] = Dim_sig[4];
+        }
+
+
+        defPoint.setData(i,Dim_sig,index);
+    }
+
+}
+
+ /// get number of data pixels(points) contributing into the dataset;
+uint64_t
+MD_FileHoraceReader::getNPix(void)
+{
+    return this->nDataPoints;
+}
+
+// auxiliary functions
+void
+MD_FileHoraceReader::parse_sqw_main_header()
+{ // we do not need this header  at the moment -> just need to calculated its length;
+
+    std::vector<char> data_buffer(4 * 3);
+  this->fileStreamHolder.read(&data_buffer[0], 4);
+  validateFileStreamHolder(fileStreamHolder);
+
+  unsigned int file_name_length = *((uint32_t*) (&data_buffer[0]));
+  //skip main header file name
+  fileStreamHolder.seekg(file_name_length, std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+
+  this->fileStreamHolder.read(&data_buffer[0], 4);
+  unsigned int file_path_length = *((uint32_t*) (&data_buffer[0]));
+  validateFileStreamHolder(fileStreamHolder);
+
+  //skip main header file path
+  fileStreamHolder.seekg(file_path_length, std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+
+  this->fileStreamHolder.read(&data_buffer[0], 4);
+  unsigned int file_title = *((uint32_t*) (&data_buffer[0]));
+  validateFileStreamHolder(fileStreamHolder);
+
+  //skip main header file path
+  fileStreamHolder.seekg(file_title, std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+
+  // indentify number of file headers, contributed into the dataset
+  this->fileStreamHolder.read(&data_buffer[0], 4);
+  unsigned int nFiles = *((uint32_t*) (&data_buffer[0]));
+  validateFileStreamHolder(fileStreamHolder);
+
+  /// allocate space for the component headers positions;
+  positions.component_headers_starts.assign(nFiles, 0);
+
+  std::streamoff last_location = fileStreamHolder.tellg();
+  if (nFiles > 0)
+  {
+    positions.component_headers_starts[0] = last_location;
+  }
+  //return last_location;
+  return;
+
+}
+
+// 
+std::streamoff 
+MD_FileHoraceReader::parse_component_header(std::streamoff start_location)
+{ // we do not need this header  at the moment -> just calculating its length; or may be we do soon?
+    std::vector<char> data_buffer(8);
+/*
+[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+[data.filename, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+
+[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+[data.filepath, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+
+[data.efix,   count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
+[data.emode,  count, ok, mess] = fread_catch(fid,1,    'int32');   if ~all(ok); return; end;
+[data.alatt,  count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
+[data.angdeg, count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
+[data.cu,     count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
+[data.cv,     count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
+[data.psi,    count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
+[data.omega,  count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
+[data.dpsi,   count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
+[data.gl,     count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
+[data.gs,     count, ok, mess] = fread_catch(fid,1,    'float32'); if ~all(ok); return; end;
+
+[ne, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+[data.en,count,ok,mess] = fread_catch(fid, [ne,1], 'float32'); if ~all(ok); return; end;
+
+[data.uoffset, count, ok, mess] = fread_catch(fid,[4,1],'float32'); if ~all(ok); return; end;
+[data.u_to_rlu,count, ok, mess] = fread_catch(fid,[4,4],'float32'); if ~all(ok); return; end;
+[data.ulen,    count, ok, mess] = fread_catch(fid,[1,4],'float32'); if ~all(ok); return; end;
+
+[n, count, ok, mess] = fread_catch(fid,2,'int32'); if ~all(ok); return; end;
+[ulabel, count, ok, mess] = fread_catch(fid,[n(1),n(2)],'*char'); if ~all(ok); return; end;
+data.ulabel=cellstr(ulabel)';
+*/
+
+    std::streamoff end_location = start_location;
+    std::streamoff shift = start_location-this->fileStreamHolder.tellg();
+    // move to spefied location, which should be usually 0;
+    fileStreamHolder.seekg(shift,std::ios_base::cur);
+
+
+
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    validateFileStreamHolder(fileStreamHolder);
+
+    unsigned int file_name_length= *((uint32_t*)(&data_buffer[0]));
+    //skip component header file name
+    fileStreamHolder.seekg(file_name_length,std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    unsigned int file_path_length= *((uint32_t*)(&data_buffer[0]));
+    validateFileStreamHolder(fileStreamHolder);
+
+    //skip component header file path
+    fileStreamHolder.seekg(file_path_length,std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+
+    // move to by specifified nuber of bytes, see Matlab header above;
+    fileStreamHolder.seekg(4*(7+3*4),std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+
+    // read number of energy bins;
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    unsigned int nEn_bins = *((uint32_t*)(&data_buffer[0]));
+    // skip energy values;
+    fileStreamHolder.seekg(4*(nEn_bins),std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+    // skip offsets and conversions;
+    fileStreamHolder.seekg(4*(4+4*4+4),std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+
+    // get labels matix size;
+    this->fileStreamHolder.read(&data_buffer[0],8);
+    validateFileStreamHolder(fileStreamHolder);
+    unsigned int nRows = *((uint32_t*)(&data_buffer[0]));
+    unsigned int nCols = *((uint32_t*)(&data_buffer[4]));
+
+    // skip labels
+    fileStreamHolder.seekg(nRows*nCols,std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+
+    end_location = (unsigned int)fileStreamHolder.tellg();
+    return end_location;
+
+
+}
+//
+std::streamoff
+MD_FileHoraceReader::parse_sqw_detpar(std::streamoff start_location)
+{ //
+        std::vector<char> data_buffer(8);
+/*
+[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+[det.filename, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+
+[n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+[det.filepath, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+
+[ndet, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+[det.group, count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
+[det.x2,    count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
+[det.phi,   count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
+[det.azim,  count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
+[det.width, count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
+[det.height,count,ok,mess] = fread_catch(fid, [1,ndet], 'float32'); if ~all(ok); return; end;
+*/
+
+    std::streamoff end_location = start_location;
+    std::streamoff shift = start_location-this->fileStreamHolder.tellg();
+    // move to specified location, which should be usually 0;
+    fileStreamHolder.seekg(shift,std::ios_base::cur);              validateFileStreamHolder(fileStreamHolder);
+
+
+    this->fileStreamHolder.read(&data_buffer[0],4);                 validateFileStreamHolder(fileStreamHolder);
+
+    unsigned int file_name_length= *((uint32_t*)(&data_buffer[0]));
+    //skip component header file name
+    fileStreamHolder.seekg(file_name_length,std::ios_base::cur);     validateFileStreamHolder(fileStreamHolder);
+
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    unsigned int file_path_length= *((uint32_t*)(&data_buffer[0]));  validateFileStreamHolder(fileStreamHolder);
+    //skip component header file path
+    fileStreamHolder.seekg(file_path_length,std::ios_base::cur);     validateFileStreamHolder(fileStreamHolder);
+
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    unsigned int num_detectors = *((uint32_t*)(&data_buffer[0]));
+//skip detector information
+    fileStreamHolder.seekg(num_detectors*6*4,std::ios_base::cur);  validateFileStreamHolder(fileStreamHolder);
+
+    end_location = fileStreamHolder.tellg();
+    return end_location;
+
+
+}
+void
+MD_FileHoraceReader::parse_data_locations(std::streamoff data_start)
+{
+    std::vector<char> data_buffer(12);
+    unsigned int i;
+
+    std::streamoff end_location = data_start;
+    std::streamoff shift = data_start-this->fileStreamHolder.tellg();
+    // move to specified location, which should be usually 0;
+    fileStreamHolder.seekg(shift,std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+/*   
+    [n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+    [dummy_filename, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+
+    [n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+    [dummy_filepath, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+
+    [n, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+    [data.title, count, ok, mess] = fread_catch(fid,[1,n],'*char'); if ~all(ok); return; end;
+*/
+    this->fileStreamHolder.read(&data_buffer[0],4);
+  validateFileStreamHolder(fileStreamHolder);
+
+    unsigned int file_name_length= *((uint32_t*)(&data_buffer[0]));
+    //skip dummy file name
+    fileStreamHolder.seekg(file_name_length,std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    unsigned int file_path_length= *((uint32_t*)(&data_buffer[0]));
+  validateFileStreamHolder(fileStreamHolder);
+    //skip dummy file path
+    fileStreamHolder.seekg(file_path_length,std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+
+    this->fileStreamHolder.read(&data_buffer[0],4);
+    unsigned int data_title_length = *((uint32_t*)(&data_buffer[0]));
+  validateFileStreamHolder(fileStreamHolder);
+    //skip data title
+    fileStreamHolder.seekg(data_title_length,std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+
+    this->positions.geom_start = fileStreamHolder.tellg();
+    // skip geometry information
+/*
+    [data.alatt, count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
+    [data.angdeg, count, ok, mess] = fread_catch(fid,[1,3],'float32'); if ~all(ok); return; end;
+
+    [data.uoffset, count, ok, mess] = fread_catch(fid,[4,1],'float32'); if ~all(ok); return; end;
+    [data.u_to_rlu, count, ok, mess] = fread_catch(fid,[4,4],'float32'); if ~all(ok); return; end;
+    [data.ulen, count, ok, mess] = fread_catch(fid,[1,4],'float32'); if ~all(ok); return; end;
+*/
+    fileStreamHolder.seekg(4*(3+3+4+16+4),std::ios_base::cur);
+/*
+    [n, count, ok, mess] = fread_catch(fid,2,'int32'); if ~all(ok); return; end;
+    [ulabel, count, ok, mess] = fread_catch(fid,[n(1),n(2)],'*char'); if ~all(ok); return; end;
+    data.ulabel=cellstr(ulabel)';
+*/
+    // get label information and skip labels;
+    this->fileStreamHolder.read(&data_buffer[0],8);
+  validateFileStreamHolder(fileStreamHolder);
+    unsigned int n_labels      = *((uint32_t*)(&data_buffer[0])); 
+    unsigned int labels_length = *((uint32_t*)(&data_buffer[4])); 
+    fileStreamHolder.seekg(n_labels*labels_length,std::ios_base::cur);
+
+    this->positions.npax_start = fileStreamHolder.tellg();
+/*
+    [npax, count, ok, mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+    niax=4-npax;
+    if niax~=0
+        [data.iax, count, ok, mess] = fread_catch(fid,[1,niax],'int32'); if ~all(ok); return; end;
+        [data.iint, count, ok, mess] = fread_catch(fid,[2,niax],'float32'); if ~all(ok); return; end;
+    else
+        data.iax=zeros(1,0);    % create empty index of integration array in standard form
+        data.iint=zeros(2,0);
+    end
+*/
+    this->fileStreamHolder.read(&data_buffer[0],4);
+  validateFileStreamHolder(fileStreamHolder);;
+    unsigned int npax = *((uint32_t*)(&data_buffer[0])); 
+    unsigned int niax = npax-4;
+    if(niax!=0){
+        fileStreamHolder.seekg(3*niax*4,std::ios_base::cur);
+      validateFileStreamHolder(fileStreamHolder);
+    }
+    if(npax!=0){
+        this->nBins.resize(npax);
+        /*
+        [data.pax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
+        psize=zeros(1,npax);    % will contain number of bins along each dimension of plot axes
+        for i=1:npax
+            [np,count,ok,mess] = fread_catch(fid,1,'int32'); if ~all(ok); return; end;
+            [data.p{i},count,ok,mess] = fread_catch(fid,np,'float32'); if ~all(ok); return; end;
+            psize(i)=np-1;
+        end
+        */
+        // skip projection axis
+        fileStreamHolder.seekg(npax*4,std::ios_base::cur);
+      validateFileStreamHolder(fileStreamHolder);
+        this->mdImageSize = 1;
+        unsigned int nAxisPoints;
+        for(i=0;i<npax;i++){
+            this->fileStreamHolder.read(&data_buffer[0],4);
+          validateFileStreamHolder(fileStreamHolder);
+            nAxisPoints = *((uint32_t*)(&data_buffer[0])); 
+            nBins[i] = nAxisPoints-1;
+            this->mdImageSize *= nBins[i] ;
+            fileStreamHolder.seekg(nAxisPoints*4,std::ios_base::cur);
+            validateFileStreamHolder(fileStreamHolder);
+        }
+        /*
+        [data.dax, count, ok, mess] = fread_catch(fid,[1,npax],'int32'); if ~all(ok); return; end;
+        if length(psize)==1
+            psize=[psize,1];    % make size of a column vector
+        end
+        */
+        // skip display indexes;
+        fileStreamHolder.seekg(npax*4,std::ios_base::cur);
+      validateFileStreamHolder(fileStreamHolder);
+    }
+    // signal start:
+    this->positions.s_start = fileStreamHolder.tellg();
+    // and skip to errors
+    fileStreamHolder.seekg(this->mdImageSize*4,std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+    // error start:
+    this->positions.err_start= fileStreamHolder.tellg();
+    fileStreamHolder.seekg(this->mdImageSize*4,std::ios_base::cur);
+    validateFileStreamHolder(fileStreamHolder);
+    // dnd data file.  we do not suppor this?
+    if(fileStreamHolder.eof()){
+        f_log.error()<<" DND horace data file supplied. This file reader needs SQW Horace type data file\n";
+        throw(std::invalid_argument("DND Horace datasets are not supported by Mantid"));
+    }
+/*
+    % All of the above fields will be present in a valid sqw file. The following need not exist, but to be a valid sqw file,
+    % for any one field to be present all earlier fields must have been written. 
+    position.npix=[];
+    position.pix=[];
+    npixtot=[];
+*/
+
+    this->positions.n_cell_pix_start=fileStreamHolder.tellg();
+    // skip to the end of pixels;
+    fileStreamHolder.seekg(this->mdImageSize*8,std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+    if(fileStreamHolder.eof()){
+        f_log.error()<<" DND b+ horace data file supplied. This file reader needs full SQW Horace type data file\n";
+        throw(std::invalid_argument("DND b+ Horace datasets are not supported by Mantid"));
+    }
+    this->positions.min_max_start = fileStreamHolder.tellg();
+    // skip min-max start
+    //[data.urange,count,ok,mess] = fread_catch(fid,[2,4],'float32'); if ~all(ok); return; end;
+    fileStreamHolder.seekg(8*4,std::ios_base::cur);
+  validateFileStreamHolder(fileStreamHolder);
+    if(fileStreamHolder.eof()){
+        f_log.error()<<" SQW a- horace data file supplied. This file reader needs full SQW Horace type data file\n";
+        throw(std::invalid_argument("SQW a- Horace datasets are not supported by Mantid"));
+    }
+    // skip redundant field and read nPix (number of data points)
+    this->fileStreamHolder.read(&data_buffer[0],12);
+  validateFileStreamHolder(fileStreamHolder);
+    this->nDataPoints =(size_t)( *((uint64_t*)(&data_buffer[4])));
+    this->positions.pix_start = this->fileStreamHolder.tellg();
+}
+
+MD_FileHoraceReader::~MD_FileHoraceReader(void)
+{
+    fileStreamHolder.close();
+}
+    // Function performing work previously in GOTO statement.
+void inline 
+MD_FileHoraceReader::validateFileStreamHolder(std::ifstream& fileStreamHolder)
+{
+    if (fileStreamHolder.bad()){
+        f_log.error() << " Error reading main sqw file header for file " << this->File_name << "\n";
+        throw(Kernel::Exception::FileError("Error reading main sqw file header ", this->File_name));
+    }
+}
+} // end namespaces
+}
+}
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MD_FileTestDataGenerator.cpp b/Code/Mantid/Framework/MDDataObjects/src/MD_FileTestDataGenerator.cpp
index 9fa0152a37bc2836a7252510d04f37422cf7d633..e0a161020a032a40d204d829191fb91fc69095e4 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MD_FileTestDataGenerator.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MD_FileTestDataGenerator.cpp
@@ -1,259 +1,259 @@
-#include "MDDataObjects/MD_FileTestDataGenerator.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-
-
-namespace Mantid{
-namespace MDDataObjects{
-//
-MD_FileTestDataGenerator::MD_FileTestDataGenerator(const char *file_name):
-IMD_FileFormat(file_name),
-mdImageSize(0),
-nDataPoints(0),
-pPointDescr(NULL)
-{
-    this->nDims = 4;
-    this->sizeof_pixel=4*(nDims+2+nDims);
-
-    this->dat_sig_fields= new float[nDims+2];
-    this->ind_fields    = new uint32_t[nDims];
-    this->nBins.resize(nDims,50);
-    this->nCells = 1;
-    for(size_t i=0;i<nBins.size();i++){
-        nCells *=nBins[i];
-    }
-}
-//
-void 
-MD_FileTestDataGenerator::read_basis(Mantid::Geometry::MDGeometryBasis &basisGeometry)
-{
-   using namespace Mantid::Geometry;
-    std::set<Geometry::MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qxt", true, 0));
-    basisDimensions.insert(MDBasisDimension("qyt", true, 1));
-    basisDimensions.insert(MDBasisDimension("qzt", true, 2));
-    basisDimensions.insert(MDBasisDimension("ent", false,3));
-
-    UnitCell cell;
-    basisGeometry.init(basisDimensions,cell);
-    // get_sqw_header should go here and define cell
-
-  
-}
-//
-void 
-MD_FileTestDataGenerator::read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &dscrptn)
-{
-  
-    unsigned int i;
-    // horace tags come from basis, but as they have not been transferred between classes, 
-    // they should be written with image too. 
-    std::vector<std::string> Horace_tags(4);
-    Horace_tags[0]="qxt";
-    Horace_tags[1]="qyt";
-    Horace_tags[2]="qzt";
-    Horace_tags[3]="ent";
-
-    for(i=0;i<this->nDims;i++){
-        dscrptn.pDimDescription(i)->data_shift = 0;
-        dscrptn.pDimDescription(i)->data_scale= 1; //  Length of projection axes vectors in Ang^-1 or meV [row vector]
-        dscrptn.pDimDescription(i)->AxisName = "Axis_"+Horace_tags[i];
-        // hardcoded here as we read the dimensions ID (tags and Horace does not do it)
-        dscrptn.pDimDescription(i)->Tag    = Horace_tags[i];
-
-        dscrptn.pDimDescription(i)->nBins = this->nBins[i]; // one sets this axis integrated
-        dscrptn.pDimDescription(i)->cut_min = -1;
-        dscrptn.pDimDescription(i)->cut_max = this->nBins[i]-1;
-
-    }
-
-
-}
-   // read DND object data;
-void 
-MD_FileTestDataGenerator::read_MDImg_data(MDImage & mdd)
-{
-    size_t i;
-    // get size and allocate read buffer;
-    size_t nCells = mdd.getGeometry()->getGeometryExtend();
-   
-
-    // get access to the MD image array;
-    MDDataObjects::MD_image_point *pImg_data =  mdd.get_pData();
-    double step = double(this->nDims)/nCells;
-    uint64_t  sanity_check(0);
-    for(i=0;i<nCells;i++){
-        pImg_data[i].s   = i;
-        pImg_data[i].err = 2/double(i+1);
-        pImg_data[i].npix= i+1;
-        sanity_check+=i+1;
-    }
-    this->nDataPoints = ((uint64_t)(nCells))*(nCells+1)/2;
-	mdd.setNpix(this->nDataPoints);
-
-}
-   
-MDPointDescription 
-MD_FileTestDataGenerator::read_pointDescriptions(void)const
-{
-    const char *HoraceDataTags[]={"qxt","qyt","qzt","ent","St","errt","iRunIDt","iDetIDt","iEnt"};
-    MDPointStructure  aPointDescr;
-
-    //TODO: This information has to correlate with what rebinning expects. Decorrelate!!!
-    // let's make signals and errors float;
-    aPointDescr.SignalLength = 4;
-    // and indexes incompressed;
-    aPointDescr.NumPixCompressionBits=0;
-    // and indexes int32
-    aPointDescr.DimIDlength  = 4;
-
-    std::vector<std::string> dataID(HoraceDataTags,HoraceDataTags+9);
-
-    this->pPointDescr  = new MDPointDescription(aPointDescr,dataID);
-    this->sizeof_pixel = this->pPointDescr->sizeofMDDPoint();
-
-    return *pPointDescr;
-}
- //read whole pixels information in memory; usually impossible, then returns false;
-bool 
-MD_FileTestDataGenerator::read_pix(MDDataPoints & sqw)
-{
-    sqw.set_file_based();
-	return false;
-}
-//
-size_t 
-MD_FileTestDataGenerator::read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
-{
-// pixels data generated assiuming 50^nDim lattice;
-    size_t ic(starting_cell),j;
-    unsigned int idim;
-    unsigned long max_data_size;
-    std::vector<size_t> dim_strides(this->nDims);
-   
-
-    const Geometry::MDGeometry *pCurrentGeom = dnd.getGeometry();
-    
-    // data points;
-    std::vector<std::vector<float> > dimPoints(this->nDims);
-    // get dimensions in the order they are defined in the grid
-    std::vector<boost::shared_ptr<Geometry::IMDDimension> > spDims = pCurrentGeom->getDimensions();
-  
-    // obtain dimensions and dimensions coordinates;
-    for(idim=0;idim<this->nDims;idim++){
-
-        const Geometry::IMDDimension *pDim = spDims[idim].get();
-        dimPoints[idim].resize(this->nBins[idim]);
-        double min  = pDim->getMinimum();
-        double step = (pDim->getMaximum()-min)/this->nBins[idim];
-        //min+=0.5*step;<- we will step through dimensions in a look well below this
-        dim_strides[idim] = pDim->getStride();
-        if(min!=0){
-            min *= (1+FLT_EPSILON*min/fabs(min));
-        }
-        for(j=0;j<nBins[idim];j++){
-            dimPoints[idim][j]=(float)(min+j*step);
-        }
-    }
- 
-    // if data buffer is unsufficient even for one block of pixels, increase it (very inefficient)
-    // number of pixels in test data cell equal the cell number (+1 ?) 
-    size_t n_pix_in_block = selected_cells[starting_cell]+1;
-    if(pix_buf.size()<sizeof_pixel*n_pix_in_block){
-        pix_buf.resize(sizeof_pixel*n_pix_in_block);
-        max_data_size = n_pix_in_block;
-    }else{
-        max_data_size = pix_buf.size()/sizeof_pixel;
-    }
-    n_pix_in_buffer=0;
-
-    // initate packer (should be more generic ways of doing this)
-    std::auto_ptr<MDDataPointEqual<float,uint32_t,float> > pPacker= std::auto_ptr<MDDataPointEqual<float,uint32_t,float> >
-        (new MDDataPointEqual<float,uint32_t,float>(&pix_buf[0],*pPointDescr));
-
-
-
-    // no need in this as will assume number of pixels equal to number of cells
-    //const MD_image_point *pData = dnd.get_const_pData();
-    size_t nCells = dnd.get_MDImgData().data_size;
-
-
-    std::vector<float> cell_step(this->nDims);
-    // fill pixels according to the algorithm when each cell has n-pixels in it equal to the number of cell+1
-    // pix coordinates 
-    size_t nSeelectedCells = selected_cells.size();
-    for(ic=starting_cell;ic<nSeelectedCells;ic++){
-        //size_t n_pix = pData[selected_cells[ic]].npix;
-        std::vector<size_t> cell_ind = this->cell_indexes(selected_cells[ic],dim_strides);
-        size_t n_pix  = selected_cells[ic]+1;
-  
-        for(idim=0;idim<this->nDims;idim++){
-            const Geometry::IMDDimension *pDim = spDims[idim].get();
-            double min  = pDim->getMinimum();
-            cell_step[idim] = (float)(pDim->getMaximum()-min)/this->nBins[idim]/n_pix;
-         }
-   
-
-        // not enough memory for next data chunk;
-        if(n_pix_in_buffer+n_pix>max_data_size)return ic;
-        // fill pixels placing points along the biggest diagonal of the multidimensional cell;
-        for(j=0;j<n_pix;j++){
-            for(idim=0;idim<this->nDims;idim++){
-                dat_sig_fields[idim] = (float)(dimPoints[idim])[cell_ind[idim]]+ cell_step[idim]*j;
-            }
-            // signal 
-            dat_sig_fields[nDims]  =(float)selected_cells[ic]+1;
-            // error
-            dat_sig_fields[nDims+1]=2;
-
-     
-            pPacker->setData(n_pix_in_buffer,dat_sig_fields,ind_fields);
-            n_pix_in_buffer++;
-        }
-    }
-    return nSeelectedCells;
-}
-
- /// get number of data pixels(points) contributing into the dataset;
-uint64_t 
-MD_FileTestDataGenerator::getNPix(void)
-{
-    if(this->nDataPoints == 0){
-        this->nDataPoints = nCells*(nCells+1)/2;
-    }
-    return this->nDataPoints;
-}
-
-std::vector<size_t> 
-MD_FileTestDataGenerator::cell_indexes(size_t cell_num,const std::vector<size_t> &dim_strides)
-{
-    size_t cur_index(cell_num);
-    size_t dim_index(0),i,ii;
-    size_t n_steps(dim_strides.size());
-    if(n_steps==0){
-        throw(std::invalid_argument("MD_FileTestDataGenerator::cell_indexes got zero size stride array"));
-    }
-
-    std::vector<size_t> rez(dim_strides.size(),0);
-    for(i=0;i<n_steps;i++){
-        ii = n_steps-1-i;
-        dim_index = cur_index/dim_strides[ii];
-        rez[ii] = dim_index;
-        cur_index -= dim_index*dim_strides[ii];
-    }
-    return rez;
-}
-//
-
-
-MD_FileTestDataGenerator::~MD_FileTestDataGenerator(void)
-{
-    if(pPointDescr)delete pPointDescr;
-    pPointDescr=NULL;
-    delete [] dat_sig_fields;
-    delete [] ind_fields;
-}
-    // Function performing work previously in GOTO statement.
-
-} // end namespaces
-}
+#include "MDDataObjects/MD_FileTestDataGenerator.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+
+
+namespace Mantid{
+namespace MDDataObjects{
+//
+MD_FileTestDataGenerator::MD_FileTestDataGenerator(const char *file_name):
+IMD_FileFormat(file_name),
+mdImageSize(0),
+nDataPoints(0),
+pPointDescr(NULL)
+{
+    this->nDims = 4;
+    this->sizeof_pixel=4*(nDims+2+nDims);
+
+    this->dat_sig_fields= new float[nDims+2];
+    this->ind_fields    = new uint32_t[nDims];
+    this->nBins.resize(nDims,50);
+    this->nCells = 1;
+    for(size_t i=0;i<nBins.size();i++){
+        nCells *=nBins[i];
+    }
+}
+//
+void 
+MD_FileTestDataGenerator::read_basis(Mantid::Geometry::MDGeometryBasis &basisGeometry)
+{
+   using namespace Mantid::Geometry;
+    std::set<Geometry::MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qxt", true, 0));
+    basisDimensions.insert(MDBasisDimension("qyt", true, 1));
+    basisDimensions.insert(MDBasisDimension("qzt", true, 2));
+    basisDimensions.insert(MDBasisDimension("ent", false,3));
+
+    UnitCell cell;
+    basisGeometry.init(basisDimensions,cell);
+    // get_sqw_header should go here and define cell
+
+  
+}
+//
+void 
+MD_FileTestDataGenerator::read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &dscrptn)
+{
+  
+    unsigned int i;
+    // horace tags come from basis, but as they have not been transferred between classes, 
+    // they should be written with image too. 
+    std::vector<std::string> Horace_tags(4);
+    Horace_tags[0]="qxt";
+    Horace_tags[1]="qyt";
+    Horace_tags[2]="qzt";
+    Horace_tags[3]="ent";
+
+    for(i=0;i<this->nDims;i++){
+        dscrptn.pDimDescription(i)->data_shift = 0;
+        dscrptn.pDimDescription(i)->data_scale= 1; //  Length of projection axes vectors in Ang^-1 or meV [row vector]
+        dscrptn.pDimDescription(i)->AxisName = "Axis_"+Horace_tags[i];
+        // hardcoded here as we read the dimensions ID (tags and Horace does not do it)
+        dscrptn.pDimDescription(i)->Tag    = Horace_tags[i];
+
+        dscrptn.pDimDescription(i)->nBins = this->nBins[i]; // one sets this axis integrated
+        dscrptn.pDimDescription(i)->cut_min = -1;
+        dscrptn.pDimDescription(i)->cut_max = this->nBins[i]-1;
+
+    }
+
+
+}
+   // read DND object data;
+void 
+MD_FileTestDataGenerator::read_MDImg_data(MDImage & mdd)
+{
+    size_t i;
+    // get size and allocate read buffer;
+    size_t nCells = mdd.getGeometry()->getGeometryExtend();
+   
+
+    // get access to the MD image array;
+    MDDataObjects::MD_image_point *pImg_data =  mdd.get_pData();
+    double step = double(this->nDims)/nCells;
+    uint64_t  sanity_check(0);
+    for(i=0;i<nCells;i++){
+        pImg_data[i].s   = i;
+        pImg_data[i].err = 2/double(i+1);
+        pImg_data[i].npix= i+1;
+        sanity_check+=i+1;
+    }
+    this->nDataPoints = ((uint64_t)(nCells))*(nCells+1)/2;
+	mdd.setNpix(this->nDataPoints);
+
+}
+   
+MDPointDescription 
+MD_FileTestDataGenerator::read_pointDescriptions(void)const
+{
+    const char *HoraceDataTags[]={"qxt","qyt","qzt","ent","St","errt","iRunIDt","iDetIDt","iEnt"};
+    MDPointStructure  aPointDescr;
+
+    //TODO: This information has to correlate with what rebinning expects. Decorrelate!!!
+    // let's make signals and errors float;
+    aPointDescr.SignalLength = 4;
+    // and indexes incompressed;
+    aPointDescr.NumPixCompressionBits=0;
+    // and indexes int32
+    aPointDescr.DimIDlength  = 4;
+
+    std::vector<std::string> dataID(HoraceDataTags,HoraceDataTags+9);
+
+    this->pPointDescr  = new MDPointDescription(aPointDescr,dataID);
+    this->sizeof_pixel = this->pPointDescr->sizeofMDDPoint();
+
+    return *pPointDescr;
+}
+ //read whole pixels information in memory; usually impossible, then returns false;
+bool 
+MD_FileTestDataGenerator::read_pix(MDDataPoints & sqw)
+{
+    sqw.set_file_based();
+	return false;
+}
+//
+size_t 
+MD_FileTestDataGenerator::read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
+{
+// pixels data generated assiuming 50^nDim lattice;
+    size_t ic(starting_cell),j;
+    unsigned int idim;
+    unsigned long max_data_size;
+    std::vector<size_t> dim_strides(this->nDims);
+   
+
+    const Geometry::MDGeometry *pCurrentGeom = dnd.getGeometry();
+    
+    // data points;
+    std::vector<std::vector<float> > dimPoints(this->nDims);
+    // get dimensions in the order they are defined in the grid
+    std::vector<boost::shared_ptr<Geometry::IMDDimension> > spDims = pCurrentGeom->getDimensions();
+  
+    // obtain dimensions and dimensions coordinates;
+    for(idim=0;idim<this->nDims;idim++){
+
+        const Geometry::IMDDimension *pDim = spDims[idim].get();
+        dimPoints[idim].resize(this->nBins[idim]);
+        double min  = pDim->getMinimum();
+        double step = (pDim->getMaximum()-min)/this->nBins[idim];
+        //min+=0.5*step;<- we will step through dimensions in a look well below this
+        dim_strides[idim] = pDim->getStride();
+        if(min!=0){
+            min *= (1+FLT_EPSILON*min/fabs(min));
+        }
+        for(j=0;j<nBins[idim];j++){
+            dimPoints[idim][j]=(float)(min+j*step);
+        }
+    }
+ 
+    // if data buffer is unsufficient even for one block of pixels, increase it (very inefficient)
+    // number of pixels in test data cell equal the cell number (+1 ?) 
+    size_t n_pix_in_block = selected_cells[starting_cell]+1;
+    if(pix_buf.size()<sizeof_pixel*n_pix_in_block){
+        pix_buf.resize(sizeof_pixel*n_pix_in_block);
+        max_data_size = n_pix_in_block;
+    }else{
+        max_data_size = pix_buf.size()/sizeof_pixel;
+    }
+    n_pix_in_buffer=0;
+
+    // initate packer (should be more generic ways of doing this)
+    std::auto_ptr<MDDataPointEqual<float,uint32_t,float> > pPacker= std::auto_ptr<MDDataPointEqual<float,uint32_t,float> >
+        (new MDDataPointEqual<float,uint32_t,float>(&pix_buf[0],*pPointDescr));
+
+
+
+    // no need in this as will assume number of pixels equal to number of cells
+    //const MD_image_point *pData = dnd.get_const_pData();
+    size_t nCells = dnd.get_MDImgData().data_size;
+
+
+    std::vector<float> cell_step(this->nDims);
+    // fill pixels according to the algorithm when each cell has n-pixels in it equal to the number of cell+1
+    // pix coordinates 
+    size_t nSeelectedCells = selected_cells.size();
+    for(ic=starting_cell;ic<nSeelectedCells;ic++){
+        //size_t n_pix = pData[selected_cells[ic]].npix;
+        std::vector<size_t> cell_ind = this->cell_indexes(selected_cells[ic],dim_strides);
+        size_t n_pix  = selected_cells[ic]+1;
+  
+        for(idim=0;idim<this->nDims;idim++){
+            const Geometry::IMDDimension *pDim = spDims[idim].get();
+            double min  = pDim->getMinimum();
+            cell_step[idim] = (float)(pDim->getMaximum()-min)/this->nBins[idim]/n_pix;
+         }
+   
+
+        // not enough memory for next data chunk;
+        if(n_pix_in_buffer+n_pix>max_data_size)return ic;
+        // fill pixels placing points along the biggest diagonal of the multidimensional cell;
+        for(j=0;j<n_pix;j++){
+            for(idim=0;idim<this->nDims;idim++){
+                dat_sig_fields[idim] = (float)(dimPoints[idim])[cell_ind[idim]]+ cell_step[idim]*j;
+            }
+            // signal 
+            dat_sig_fields[nDims]  =(float)selected_cells[ic]+1;
+            // error
+            dat_sig_fields[nDims+1]=2;
+
+     
+            pPacker->setData(n_pix_in_buffer,dat_sig_fields,ind_fields);
+            n_pix_in_buffer++;
+        }
+    }
+    return nSeelectedCells;
+}
+
+ /// get number of data pixels(points) contributing into the dataset;
+uint64_t 
+MD_FileTestDataGenerator::getNPix(void)
+{
+    if(this->nDataPoints == 0){
+        this->nDataPoints = nCells*(nCells+1)/2;
+    }
+    return this->nDataPoints;
+}
+
+std::vector<size_t> 
+MD_FileTestDataGenerator::cell_indexes(size_t cell_num,const std::vector<size_t> &dim_strides)
+{
+    size_t cur_index(cell_num);
+    size_t dim_index(0),i,ii;
+    size_t n_steps(dim_strides.size());
+    if(n_steps==0){
+        throw(std::invalid_argument("MD_FileTestDataGenerator::cell_indexes got zero size stride array"));
+    }
+
+    std::vector<size_t> rez(dim_strides.size(),0);
+    for(i=0;i<n_steps;i++){
+        ii = n_steps-1-i;
+        dim_index = cur_index/dim_strides[ii];
+        rez[ii] = dim_index;
+        cur_index -= dim_index*dim_strides[ii];
+    }
+    return rez;
+}
+//
+
+
+MD_FileTestDataGenerator::~MD_FileTestDataGenerator(void)
+{
+    if(pPointDescr)delete pPointDescr;
+    pPointDescr=NULL;
+    delete [] dat_sig_fields;
+    delete [] ind_fields;
+}
+    // Function performing work previously in GOTO statement.
+
+} // end namespaces
+}
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfMatlab.cpp b/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfMatlab.cpp
index daedbdd4602473a61cc738d107ef2931e58713d3..885d096033cd4f7e06a290bc958af7cc4e65e715 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfMatlab.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfMatlab.cpp
@@ -1,895 +1,895 @@
-#include "MDDataObjects/stdafx.h"
-#include "MDDataObjects/MD_File_hdfMatlab.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
-
-namespace Mantid{
-    namespace MDDataObjects{
-      using namespace Mantid::Kernel;
-	  using namespace Mantid::Geometry;
-
-
-/// enum to identify fields, used in MATALB Horace DND-hdf file
-enum matlab_mdd_fields_list{
-    DatasetName,
-    DataDescriptor,
-    Pixels,
-    N_DND_FIELDS
-};
-/// enum to identify attributes, used in MATLAB horace DND-hdf file;
-enum matlab_mdd_attributes_list{
-    nDND_dims,
-    range,
-    axis,
-    N_MATLAB_FIELD_ATTRIBUTES
-};
-
-//***************************************************************************************
-void
-MD_File_hdfMatlab::read_basis(Geometry::MDGeometryBasis &basisGeometry)
-{
-   using namespace Mantid::Geometry;
-    std::set<Geometry::MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("qx", true, 0));
-    basisDimensions.insert(MDBasisDimension("qy", true, 1));
-    basisDimensions.insert(MDBasisDimension("qz", true, 2));
-    basisDimensions.insert(MDBasisDimension("en", false,3));
-
-    UnitCell cell;
-	basisGeometry.init(basisDimensions,cell);
-}
-
-MD_File_hdfMatlab::MD_File_hdfMatlab(const char *file_name):
-IMD_FileFormat(file_name),
-file_access_mode(H5P_DEFAULT),
-pixel_dataset_h(-1),
-file_handler(-1),
-pixel_dataspace_h(-1),
-pReader(NULL)
-{/// check if the file exists and is an hdf5 file;
-    this->File_name.assign(file_name);
-
-
-    htri_t rez=H5Fis_hdf5(File_name.c_str());
-    if (rez<=0){
-        if (rez==0){
-            throw("the file is not an hdf5 file");
-        }else{
-            throw(" error processing existing hdf file");
-        }
-    }
-    if(!H5Zfilter_avail(H5Z_FILTER_DEFLATE)){
-        throw("can not obtain deflate filter to read MATLAB-hdf datatypes");
-    }
-/// actually opens the file
-    this->file_handler = H5Fopen(File_name.c_str(),H5F_ACC_RDONLY,file_access_mode);
-    if (file_handler<0){
-        throw(" error opening existing hdf5 file");
-    }
-/// mdd dataset names in MATLAB HDF file;
-    this->mdd_field_names.resize(N_DND_FIELDS);
-    this->mdd_field_names[DatasetName].assign("Signals");        // mdd dataset name;
-    this->mdd_field_names[DataDescriptor].assign("spe_header");  // dataset descriptors: contains information about various parts of the dataset
-    this->mdd_field_names[Pixels].assign("pix");                 // pixels dataset name
-
-/// mdd dataset arrtibutes in MATLAB HDF file  
-    this->mdd_attrib_names.resize(N_MATLAB_FIELD_ATTRIBUTES);
-    this->mdd_attrib_names[nDND_dims].assign("signal_dims");
-    this->mdd_attrib_names[range].assign("urange");
-    this->mdd_attrib_names[axis].assign("p");
- 
-}
-
-//***************************************************************************************
-bool 
-MD_File_hdfMatlab::check_or_open_pix_dataset(void)
-{
-    bool was_opened(false); 
-    if(this->pixel_dataset_h<0){
-#ifdef  HDF_1_6
-        this->pixel_dataset_h    = H5Dopen(this->file_handler,this->mdd_field_names[Pixels].c_str()); //,this->file_access_mode);
-#else
-        this->pixel_dataset_h    = H5Dopen(this->file_handler,this->mdd_field_names[Pixels].c_str(),this->file_access_mode);
-#endif
-        if(this->pixel_dataset_h<0){
-            throw(Exception::FileError("MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open pixels dataset",this->File_name));
-        }
-    }else{
-        was_opened        = true;
-    }
-
-    return was_opened;
-}
-//
-void
-MD_File_hdfMatlab::read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription & DND_shape)
-{
-  	// The function accepts full 4D dataset only!!!
-#ifdef HDF_1_6
-      hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str());// ,H5P_DEFAULT);
-#else
-	  hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str(),H5P_DEFAULT);
-#endif
- 
-    if (h_signal_DSID<0){
-        throw(Exception::FileError("MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open the hdf mdd dataset",this->File_name));
-    }
-    std::vector<int> arr_dims_vector;
-    int    rank;
-	matlab_attrib_kind kind;
-    unsigned int nDims,i;
-    void  *data;
-    bool ok;
-
-
-    // find and read the dimensions of the mdd dataset
-    ok=read_matlab_field_attr(h_signal_DSID,this->mdd_attrib_names[nDND_dims].c_str(),data,arr_dims_vector,rank,kind,this->File_name);
-    if(!ok){
-        std::stringstream err;
-        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Error reading signal dimensions attribute: "<<mdd_attrib_names[nDND_dims]<<std::endl;
-        throw(Exception::FileError(err.str(),this->File_name));
-    }
-    nDims= arr_dims_vector[0];
-	// create geometry description with nDims(=4) and 3 reciprocal dimensions (hardcoded in Horace)
-
-  //  for(i=0;i<nDims;i++){
-  //      unsigned int dim_size=(unsigned int)*((double*)(data)+i);
-		//DND_shape.pDimDescription(i).nBins = dim_size;
-  //  }
-    delete [] data;
-    arr_dims_vector.clear();
-
-
-    // read other dataset descriptors
-#ifdef  HDF_1_6
-    hid_t descriptors_DSID=H5Gopen(file_handler,this->mdd_field_names[DataDescriptor].c_str()); //,H5P_DEFAULT);
-#else
-    hid_t descriptors_DSID=H5Gopen(file_handler,this->mdd_field_names[DataDescriptor].c_str(),H5P_DEFAULT);
-#endif
-
-    if (descriptors_DSID<0){
-        std::stringstream err;
-        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open the the data descriptors field in the dataset: "<<mdd_attrib_names[DataDescriptor]<<std::endl;
-        throw(Exception::FileError(err.str(),this->File_name));
-    }
-    // read data limits
-    ok=read_matlab_field_attr(descriptors_DSID,this->mdd_attrib_names[range],data,arr_dims_vector,rank,kind,this->File_name);
-    if(!ok){
-        std::stringstream err;
-        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Error reading mdd data range attribute: "<<mdd_attrib_names[range]<<std::endl;
-        throw(Exception::FileError(err.str(),this->File_name));
-    }
-    for(i=0;i<nDims;i++){
-		DND_shape.pDimDescription(i)->cut_min=*((double*)(data)+2*i);
-        DND_shape.pDimDescription(i)->cut_max=*((double*)(data)+2*i+1);
-    }
-    delete [] data;
-    arr_dims_vector.clear();
-
-    // read axis
-    ok=read_matlab_field_attr(descriptors_DSID,this->mdd_attrib_names[axis],data,arr_dims_vector,rank,kind,this->File_name);
-    if(!ok){
-       std::stringstream err;
-        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Error reading mdd data axis attribute: "<<mdd_attrib_names[axis]<<std::endl;
-        throw(Exception::FileError(err.str(),this->File_name));
-    }
-    if (kind!=double_cellarray){
-        throw(Exception::FileError("wrong type identifyed reading data axis",this->File_name));
-    }
-    // transform 2D array of axis into N-D vector of axis vectors;
-    int nData=arr_dims_vector[0]*arr_dims_vector[1];
-    double filler = *((double *)(data)+nData);
-    std::vector<double> **rez    =(std::vector<double> **)transform_array2cells(data,arr_dims_vector,rank,kind,&filler);
-    if(MAX_MD_DIMS_POSSIBLE<=arr_dims_vector[0]){
-        throw(Exception::FileError("file_hdf_Matlab::read_MDImg_data=>algorithm error: number of the data axis in mdd structure residing in file has to be less then MAX_NDIMS_POSSIBLE",this->File_name));
-    }
-    // This is nesessary for linear axis as n-bins has been already defined, but this operation defines axis within proper limits;
-        for(i=0;i<nDims;i++){
-          unsigned int dim_lentgh=(unsigned int)rez[i]->size();
-		  // this provides number of points along an axis and axis has nBins+1 points
-		  if(dim_lentgh > 1) dim_lentgh--;
-          delete rez[i];
-		  DND_shape.pDimDescription(i)->nBins = dim_lentgh;
-    }  
-	// we need to set expanded instead
-    delete [] data;
-    delete [] rez;
-    arr_dims_vector.clear();
-// ***> because of this operator the function accepts full 4D dataset only; if we want accept 1,2 and 3D dataset we need to read pax 
-// iax,iint and variable number of p and process them properly;
-
-
-	H5Gclose(descriptors_DSID);
-	// tags are not currently written into HDF matlab format, so we have to hard code it here;
-     std::vector<std::string> tags(4,"");
-	 unsigned int indMax = (nDims<4)?nDims:4;
-	 tags[0]="qx";
-	 tags[1]="qy";
-	 tags[2]="qz";
-	 tags[3]="en";
-	 for(i=0;i<indMax;i++){
-		 DND_shape.pDimDescription(i)->Tag = tags[i];
-
-	 }
-
-
-
-	
-}
-
-void 
-MD_File_hdfMatlab::read_MDImg_data(MDImage & dnd)
-{
-// The function accepts full 4D dataset only!!!
-#ifdef  HDF_1_6
-    hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str()); // ,H5P_DEFAULT);
-#else
-    hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str(),H5P_DEFAULT);
-#endif
-
-    if (h_signal_DSID<0){
-        f_log.error()<<"MD_File_hdfMatlab::read_MDImg_data: can not open multidimensional dataset "<<this->mdd_field_names[DatasetName]<<std::endl;
-        throw(Exception::FileError("MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open the hdf mdd dataset",this->File_name));
-    }
-    std::vector<int> arr_dims_vector;
-    herr_t err;
-  
- 
-  // get pointer to MD structure which should be read from memory
-   MD_img_data *pMD_struct  = dnd.get_pMDImgData();
-   if(!pMD_struct->data){
-	   f_log.error()<<"MD_File_hdfMatlab::read_MDImg_data: Image data structures have not been allocated properly\n";
-	   throw(std::runtime_error("Image data structures have not been allocated properly"));
-   }
-//-------------------------------------------------------------------------
-// read the dataset itself
-// 1) create mem datatype to read data into. 
-
-    hsize_t arr_dims_buf_[MAX_MD_DIMS_POSSIBLE];
-    arr_dims_buf_[0] = 3;
-    hid_t   memtype = H5Tarray_create2(H5T_NATIVE_DOUBLE, 1, arr_dims_buf_);
-
-/* TODO: write this check!!!
-    // check if the datasize has been calculated properly
-    if(real_data_size!=dnd.data_size){
-        std::stringstream err;
-        err<<"file_hdf_Matlab::read_dnd: dataSize calculated from dimensions= "<<dnd.data_size<<" But real dataSize="<<real_data_size<<std::endl;
-        throw(errorMantid(err.str()));
-    }
-*/
-    double *buf = new double[3*(pMD_struct->data_size+1)];
-    //** Read the data.   
-    err = H5Dread (h_signal_DSID, memtype, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf);
-    if (err){
-		f_log.error()<<"error reading MD image data from the dataset "<<this->mdd_field_names[DatasetName]<<" located in file"<<this->File_name<<std::endl;
-        throw(Exception::FileError("error reading MD image data from the file",this->File_name));
-    }
-    MD_image_point *pData = pMD_struct->data;
-// transform the data into the format specified 
-mp_points_locations.resize(pMD_struct->data_size);
-pData[0].s   =buf[0];
-pData[0].err =buf[1];
-pData[0].npix=(size_t)buf[2];
-mp_points_locations[0] = 0;
-size_t nCells = pMD_struct->data_size;
-for(unsigned long i=1;i<nCells;i++){
-    pData[i].s   =buf[i*3+0];
-    pData[i].err =buf[i*3+1];
-    pData[i].npix=(size_t)buf[i*3+2];
-    mp_points_locations[i]=mp_points_locations[i-1]+pData[i-1].npix;
-}
-delete [] buf;
-pMD_struct->npixSum = mp_points_locations[nCells-1]+pData[nCells-1].npix;
-
-H5Tclose(memtype);
-
-H5Dclose(h_signal_DSID);
-
-}
-//***************************************************************************************
-/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to one pixel only
-Mantid::MDDataObjects::MDPointDescription 
-MD_File_hdfMatlab::read_pointDescriptions(void)const
-{
-	// this data are currently hard-coded in Horace Matlab data file. 
-    std::vector<std::string> dataTags(9);
-	dataTags[0]="qx";
-	dataTags[1]="qy";
-	dataTags[2]="qz";
-	dataTags[3]="en";
-	dataTags[4]="S";
-	dataTags[5]="err";
-	dataTags[6]="runID";
-	dataTags[7]="pixID";
-	dataTags[8]="enID";
-
-	MDPointStructure defaultPixel;
-	defaultPixel.DimIDlength =4;
-	defaultPixel.SignalLength=4;
-	defaultPixel.NumPixCompressionBits=0;
-
-	MDPointDescription PixSignature(defaultPixel,dataTags);
-	char *buf(NULL);
-	pReader  = new MDDataPointEqual<float,uint32_t,float>(buf,PixSignature);
-
-	return PixSignature;
-}
- 
-uint64_t
-MD_File_hdfMatlab::getNPix(void)
-{
-    if(this->file_handler<0)return -1;
-
-    this->check_or_open_pix_dataset();
- 
-    hsize_t *data;
-
-  // Analyse pixels array to indentify number of the pixels contributed into the mdd dataset
-    hid_t pixels_space = H5Dget_space(this->pixel_dataset_h);
-    if(pixels_space<=0){
-         throw(Exception::FileError("can not get space for pixel dataset",this->File_name));
-    }
-    int nDims = H5Sget_simple_extent_ndims(pixels_space);
-    if(nDims<=0){
-         throw(Exception::FileError("can not obtain pixel dataset dimensions",this->File_name));
-    }
-    hsize_t nPixels=0;
-    data = new hsize_t[nDims];
-    H5Sget_simple_extent_dims(pixels_space, data, NULL) ;
-    nPixels = data[0];
-  
-    delete [] data;
-    
-    H5Sclose(pixels_space);
-    return nPixels;
-}
-//***************************************************************************************
-
-bool
-MD_File_hdfMatlab::read_pix(MDDataPoints & sqw)
-{ 
-
-    unsigned long i;
-    matlab_attrib_kind kind;
-    std::vector<int> arr_dims_vector;
-
-    void *data;
-    // pixels dims dataset is the 1D dataset of the array datatype
-    hsize_t  pix_dims[1],pix_dims_max[1];
-// the variable was_opened identify if we have to close dataset after finishing with it (may be not if partial IO operations expected)
-    bool was_opened=this->check_or_open_pix_dataset();
-
-    if(this->pixel_dataspace_h<0){
-        this->pixel_dataspace_h  = H5Dget_space(this->pixel_dataset_h);
-    }
-
-    int rank         = H5Sget_simple_extent_ndims(pixel_dataspace_h);
-    if(rank!=1){
-        throw(Exception::FileError("MD_File_hdfMatlab::read_pix: the pixel dataspace format differs from the one expected",this->File_name));
-    }
-    H5Sget_simple_extent_dims(pixel_dataspace_h,pix_dims,pix_dims_max);    
-// Find and read n-pixels attribute to indentify number of the pixels contributed into the mdd dataset
-    bool ok=read_matlab_field_attr(this->pixel_dataset_h,"n_pixels",data,arr_dims_vector,rank,kind,this->File_name);
-    if(!ok){
-        throw(Exception::FileError("MD_File_hdfMatlab::read_pix: Error reading npix sqw attribute",this->File_name));
-    }
-
-    delete [] data;
-    arr_dims_vector.clear();
-
-    uint64_t n_pix_inDataset  = this->getNPix();
-	if(!pReader){
-		f_log.error()<<" attempting to read pixels before the pixel description has been defined\n";
-		throw(std::runtime_error(" incorrect logic, attempt to read the data before the data description"));
-	}
-	// get the packer, which works with the pixel structure according to the description, read earlier;
-    MDDataPointEqual<float,uint32_t,float>  *pPacker = reinterpret_cast<MDDataPointEqual<float,uint32_t,float> *>(pReader);
-	// size of one data point
-	unsigned int pix_size = pPacker->sizeofMDDPoint();
-
-
-    // It is possible thone can not allocate the array needed to place all pixels in the pixel buffer. In this case this function has to fail as it is 
-    // not possible to read all pixels into memory;
-	char * pix_array;
-	try{
-		size_t max_npix_in_buf(0);
-		if(n_pix_inDataset>~max_npix_in_buf){
-			throw(std::runtime_error("too many pixels to place in memory for given architecture "));
-		}else{
-			max_npix_in_buf= (size_t)n_pix_inDataset;
-		}
-		std::vector<char> *pa = sqw.get_pBuffer(pix_size*max_npix_in_buf);
-		pix_array             = &(*pa)[0];
-	}catch(std::bad_alloc &){
-		f_log.information()<<" pixel array of "<<n_pix_inDataset<<" pixels can not be placed in memory\n";
-	    sqw.set_file_based();
-	    return false;
-	}
-	pPacker->setBuffer(pix_array);
-
-    // we can read pixels and ready now can try to do it. 
-    hid_t type      = H5Dget_type(this->pixel_dataset_h);
-    if(type<0){
-        throw(Exception::FileError("MD_File_hdfMatlab::read_pix: can not obtain pixels dataset datatype",this->File_name));
-    }
-
- 
-    hid_t data_type=H5Tget_native_type(type,H5T_DIR_ASCEND);
-    if(data_type<0){
-        throw(Exception::FileError("can not identify native datatype for pixels dataset",this->File_name));
-    }
-
-    char *pix_buf;
-    try{
-       pix_buf = new char[(size_t)(n_pix_inDataset*pix_size)];
-   }catch(std::bad_alloc &){
-       f_log.information()<<" can not allocate memory for auxiliary pixels data\n";
-	   sqw.set_file_based();
-       return false; // bad alloc thrown
-    }
-    
-    herr_t err=H5Dread(this->pixel_dataset_h, type,H5S_ALL, H5S_ALL, this->file_access_mode,pix_buf);   
-    if(err){
-        throw(Exception::FileError("Error reading the pixels dataset",this->File_name));
-    }
-    size_t  nCellPic(0);
-    size_t   nPixel(0);
-
-	float    s_dim_fields[6];
-    uint32_t  ind_fields[3];
-
- 
-	try{
-		std::vector<char> *outData = sqw.get_pBuffer(n_pix_inDataset);
-        pPacker->setBuffer(&(*outData)[0]);
-	}catch(std::bad_alloc &){
-
-	}
-   
-    for(i=0;i<n_pix_inDataset;i++){
-          s_dim_fields[0] =           *((float*)(pix_buf+nPixel*pix_size+0)); //  sqw.pix_array[i].qx   
-          s_dim_fields[1] =           *((float*)(pix_buf+nPixel*pix_size+1)); // sqw.pix_array[i].qy 
-          s_dim_fields[2] =           *((float*)(pix_buf+nPixel*pix_size+2)); // sqw.pix_array[i].qz
-          s_dim_fields[3] =           *((float*)(pix_buf+nPixel*pix_size+3)); // sqw.pix_array[i].En
-          ind_fields[0]   =  (uint32_t)   (*((float*)(pix_buf+nPixel*pix_size+4)));    // sqw.pix_array[i].irun 
-          ind_fields[1]   =  (uint32_t)   (*((float*)(pix_buf+nPixel*pix_size+5)));   // sqw.pix_array[i].idet
-          ind_fields[2]   =  (uint32_t)   (*((float*)(pix_buf+nPixel*pix_size+6))); // sqw.pix_array[i].ien
-          s_dim_fields[4] =           *((float*)(pix_buf+nPixel*pix_size+7)); // sqw.pix_array[i].s 
-          s_dim_fields[5] =           *((float*)(pix_buf+nPixel*pix_size+8));  // sqw.pix_array[i].err
-
-          nPixel++;
-          pPacker->setData(i,s_dim_fields,ind_fields);
-   }
-   delete [] pix_buf;
-
-    H5Tclose(type);
-    if(!was_opened){ // if we opened it in this program, we should close it now. 
-        H5Sclose(this->pixel_dataspace_h);
-        H5Dclose(this->pixel_dataset_h);
-        this->pixel_dataset_h=-1;
-        this->pixel_dataspace_h=-1;
-    }
-    return true;
-}
-
-size_t 
-MD_File_hdfMatlab::read_pix_subset(const MDImage &DND,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf,size_t &n_pix_in_buffer)
-{
-// open pixel dataset and dataspace if it has not been opened before;
-    n_pix_in_buffer=0;
-    this->check_or_open_pix_dataset();
-    bool pixel_dataspece_opened(false);
-
-    // get access to pixels allocation table;
-    const MD_image_point * pData = DND.get_const_pData();
-    // get pixel dataspece and open it if it has not been done before;
-    if(this->pixel_dataspace_h<0){
-    
-        this->pixel_dataspace_h  = H5Dget_space(this->pixel_dataset_h);
-        if(this->pixel_dataspace_h<0){
-            throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: can not get pixels dataspace",this->File_name));
-        }
-    }else{
-        pixel_dataspece_opened=true;
-    }
-    // define the format of the data point (pixel)
-	// get the packer, which works with the pixel structure according to the description, read earlier;
-    MDDataPointEqual<float,uint32_t,float>  *pPacker = reinterpret_cast<MDDataPointEqual<float,uint32_t,float> *>(pReader);
-	// size of one data point
-	unsigned int pix_size = pPacker->sizeofMDDPoint();
-	pPacker->setBuffer(&pix_buf[0]);
-
-// identify the cells to read and maximal buffer size necessary to do the preselection;
-    size_t max_npix_in_buffer(0),max_npix_selected(0),npix_tt;
-    size_t i,j,n_selected_cells,n_cells_processed(0);
-    size_t n_cells_final(selected_cells.size());
-    size_t nPix_buf_size = pix_buf.size()/pix_size;
-
-    n_selected_cells=n_cells_final-1;     
-    for(i=starting_cell;i<n_cells_final;i++){
-        npix_tt             =pData[selected_cells[i]].npix; 
-        max_npix_in_buffer +=npix_tt;
-
-        if(max_npix_in_buffer<=nPix_buf_size){
-            max_npix_selected=max_npix_in_buffer;
-            n_cells_processed++;
-        }else{
-            // if one cell does not fit the buffer, we should increase buffer size .     
-            if(i==starting_cell){
-                pix_buf.resize(max_npix_in_buffer*pix_size);
-				pPacker->setBuffer(&pix_buf[0]);
-                nPix_buf_size = max_npix_in_buffer;
-                n_selected_cells=i;
-                n_cells_processed=1;
-            }else{
-                n_selected_cells=i-1;
-                max_npix_in_buffer -=npix_tt;
-            }
-            break;
-        }
-    }
-    
-
-    if(pix_buf.capacity()<max_npix_in_buffer*pix_size){
-        pix_buf.resize(max_npix_in_buffer*pix_size);
-		pPacker->setBuffer(&pix_buf[0]);
-    }
-
-
-    if(max_npix_in_buffer==0){
-        if(!pixel_dataspece_opened){
-            H5Sclose(this->pixel_dataspace_h);
-            this->pixel_dataspace_h=-1;
-        }
-
-        return n_cells_processed;
-    }
-
-
-    hid_t type      = H5Dget_type(this->pixel_dataset_h);
-    if(type<0){
-        throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: can not obtain pixels dataset datatype",this->File_name));
-    }
-    time_t start,end;
-    time(&start);  //***********************************************>>>
-
-   // identify the indexes of the preselected pixels;
-    std::vector<hsize_t> cells_preselection_buf;
-    cells_preselection_buf.resize(max_npix_selected);
-    size_t ic(0);
-    uint64_t max_npix_indataset = this->getNPix();
-    uint64_t pixel_num,block_location;
-    for(i=starting_cell;i<=n_selected_cells;i++){
-        npix_tt          =pData[selected_cells[i]].npix; 
-        block_location   =mp_points_locations[selected_cells[i]];
-        for(j=0;j<npix_tt;j++){
-            pixel_num=block_location+j;
-            // this to go around the bug in hdf dataset creation. 
-            if(pixel_num>=max_npix_indataset){
-              continue;
-            }
-            cells_preselection_buf[ic]=pixel_num;
-            ic++;
-         }
-    }
-    herr_t err=H5Sselect_elements(this->pixel_dataspace_h, H5S_SELECT_SET,ic,&cells_preselection_buf[0]);
-     if(err<0){
-        throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: error while doing pixels preselection",this->File_name));
-    }
-    hsize_t max_npix[2];
-    max_npix[0]=max_npix_selected;
-    max_npix[1]=0;
-    hid_t  mem_space = H5Screate_simple(1,max_npix,NULL);
-    H5Sselect_all(mem_space);
-    time(&end);     //***********************************************<<<<
-    std::stringstream message; 
-    message<<" Dataset preselected in: "<<difftime (end,start)<<" sec\n";
-    f_log.debug(message.str());
-	// questionable;
-	cells_preselection_buf.clear();
-    time(&start);  //***********************************************>>>
-    char *bin_pix_buf = new char[(max_npix_selected+1)*(pix_size)];
- //  herr_t H5Dread(hid_t dataset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t xfer_plist_id, void * buf  ) 
-    err  =  H5Dread(this->pixel_dataset_h, type,mem_space, this->pixel_dataspace_h, this->file_access_mode,bin_pix_buf);   
-    if(err){
-        throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: Error reading the pixels dataset",this->File_name));
-    }else{
-        n_pix_in_buffer=max_npix_selected;
-    }
-    time(&end); //***********************************************<<<<
-    message.clear();
-    message<<" Dataset read  in: "<<difftime (end,start)<<" sec\n";
-    f_log.debug(message.str());
-
-    float    sig_dim_Fields[6];
-    uint32_t ind_fields[3];
-  
-
-
-    time(&start);  //***********************************************>>>
-    for(i=0;i<max_npix_selected;i++){
-          sig_dim_Fields[0] =           *((float *)(bin_pix_buf+i*pix_size+0)); //  sqw.pix_array[i].qx   
-          sig_dim_Fields[1] =           *((float *)(bin_pix_buf+i*pix_size+1)); // sqw.pix_array[i].qy 
-          sig_dim_Fields[2] =           *((float *)(bin_pix_buf+i*pix_size+2)); // sqw.pix_array[i].qz
-          sig_dim_Fields[3] =           *((float *)(bin_pix_buf+i*pix_size+3)); // sqw.pix_array[i].En
-          ind_fields[0]  =              *((uint32_t *)(bin_pix_buf+i*pix_size+4));    // sqw.pix_array[i].irun 
-          ind_fields[1]  =              *((uint32_t *)(bin_pix_buf+i*pix_size+5));   // sqw.pix_array[i].idet
-          ind_fields[2]  =              *((uint32_t *)(bin_pix_buf+i*pix_size+6)); // sqw.pix_array[i].ien
-          sig_dim_Fields[4] =           *((float *)(bin_pix_buf+i*pix_size+7)); // sqw.pix_array[i].s 
-          sig_dim_Fields[5] =           *((float *)(bin_pix_buf+i*pix_size+8));  // sqw.pix_array[i].err
-
-
-          pPacker->setData(i,sig_dim_Fields,ind_fields);
- 
-    }
-    delete [] bin_pix_buf;
-    time(&end); //***********************************************<<<<
-    
-    message.clear();
-    message<<" Dataset converted in: "<<difftime (end,start)<<" sec\n";
-    f_log.debug(message.str());
-
-    time(&start);  //***********************************************>>>
-
-    H5Sclose(mem_space);
-    H5Tclose(type);
-    if(!pixel_dataspece_opened){
-        H5Sclose(this->pixel_dataspace_h);
-        this->pixel_dataspace_h=-1;
-    }
-     
-
-
-//    nPix_buf_size=max_npix_selected;
-    time(&end); //***********************************************<<<<
-
-    message.clear();
-    message<<" closing all while returning from file_hdf_read : "<<difftime (end,start)<<" sec\n";
-    f_log.debug(message.str());
-
-    return n_cells_processed;
-}
-
-MD_File_hdfMatlab::~MD_File_hdfMatlab(void)
-{
-    if(this->pixel_dataspace_h>0){  H5Sclose(pixel_dataspace_h);
-    }
-
-    if(this->pixel_dataset_h>0){    H5Dclose(pixel_dataset_h);
-    }
-    if(this->file_handler>0)   {    H5Fclose(this->file_handler);
-    }
-	if(pReader!=NULL){
-		delete reinterpret_cast<MDDataPointEqual<float,uint32_t,float> *>(pReader);
-	}
-
- }
-bool
-read_matlab_field_attr(hid_t group_ID,const std::string &field_name,void *&data, std::vector<int> &dims,int &rank,matlab_attrib_kind &kind,const std::string &file_name)
-{
-/*
-  The function is the interface to the attributes written by MATLAB horace hdf
-
-  MATLAB hdf crashes writing cell arrays or empty datasets, so tricks are implemented to encode such structures into hdf
-  empty datasets are marked by special attribute, and cellarrays are written as an regular 2D array of max dimension with filler
-
-  The function returns the array of the data written by Horace hdf and identifies its kind
-
-% function reads the a dataset from hdf5 location  defined by group_ID
-% Because of HDF5-matlab bug, the function has to be used to read data written by
-% MATLAB functions write_attrib_list  and write_fields_list_attr  functions only
-%
-% Inputs:
-% group_ID    -- hdf5 dataset or group location;
-% field_name  -- list of the entries to read;
-%
-% Output:
-% data        -- the allocatable array  to place the read data into; has to be deallocated in main program if not being used
-% dims        -- vector-array of dataset dimensions, 1 for a scalar
-% rank        -- number of dataset dimensions, 0 for scalar, 1 for 1D and 2 for 2D arrays
-%                does not support more than 2D arrays at the moment;
-% kind        -- parameter, which describes the kind of the data actually read by the function. The calling program
-%                supposed to know what kind of data it asks for (to reinterpred the void at least),
-%                and can use this parameter to verify if it really get what it asked for
-%
-%             Key-words are used to incode unsupported data formats
-%             These key-words can not be present in the fiedls_names list:
-% EMPTY_  and FILLER_
-
-%
-% V1: AB on 20/03/2010
-%
-%
-% HORACE Revision: 438  (Date: 2010-04-27 13:23:01 +0100 (Tue, 27 Apr 2010) )
-%
-*/
-bool filler_present(false);  // the array of variable length vectors or string is written but it is written as 2D array (MATLAB hdf bug)
-int i;
-char prim_kind;  // character or double
-double filler_buf; // where to read the data filler if one exists
-hsize_t data_size;
-
-
-if(!H5Aexists(group_ID, field_name.c_str())){ // then may be the dataset is empty
-     std::string new_field_name="EMPTY_"+field_name;
-    // only attribute presence is identified, but attribute itself is empty (MATLAB hdf bug)
-     if(H5Aexists(group_ID, new_field_name.c_str())){ // the attribute exists and it is empty
-        rank=0;
-        dims.clear();
-        data = NULL;
-        kind = empty;
-        return true;
-     }else{
-        return false;
-     }
-}
-
-// open
-hid_t attr     = H5Aopen(group_ID, field_name.c_str(), H5P_DEFAULT);
-if (attr<=0){
-    std::stringstream err;
-    err<<"read_matlab_field_attr: error opening existing attribute: "<<field_name<<std::endl;
-    throw(Exception::FileError(err.str(),file_name));
-}
-// learn all about the dataset; MATLAB written datasets are simple arrays or scalars or characters
-// as this is the attribute, the size of the array can be only limited;
- hid_t   type     = H5Aget_type(attr);
- if (type==H5T_NATIVE_UCHAR||type==H5T_NATIVE_CHAR||type==H5T_NATIVE_SCHAR){
-      prim_kind='C';
- }else{
-      prim_kind='D';
- }
-
- hsize_t *t_dims;
- hid_t  space     = H5Aget_space(attr);
- int    ndims     = H5Sget_simple_extent_ndims(space) ;
- if(ndims==0){  // scalar
-     rank=1;
-     t_dims           = new hsize_t[1];
-     t_dims[0]        = 1;
-     kind             = double_scalar;
- }else{
-     t_dims           = new hsize_t[ndims];
-     rank             = H5Sget_simple_extent_dims(space,t_dims,NULL) ;
-     kind             = double_array;
-     if (rank>2){
-         throw(Exception::FileError("MATLAB HORACE reader does not currently understand arrays of more then 2 dimesions",file_name));
-     }
-
- }
- data_size=1;
- for(i=0;i<ndims;i++){
-     data_size*= t_dims[i];
- }
-
- //hid_t  type_name = H5Tget_class(type);
-
-
- if(rank==2||(prim_kind=='C'&&rank==1)){ //  % the array can be the representation of a cellarray (MATLAB hdf bug)
-     // presence of filler attribute will tell if this is the case
-     std::string filler_name="FILLER_"+field_name;
-
-     if(H5Aexists(group_ID, filler_name.c_str())){
-        filler_present=true;
-        if(prim_kind=='C'){
-              kind = char_cellarray;
-        }else{
-             kind = double_cellarray;
-        }
-
-        hid_t attr_f = H5Aopen(group_ID, filler_name.c_str(),H5P_DEFAULT);
-        if (attr_f<=0){
-              std::stringstream err;
-              err<<"read_matlab_field_attr: error opening existing Filler attribute: "<<filler_name<<std::endl;
-              throw(Exception::FileError(err.str(),file_name));
-        }
-        hid_t type_f = H5Aget_type(attr_f);
-        herr_t err = H5Aread(attr_f, type_f,&filler_buf);
-        if(err<0){
-              std::stringstream err;
-              err<<"read_matlab_field_attr: error reading existing Filler attribute: "<<filler_name<<std::endl;
-              throw(Exception::FileError(err.str(),file_name));
-        }
-//
-//        rez = transform_array2cells(rez,filler,type_name);
-           H5Tclose(type_f);
-           H5Aclose(attr_f);
-
-    }
-
- }
- // expand output array by one to arrange make place for filler, placed there
- if (filler_present) data_size++;
-
-
- if (prim_kind=='C'){
-    data = new char[(size_t)data_size];
-    if(filler_present) *((char *)(data)+data_size-1)=*((char*)(&filler_buf));
-
- }else{
-    data = new double[(size_t)data_size];
-    if(filler_present) *((double *)(data)+data_size-1)=filler_buf;
- }
- herr_t err = H5Aread(attr, type,data);
- if (err<0){
-     std::stringstream err;
-     err<<"read_matlab_field_attr: error reading attribute: "<<field_name<<std::endl;
-     throw(Exception::FileError(err.str(),file_name));
- }
-
-
- H5Sclose(space);
- H5Tclose(type);
- H5Aclose(attr);
- for(i=0;i<ndims;i++){
-    dims.push_back(int(t_dims[i]));
- }
-delete [] t_dims;
-
-return true;
-}
-//***************************************************************************************************************
-void ** 
-transform_array2cells(void *data, std::vector<int> dims,int rank,matlab_attrib_kind kind,void *pFiller)
-{
-/* MATLAB Horace dataset compartibility function 
-  it takes the data in the form of an array with filler and returns 
-  array of strings or array of variable length vectors depending on kind of the data
-
-function cellarray=transform_array2cells(rdata,filler,type_name)
-% function constructs selarray from array rdata, written to the hdf file
-% instead of variable length array to avoid hdf5-matlab bug;
-*/
-    int i,j;
-    int nData(dims[0]);
-    int length(dims[1]);
-    switch(kind){
-        case char_cellarray: {
-            std::string ** rez=(new std::string *[nData]);
-            char *arr = (char*)(data);
-            char filler=*((char *)pFiller);
-            char data;
-
-            for(i=0;i<nData;i++){
-                rez[i] = new std::string;
-                for(j=0;j<length;j++){
-                    data=arr[i*length+j];
-                    if(data != filler){
-                        rez[i]->push_back(data);
-                    }else{
-                        break;
-                    }
-                }
-            }
-
-            return (void **)rez;
-        }
-        case double_cellarray: {
-            std::vector<double> **rez= new std::vector<double> *[nData];
-            double *arr = (double*)(data);
-            double filler=*((double *)pFiller);
-            double data;
-
-            for(i=0;i<nData;i++){
-                rez[i] = new std::vector<double>;
-                rez[i]->reserve(length);
-                for(j=0;j<length;j++){
-                    data=arr[i*length+j];
-                    if(data != filler){
-                        rez[i]->push_back(data);
-                    }else{
-                        break;
-                    }
-                }
-            }
-            return (void **)rez;
-
-        }
-        default: throw(std::invalid_argument("transform array2cells: unsupported datatype"));
-    }
-    return NULL;
-}
-
-
-}
-}
+#include "MDDataObjects/stdafx.h"
+#include "MDDataObjects/MD_File_hdfMatlab.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidGeometry/MDGeometry/MDGeometryBasis.h"
+
+namespace Mantid{
+    namespace MDDataObjects{
+      using namespace Mantid::Kernel;
+	  using namespace Mantid::Geometry;
+
+
+/// enum to identify fields, used in MATALB Horace DND-hdf file
+enum matlab_mdd_fields_list{
+    DatasetName,
+    DataDescriptor,
+    Pixels,
+    N_DND_FIELDS
+};
+/// enum to identify attributes, used in MATLAB horace DND-hdf file;
+enum matlab_mdd_attributes_list{
+    nDND_dims,
+    range,
+    axis,
+    N_MATLAB_FIELD_ATTRIBUTES
+};
+
+//***************************************************************************************
+void
+MD_File_hdfMatlab::read_basis(Geometry::MDGeometryBasis &basisGeometry)
+{
+   using namespace Mantid::Geometry;
+    std::set<Geometry::MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("qx", true, 0));
+    basisDimensions.insert(MDBasisDimension("qy", true, 1));
+    basisDimensions.insert(MDBasisDimension("qz", true, 2));
+    basisDimensions.insert(MDBasisDimension("en", false,3));
+
+    UnitCell cell;
+	basisGeometry.init(basisDimensions,cell);
+}
+
+MD_File_hdfMatlab::MD_File_hdfMatlab(const char *file_name):
+IMD_FileFormat(file_name),
+file_access_mode(H5P_DEFAULT),
+pixel_dataset_h(-1),
+file_handler(-1),
+pixel_dataspace_h(-1),
+pReader(NULL)
+{/// check if the file exists and is an hdf5 file;
+    this->File_name.assign(file_name);
+
+
+    htri_t rez=H5Fis_hdf5(File_name.c_str());
+    if (rez<=0){
+        if (rez==0){
+            throw("the file is not an hdf5 file");
+        }else{
+            throw(" error processing existing hdf file");
+        }
+    }
+    if(!H5Zfilter_avail(H5Z_FILTER_DEFLATE)){
+        throw("can not obtain deflate filter to read MATLAB-hdf datatypes");
+    }
+/// actually opens the file
+    this->file_handler = H5Fopen(File_name.c_str(),H5F_ACC_RDONLY,file_access_mode);
+    if (file_handler<0){
+        throw(" error opening existing hdf5 file");
+    }
+/// mdd dataset names in MATLAB HDF file;
+    this->mdd_field_names.resize(N_DND_FIELDS);
+    this->mdd_field_names[DatasetName].assign("Signals");        // mdd dataset name;
+    this->mdd_field_names[DataDescriptor].assign("spe_header");  // dataset descriptors: contains information about various parts of the dataset
+    this->mdd_field_names[Pixels].assign("pix");                 // pixels dataset name
+
+/// mdd dataset arrtibutes in MATLAB HDF file  
+    this->mdd_attrib_names.resize(N_MATLAB_FIELD_ATTRIBUTES);
+    this->mdd_attrib_names[nDND_dims].assign("signal_dims");
+    this->mdd_attrib_names[range].assign("urange");
+    this->mdd_attrib_names[axis].assign("p");
+ 
+}
+
+//***************************************************************************************
+bool 
+MD_File_hdfMatlab::check_or_open_pix_dataset(void)
+{
+    bool was_opened(false); 
+    if(this->pixel_dataset_h<0){
+#ifdef  HDF_1_6
+        this->pixel_dataset_h    = H5Dopen(this->file_handler,this->mdd_field_names[Pixels].c_str()); //,this->file_access_mode);
+#else
+        this->pixel_dataset_h    = H5Dopen(this->file_handler,this->mdd_field_names[Pixels].c_str(),this->file_access_mode);
+#endif
+        if(this->pixel_dataset_h<0){
+            throw(Exception::FileError("MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open pixels dataset",this->File_name));
+        }
+    }else{
+        was_opened        = true;
+    }
+
+    return was_opened;
+}
+//
+void
+MD_File_hdfMatlab::read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription & DND_shape)
+{
+  	// The function accepts full 4D dataset only!!!
+#ifdef HDF_1_6
+      hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str());// ,H5P_DEFAULT);
+#else
+	  hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str(),H5P_DEFAULT);
+#endif
+ 
+    if (h_signal_DSID<0){
+        throw(Exception::FileError("MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open the hdf mdd dataset",this->File_name));
+    }
+    std::vector<int> arr_dims_vector;
+    int    rank;
+	matlab_attrib_kind kind;
+    unsigned int nDims,i;
+    void  *data;
+    bool ok;
+
+
+    // find and read the dimensions of the mdd dataset
+    ok=read_matlab_field_attr(h_signal_DSID,this->mdd_attrib_names[nDND_dims].c_str(),data,arr_dims_vector,rank,kind,this->File_name);
+    if(!ok){
+        std::stringstream err;
+        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Error reading signal dimensions attribute: "<<mdd_attrib_names[nDND_dims]<<std::endl;
+        throw(Exception::FileError(err.str(),this->File_name));
+    }
+    nDims= arr_dims_vector[0];
+	// create geometry description with nDims(=4) and 3 reciprocal dimensions (hardcoded in Horace)
+
+  //  for(i=0;i<nDims;i++){
+  //      unsigned int dim_size=(unsigned int)*((double*)(data)+i);
+		//DND_shape.pDimDescription(i).nBins = dim_size;
+  //  }
+    delete [] data;
+    arr_dims_vector.clear();
+
+
+    // read other dataset descriptors
+#ifdef  HDF_1_6
+    hid_t descriptors_DSID=H5Gopen(file_handler,this->mdd_field_names[DataDescriptor].c_str()); //,H5P_DEFAULT);
+#else
+    hid_t descriptors_DSID=H5Gopen(file_handler,this->mdd_field_names[DataDescriptor].c_str(),H5P_DEFAULT);
+#endif
+
+    if (descriptors_DSID<0){
+        std::stringstream err;
+        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open the the data descriptors field in the dataset: "<<mdd_attrib_names[DataDescriptor]<<std::endl;
+        throw(Exception::FileError(err.str(),this->File_name));
+    }
+    // read data limits
+    ok=read_matlab_field_attr(descriptors_DSID,this->mdd_attrib_names[range],data,arr_dims_vector,rank,kind,this->File_name);
+    if(!ok){
+        std::stringstream err;
+        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Error reading mdd data range attribute: "<<mdd_attrib_names[range]<<std::endl;
+        throw(Exception::FileError(err.str(),this->File_name));
+    }
+    for(i=0;i<nDims;i++){
+		DND_shape.pDimDescription(i)->cut_min=*((double*)(data)+2*i);
+        DND_shape.pDimDescription(i)->cut_max=*((double*)(data)+2*i+1);
+    }
+    delete [] data;
+    arr_dims_vector.clear();
+
+    // read axis
+    ok=read_matlab_field_attr(descriptors_DSID,this->mdd_attrib_names[axis],data,arr_dims_vector,rank,kind,this->File_name);
+    if(!ok){
+       std::stringstream err;
+        err<<"MD_File_hdfMatlab::check_or_open_pix_dataset: Error reading mdd data axis attribute: "<<mdd_attrib_names[axis]<<std::endl;
+        throw(Exception::FileError(err.str(),this->File_name));
+    }
+    if (kind!=double_cellarray){
+        throw(Exception::FileError("wrong type identifyed reading data axis",this->File_name));
+    }
+    // transform 2D array of axis into N-D vector of axis vectors;
+    int nData=arr_dims_vector[0]*arr_dims_vector[1];
+    double filler = *((double *)(data)+nData);
+    std::vector<double> **rez    =(std::vector<double> **)transform_array2cells(data,arr_dims_vector,rank,kind,&filler);
+    if(MAX_MD_DIMS_POSSIBLE<=arr_dims_vector[0]){
+        throw(Exception::FileError("file_hdf_Matlab::read_MDImg_data=>algorithm error: number of the data axis in mdd structure residing in file has to be less then MAX_NDIMS_POSSIBLE",this->File_name));
+    }
+    // This is nesessary for linear axis as n-bins has been already defined, but this operation defines axis within proper limits;
+        for(i=0;i<nDims;i++){
+          unsigned int dim_lentgh=(unsigned int)rez[i]->size();
+		  // this provides number of points along an axis and axis has nBins+1 points
+		  if(dim_lentgh > 1) dim_lentgh--;
+          delete rez[i];
+		  DND_shape.pDimDescription(i)->nBins = dim_lentgh;
+    }  
+	// we need to set expanded instead
+    delete [] data;
+    delete [] rez;
+    arr_dims_vector.clear();
+// ***> because of this operator the function accepts full 4D dataset only; if we want accept 1,2 and 3D dataset we need to read pax 
+// iax,iint and variable number of p and process them properly;
+
+
+	H5Gclose(descriptors_DSID);
+	// tags are not currently written into HDF matlab format, so we have to hard code it here;
+     std::vector<std::string> tags(4,"");
+	 unsigned int indMax = (nDims<4)?nDims:4;
+	 tags[0]="qx";
+	 tags[1]="qy";
+	 tags[2]="qz";
+	 tags[3]="en";
+	 for(i=0;i<indMax;i++){
+		 DND_shape.pDimDescription(i)->Tag = tags[i];
+
+	 }
+
+
+
+	
+}
+
+void 
+MD_File_hdfMatlab::read_MDImg_data(MDImage & dnd)
+{
+// The function accepts full 4D dataset only!!!
+#ifdef  HDF_1_6
+    hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str()); // ,H5P_DEFAULT);
+#else
+    hid_t h_signal_DSID=H5Dopen(file_handler,this->mdd_field_names[DatasetName].c_str(),H5P_DEFAULT);
+#endif
+
+    if (h_signal_DSID<0){
+        f_log.error()<<"MD_File_hdfMatlab::read_MDImg_data: can not open multidimensional dataset "<<this->mdd_field_names[DatasetName]<<std::endl;
+        throw(Exception::FileError("MD_File_hdfMatlab::check_or_open_pix_dataset: Can not open the hdf mdd dataset",this->File_name));
+    }
+    std::vector<int> arr_dims_vector;
+    herr_t err;
+  
+ 
+  // get pointer to MD structure which should be read from memory
+   MD_img_data *pMD_struct  = dnd.get_pMDImgData();
+   if(!pMD_struct->data){
+	   f_log.error()<<"MD_File_hdfMatlab::read_MDImg_data: Image data structures have not been allocated properly\n";
+	   throw(std::runtime_error("Image data structures have not been allocated properly"));
+   }
+//-------------------------------------------------------------------------
+// read the dataset itself
+// 1) create mem datatype to read data into. 
+
+    hsize_t arr_dims_buf_[MAX_MD_DIMS_POSSIBLE];
+    arr_dims_buf_[0] = 3;
+    hid_t   memtype = H5Tarray_create2(H5T_NATIVE_DOUBLE, 1, arr_dims_buf_);
+
+/* TODO: write this check!!!
+    // check if the datasize has been calculated properly
+    if(real_data_size!=dnd.data_size){
+        std::stringstream err;
+        err<<"file_hdf_Matlab::read_dnd: dataSize calculated from dimensions= "<<dnd.data_size<<" But real dataSize="<<real_data_size<<std::endl;
+        throw(errorMantid(err.str()));
+    }
+*/
+    double *buf = new double[3*(pMD_struct->data_size+1)];
+    //** Read the data.   
+    err = H5Dread (h_signal_DSID, memtype, H5S_ALL, H5S_ALL, H5P_DEFAULT, buf);
+    if (err){
+		f_log.error()<<"error reading MD image data from the dataset "<<this->mdd_field_names[DatasetName]<<" located in file"<<this->File_name<<std::endl;
+        throw(Exception::FileError("error reading MD image data from the file",this->File_name));
+    }
+    MD_image_point *pData = pMD_struct->data;
+// transform the data into the format specified 
+mp_points_locations.resize(pMD_struct->data_size);
+pData[0].s   =buf[0];
+pData[0].err =buf[1];
+pData[0].npix=(size_t)buf[2];
+mp_points_locations[0] = 0;
+size_t nCells = pMD_struct->data_size;
+for(unsigned long i=1;i<nCells;i++){
+    pData[i].s   =buf[i*3+0];
+    pData[i].err =buf[i*3+1];
+    pData[i].npix=(size_t)buf[i*3+2];
+    mp_points_locations[i]=mp_points_locations[i-1]+pData[i-1].npix;
+}
+delete [] buf;
+pMD_struct->npixSum = mp_points_locations[nCells-1]+pData[nCells-1].npix;
+
+H5Tclose(memtype);
+
+H5Dclose(h_signal_DSID);
+
+}
+//***************************************************************************************
+/// TODO: identify the service information for pixels and if we should read it here; Currently it returns things related to one pixel only
+Mantid::MDDataObjects::MDPointDescription 
+MD_File_hdfMatlab::read_pointDescriptions(void)const
+{
+	// this data are currently hard-coded in Horace Matlab data file. 
+    std::vector<std::string> dataTags(9);
+	dataTags[0]="qx";
+	dataTags[1]="qy";
+	dataTags[2]="qz";
+	dataTags[3]="en";
+	dataTags[4]="S";
+	dataTags[5]="err";
+	dataTags[6]="runID";
+	dataTags[7]="pixID";
+	dataTags[8]="enID";
+
+	MDPointStructure defaultPixel;
+	defaultPixel.DimIDlength =4;
+	defaultPixel.SignalLength=4;
+	defaultPixel.NumPixCompressionBits=0;
+
+	MDPointDescription PixSignature(defaultPixel,dataTags);
+	char *buf(NULL);
+	pReader  = new MDDataPointEqual<float,uint32_t,float>(buf,PixSignature);
+
+	return PixSignature;
+}
+ 
+uint64_t
+MD_File_hdfMatlab::getNPix(void)
+{
+    if(this->file_handler<0)return -1;
+
+    this->check_or_open_pix_dataset();
+ 
+    hsize_t *data;
+
+  // Analyse pixels array to indentify number of the pixels contributed into the mdd dataset
+    hid_t pixels_space = H5Dget_space(this->pixel_dataset_h);
+    if(pixels_space<=0){
+         throw(Exception::FileError("can not get space for pixel dataset",this->File_name));
+    }
+    int nDims = H5Sget_simple_extent_ndims(pixels_space);
+    if(nDims<=0){
+         throw(Exception::FileError("can not obtain pixel dataset dimensions",this->File_name));
+    }
+    hsize_t nPixels=0;
+    data = new hsize_t[nDims];
+    H5Sget_simple_extent_dims(pixels_space, data, NULL) ;
+    nPixels = data[0];
+  
+    delete [] data;
+    
+    H5Sclose(pixels_space);
+    return nPixels;
+}
+//***************************************************************************************
+
+bool
+MD_File_hdfMatlab::read_pix(MDDataPoints & sqw)
+{ 
+
+    unsigned long i;
+    matlab_attrib_kind kind;
+    std::vector<int> arr_dims_vector;
+
+    void *data;
+    // pixels dims dataset is the 1D dataset of the array datatype
+    hsize_t  pix_dims[1],pix_dims_max[1];
+// the variable was_opened identify if we have to close dataset after finishing with it (may be not if partial IO operations expected)
+    bool was_opened=this->check_or_open_pix_dataset();
+
+    if(this->pixel_dataspace_h<0){
+        this->pixel_dataspace_h  = H5Dget_space(this->pixel_dataset_h);
+    }
+
+    int rank         = H5Sget_simple_extent_ndims(pixel_dataspace_h);
+    if(rank!=1){
+        throw(Exception::FileError("MD_File_hdfMatlab::read_pix: the pixel dataspace format differs from the one expected",this->File_name));
+    }
+    H5Sget_simple_extent_dims(pixel_dataspace_h,pix_dims,pix_dims_max);    
+// Find and read n-pixels attribute to indentify number of the pixels contributed into the mdd dataset
+    bool ok=read_matlab_field_attr(this->pixel_dataset_h,"n_pixels",data,arr_dims_vector,rank,kind,this->File_name);
+    if(!ok){
+        throw(Exception::FileError("MD_File_hdfMatlab::read_pix: Error reading npix sqw attribute",this->File_name));
+    }
+
+    delete [] data;
+    arr_dims_vector.clear();
+
+    uint64_t n_pix_inDataset  = this->getNPix();
+	if(!pReader){
+		f_log.error()<<" attempting to read pixels before the pixel description has been defined\n";
+		throw(std::runtime_error(" incorrect logic, attempt to read the data before the data description"));
+	}
+	// get the packer, which works with the pixel structure according to the description, read earlier;
+    MDDataPointEqual<float,uint32_t,float>  *pPacker = reinterpret_cast<MDDataPointEqual<float,uint32_t,float> *>(pReader);
+	// size of one data point
+	unsigned int pix_size = pPacker->sizeofMDDPoint();
+
+
+    // It is possible thone can not allocate the array needed to place all pixels in the pixel buffer. In this case this function has to fail as it is 
+    // not possible to read all pixels into memory;
+	char * pix_array;
+	try{
+		size_t max_npix_in_buf(0);
+		if(n_pix_inDataset>~max_npix_in_buf){
+			throw(std::runtime_error("too many pixels to place in memory for given architecture "));
+		}else{
+			max_npix_in_buf= (size_t)n_pix_inDataset;
+		}
+		std::vector<char> *pa = sqw.get_pBuffer(pix_size*max_npix_in_buf);
+		pix_array             = &(*pa)[0];
+	}catch(std::bad_alloc &){
+		f_log.information()<<" pixel array of "<<n_pix_inDataset<<" pixels can not be placed in memory\n";
+	    sqw.set_file_based();
+	    return false;
+	}
+	pPacker->setBuffer(pix_array);
+
+    // we can read pixels and ready now can try to do it. 
+    hid_t type      = H5Dget_type(this->pixel_dataset_h);
+    if(type<0){
+        throw(Exception::FileError("MD_File_hdfMatlab::read_pix: can not obtain pixels dataset datatype",this->File_name));
+    }
+
+ 
+    hid_t data_type=H5Tget_native_type(type,H5T_DIR_ASCEND);
+    if(data_type<0){
+        throw(Exception::FileError("can not identify native datatype for pixels dataset",this->File_name));
+    }
+
+    char *pix_buf;
+    try{
+       pix_buf = new char[(size_t)(n_pix_inDataset*pix_size)];
+   }catch(std::bad_alloc &){
+       f_log.information()<<" can not allocate memory for auxiliary pixels data\n";
+	   sqw.set_file_based();
+       return false; // bad alloc thrown
+    }
+    
+    herr_t err=H5Dread(this->pixel_dataset_h, type,H5S_ALL, H5S_ALL, this->file_access_mode,pix_buf);   
+    if(err){
+        throw(Exception::FileError("Error reading the pixels dataset",this->File_name));
+    }
+    size_t  nCellPic(0);
+    size_t   nPixel(0);
+
+	float    s_dim_fields[6];
+    uint32_t  ind_fields[3];
+
+ 
+	try{
+		std::vector<char> *outData = sqw.get_pBuffer(n_pix_inDataset);
+        pPacker->setBuffer(&(*outData)[0]);
+	}catch(std::bad_alloc &){
+
+	}
+   
+    for(i=0;i<n_pix_inDataset;i++){
+          s_dim_fields[0] =           *((float*)(pix_buf+nPixel*pix_size+0)); //  sqw.pix_array[i].qx   
+          s_dim_fields[1] =           *((float*)(pix_buf+nPixel*pix_size+1)); // sqw.pix_array[i].qy 
+          s_dim_fields[2] =           *((float*)(pix_buf+nPixel*pix_size+2)); // sqw.pix_array[i].qz
+          s_dim_fields[3] =           *((float*)(pix_buf+nPixel*pix_size+3)); // sqw.pix_array[i].En
+          ind_fields[0]   =  (uint32_t)   (*((float*)(pix_buf+nPixel*pix_size+4)));    // sqw.pix_array[i].irun 
+          ind_fields[1]   =  (uint32_t)   (*((float*)(pix_buf+nPixel*pix_size+5)));   // sqw.pix_array[i].idet
+          ind_fields[2]   =  (uint32_t)   (*((float*)(pix_buf+nPixel*pix_size+6))); // sqw.pix_array[i].ien
+          s_dim_fields[4] =           *((float*)(pix_buf+nPixel*pix_size+7)); // sqw.pix_array[i].s 
+          s_dim_fields[5] =           *((float*)(pix_buf+nPixel*pix_size+8));  // sqw.pix_array[i].err
+
+          nPixel++;
+          pPacker->setData(i,s_dim_fields,ind_fields);
+   }
+   delete [] pix_buf;
+
+    H5Tclose(type);
+    if(!was_opened){ // if we opened it in this program, we should close it now. 
+        H5Sclose(this->pixel_dataspace_h);
+        H5Dclose(this->pixel_dataset_h);
+        this->pixel_dataset_h=-1;
+        this->pixel_dataspace_h=-1;
+    }
+    return true;
+}
+
+size_t 
+MD_File_hdfMatlab::read_pix_subset(const MDImage &DND,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf,size_t &n_pix_in_buffer)
+{
+// open pixel dataset and dataspace if it has not been opened before;
+    n_pix_in_buffer=0;
+    this->check_or_open_pix_dataset();
+    bool pixel_dataspece_opened(false);
+
+    // get access to pixels allocation table;
+    const MD_image_point * pData = DND.get_const_pData();
+    // get pixel dataspece and open it if it has not been done before;
+    if(this->pixel_dataspace_h<0){
+    
+        this->pixel_dataspace_h  = H5Dget_space(this->pixel_dataset_h);
+        if(this->pixel_dataspace_h<0){
+            throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: can not get pixels dataspace",this->File_name));
+        }
+    }else{
+        pixel_dataspece_opened=true;
+    }
+    // define the format of the data point (pixel)
+	// get the packer, which works with the pixel structure according to the description, read earlier;
+    MDDataPointEqual<float,uint32_t,float>  *pPacker = reinterpret_cast<MDDataPointEqual<float,uint32_t,float> *>(pReader);
+	// size of one data point
+	unsigned int pix_size = pPacker->sizeofMDDPoint();
+	pPacker->setBuffer(&pix_buf[0]);
+
+// identify the cells to read and maximal buffer size necessary to do the preselection;
+    size_t max_npix_in_buffer(0),max_npix_selected(0),npix_tt;
+    size_t i,j,n_selected_cells,n_cells_processed(0);
+    size_t n_cells_final(selected_cells.size());
+    size_t nPix_buf_size = pix_buf.size()/pix_size;
+
+    n_selected_cells=n_cells_final-1;     
+    for(i=starting_cell;i<n_cells_final;i++){
+        npix_tt             =pData[selected_cells[i]].npix; 
+        max_npix_in_buffer +=npix_tt;
+
+        if(max_npix_in_buffer<=nPix_buf_size){
+            max_npix_selected=max_npix_in_buffer;
+            n_cells_processed++;
+        }else{
+            // if one cell does not fit the buffer, we should increase buffer size .     
+            if(i==starting_cell){
+                pix_buf.resize(max_npix_in_buffer*pix_size);
+				pPacker->setBuffer(&pix_buf[0]);
+                nPix_buf_size = max_npix_in_buffer;
+                n_selected_cells=i;
+                n_cells_processed=1;
+            }else{
+                n_selected_cells=i-1;
+                max_npix_in_buffer -=npix_tt;
+            }
+            break;
+        }
+    }
+    
+
+    if(pix_buf.capacity()<max_npix_in_buffer*pix_size){
+        pix_buf.resize(max_npix_in_buffer*pix_size);
+		pPacker->setBuffer(&pix_buf[0]);
+    }
+
+
+    if(max_npix_in_buffer==0){
+        if(!pixel_dataspece_opened){
+            H5Sclose(this->pixel_dataspace_h);
+            this->pixel_dataspace_h=-1;
+        }
+
+        return n_cells_processed;
+    }
+
+
+    hid_t type      = H5Dget_type(this->pixel_dataset_h);
+    if(type<0){
+        throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: can not obtain pixels dataset datatype",this->File_name));
+    }
+    time_t start,end;
+    time(&start);  //***********************************************>>>
+
+   // identify the indexes of the preselected pixels;
+    std::vector<hsize_t> cells_preselection_buf;
+    cells_preselection_buf.resize(max_npix_selected);
+    size_t ic(0);
+    uint64_t max_npix_indataset = this->getNPix();
+    uint64_t pixel_num,block_location;
+    for(i=starting_cell;i<=n_selected_cells;i++){
+        npix_tt          =pData[selected_cells[i]].npix; 
+        block_location   =mp_points_locations[selected_cells[i]];
+        for(j=0;j<npix_tt;j++){
+            pixel_num=block_location+j;
+            // this to go around the bug in hdf dataset creation. 
+            if(pixel_num>=max_npix_indataset){
+              continue;
+            }
+            cells_preselection_buf[ic]=pixel_num;
+            ic++;
+         }
+    }
+    herr_t err=H5Sselect_elements(this->pixel_dataspace_h, H5S_SELECT_SET,ic,&cells_preselection_buf[0]);
+     if(err<0){
+        throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: error while doing pixels preselection",this->File_name));
+    }
+    hsize_t max_npix[2];
+    max_npix[0]=max_npix_selected;
+    max_npix[1]=0;
+    hid_t  mem_space = H5Screate_simple(1,max_npix,NULL);
+    H5Sselect_all(mem_space);
+    time(&end);     //***********************************************<<<<
+    std::stringstream message; 
+    message<<" Dataset preselected in: "<<difftime (end,start)<<" sec\n";
+    f_log.debug(message.str());
+	// questionable;
+	cells_preselection_buf.clear();
+    time(&start);  //***********************************************>>>
+    char *bin_pix_buf = new char[(max_npix_selected+1)*(pix_size)];
+ //  herr_t H5Dread(hid_t dataset_id, hid_t mem_type_id, hid_t mem_space_id, hid_t file_space_id, hid_t xfer_plist_id, void * buf  ) 
+    err  =  H5Dread(this->pixel_dataset_h, type,mem_space, this->pixel_dataspace_h, this->file_access_mode,bin_pix_buf);   
+    if(err){
+        throw(Exception::FileError("MD_File_hdfMatlab::read_pix_subset: Error reading the pixels dataset",this->File_name));
+    }else{
+        n_pix_in_buffer=max_npix_selected;
+    }
+    time(&end); //***********************************************<<<<
+    message.clear();
+    message<<" Dataset read  in: "<<difftime (end,start)<<" sec\n";
+    f_log.debug(message.str());
+
+    float    sig_dim_Fields[6];
+    uint32_t ind_fields[3];
+  
+
+
+    time(&start);  //***********************************************>>>
+    for(i=0;i<max_npix_selected;i++){
+          sig_dim_Fields[0] =           *((float *)(bin_pix_buf+i*pix_size+0)); //  sqw.pix_array[i].qx   
+          sig_dim_Fields[1] =           *((float *)(bin_pix_buf+i*pix_size+1)); // sqw.pix_array[i].qy 
+          sig_dim_Fields[2] =           *((float *)(bin_pix_buf+i*pix_size+2)); // sqw.pix_array[i].qz
+          sig_dim_Fields[3] =           *((float *)(bin_pix_buf+i*pix_size+3)); // sqw.pix_array[i].En
+          ind_fields[0]  =              *((uint32_t *)(bin_pix_buf+i*pix_size+4));    // sqw.pix_array[i].irun 
+          ind_fields[1]  =              *((uint32_t *)(bin_pix_buf+i*pix_size+5));   // sqw.pix_array[i].idet
+          ind_fields[2]  =              *((uint32_t *)(bin_pix_buf+i*pix_size+6)); // sqw.pix_array[i].ien
+          sig_dim_Fields[4] =           *((float *)(bin_pix_buf+i*pix_size+7)); // sqw.pix_array[i].s 
+          sig_dim_Fields[5] =           *((float *)(bin_pix_buf+i*pix_size+8));  // sqw.pix_array[i].err
+
+
+          pPacker->setData(i,sig_dim_Fields,ind_fields);
+ 
+    }
+    delete [] bin_pix_buf;
+    time(&end); //***********************************************<<<<
+    
+    message.clear();
+    message<<" Dataset converted in: "<<difftime (end,start)<<" sec\n";
+    f_log.debug(message.str());
+
+    time(&start);  //***********************************************>>>
+
+    H5Sclose(mem_space);
+    H5Tclose(type);
+    if(!pixel_dataspece_opened){
+        H5Sclose(this->pixel_dataspace_h);
+        this->pixel_dataspace_h=-1;
+    }
+     
+
+
+//    nPix_buf_size=max_npix_selected;
+    time(&end); //***********************************************<<<<
+
+    message.clear();
+    message<<" closing all while returning from file_hdf_read : "<<difftime (end,start)<<" sec\n";
+    f_log.debug(message.str());
+
+    return n_cells_processed;
+}
+
+MD_File_hdfMatlab::~MD_File_hdfMatlab(void)
+{
+    if(this->pixel_dataspace_h>0){  H5Sclose(pixel_dataspace_h);
+    }
+
+    if(this->pixel_dataset_h>0){    H5Dclose(pixel_dataset_h);
+    }
+    if(this->file_handler>0)   {    H5Fclose(this->file_handler);
+    }
+	if(pReader!=NULL){
+		delete reinterpret_cast<MDDataPointEqual<float,uint32_t,float> *>(pReader);
+	}
+
+ }
+bool
+read_matlab_field_attr(hid_t group_ID,const std::string &field_name,void *&data, std::vector<int> &dims,int &rank,matlab_attrib_kind &kind,const std::string &file_name)
+{
+/*
+  The function is the interface to the attributes written by MATLAB horace hdf
+
+  MATLAB hdf crashes writing cell arrays or empty datasets, so tricks are implemented to encode such structures into hdf
+  empty datasets are marked by special attribute, and cellarrays are written as an regular 2D array of max dimension with filler
+
+  The function returns the array of the data written by Horace hdf and identifies its kind
+
+% function reads the a dataset from hdf5 location  defined by group_ID
+% Because of HDF5-matlab bug, the function has to be used to read data written by
+% MATLAB functions write_attrib_list  and write_fields_list_attr  functions only
+%
+% Inputs:
+% group_ID    -- hdf5 dataset or group location;
+% field_name  -- list of the entries to read;
+%
+% Output:
+% data        -- the allocatable array  to place the read data into; has to be deallocated in main program if not being used
+% dims        -- vector-array of dataset dimensions, 1 for a scalar
+% rank        -- number of dataset dimensions, 0 for scalar, 1 for 1D and 2 for 2D arrays
+%                does not support more than 2D arrays at the moment;
+% kind        -- parameter, which describes the kind of the data actually read by the function. The calling program
+%                supposed to know what kind of data it asks for (to reinterpred the void at least),
+%                and can use this parameter to verify if it really get what it asked for
+%
+%             Key-words are used to incode unsupported data formats
+%             These key-words can not be present in the fiedls_names list:
+% EMPTY_  and FILLER_
+
+%
+% V1: AB on 20/03/2010
+%
+%
+% HORACE Revision: 438  (Date: 2010-04-27 13:23:01 +0100 (Tue, 27 Apr 2010) )
+%
+*/
+bool filler_present(false);  // the array of variable length vectors or string is written but it is written as 2D array (MATLAB hdf bug)
+int i;
+char prim_kind;  // character or double
+double filler_buf; // where to read the data filler if one exists
+hsize_t data_size;
+
+
+if(!H5Aexists(group_ID, field_name.c_str())){ // then may be the dataset is empty
+     std::string new_field_name="EMPTY_"+field_name;
+    // only attribute presence is identified, but attribute itself is empty (MATLAB hdf bug)
+     if(H5Aexists(group_ID, new_field_name.c_str())){ // the attribute exists and it is empty
+        rank=0;
+        dims.clear();
+        data = NULL;
+        kind = empty;
+        return true;
+     }else{
+        return false;
+     }
+}
+
+// open
+hid_t attr     = H5Aopen(group_ID, field_name.c_str(), H5P_DEFAULT);
+if (attr<=0){
+    std::stringstream err;
+    err<<"read_matlab_field_attr: error opening existing attribute: "<<field_name<<std::endl;
+    throw(Exception::FileError(err.str(),file_name));
+}
+// learn all about the dataset; MATLAB written datasets are simple arrays or scalars or characters
+// as this is the attribute, the size of the array can be only limited;
+ hid_t   type     = H5Aget_type(attr);
+ if (type==H5T_NATIVE_UCHAR||type==H5T_NATIVE_CHAR||type==H5T_NATIVE_SCHAR){
+      prim_kind='C';
+ }else{
+      prim_kind='D';
+ }
+
+ hsize_t *t_dims;
+ hid_t  space     = H5Aget_space(attr);
+ int    ndims     = H5Sget_simple_extent_ndims(space) ;
+ if(ndims==0){  // scalar
+     rank=1;
+     t_dims           = new hsize_t[1];
+     t_dims[0]        = 1;
+     kind             = double_scalar;
+ }else{
+     t_dims           = new hsize_t[ndims];
+     rank             = H5Sget_simple_extent_dims(space,t_dims,NULL) ;
+     kind             = double_array;
+     if (rank>2){
+         throw(Exception::FileError("MATLAB HORACE reader does not currently understand arrays of more then 2 dimesions",file_name));
+     }
+
+ }
+ data_size=1;
+ for(i=0;i<ndims;i++){
+     data_size*= t_dims[i];
+ }
+
+ //hid_t  type_name = H5Tget_class(type);
+
+
+ if(rank==2||(prim_kind=='C'&&rank==1)){ //  % the array can be the representation of a cellarray (MATLAB hdf bug)
+     // presence of filler attribute will tell if this is the case
+     std::string filler_name="FILLER_"+field_name;
+
+     if(H5Aexists(group_ID, filler_name.c_str())){
+        filler_present=true;
+        if(prim_kind=='C'){
+              kind = char_cellarray;
+        }else{
+             kind = double_cellarray;
+        }
+
+        hid_t attr_f = H5Aopen(group_ID, filler_name.c_str(),H5P_DEFAULT);
+        if (attr_f<=0){
+              std::stringstream err;
+              err<<"read_matlab_field_attr: error opening existing Filler attribute: "<<filler_name<<std::endl;
+              throw(Exception::FileError(err.str(),file_name));
+        }
+        hid_t type_f = H5Aget_type(attr_f);
+        herr_t err = H5Aread(attr_f, type_f,&filler_buf);
+        if(err<0){
+              std::stringstream err;
+              err<<"read_matlab_field_attr: error reading existing Filler attribute: "<<filler_name<<std::endl;
+              throw(Exception::FileError(err.str(),file_name));
+        }
+//
+//        rez = transform_array2cells(rez,filler,type_name);
+           H5Tclose(type_f);
+           H5Aclose(attr_f);
+
+    }
+
+ }
+ // expand output array by one to arrange make place for filler, placed there
+ if (filler_present) data_size++;
+
+
+ if (prim_kind=='C'){
+    data = new char[(size_t)data_size];
+    if(filler_present) *((char *)(data)+data_size-1)=*((char*)(&filler_buf));
+
+ }else{
+    data = new double[(size_t)data_size];
+    if(filler_present) *((double *)(data)+data_size-1)=filler_buf;
+ }
+ herr_t err = H5Aread(attr, type,data);
+ if (err<0){
+     std::stringstream err;
+     err<<"read_matlab_field_attr: error reading attribute: "<<field_name<<std::endl;
+     throw(Exception::FileError(err.str(),file_name));
+ }
+
+
+ H5Sclose(space);
+ H5Tclose(type);
+ H5Aclose(attr);
+ for(i=0;i<ndims;i++){
+    dims.push_back(int(t_dims[i]));
+ }
+delete [] t_dims;
+
+return true;
+}
+//***************************************************************************************************************
+void ** 
+transform_array2cells(void *data, std::vector<int> dims,int rank,matlab_attrib_kind kind,void *pFiller)
+{
+/* MATLAB Horace dataset compartibility function 
+  it takes the data in the form of an array with filler and returns 
+  array of strings or array of variable length vectors depending on kind of the data
+
+function cellarray=transform_array2cells(rdata,filler,type_name)
+% function constructs selarray from array rdata, written to the hdf file
+% instead of variable length array to avoid hdf5-matlab bug;
+*/
+    int i,j;
+    int nData(dims[0]);
+    int length(dims[1]);
+    switch(kind){
+        case char_cellarray: {
+            std::string ** rez=(new std::string *[nData]);
+            char *arr = (char*)(data);
+            char filler=*((char *)pFiller);
+            char data;
+
+            for(i=0;i<nData;i++){
+                rez[i] = new std::string;
+                for(j=0;j<length;j++){
+                    data=arr[i*length+j];
+                    if(data != filler){
+                        rez[i]->push_back(data);
+                    }else{
+                        break;
+                    }
+                }
+            }
+
+            return (void **)rez;
+        }
+        case double_cellarray: {
+            std::vector<double> **rez= new std::vector<double> *[nData];
+            double *arr = (double*)(data);
+            double filler=*((double *)pFiller);
+            double data;
+
+            for(i=0;i<nData;i++){
+                rez[i] = new std::vector<double>;
+                rez[i]->reserve(length);
+                for(j=0;j<length;j++){
+                    data=arr[i*length+j];
+                    if(data != filler){
+                        rez[i]->push_back(data);
+                    }else{
+                        break;
+                    }
+                }
+            }
+            return (void **)rez;
+
+        }
+        default: throw(std::invalid_argument("transform array2cells: unsupported datatype"));
+    }
+    return NULL;
+}
+
+
+}
+}
diff --git a/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfV1.cpp b/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfV1.cpp
index ff1c0a985a9b61ca29294a28533608bc64571cae..c76cd95238df097f34a2d1b2df37f83e2a60bfe8 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfV1.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/MD_File_hdfV1.cpp
@@ -1,22 +1,22 @@
-#include "MDDataObjects/MD_File_hdfV1.h"
-#include "MDDataObjects/MDDataPoint.h"
-
-namespace Mantid{
-namespace MDDataObjects{
-
-//
-MDPointDescription 
-MD_File_hdfV1::read_pointDescriptions(void)const
-{
-	return Mantid::MDDataObjects::MDPointDescription();
-}
-
-MD_File_hdfV1::MD_File_hdfV1(const char  *file_name):
-IMD_FileFormat(file_name)
-{
-	
-}
-
-
-} // end namespaces;
+#include "MDDataObjects/MD_File_hdfV1.h"
+#include "MDDataObjects/MDDataPoint.h"
+
+namespace Mantid{
+namespace MDDataObjects{
+
+//
+MDPointDescription 
+MD_File_hdfV1::read_pointDescriptions(void)const
+{
+	return Mantid::MDDataObjects::MDPointDescription();
+}
+
+MD_File_hdfV1::MD_File_hdfV1(const char  *file_name):
+IMD_FileFormat(file_name)
+{
+	
+}
+
+
+} // end namespaces;
 }
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/src/stdafx.cpp b/Code/Mantid/Framework/MDDataObjects/src/stdafx.cpp
index bf8b046a64af67b181a4f82a7455333f50d7bdc3..c76898ad16deb44c6a246111b3c4f71222476b24 100644
--- a/Code/Mantid/Framework/MDDataObjects/src/stdafx.cpp
+++ b/Code/Mantid/Framework/MDDataObjects/src/stdafx.cpp
@@ -1,9 +1,9 @@
-// stdafx.cpp : source file that includes just the standard includes
-// sqw_hdf.pch will be the pre-compiled header
-// stdafx.obj will contain the pre-compiled type information
-
-#include "MDDataObjects/stdafx.h"
-
-
-// TODO: reference any additional headers you need in STDAFX.H
-// and not in this file
+// stdafx.cpp : source file that includes just the standard includes
+// sqw_hdf.pch will be the pre-compiled header
+// stdafx.obj will contain the pre-compiled type information
+
+#include "MDDataObjects/stdafx.h"
+
+
+// TODO: reference any additional headers you need in STDAFX.H
+// and not in this file
diff --git a/Code/Mantid/Framework/MDDataObjects/test/HoraceReaderTest.h b/Code/Mantid/Framework/MDDataObjects/test/HoraceReaderTest.h
index 7ad36a1b038614a85ce8d33fc95ce1fef54efb81..0bbb84640d0712b8307a4b8dc4e28d87f5282429 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/HoraceReaderTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/HoraceReaderTest.h
@@ -1,272 +1,272 @@
-#ifndef MD_HORACE_READER_TEST_H
-#define MD_HORACE_READER_TEST_H
-
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MD_FileFormatFactory.h"
-#include <Poco/Path.h>
-#include "MantidKernel/System.h"
-#include "MantidAPI/FileFinder.h"
-
-#include "MDDataObjects/MD_FileHoraceReader.h"
-#include "MDDataObjects/MDImage.h"
-#include "MDDataObjects/MDDataPoints.h"
-#include <boost/algorithm/string/case_conv.hpp>
-
-using namespace Mantid;
-using namespace MDDataObjects;
-
-class HoraceReaderTester: public HoraceReader::MD_FileHoraceReader
-{
-public: 
-  HoraceReaderTester(const char *file_name):
-      HoraceReader::MD_FileHoraceReader(file_name)
-      {
-
-        // proper field should start from: 
-        cdp.if_sqw_start = 18;
-        cdp.n_dims_start = 22;
-        cdp.sqw_header_start=26;
-        //cdp.component_headers_starts //= 106; 2 contributing files
-        cdp.detectors_start = 906;
-        cdp.data_start      = 676819;
-        cdp.n_cell_pix_start= 677679;
-        cdp.pix_start       = 678235;
-        //
-        nTestDim = 4;
-        nTestFiles=2;
-        nTestPixels=1523850;
-
-      }
-      size_t getNConributedPixels()const{return nTestPixels;}
-      int check_values_correct(){
-        int rez = 0;
-        if(cdp.if_sqw_start != positions.if_sqw_start)          {std::cerr<<" pixels location differs from expected"      <<positions.if_sqw_start
-          <<" expected: " <<cdp.if_sqw_start<<std::endl; rez++;}
-        if(cdp.n_dims_start != positions.n_dims_start)          {std::cerr<<" n_dims location differs from expected"      <<positions.n_dims_start
-          <<" expected: " <<cdp.n_dims_start<<std::endl;  rez++;}
-        if(cdp.sqw_header_start != positions.sqw_header_start)  {std::cerr<<" sqw_header location differs from expected"  <<positions.sqw_header_start
-          <<" expected: " <<cdp.sqw_header_start<<std::endl;rez++;}
-        if(cdp.detectors_start != positions.detectors_start)    {std::cerr<<" detectors location differs from expected"   <<positions.detectors_start
-          <<" expected: " <<cdp.detectors_start<<std::endl; rez++;}
-        if(cdp.data_start != positions.data_start)              {std::cerr<<" data location differs from expected"        <<positions.data_start
-          <<" expected: " <<cdp.data_start<<std::endl; rez++;}
-        if(cdp.n_cell_pix_start != positions.n_cell_pix_start)  {std::cerr<<" cells pixels location differs from expected"<<positions.n_cell_pix_start
-          <<" expected: " <<cdp.n_cell_pix_start<<std::endl; rez++;}
-        if(cdp.pix_start != positions.pix_start)                {std::cerr<<" pixels location differs from expected"      <<positions.pix_start
-          <<" expected: " <<cdp.pix_start<<std::endl; rez++;}
-
-
-        if(nTestDim    != this->nDims)                          {std::cerr<<" number of dimensions differs from expected"<<this->nDims
-          <<" expected: "<< nTestDim<<std::endl; rez++;}
-        if(nTestFiles  != positions.component_headers_starts.size())  {std::cerr<<" number of contributing files differs from expected"<<positions.component_headers_starts.size()
-          <<" expected: "<<nTestFiles<<std::endl; rez++;}
-        if(nTestPixels != this->nDataPoints)                    {std::cerr<<" number of dataPoints differs  from expected"<<this->nDataPoints 
-          <<" expected: "<< nTestPixels<<std::endl; rez++;}
-        return rez;
-      }
-private:
-  // correct data positions in the file test_horace_reader.sqw;
-  HoraceReader::data_positions cdp;
-  int nTestDim,nTestFiles,nTestPixels;
-};
-
-class HoraceReaderTest :    public CxxTest::TestSuite
-{
-public:
-  void testConstructor(){
-    std::string testFile = API::FileFinder::Instance().getFullPath("test_horace_reader.sqw");
-
-    TSM_ASSERT_THROWS_NOTHING("Can not construct file reader, all tests will fail",pReader = 
-      std::auto_ptr<HoraceReaderTester>(new HoraceReaderTester(testFile.c_str())));
-  }
-  void testValuesReadCorrectly(){
-    TSM_ASSERT_EQUALS("Number of values from the test file have not been read correctly",pReader->check_values_correct(),0);
-  }
-  void testGetNpixCorrect(){
-    TSM_ASSERT_EQUALS("Not getting proper Number of pixels contiributed into dataset",1523850,pReader->getNPix());
-  }
-
-  void testReadBasis(){
-    // this is currently hardcoded so no problem shouls be here but it will read crystall in a futute. 
-    TSM_ASSERT_THROWS_NOTHING("basis should be read without problem",pReader->read_basis(basis));
-
-  }
-  void testReadGeometry(){
-    // this constructor should be tested elsewhere
-    TSM_ASSERT_THROWS_NOTHING("Geometry description should be able to build from basis ",pGeomDescription = std::auto_ptr<Geometry::MDGeometryDescription>(new Geometry::MDGeometryDescription(basis)));
-    // and here is the test of reading
-    TS_ASSERT_THROWS_NOTHING(pReader->read_MDGeomDescription(*pGeomDescription));
-
-    // verify what has been read;
-  }
-  void testReadMDImgData(){
-    TSM_ASSERT_THROWS_NOTHING("MD Image has not been constructred by empty constructor",
-      pImg=std::auto_ptr<MDDataObjects::MDImage>(new MDDataObjects::MDImage(*pGeomDescription,basis)));
-
-
-    TSM_ASSERT_THROWS_NOTHING("MD image reader should not normaly throw",
-      this->pReader->read_MDImg_data(*pImg));
-
-    // check what has been read;	
-    TSM_ASSERT_THROWS_NOTHING("Image control sums should be coorrect",pImg->validateNPix());
-    //
-    TSM_ASSERT_EQUALS("Image has to be consistent witn MD data points",pReader->getNPix(),pImg->getNMDDPoints());  
-
-  }
-  void testReadAllPixels(){
-    MDPointDescription defaultDescr;
-    boost::shared_ptr<MDImage const> emptyImg = boost::shared_ptr<MDImage const>(new MDImage());
-    MDDataPointsDescription pd(defaultDescr);
-    MDDataPoints points(pd);
-    TSM_ASSERT_THROWS("You implemented the Horace all_pix reader, write test for it",pReader->read_pix(points),Kernel::Exception::NotImplementedError);
-  }
-  void testReadPixelsSelectionAll(){
-    // read all 
-    int nCells = this->pImg->getGeometry()->getGeometryExtend();
-
-    selected_cells.resize(nCells);
-    pix_buf.resize(pReader->getNConributedPixels()*9*8);
-
-    size_t starting_cell(0),n_cell_read;
-    size_t n_pix_in_buffer(0);
-    for(int i=0;i<nCells;i++){
-      selected_cells[i]=i;
-    }
-
-    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-
-    // check if the data coinside with what was put there;
-    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",1523850,n_pix_in_buffer);
-    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 64,n_cell_read);
-  }
-  void testReadFirst2Selection(){
-    // read first two (buffer is already allocated above)
-
-    size_t starting_cell(0),n_cell_read;
-    size_t n_pix_in_buffer(0);
-
-    selected_cells.resize(2);
-    selected_cells[0]=0;
-    selected_cells[1]=1;
-
-
-    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-
-    // check if the data coinside with what was put there;
-    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",77292,n_pix_in_buffer);
-    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 2,n_cell_read);
-  }
-  void testReadOneSelection(){
-    // read one (buffer is already allocated above)
-
-    size_t starting_cell(0),n_cell_read;
-    size_t n_pix_in_buffer(0);
-
-    selected_cells.resize(1);
-    selected_cells[0]=3;
-
-
-    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-
-    // check if the data coinside with what was put there;
-    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",1,n_pix_in_buffer);
-    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 1,n_cell_read);
-  }
-  void testRead2Selection(){
-    // read random two (buffer is already allocated above)
-    size_t starting_cell(0),n_cell_read;
-    size_t n_pix_in_buffer(0);
-
-    selected_cells.resize(2);
-    selected_cells[0]=3;
-    selected_cells[1]=10;
-
-
-    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-
-    // check if the data coinside with what was put there;
-    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",447,n_pix_in_buffer);
-    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 2,n_cell_read);
-
-  }
-
-  void testReadFirstLastSelection(){
-    size_t starting_cell(0),n_cell_read;
-    size_t n_pix_in_buffer(0);
-
-    selected_cells[0]=0;
-    selected_cells[1]=this->pImg->getGeometry()->getGeometryExtend()-1;
-
-    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-
-    // check if the data coinside with what was put there;
-    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",21496,n_pix_in_buffer);
-    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 2,n_cell_read);
-  }
-
-  void testReadSmallBufferSelectionResized(){
-    // read random two (buffer is already allocated above)
-    size_t starting_cell(0),n_cell_read;
-    size_t n_pix_in_buffer(0);
-
-    selected_cells[0]=1;
-    selected_cells[1]=10;
-    pix_buf.resize(100);
-
-    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-
-    // check if the data coinside with what was put there;
-    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",63006,n_pix_in_buffer);
-    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 1,n_cell_read);
-    TSM_ASSERT_EQUALS("Data buffer size differs from expected: ", n_pix_in_buffer*9*4,pix_buf.size());
-
-  }
-  void testReadSmallBufferSelection(){
-    // read random two (buffer is already allocated above)
-    size_t starting_cell(0);
-    size_t n_pix_in_buffer(0);
-
-    selected_cells.resize(3);
-    // cells should be usually sorted for efficiency but will do for the time being;
-    selected_cells[0]=3;
-    selected_cells[1]=1;
-    selected_cells[2]=10;
-
-    pix_buf.resize(100);
-
-    unsigned int ic(0);
-    while(starting_cell<selected_cells.size()){
-      TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
-        starting_cell=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
-      ic++;
-    }
-    // check if the data coinside with what was put there;
-    // the buffer size defived from the largest cell exceeding 100
-    TSM_ASSERT_EQUALS("Data buffer size differs from expected: ", 63006*9*4,pix_buf.size());
-    TSM_ASSERT_EQUALS("Number of cells read differs from expected: ",selected_cells.size(),starting_cell);
-    TSM_ASSERT_EQUALS("Number of read attempts differs from expected: ",3,ic);
-  }
-
-
-  void testWriteMDD(){
-    TSM_ASSERT_THROWS("Looks like Horace writer has been implemented, why? ",pReader->write_mdd(*pImg),Kernel::Exception::NotImplementedError);
-  }
-
-private:
-  std::auto_ptr<HoraceReaderTester> pReader;
-  // the components of the workspace which the reader supplies with data
-  Geometry::MDGeometryBasis basis;
-  std::auto_ptr<Geometry::MDGeometryDescription> pGeomDescription;
-  std::auto_ptr<MDDataObjects::MDImage> pImg;
-  //******************************************************************
-  std::vector<size_t> selected_cells;
-  std::vector<char> pix_buf;
-};
-
-#endif
+#ifndef MD_HORACE_READER_TEST_H
+#define MD_HORACE_READER_TEST_H
+
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MD_FileFormatFactory.h"
+#include <Poco/Path.h>
+#include "MantidKernel/System.h"
+#include "MantidAPI/FileFinder.h"
+
+#include "MDDataObjects/MD_FileHoraceReader.h"
+#include "MDDataObjects/MDImage.h"
+#include "MDDataObjects/MDDataPoints.h"
+#include <boost/algorithm/string/case_conv.hpp>
+
+using namespace Mantid;
+using namespace MDDataObjects;
+
+class HoraceReaderTester: public HoraceReader::MD_FileHoraceReader
+{
+public: 
+  HoraceReaderTester(const char *file_name):
+      HoraceReader::MD_FileHoraceReader(file_name)
+      {
+
+        // proper field should start from: 
+        cdp.if_sqw_start = 18;
+        cdp.n_dims_start = 22;
+        cdp.sqw_header_start=26;
+        //cdp.component_headers_starts //= 106; 2 contributing files
+        cdp.detectors_start = 906;
+        cdp.data_start      = 676819;
+        cdp.n_cell_pix_start= 677679;
+        cdp.pix_start       = 678235;
+        //
+        nTestDim = 4;
+        nTestFiles=2;
+        nTestPixels=1523850;
+
+      }
+      size_t getNConributedPixels()const{return nTestPixels;}
+      int check_values_correct(){
+        int rez = 0;
+        if(cdp.if_sqw_start != positions.if_sqw_start)          {std::cerr<<" pixels location differs from expected"      <<positions.if_sqw_start
+          <<" expected: " <<cdp.if_sqw_start<<std::endl; rez++;}
+        if(cdp.n_dims_start != positions.n_dims_start)          {std::cerr<<" n_dims location differs from expected"      <<positions.n_dims_start
+          <<" expected: " <<cdp.n_dims_start<<std::endl;  rez++;}
+        if(cdp.sqw_header_start != positions.sqw_header_start)  {std::cerr<<" sqw_header location differs from expected"  <<positions.sqw_header_start
+          <<" expected: " <<cdp.sqw_header_start<<std::endl;rez++;}
+        if(cdp.detectors_start != positions.detectors_start)    {std::cerr<<" detectors location differs from expected"   <<positions.detectors_start
+          <<" expected: " <<cdp.detectors_start<<std::endl; rez++;}
+        if(cdp.data_start != positions.data_start)              {std::cerr<<" data location differs from expected"        <<positions.data_start
+          <<" expected: " <<cdp.data_start<<std::endl; rez++;}
+        if(cdp.n_cell_pix_start != positions.n_cell_pix_start)  {std::cerr<<" cells pixels location differs from expected"<<positions.n_cell_pix_start
+          <<" expected: " <<cdp.n_cell_pix_start<<std::endl; rez++;}
+        if(cdp.pix_start != positions.pix_start)                {std::cerr<<" pixels location differs from expected"      <<positions.pix_start
+          <<" expected: " <<cdp.pix_start<<std::endl; rez++;}
+
+
+        if(nTestDim    != this->nDims)                          {std::cerr<<" number of dimensions differs from expected"<<this->nDims
+          <<" expected: "<< nTestDim<<std::endl; rez++;}
+        if(nTestFiles  != positions.component_headers_starts.size())  {std::cerr<<" number of contributing files differs from expected"<<positions.component_headers_starts.size()
+          <<" expected: "<<nTestFiles<<std::endl; rez++;}
+        if(nTestPixels != this->nDataPoints)                    {std::cerr<<" number of dataPoints differs  from expected"<<this->nDataPoints 
+          <<" expected: "<< nTestPixels<<std::endl; rez++;}
+        return rez;
+      }
+private:
+  // correct data positions in the file test_horace_reader.sqw;
+  HoraceReader::data_positions cdp;
+  int nTestDim,nTestFiles,nTestPixels;
+};
+
+class HoraceReaderTest :    public CxxTest::TestSuite
+{
+public:
+  void testConstructor(){
+    std::string testFile = API::FileFinder::Instance().getFullPath("test_horace_reader.sqw");
+
+    TSM_ASSERT_THROWS_NOTHING("Can not construct file reader, all tests will fail",pReader = 
+      std::auto_ptr<HoraceReaderTester>(new HoraceReaderTester(testFile.c_str())));
+  }
+  void testValuesReadCorrectly(){
+    TSM_ASSERT_EQUALS("Number of values from the test file have not been read correctly",pReader->check_values_correct(),0);
+  }
+  void testGetNpixCorrect(){
+    TSM_ASSERT_EQUALS("Not getting proper Number of pixels contiributed into dataset",1523850,pReader->getNPix());
+  }
+
+  void testReadBasis(){
+    // this is currently hardcoded so no problem shouls be here but it will read crystall in a futute. 
+    TSM_ASSERT_THROWS_NOTHING("basis should be read without problem",pReader->read_basis(basis));
+
+  }
+  void testReadGeometry(){
+    // this constructor should be tested elsewhere
+    TSM_ASSERT_THROWS_NOTHING("Geometry description should be able to build from basis ",pGeomDescription = std::auto_ptr<Geometry::MDGeometryDescription>(new Geometry::MDGeometryDescription(basis)));
+    // and here is the test of reading
+    TS_ASSERT_THROWS_NOTHING(pReader->read_MDGeomDescription(*pGeomDescription));
+
+    // verify what has been read;
+  }
+  void testReadMDImgData(){
+    TSM_ASSERT_THROWS_NOTHING("MD Image has not been constructred by empty constructor",
+      pImg=std::auto_ptr<MDDataObjects::MDImage>(new MDDataObjects::MDImage(*pGeomDescription,basis)));
+
+
+    TSM_ASSERT_THROWS_NOTHING("MD image reader should not normaly throw",
+      this->pReader->read_MDImg_data(*pImg));
+
+    // check what has been read;	
+    TSM_ASSERT_THROWS_NOTHING("Image control sums should be coorrect",pImg->validateNPix());
+    //
+    TSM_ASSERT_EQUALS("Image has to be consistent witn MD data points",pReader->getNPix(),pImg->getNMDDPoints());  
+
+  }
+  void testReadAllPixels(){
+    MDPointDescription defaultDescr;
+    boost::shared_ptr<MDImage const> emptyImg = boost::shared_ptr<MDImage const>(new MDImage());
+    MDDataPointsDescription pd(defaultDescr);
+    MDDataPoints points(pd);
+    TSM_ASSERT_THROWS("You implemented the Horace all_pix reader, write test for it",pReader->read_pix(points),Kernel::Exception::NotImplementedError);
+  }
+  void testReadPixelsSelectionAll(){
+    // read all 
+    int nCells = this->pImg->getGeometry()->getGeometryExtend();
+
+    selected_cells.resize(nCells);
+    pix_buf.resize(pReader->getNConributedPixels()*9*8);
+
+    size_t starting_cell(0),n_cell_read;
+    size_t n_pix_in_buffer(0);
+    for(int i=0;i<nCells;i++){
+      selected_cells[i]=i;
+    }
+
+    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+
+    // check if the data coinside with what was put there;
+    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",1523850,n_pix_in_buffer);
+    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 64,n_cell_read);
+  }
+  void testReadFirst2Selection(){
+    // read first two (buffer is already allocated above)
+
+    size_t starting_cell(0),n_cell_read;
+    size_t n_pix_in_buffer(0);
+
+    selected_cells.resize(2);
+    selected_cells[0]=0;
+    selected_cells[1]=1;
+
+
+    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+
+    // check if the data coinside with what was put there;
+    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",77292,n_pix_in_buffer);
+    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 2,n_cell_read);
+  }
+  void testReadOneSelection(){
+    // read one (buffer is already allocated above)
+
+    size_t starting_cell(0),n_cell_read;
+    size_t n_pix_in_buffer(0);
+
+    selected_cells.resize(1);
+    selected_cells[0]=3;
+
+
+    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+
+    // check if the data coinside with what was put there;
+    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",1,n_pix_in_buffer);
+    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 1,n_cell_read);
+  }
+  void testRead2Selection(){
+    // read random two (buffer is already allocated above)
+    size_t starting_cell(0),n_cell_read;
+    size_t n_pix_in_buffer(0);
+
+    selected_cells.resize(2);
+    selected_cells[0]=3;
+    selected_cells[1]=10;
+
+
+    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+
+    // check if the data coinside with what was put there;
+    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",447,n_pix_in_buffer);
+    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 2,n_cell_read);
+
+  }
+
+  void testReadFirstLastSelection(){
+    size_t starting_cell(0),n_cell_read;
+    size_t n_pix_in_buffer(0);
+
+    selected_cells[0]=0;
+    selected_cells[1]=this->pImg->getGeometry()->getGeometryExtend()-1;
+
+    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+
+    // check if the data coinside with what was put there;
+    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",21496,n_pix_in_buffer);
+    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 2,n_cell_read);
+  }
+
+  void testReadSmallBufferSelectionResized(){
+    // read random two (buffer is already allocated above)
+    size_t starting_cell(0),n_cell_read;
+    size_t n_pix_in_buffer(0);
+
+    selected_cells[0]=1;
+    selected_cells[1]=10;
+    pix_buf.resize(100);
+
+    TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+      n_cell_read=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+
+    // check if the data coinside with what was put there;
+    TSM_ASSERT_EQUALS("Have not read all pixels epxected: ",63006,n_pix_in_buffer);
+    TSM_ASSERT_EQUALS("Have not read all cells epxected: ", 1,n_cell_read);
+    TSM_ASSERT_EQUALS("Data buffer size differs from expected: ", n_pix_in_buffer*9*4,pix_buf.size());
+
+  }
+  void testReadSmallBufferSelection(){
+    // read random two (buffer is already allocated above)
+    size_t starting_cell(0);
+    size_t n_pix_in_buffer(0);
+
+    selected_cells.resize(3);
+    // cells should be usually sorted for efficiency but will do for the time being;
+    selected_cells[0]=3;
+    selected_cells[1]=1;
+    selected_cells[2]=10;
+
+    pix_buf.resize(100);
+
+    unsigned int ic(0);
+    while(starting_cell<selected_cells.size()){
+      TSM_ASSERT_THROWS_NOTHING("Horace reader should not normaly throw",
+        starting_cell=this->pReader->read_pix_subset(*pImg,selected_cells,starting_cell,pix_buf, n_pix_in_buffer));
+      ic++;
+    }
+    // check if the data coinside with what was put there;
+    // the buffer size defived from the largest cell exceeding 100
+    TSM_ASSERT_EQUALS("Data buffer size differs from expected: ", 63006*9*4,pix_buf.size());
+    TSM_ASSERT_EQUALS("Number of cells read differs from expected: ",selected_cells.size(),starting_cell);
+    TSM_ASSERT_EQUALS("Number of read attempts differs from expected: ",3,ic);
+  }
+
+
+  void testWriteMDD(){
+    TSM_ASSERT_THROWS("Looks like Horace writer has been implemented, why? ",pReader->write_mdd(*pImg),Kernel::Exception::NotImplementedError);
+  }
+
+private:
+  std::auto_ptr<HoraceReaderTester> pReader;
+  // the components of the workspace which the reader supplies with data
+  Geometry::MDGeometryBasis basis;
+  std::auto_ptr<Geometry::MDGeometryDescription> pGeomDescription;
+  std::auto_ptr<MDDataObjects::MDImage> pImg;
+  //******************************************************************
+  std::vector<size_t> selected_cells;
+  std::vector<char> pix_buf;
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDDPoints_MemManagerTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDDPoints_MemManagerTest.h
index 90e113dcb9872ea0a4dfa430a77ab99dfe1cf530..2445c1cda5ac87ae0b306ab9e54f2df8e55400e0 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDDPoints_MemManagerTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDDPoints_MemManagerTest.h
@@ -1,471 +1,471 @@
-#ifndef MDDPOINTS_MEMMANAGER_TEST_H
-#define MDDPOINTS_MEMMANAGER_TEST_H
-
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDDPoints_MemManager.h"
-#include "MDDataObjects/MDImageDatatypes.h"
-
-using namespace Mantid;
-using namespace MDDataObjects;
-
-
-// helper class to expose protected (actually private) functions of MDDPoints_MemManager
-class MDDMemMan: public MDDPoints_MemManager
-{
-public:
-	MDDMemMan(MD_img_data const &AllImgData,size_t nImageCells,unsigned int pix_size):
-	  MDDPoints_MemManager(AllImgData,nImageCells,pix_size)
-	{	}
-	//
-	void add_pixels_in_memory(std::vector<char> &data_buffer,const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels){
-		MDDPoints_MemManager::add_pixels_in_memory(data_buffer,all_pixels,pixels_selected,cell_indexes, n_selected_pixels);
-	}
-	//
-
-
-};
-//*****************************************
-class MDDPoints_MemManagerTest :    public CxxTest::TestSuite
-{
-	MDDMemMan *pMemMan;
-	MD_img_data ImgArray;
-	size_t nCells;
-	// data buffer to keep pixel data;
-	std::vector<char> data_buffer;
-
-   static const unsigned int  pix_size = 36;
-
-	void buildTestImgData(size_t niCells){
-		// this pseudo-image data are not consistent with the pixels
-		nCells = niCells;
-		ImgArray.data_size = nCells;
-		ImgArray.data_array_size = nCells;
-		ImgArray.data = new MD_image_point[nCells];
-
-		MD_image_point* pData = ImgArray.data;
-		uint64_t nPixels(0);
-		for(size_t i=0;i<nCells;i++){
-			pData[i].npix = i;
-			pData[i].s    = i;
-			pData[i].err  = 1;
-			nPixels+=       i;
-		}
-		ImgArray.npixSum = nPixels;
-
-
-	}
-	void build_consistent_pixels(std::vector<char> &pix_buf,std::vector<bool> &pix_sel, std::vector<size_t> &cell_indexes){
-		// this function simulates proper result for rebinning with pixels;
-		uint64_t nPixels(0);
-		if(ImgArray.data_size!=nCells){
-			delete [] ImgArray.data;
-			ImgArray.data            = new MD_image_point[nCells];
-			ImgArray.data_size       = nCells;
-			ImgArray.data_array_size = nCells;
-		}
-		MD_image_point* pData = ImgArray.data;
-		for(size_t i=0;i<nCells;i++){
-    		pData[i].npix = i;
-			pData[i].s    = i;
-			pData[i].err  = 1;
-
-			nPixels += pData[i].npix;
-		}
-		ImgArray.npixSum = nPixels;
-
-		pix_buf.resize(2*nPixels*pix_size);
-		pix_sel.resize(2*nPixels);
-		cell_indexes.assign(2*nPixels,-1);
-
-	// assign nPixels almost equivalent pixels;
-		float *pPix = (float *)(&pix_buf[0]);
-		size_t ic(0);
-		size_t ic_retained(0);
-		for(size_t i=0;i<nCells;i++){
-			size_t n_pix = pData[i].npix;
-			for(size_t j=0;j<n_pix;j++){
-				// rebinned pixel
-				pPix[ic*9+0]=1;
-				pPix[ic*9+1]=2;
-				pPix[ic*9+2]=3;
-				pPix[ic*9+3]=4;
-				pPix[ic*9+4]=(float)i;
-				pPix[ic*9+5]= float(ic_retained);
-			// indexes;
-				pPix[ic*9+6]=j;
-				pPix[ic*9+7]=n_pix;
-				pPix[ic*9+8]=50;
-				pix_sel[ic]= true;
-				cell_indexes[ic_retained]=i;
-				ic++;
-				ic_retained++;
-// now pixels which has not been rebinned
-				pPix[ic*9+0]=-1;
-				pPix[ic*9+1]=-2;
-				pPix[ic*9+2]=-3;
-				pPix[ic*9+3]=-4;
-				pPix[ic*9+4]=(float)i;
-				pPix[ic*9+5]=1/float(i+1);
-			// indexes;
-				pPix[ic*9+6]=100;
-				pPix[ic*9+7]=200;
-				pPix[ic*9+8]=50;
-				pix_sel[ic]= false;
-				ic++;
-
-			}
-		}
-	}
-	void add_consistent_pixels(std::vector<char> &pix_buf,std::vector<bool> &pix_sel, std::vector<size_t> &cell_indexes){
-		// this function simulates proper result for rebinning with pixels;
-		uint64_t nPixels(0);
-		if(ImgArray.data_size!=nCells){
-			throw(std::invalid_argument("Can not add pixels to different number of cells;"));
-		}
-		MD_image_point* pData = ImgArray.data;
-		for(size_t i=0;i<nCells;i++){
-    		pData[i].npix += i;
-			pData[i].s     = i;
-			pData[i].err   = 1;
-
-			nPixels += pData[i].npix;
-		}
-		ImgArray.npixSum = nPixels;
-
-		pix_buf.resize(nPixels*pix_size);
-		pix_sel.resize(nPixels);
-		cell_indexes.assign(nPixels,-1);
-
-	// assign nPixels almost equivalent pixels;
-		float *pPix = (float *)(&pix_buf[0]);
-		size_t ic(0);
-		size_t ic_retained(0);
-		for(size_t i=0;i<nCells;i++){
-			size_t n_pix = pData[i].npix/2;
-			for(size_t j=0;j<n_pix;j++){
-				// rebinned pixel
-				pPix[ic*9+0]=1;
-				pPix[ic*9+1]=2;
-				pPix[ic*9+2]=3;
-				pPix[ic*9+3]=4;
-				pPix[ic*9+4]=(float)i;
-				pPix[ic*9+5]=float(ic_retained);
-			// indexes;
-				pPix[ic*9+6]=j;
-				pPix[ic*9+7]=n_pix;
-				pPix[ic*9+8]=50;
-				pix_sel[ic]= true;
-				cell_indexes[ic_retained]=i;
-				ic++;
-				ic_retained++;
-// now pixels which has not been rebinned
-				pPix[ic*9+0]=-1;
-				pPix[ic*9+1]=-2;
-				pPix[ic*9+2]=-3;
-				pPix[ic*9+3]=-4;
-				pPix[ic*9+4]=(float)i;
-				pPix[ic*9+5]=1/float(i+1);
-			// indexes;
-				pPix[ic*9+6]=1000;
-				pPix[ic*9+7]=2000;
-				pPix[ic*9+8]=500;
-				pix_sel[ic]= false;
-				ic++;
-
-			}
-		}
-	}
-public:
-
-	void testMDDPMemManConstructor(){
-		buildTestImgData(256);
-		TSM_ASSERT_THROWS_NOTHING("Mem manager constructor should not throw, as this invalidates all tests below",pMemMan = new MDDMemMan(ImgArray,nCells,pix_size));
-	}
-	void testAllocPixArray(){
-		std::vector<char> Buf1;
-		TSM_ASSERT_THROWS_NOTHING("Getting buffer should not throw",pMemMan->alloc_pix_array(Buf1,50));
-		TSM_ASSERT_THROWS_NOTHING("Getting bigger buffer should not throw",pMemMan->alloc_pix_array(Buf1,100));
-		TSM_ASSERT_THROWS_NOTHING("Getting even bigger buffer should not throw",pMemMan->alloc_pix_array(Buf1,200));
-
-// cleaning up after test above
-		delete pMemMan;
-		TSM_ASSERT_THROWS_NOTHING("Mem manager constructor should not throw, as this invalidates all tests below",pMemMan = new MDDMemMan(ImgArray,nCells,pix_size));
-	}
-	void testAddPixelsInMemoryThrows(){
-		std::vector<char> AllPixels;
-	    std::vector<bool> pix_sel;	
-		std::vector<size_t> cell_indexes;
-   
-		size_t nPixels = 100;
-		size_t n_selected_pixels(50);
-
-		AllPixels.resize(nPixels*pix_size);
-		pix_sel.resize(nPixels);
-		cell_indexes.resize(nPixels);
-
-	
-		TSM_ASSERT_THROWS("This should throw as pixels and image are not consistent",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels),std::invalid_argument);
-	}
-//
-	void testAddPixelsInEmptyMemory(){
-		std::vector<char> AllPixels;
-	    std::vector<bool> pix_sel;	
-		std::vector<size_t> cell_indexes;
-	
-		build_consistent_pixels(AllPixels,pix_sel,cell_indexes);
-		size_t n_selected_pixels = pix_sel.size()/2;
-		data_buffer.resize(n_selected_pixels*this->pix_size);
-
-        TSM_ASSERT_THROWS_NOTHING("Adding consistent pixels in memory should not throw",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels));
-
-	// verify if everything has been added properly (user usually should not use this function to get access to data)
-    	float *pData =(float *)(&(data_buffer[0]));
-	
-		// nPix-j = (nCell-1)*(nCell-2)/2;
-		for(size_t i=0;i<n_selected_pixels;i++){
-		
-			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
-            TSM_ASSERT_DELTA("Error in this pixel should be equal to the nuber of pixel",i,pData[i*9+5],1e-5);
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-
-
-	}
-	void testAddInconsistentPixelsInMemoryToExistingThrows(){
-		std::vector<char> AllPixels;
-	    std::vector<bool> pix_sel;	
-		std::vector<size_t> cell_indexes;
-
-
-    	size_t nPixels = 100;
-		size_t n_selected_pixels(50);
-
-		AllPixels.resize(nPixels*pix_size);
-		pix_sel.resize(nPixels);
-		cell_indexes.resize(nPixels);
-
-		TSM_ASSERT_THROWS("This should throw as pixels and image anre not consistent",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels),std::invalid_argument);
-	}
-
-	void testAddConsistentPixelsInMemory(){
-		std::vector<char> AllPixels;
-	    std::vector<bool> pix_sel;	
-		std::vector<size_t> cell_indexes;
-		add_consistent_pixels(AllPixels,pix_sel,cell_indexes);
-		size_t n_selected_pixels = pix_sel.size()/2;
-
-        TSM_ASSERT_THROWS_NOTHING("Adding consistent pixels in memory to existent pixels should not throw",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels));
-
-    // verify if everything has been added properly (user should not use this function to get access to data)
-        float *pData =(float *)(&(data_buffer[0]));
-		size_t nPixels = nCells*(nCells-1);
-		TSM_ASSERT_EQUALS("It should be specified number of pixels in menory after this operation ",nPixels,pMemMan->getNPixInMemory());
-	    
-		// nPix-j = (nCell-1)*(nCell-2)/2;
-		size_t nCell,nPix,nPixSum;
-		for(size_t i=0;i<nPixels;i++){
-		    nCell = (size_t)pData[i*9+4];
-			nPix  = (nCell-1)*nCell/2 +(size_t)pData[i*9+6];
-			nPixSum = (size_t)pData[i*9+7];
-           //TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
-            TSM_ASSERT_DELTA("The obtained values should be equal by construction: ",nPixSum,nCell,1e-5);
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-
-	}
-	void testReadBlockOfCellsFromMemory(){
-		std::vector<size_t> selected_cells(4);
-		std::vector<char>   out_pix_buffer(100*36);
-		size_t nCells = pMemMan->getNControlCells();
-		size_t nSelCells = selected_cells.size();
-		std::vector<size_t> expectations(nSelCells*(nSelCells-1));
-		size_t ic(0);
-		for(size_t i=0;i<nSelCells;i++){
-			selected_cells[i] = i;
-			for(size_t j=0;j<2*i;j++){
-				expectations[ic]=i;
-				ic++;
-			}
-
-		}
-		
-		size_t starting_cell(0);
-		size_t n_pix_inBuffer;
-
-		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
-
-		TSM_ASSERT_EQUALS("First four cells should contain 12 pixels",12,n_pix_inBuffer);
-	     TSM_ASSERT_EQUALS("All contents of the last cell should be read properly ",true, pMemMan->is_readCell_completed());
-		float *pData =(float *)(&out_pix_buffer[0]);
-
-	//	int CellNum(selected_cells[0]),nc(0);
-      //  MD_image_point* pImgData = ImgArray.data;
-	
-		for(size_t i=0;i<n_pix_inBuffer;i++){
-			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
-            TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[i],pData[i*9+4],1e-5);
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-
-	}
-	void testReadBlockOfCellsFromMemoryIncomplete(){
-		// this read should fill buffer with the pixels read 
-		std::vector<size_t> selected_cells(4);
-		std::vector<char>   out_pix_buffer(100*36);
-		size_t nCells = pMemMan->getNControlCells();
-		std::vector<size_t> expectations;
-		for(size_t i=0;i<selected_cells.size();i++){
-			selected_cells[i] = 49+i;
-			for(size_t j=0;j<2*selected_cells[i];j++){
-				expectations.push_back(selected_cells[i]);
-
-			}
-
-		}
-		size_t starting_cell(0);
-		size_t n_pix_inBuffer;
-
-		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
-
-		TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
-		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",1,starting_cell);
-		float *pData =(float *)(&out_pix_buffer[0]);
-
-	
-		size_t ic(0);
-		for(size_t i=0;i<n_pix_inBuffer;i++){
-            TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[ic],pData[i*9+4],1e-5);
-			ic++;
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-	}
-	void testReadBlockOfCellsFromMemoryIncompleteContinues(){
-		// this read should continue reading where the previous function ended
-		std::vector<size_t> selected_cells(4);
-		std::vector<char>   out_pix_buffer(100*36);
-		size_t nCells = pMemMan->getNControlCells();
-		std::vector<size_t> expectations;
-
-		for(size_t i=0;i<selected_cells.size();i++){
-			selected_cells[i] = 49+i;
-			for(size_t j=0;j<2*selected_cells[i];j++){
-				expectations.push_back(selected_cells[i]);
-			}
-
-		}
-		size_t starting_cell(1);
-	    size_t ic(100);
-		size_t n_pix_inBuffer;
-
-		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
-
-		TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
-		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",2,starting_cell);
-		float *pData =(float *)(&out_pix_buffer[0]);
-
-		for(size_t i=0;i<n_pix_inBuffer;i++){
-			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
-            TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[ic],pData[i*9+4],1e-5);
-			ic++;
-
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-		//**************************************************************************************************************************************************************************************
-		// check consequentive reading operations
-		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
-
-		TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
-		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",3,starting_cell);
-		TSM_ASSERT_EQUALS("Ocasionally we should read all contents of the cells completed",true, pMemMan->is_readCell_completed());
-	
-	
-		for(size_t i=0;i<n_pix_inBuffer;i++){
-	        TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[ic],pData[i*9+4],1e-5);
-			ic++;
-
-            //TSM_ASSERT_DELTA("Error in a properly read pixel should be equal to the nuber of pixel",selected_cells[2]*(selected_cells[2]-1)+2+i,pData[i*9+5],1e-5);
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-
-	    TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
-
-	    TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
-		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",3,starting_cell);
-		TSM_ASSERT_EQUALS("We have not finished reading all pixels from the last cell",false, pMemMan->is_readCell_completed());
-	
-// cleaning up dependencies after the tests above
-		delete pMemMan;
-		data_buffer.clear();
-		TSM_ASSERT_THROWS_NOTHING("Mem manager constructor should not throw, as this invalidates all tests below",pMemMan = new MDDMemMan(ImgArray,nCells,pix_size));
-	}
-
-	void testStorePixelsToNewMemBlock(){
-		std::vector<char> AllPixels;
-	    std::vector<bool> pix_sel;	
-		std::vector<size_t> cell_indexes;
-		build_consistent_pixels(AllPixels,pix_sel,cell_indexes);	
-		size_t n_selected_pixels = pix_sel.size()/2;
-		size_t free_memory = 3*n_selected_pixels*36/3;
-
-		TSM_ASSERT_THROWS_NOTHING("Should add pixels to new buffer in memory without throwing",pMemMan->store_pixels(AllPixels,pix_sel,cell_indexes,n_selected_pixels,free_memory,data_buffer));
-
-		// verify if everything has been added properly (user should not use this function to get access to data)
- 		float *pData =(float *)(&data_buffer[0]);
-	
-		// nPix-j = (nCell-1)*(nCell-2)/2;
-		for(size_t i=0;i<n_selected_pixels;i++){
-		
-			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
-            TSM_ASSERT_DELTA("Error in a properly read pixel should be equal to the nuber of pixel",i,pData[i*9+5],1e-5);
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-
-	}
-	void testStoreMorePixelsToNewMemBlock(){
-		std::vector<char> AllPixels;
-	    std::vector<bool> pix_sel;	
-		std::vector<size_t> cell_indexes;
-		add_consistent_pixels(AllPixels,pix_sel,cell_indexes);
-		
-		size_t n_selected_pixels = pix_sel.size()/2;
-		size_t free_memory = 3*n_selected_pixels*36;
-
-		TSM_ASSERT_THROWS_NOTHING("Should add pixels to old buffer in memory without throwing",pMemMan->store_pixels(AllPixels,pix_sel,cell_indexes,n_selected_pixels,free_memory,data_buffer));
-
-		// verify if everything has been added properly (user should not use this function to get access to data)
-		size_t n_pix_in_memory = pMemMan->getNPixInMemory();
-		TSM_ASSERT_EQUALS("It should be double of selected pixels in memory after second addition",2*n_selected_pixels,n_pix_in_memory);
-
-
-    	float *pData =(float *)(&data_buffer[0]);
-	
-		size_t nCl,sumI(0);
-		for(size_t i=0;i<n_pix_in_memory;i++){
-		    nCl = size_t(pData[i*9+4]);
-			sumI++;
-
-//			TSM_ASSERT_DELTA("These numbers should be equal: ",2*sumI,pData[i*9+4]+pData[i*9+6],1e-5);
-			TSM_ASSERT_DELTA("These numbers should be equal: ",pData[i*9+4],pData[i*9+7],1e-5);
-   
-			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
-			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
-		}
-
-	}
-
-	MDDPoints_MemManagerTest():pMemMan(NULL){};
-	~MDDPoints_MemManagerTest(){
-		if(pMemMan)delete pMemMan;
-		if(ImgArray.data)delete [] ImgArray.data;
-	}
-};
-
-
+#ifndef MDDPOINTS_MEMMANAGER_TEST_H
+#define MDDPOINTS_MEMMANAGER_TEST_H
+
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDDPoints_MemManager.h"
+#include "MDDataObjects/MDImageDatatypes.h"
+
+using namespace Mantid;
+using namespace MDDataObjects;
+
+
+// helper class to expose protected (actually private) functions of MDDPoints_MemManager
+class MDDMemMan: public MDDPoints_MemManager
+{
+public:
+	MDDMemMan(MD_img_data const &AllImgData,size_t nImageCells,unsigned int pix_size):
+	  MDDPoints_MemManager(AllImgData,nImageCells,pix_size)
+	{	}
+	//
+	void add_pixels_in_memory(std::vector<char> &data_buffer,const std::vector<char> &all_pixels,const std::vector<bool> &pixels_selected,const std::vector<size_t> &cell_indexes,size_t n_selected_pixels){
+		MDDPoints_MemManager::add_pixels_in_memory(data_buffer,all_pixels,pixels_selected,cell_indexes, n_selected_pixels);
+	}
+	//
+
+
+};
+//*****************************************
+class MDDPoints_MemManagerTest :    public CxxTest::TestSuite
+{
+	MDDMemMan *pMemMan;
+	MD_img_data ImgArray;
+	size_t nCells;
+	// data buffer to keep pixel data;
+	std::vector<char> data_buffer;
+
+   static const unsigned int  pix_size = 36;
+
+	void buildTestImgData(size_t niCells){
+		// this pseudo-image data are not consistent with the pixels
+		nCells = niCells;
+		ImgArray.data_size = nCells;
+		ImgArray.data_array_size = nCells;
+		ImgArray.data = new MD_image_point[nCells];
+
+		MD_image_point* pData = ImgArray.data;
+		uint64_t nPixels(0);
+		for(size_t i=0;i<nCells;i++){
+			pData[i].npix = i;
+			pData[i].s    = i;
+			pData[i].err  = 1;
+			nPixels+=       i;
+		}
+		ImgArray.npixSum = nPixels;
+
+
+	}
+	void build_consistent_pixels(std::vector<char> &pix_buf,std::vector<bool> &pix_sel, std::vector<size_t> &cell_indexes){
+		// this function simulates proper result for rebinning with pixels;
+		uint64_t nPixels(0);
+		if(ImgArray.data_size!=nCells){
+			delete [] ImgArray.data;
+			ImgArray.data            = new MD_image_point[nCells];
+			ImgArray.data_size       = nCells;
+			ImgArray.data_array_size = nCells;
+		}
+		MD_image_point* pData = ImgArray.data;
+		for(size_t i=0;i<nCells;i++){
+    		pData[i].npix = i;
+			pData[i].s    = i;
+			pData[i].err  = 1;
+
+			nPixels += pData[i].npix;
+		}
+		ImgArray.npixSum = nPixels;
+
+		pix_buf.resize(2*nPixels*pix_size);
+		pix_sel.resize(2*nPixels);
+		cell_indexes.assign(2*nPixels,-1);
+
+	// assign nPixels almost equivalent pixels;
+		float *pPix = (float *)(&pix_buf[0]);
+		size_t ic(0);
+		size_t ic_retained(0);
+		for(size_t i=0;i<nCells;i++){
+			size_t n_pix = pData[i].npix;
+			for(size_t j=0;j<n_pix;j++){
+				// rebinned pixel
+				pPix[ic*9+0]=1;
+				pPix[ic*9+1]=2;
+				pPix[ic*9+2]=3;
+				pPix[ic*9+3]=4;
+				pPix[ic*9+4]=(float)i;
+				pPix[ic*9+5]= float(ic_retained);
+			// indexes;
+				pPix[ic*9+6]=j;
+				pPix[ic*9+7]=n_pix;
+				pPix[ic*9+8]=50;
+				pix_sel[ic]= true;
+				cell_indexes[ic_retained]=i;
+				ic++;
+				ic_retained++;
+// now pixels which has not been rebinned
+				pPix[ic*9+0]=-1;
+				pPix[ic*9+1]=-2;
+				pPix[ic*9+2]=-3;
+				pPix[ic*9+3]=-4;
+				pPix[ic*9+4]=(float)i;
+				pPix[ic*9+5]=1/float(i+1);
+			// indexes;
+				pPix[ic*9+6]=100;
+				pPix[ic*9+7]=200;
+				pPix[ic*9+8]=50;
+				pix_sel[ic]= false;
+				ic++;
+
+			}
+		}
+	}
+	void add_consistent_pixels(std::vector<char> &pix_buf,std::vector<bool> &pix_sel, std::vector<size_t> &cell_indexes){
+		// this function simulates proper result for rebinning with pixels;
+		uint64_t nPixels(0);
+		if(ImgArray.data_size!=nCells){
+			throw(std::invalid_argument("Can not add pixels to different number of cells;"));
+		}
+		MD_image_point* pData = ImgArray.data;
+		for(size_t i=0;i<nCells;i++){
+    		pData[i].npix += i;
+			pData[i].s     = i;
+			pData[i].err   = 1;
+
+			nPixels += pData[i].npix;
+		}
+		ImgArray.npixSum = nPixels;
+
+		pix_buf.resize(nPixels*pix_size);
+		pix_sel.resize(nPixels);
+		cell_indexes.assign(nPixels,-1);
+
+	// assign nPixels almost equivalent pixels;
+		float *pPix = (float *)(&pix_buf[0]);
+		size_t ic(0);
+		size_t ic_retained(0);
+		for(size_t i=0;i<nCells;i++){
+			size_t n_pix = pData[i].npix/2;
+			for(size_t j=0;j<n_pix;j++){
+				// rebinned pixel
+				pPix[ic*9+0]=1;
+				pPix[ic*9+1]=2;
+				pPix[ic*9+2]=3;
+				pPix[ic*9+3]=4;
+				pPix[ic*9+4]=(float)i;
+				pPix[ic*9+5]=float(ic_retained);
+			// indexes;
+				pPix[ic*9+6]=j;
+				pPix[ic*9+7]=n_pix;
+				pPix[ic*9+8]=50;
+				pix_sel[ic]= true;
+				cell_indexes[ic_retained]=i;
+				ic++;
+				ic_retained++;
+// now pixels which has not been rebinned
+				pPix[ic*9+0]=-1;
+				pPix[ic*9+1]=-2;
+				pPix[ic*9+2]=-3;
+				pPix[ic*9+3]=-4;
+				pPix[ic*9+4]=(float)i;
+				pPix[ic*9+5]=1/float(i+1);
+			// indexes;
+				pPix[ic*9+6]=1000;
+				pPix[ic*9+7]=2000;
+				pPix[ic*9+8]=500;
+				pix_sel[ic]= false;
+				ic++;
+
+			}
+		}
+	}
+public:
+
+	void testMDDPMemManConstructor(){
+		buildTestImgData(256);
+		TSM_ASSERT_THROWS_NOTHING("Mem manager constructor should not throw, as this invalidates all tests below",pMemMan = new MDDMemMan(ImgArray,nCells,pix_size));
+	}
+	void testAllocPixArray(){
+		std::vector<char> Buf1;
+		TSM_ASSERT_THROWS_NOTHING("Getting buffer should not throw",pMemMan->alloc_pix_array(Buf1,50));
+		TSM_ASSERT_THROWS_NOTHING("Getting bigger buffer should not throw",pMemMan->alloc_pix_array(Buf1,100));
+		TSM_ASSERT_THROWS_NOTHING("Getting even bigger buffer should not throw",pMemMan->alloc_pix_array(Buf1,200));
+
+// cleaning up after test above
+		delete pMemMan;
+		TSM_ASSERT_THROWS_NOTHING("Mem manager constructor should not throw, as this invalidates all tests below",pMemMan = new MDDMemMan(ImgArray,nCells,pix_size));
+	}
+	void testAddPixelsInMemoryThrows(){
+		std::vector<char> AllPixels;
+	    std::vector<bool> pix_sel;	
+		std::vector<size_t> cell_indexes;
+   
+		size_t nPixels = 100;
+		size_t n_selected_pixels(50);
+
+		AllPixels.resize(nPixels*pix_size);
+		pix_sel.resize(nPixels);
+		cell_indexes.resize(nPixels);
+
+	
+		TSM_ASSERT_THROWS("This should throw as pixels and image are not consistent",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels),std::invalid_argument);
+	}
+//
+	void testAddPixelsInEmptyMemory(){
+		std::vector<char> AllPixels;
+	    std::vector<bool> pix_sel;	
+		std::vector<size_t> cell_indexes;
+	
+		build_consistent_pixels(AllPixels,pix_sel,cell_indexes);
+		size_t n_selected_pixels = pix_sel.size()/2;
+		data_buffer.resize(n_selected_pixels*this->pix_size);
+
+        TSM_ASSERT_THROWS_NOTHING("Adding consistent pixels in memory should not throw",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels));
+
+	// verify if everything has been added properly (user usually should not use this function to get access to data)
+    	float *pData =(float *)(&(data_buffer[0]));
+	
+		// nPix-j = (nCell-1)*(nCell-2)/2;
+		for(size_t i=0;i<n_selected_pixels;i++){
+		
+			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
+            TSM_ASSERT_DELTA("Error in this pixel should be equal to the nuber of pixel",i,pData[i*9+5],1e-5);
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+
+
+	}
+	void testAddInconsistentPixelsInMemoryToExistingThrows(){
+		std::vector<char> AllPixels;
+	    std::vector<bool> pix_sel;	
+		std::vector<size_t> cell_indexes;
+
+
+    	size_t nPixels = 100;
+		size_t n_selected_pixels(50);
+
+		AllPixels.resize(nPixels*pix_size);
+		pix_sel.resize(nPixels);
+		cell_indexes.resize(nPixels);
+
+		TSM_ASSERT_THROWS("This should throw as pixels and image anre not consistent",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels),std::invalid_argument);
+	}
+
+	void testAddConsistentPixelsInMemory(){
+		std::vector<char> AllPixels;
+	    std::vector<bool> pix_sel;	
+		std::vector<size_t> cell_indexes;
+		add_consistent_pixels(AllPixels,pix_sel,cell_indexes);
+		size_t n_selected_pixels = pix_sel.size()/2;
+
+        TSM_ASSERT_THROWS_NOTHING("Adding consistent pixels in memory to existent pixels should not throw",pMemMan->add_pixels_in_memory(data_buffer,AllPixels,pix_sel,cell_indexes,n_selected_pixels));
+
+    // verify if everything has been added properly (user should not use this function to get access to data)
+        float *pData =(float *)(&(data_buffer[0]));
+		size_t nPixels = nCells*(nCells-1);
+		TSM_ASSERT_EQUALS("It should be specified number of pixels in menory after this operation ",nPixels,pMemMan->getNPixInMemory());
+	    
+		// nPix-j = (nCell-1)*(nCell-2)/2;
+		size_t nCell,nPix,nPixSum;
+		for(size_t i=0;i<nPixels;i++){
+		    nCell = (size_t)pData[i*9+4];
+			nPix  = (nCell-1)*nCell/2 +(size_t)pData[i*9+6];
+			nPixSum = (size_t)pData[i*9+7];
+           //TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
+            TSM_ASSERT_DELTA("The obtained values should be equal by construction: ",nPixSum,nCell,1e-5);
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+
+	}
+	void testReadBlockOfCellsFromMemory(){
+		std::vector<size_t> selected_cells(4);
+		std::vector<char>   out_pix_buffer(100*36);
+		size_t nCells = pMemMan->getNControlCells();
+		size_t nSelCells = selected_cells.size();
+		std::vector<size_t> expectations(nSelCells*(nSelCells-1));
+		size_t ic(0);
+		for(size_t i=0;i<nSelCells;i++){
+			selected_cells[i] = i;
+			for(size_t j=0;j<2*i;j++){
+				expectations[ic]=i;
+				ic++;
+			}
+
+		}
+		
+		size_t starting_cell(0);
+		size_t n_pix_inBuffer;
+
+		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
+
+		TSM_ASSERT_EQUALS("First four cells should contain 12 pixels",12,n_pix_inBuffer);
+	     TSM_ASSERT_EQUALS("All contents of the last cell should be read properly ",true, pMemMan->is_readCell_completed());
+		float *pData =(float *)(&out_pix_buffer[0]);
+
+	//	int CellNum(selected_cells[0]),nc(0);
+      //  MD_image_point* pImgData = ImgArray.data;
+	
+		for(size_t i=0;i<n_pix_inBuffer;i++){
+			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
+            TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[i],pData[i*9+4],1e-5);
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+
+	}
+	void testReadBlockOfCellsFromMemoryIncomplete(){
+		// this read should fill buffer with the pixels read 
+		std::vector<size_t> selected_cells(4);
+		std::vector<char>   out_pix_buffer(100*36);
+		size_t nCells = pMemMan->getNControlCells();
+		std::vector<size_t> expectations;
+		for(size_t i=0;i<selected_cells.size();i++){
+			selected_cells[i] = 49+i;
+			for(size_t j=0;j<2*selected_cells[i];j++){
+				expectations.push_back(selected_cells[i]);
+
+			}
+
+		}
+		size_t starting_cell(0);
+		size_t n_pix_inBuffer;
+
+		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
+
+		TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
+		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",1,starting_cell);
+		float *pData =(float *)(&out_pix_buffer[0]);
+
+	
+		size_t ic(0);
+		for(size_t i=0;i<n_pix_inBuffer;i++){
+            TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[ic],pData[i*9+4],1e-5);
+			ic++;
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+	}
+	void testReadBlockOfCellsFromMemoryIncompleteContinues(){
+		// this read should continue reading where the previous function ended
+		std::vector<size_t> selected_cells(4);
+		std::vector<char>   out_pix_buffer(100*36);
+		size_t nCells = pMemMan->getNControlCells();
+		std::vector<size_t> expectations;
+
+		for(size_t i=0;i<selected_cells.size();i++){
+			selected_cells[i] = 49+i;
+			for(size_t j=0;j<2*selected_cells[i];j++){
+				expectations.push_back(selected_cells[i]);
+			}
+
+		}
+		size_t starting_cell(1);
+	    size_t ic(100);
+		size_t n_pix_inBuffer;
+
+		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
+
+		TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
+		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",2,starting_cell);
+		float *pData =(float *)(&out_pix_buffer[0]);
+
+		for(size_t i=0;i<n_pix_inBuffer;i++){
+			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
+            TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[ic],pData[i*9+4],1e-5);
+			ic++;
+
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+		//**************************************************************************************************************************************************************************************
+		// check consequentive reading operations
+		TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
+
+		TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
+		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",3,starting_cell);
+		TSM_ASSERT_EQUALS("Ocasionally we should read all contents of the cells completed",true, pMemMan->is_readCell_completed());
+	
+	
+		for(size_t i=0;i<n_pix_inBuffer;i++){
+	        TSM_ASSERT_DELTA("Properly read pixel's signal should be equal to the nuber expected ",expectations[ic],pData[i*9+4],1e-5);
+			ic++;
+
+            //TSM_ASSERT_DELTA("Error in a properly read pixel should be equal to the nuber of pixel",selected_cells[2]*(selected_cells[2]-1)+2+i,pData[i*9+5],1e-5);
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+
+	    TSM_ASSERT_THROWS_NOTHING("Reading set of cells fitting buffer should not throw",starting_cell=pMemMan->get_pix_from_memory(data_buffer,selected_cells,starting_cell,out_pix_buffer,n_pix_inBuffer));
+
+	    TSM_ASSERT_EQUALS("First reading operation should fill all buffer",100,n_pix_inBuffer);
+		TSM_ASSERT_EQUALS("This  reading be able to read one full and one incomplete cell",3,starting_cell);
+		TSM_ASSERT_EQUALS("We have not finished reading all pixels from the last cell",false, pMemMan->is_readCell_completed());
+	
+// cleaning up dependencies after the tests above
+		delete pMemMan;
+		data_buffer.clear();
+		TSM_ASSERT_THROWS_NOTHING("Mem manager constructor should not throw, as this invalidates all tests below",pMemMan = new MDDMemMan(ImgArray,nCells,pix_size));
+	}
+
+	void testStorePixelsToNewMemBlock(){
+		std::vector<char> AllPixels;
+	    std::vector<bool> pix_sel;	
+		std::vector<size_t> cell_indexes;
+		build_consistent_pixels(AllPixels,pix_sel,cell_indexes);	
+		size_t n_selected_pixels = pix_sel.size()/2;
+		size_t free_memory = 3*n_selected_pixels*36/3;
+
+		TSM_ASSERT_THROWS_NOTHING("Should add pixels to new buffer in memory without throwing",pMemMan->store_pixels(AllPixels,pix_sel,cell_indexes,n_selected_pixels,free_memory,data_buffer));
+
+		// verify if everything has been added properly (user should not use this function to get access to data)
+ 		float *pData =(float *)(&data_buffer[0]);
+	
+		// nPix-j = (nCell-1)*(nCell-2)/2;
+		for(size_t i=0;i<n_selected_pixels;i++){
+		
+			//TSM_ASSERT_DELTA("Signal in a properly read pixel should be equal to the nuber of cell",CellNum,pData[i*9+4],1e-5);
+            TSM_ASSERT_DELTA("Error in a properly read pixel should be equal to the nuber of pixel",i,pData[i*9+5],1e-5);
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+
+	}
+	void testStoreMorePixelsToNewMemBlock(){
+		std::vector<char> AllPixels;
+	    std::vector<bool> pix_sel;	
+		std::vector<size_t> cell_indexes;
+		add_consistent_pixels(AllPixels,pix_sel,cell_indexes);
+		
+		size_t n_selected_pixels = pix_sel.size()/2;
+		size_t free_memory = 3*n_selected_pixels*36;
+
+		TSM_ASSERT_THROWS_NOTHING("Should add pixels to old buffer in memory without throwing",pMemMan->store_pixels(AllPixels,pix_sel,cell_indexes,n_selected_pixels,free_memory,data_buffer));
+
+		// verify if everything has been added properly (user should not use this function to get access to data)
+		size_t n_pix_in_memory = pMemMan->getNPixInMemory();
+		TSM_ASSERT_EQUALS("It should be double of selected pixels in memory after second addition",2*n_selected_pixels,n_pix_in_memory);
+
+
+    	float *pData =(float *)(&data_buffer[0]);
+	
+		size_t nCl,sumI(0);
+		for(size_t i=0;i<n_pix_in_memory;i++){
+		    nCl = size_t(pData[i*9+4]);
+			sumI++;
+
+//			TSM_ASSERT_DELTA("These numbers should be equal: ",2*sumI,pData[i*9+4]+pData[i*9+6],1e-5);
+			TSM_ASSERT_DELTA("These numbers should be equal: ",pData[i*9+4],pData[i*9+7],1e-5);
+   
+			TSM_ASSERT_DELTA("All Qx values in a properly read pixels should be set to one ",1,pData[i*9],1e-5);
+			TSM_ASSERT_DELTA("All last indexes in a properly read pixels should be set to 50 ",50,pData[i*9+8],1e-5);
+		}
+
+	}
+
+	MDDPoints_MemManagerTest():pMemMan(NULL){};
+	~MDDPoints_MemManagerTest(){
+		if(pMemMan)delete pMemMan;
+		if(ImgArray.data)delete [] ImgArray.data;
+	}
+};
+
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDDataPointDescriptionTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDDataPointDescriptionTest.h
index 4444cabb8a80ba0a3fe4046a2e6ab764741e89f9..3eae23b741c0f24976c4a75cfc407a7929b7be6f 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDDataPointDescriptionTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDDataPointDescriptionTest.h
@@ -1,75 +1,75 @@
-#ifndef MDDATA_POINT_DESCRIPTION_TEST_H
-#define MDDATA_POINT_DESCRIPTION_TEST_H
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDDataPoint.h"
-
-#include <memory>
-
-using namespace Mantid;
-using namespace MDDataObjects;
-
-class MDDataPointDescriptionTest : public CxxTest::TestSuite
-{
-
-public:
-    void testMDDPointDescrConstructorDefault(){
-        std::auto_ptr<MDPointDescription> pDescr;
-        MDPointStructure default1;
-        TSM_ASSERT_THROWS_NOTHING("Nothing should be throwing in description",pDescr = std::auto_ptr<MDPointDescription>(new MDPointDescription(default1)));
-
-        TSM_ASSERT_EQUALS("Default pixel size has (4Dxfloat,2xdouble, 3x16-bit indexes )to be equal to 38 ",38,pDescr->sizeofMDDPoint());
-
-        char buf[] = {'a','b','c'};
-        typedef  MDDataPoint<> mdp;
-
-        std::auto_ptr<mdp > pDP;
-        TSM_ASSERT_THROWS_NOTHING("Default MDData Point should not throw with default descpr",pDP = std::auto_ptr<mdp>(new mdp(buf,*pDescr)));
-
-        TSM_ASSERT_EQUALS("Actual and described pixel length have to be the same",pDescr->sizeofMDDPoint(),pDP->sizeofMDDataPoint());
-    }
-   void test1DMDDPointThrows(){
-      // number of dimensions is lower then the number of reciprocal dimensions
-        MDPointStructure info;
-        info.NumDimensions = 1;
-        info.NumDimIDs     = 1;
-        TSM_ASSERT_THROWS("Nothing should be throwing in description",new MDPointDescription(info),std::invalid_argument);
-
-    }
-    void test1DMDDPointDesct(){
-        std::auto_ptr<MDPointDescription> pDescr;
-        MDPointStructure info ;
-        info.NumDimensions    = 1;
-        info.NumRecDimensions = 1;
-        info.NumDimIDs        = 1;
-        TSM_ASSERT_THROWS_NOTHING("Nothing should be throwing in description",pDescr = std::auto_ptr<MDPointDescription>(new MDPointDescription(info)));
-	
-        TSM_ASSERT_EQUALS("Default 1D pixel size has to be (1Dxfloat,2xdouble, 1x16-bit indexes )to be equal to 22 ",22,pDescr->sizeofMDDPoint());
-
-        char buf[] = {'a','b','c'};
-        typedef  MDDataPoint<> mdp;
-
-        std::auto_ptr<mdp > pDP;
-        TSM_ASSERT_THROWS_NOTHING("Default MDData Point should not throw with default descpr",pDP = std::auto_ptr<mdp >(new mdp(buf,*pDescr)));
-	// but singleDimID is always casted to at least 32 bit integer (or bigger if specified)
-        TSM_ASSERT_EQUALS("Actual and described pixel length have to be the same",pDescr->sizeofMDDPoint()+2,pDP->sizeofMDDataPoint());
-    }
-   void testMDEqualPointDesct(){
-        std::auto_ptr<MDPointDescription> pDescr;
-        MDPointStructure info ;
-        info.SignalLength = 4;
-        info.DimIDlength  = 4;
-        info.NumPixCompressionBits=0;
-        TSM_ASSERT_THROWS_NOTHING("Nothing should be throwing in description",pDescr = std::auto_ptr<MDPointDescription>(new MDPointDescription(info)));
-
-        TSM_ASSERT_EQUALS("Default 1D pixel size has to be (4Dxfloat,2xfloat, 3xint-bit indexes )to be equal to 36 ",36,pDescr->sizeofMDDPoint());
-
-
-        char buf[] = {'a','b','c'};
-        typedef MDDataPointEqual<float,uint32_t,float> mdpe;
-        std::auto_ptr<mdpe > pDP;
-        TSM_ASSERT_THROWS_NOTHING("Equal MDData Point should not throw when build with such descption", pDP = (std::auto_ptr<mdpe >)(new mdpe(buf,*pDescr)));
-
-        TSM_ASSERT_EQUALS("Actual and described pixel length have to be the same",pDescr->sizeofMDDPoint(),pDP->sizeofMDDataPoint());
-    }
-};
-#endif
+#ifndef MDDATA_POINT_DESCRIPTION_TEST_H
+#define MDDATA_POINT_DESCRIPTION_TEST_H
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDDataPoint.h"
+
+#include <memory>
+
+using namespace Mantid;
+using namespace MDDataObjects;
+
+class MDDataPointDescriptionTest : public CxxTest::TestSuite
+{
+
+public:
+    void testMDDPointDescrConstructorDefault(){
+        std::auto_ptr<MDPointDescription> pDescr;
+        MDPointStructure default1;
+        TSM_ASSERT_THROWS_NOTHING("Nothing should be throwing in description",pDescr = std::auto_ptr<MDPointDescription>(new MDPointDescription(default1)));
+
+        TSM_ASSERT_EQUALS("Default pixel size has (4Dxfloat,2xdouble, 3x16-bit indexes )to be equal to 38 ",38,pDescr->sizeofMDDPoint());
+
+        char buf[] = {'a','b','c'};
+        typedef  MDDataPoint<> mdp;
+
+        std::auto_ptr<mdp > pDP;
+        TSM_ASSERT_THROWS_NOTHING("Default MDData Point should not throw with default descpr",pDP = std::auto_ptr<mdp>(new mdp(buf,*pDescr)));
+
+        TSM_ASSERT_EQUALS("Actual and described pixel length have to be the same",pDescr->sizeofMDDPoint(),pDP->sizeofMDDataPoint());
+    }
+   void test1DMDDPointThrows(){
+      // number of dimensions is lower then the number of reciprocal dimensions
+        MDPointStructure info;
+        info.NumDimensions = 1;
+        info.NumDimIDs     = 1;
+        TSM_ASSERT_THROWS("Nothing should be throwing in description",new MDPointDescription(info),std::invalid_argument);
+
+    }
+    void test1DMDDPointDesct(){
+        std::auto_ptr<MDPointDescription> pDescr;
+        MDPointStructure info ;
+        info.NumDimensions    = 1;
+        info.NumRecDimensions = 1;
+        info.NumDimIDs        = 1;
+        TSM_ASSERT_THROWS_NOTHING("Nothing should be throwing in description",pDescr = std::auto_ptr<MDPointDescription>(new MDPointDescription(info)));
+	
+        TSM_ASSERT_EQUALS("Default 1D pixel size has to be (1Dxfloat,2xdouble, 1x16-bit indexes )to be equal to 22 ",22,pDescr->sizeofMDDPoint());
+
+        char buf[] = {'a','b','c'};
+        typedef  MDDataPoint<> mdp;
+
+        std::auto_ptr<mdp > pDP;
+        TSM_ASSERT_THROWS_NOTHING("Default MDData Point should not throw with default descpr",pDP = std::auto_ptr<mdp >(new mdp(buf,*pDescr)));
+	// but singleDimID is always casted to at least 32 bit integer (or bigger if specified)
+        TSM_ASSERT_EQUALS("Actual and described pixel length have to be the same",pDescr->sizeofMDDPoint()+2,pDP->sizeofMDDataPoint());
+    }
+   void testMDEqualPointDesct(){
+        std::auto_ptr<MDPointDescription> pDescr;
+        MDPointStructure info ;
+        info.SignalLength = 4;
+        info.DimIDlength  = 4;
+        info.NumPixCompressionBits=0;
+        TSM_ASSERT_THROWS_NOTHING("Nothing should be throwing in description",pDescr = std::auto_ptr<MDPointDescription>(new MDPointDescription(info)));
+
+        TSM_ASSERT_EQUALS("Default 1D pixel size has to be (4Dxfloat,2xfloat, 3xint-bit indexes )to be equal to 36 ",36,pDescr->sizeofMDDPoint());
+
+
+        char buf[] = {'a','b','c'};
+        typedef MDDataPointEqual<float,uint32_t,float> mdpe;
+        std::auto_ptr<mdpe > pDP;
+        TSM_ASSERT_THROWS_NOTHING("Equal MDData Point should not throw when build with such descption", pDP = (std::auto_ptr<mdpe >)(new mdpe(buf,*pDescr)));
+
+        TSM_ASSERT_EQUALS("Actual and described pixel length have to be the same",pDescr->sizeofMDDPoint(),pDP->sizeofMDDataPoint());
+    }
+};
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDDataPointTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDDataPointTest.h
index 8fac8ebd6a6b6b834392b13c222b8cfcbf4b529f..5ff651ddbf7cb4ae84385dafb83a9006215ce971 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDDataPointTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDDataPointTest.h
@@ -1,487 +1,487 @@
-#ifndef MDDATA_POINT_TEST_H
-#define MDDATA_POINT_TEST_H
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDDataPoints.h"
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <memory>
-
-using namespace Mantid;
-using namespace MDDataObjects;
-
-struct data4D
-{
-  float q1,q2,q3,En;
-  double S,Err;
-  int   iRun,iPix,iEn;
-};
-struct data5D
-{
-  float q1,q2,q3,En,T;
-  double S,Err;
-  int   iRun,iPix,iEn,iT;
-};
-struct eventData4D
-{
-  float q1,q2,q3,En;
-  int   iRun,iPix,iEn;
-};
-
-
-
-
-class MDDataPointTest :    public CxxTest::TestSuite
-{
-  std::vector<std::string> fieldNames4D;
-  std::vector<std::string> fieldNames5D;
-  MDPointStructure descriptor4D;
-  MDPointStructure descriptor5D;
-  MDPointDescription *pix4D,*pix5D;
-  // helper function generating the data for the tests;
-  void build4DTestdata(data4D testData[],unsigned int nPixels)
-  {
-   for(unsigned int i=0;i<nPixels;i++)
-    {
-      testData[i].q1  =(float)(i+1);
-      testData[i].q2  =(float)(i+1)*2;
-      testData[i].q3  =(float)(i+1)*3;
-      testData[i].En  =(float)(i+1)*4;
-      testData[i].S   =(double)(i+1)*5;
-      testData[i].Err =(double)(i+1)*6;
-      testData[i].iRun=(i+1)*7;
-      testData[i].iPix=(i+1)*8;
-      testData[i].iEn =(i+1)*9; 
-    }
-  }
-
-public:
-  void testMDPointDescriptionConstructorsDefault()
-  {
-    // default constructor builing 4x3 pixel description for histohram data and default tags
-    TS_ASSERT_THROWS_NOTHING(MDPointDescription defSig);
-  }
-
-  void testMDPointDescrFromFields()
-  {
-    // and here we have default 4x3 histohram data itself 
-    MDPointStructure defaultPoint;
-    // and build pixel description from the default point using default tags; 
-    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint));
-  }
-
-  void testMDPointDescriptionFromFieldsAndTags()
-  {
-    MDPointStructure defaultPoint;
-    // now let's have "non-default" tags
-    std::vector<std::string> tags = fieldNames4D;
-    // define the pixel from these tags and 
-    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint,tags));
-  }
-
-  void testEventDataDescription()
-  {
-    MDPointStructure defaultPoint;
-    // let's set default point for describing expanded event data
-    defaultPoint.NumDataFields = 0;
-    // should be ok
-    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint));
-  }
-
-  void testTagsFieldConsistency()
-  {
-    // let's set default point for describing expanded event data
-    MDPointStructure defaultPoint;
-    defaultPoint.NumDataFields = 0;
-    // and have "non-default" tags for TOF data
-    std::vector<std::string> tags = fieldNames4D;
-    // names and fields are not-consistent
-    TS_ASSERT_THROWS_ANYTHING(MDPointDescription def(defaultPoint,tags));
-    tags.erase(tags.begin()+4,tags.begin()+6);
-    // now it should work;
-    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint,tags));
-  }
-
-  void testMDPoint4fx1dx2u8Constructors()
-  {
-    MDDataPoint<float,uint8_t>  *pPoints;
-    char *dataBuf(NULL);
-    // this constructor acutally owerwirtes default value for 8-bit fields as a TOF-kind of pixel is constructed which redefines 2 first fields as 32-bit field; MESS!
-
-	// this does not work any more as signature have to be specified manually
-    //TS_ASSERT_THROWS_NOTHING(pPoints = (new MDDataPoint<float,uint8_t>(dataBuf,4,1,2)));
-
-	MDPointStructure ps;
-	// modyfy non-default values for pixel information
-	ps.NumDimIDs     = 1;
-	ps.DimIDlength   = 1;
-	ps.NumDataFields = 1;
-	MDPointDescription pixSignature(ps);
-    TS_ASSERT_THROWS_NOTHING(pPoints = (new MDDataPoint<float,uint8_t>(dataBuf,pixSignature)));
-
-    TS_ASSERT_EQUALS(pPoints->getColumnNames().size(),pPoints->getNumPointFields());
-    TS_ASSERT_EQUALS(pPoints->getNumDimensions(),4);
-    TS_ASSERT_EQUALS(pPoints->getNumSignals(),1);
-    TS_ASSERT_EQUALS(pPoints->getNumDimIndex(),1);
-    TS_ASSERT_EQUALS(pPoints->sizeofMDDataPoint(),4*sizeof(float)+1*sizeof(double)+sizeof(uint32_t));
-
-    delete pPoints;
-    pPoints=NULL;
-  }
-
-
-  void testMDPointDefaultConstructor()
-  {
-    MDDataPoint<float,uint16_t> *pPoint;
-    char *dataBuf(NULL);
-    MDPointStructure defaultPoint;
-    MDPointDescription sig(defaultPoint,fieldNames4D);
-
-    TS_ASSERT_THROWS_NOTHING(pPoint = (new MDDataPoint<float,uint16_t>(dataBuf,sig)));
-
-    TS_ASSERT_EQUALS(pPoint->getColumnNames().size(),pPoint->getNumPointFields());
-    TS_ASSERT_EQUALS(pPoint->getNumDimensions(),4);
-    TS_ASSERT_EQUALS(pPoint->getNumSignals(),2);
-    TS_ASSERT_EQUALS(pPoint->getNumDimIndex(),3);
-    TS_ASSERT_EQUALS(pPoint->sizeofMDDataPoint(),4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t));
-
-    delete pPoint;
-  }
-
-  void test4DAccess()
-  {
-    const int nPix = 10;
-    int i;
-    data4D testData[nPix];
-    char   testBuffer[(nPix+1)*(4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t))];
-
-	build4DTestdata(testData,nPix);
-   
-    TS_ASSERT_THROWS_NOTHING(pix4D = new MDPointDescription(descriptor4D,fieldNames4D));
-
-    MDDataPoint<float,uint16_t>  PackUnpacker(testBuffer,*pix4D);
-
-    float  Dim[4];
-    double SE[2];
-    int    Ind[3];
-    for(i=0;i<nPix;i++)
-    {
-      Dim[0]=testData[i].q1;
-      Dim[1]=testData[i].q2;
-      Dim[2]=testData[i].q3;
-      Dim[3]=testData[i].En;
-      SE[0] =testData[i].S ;
-      SE[1] =testData[i].Err ;
-      Ind[0] =testData[i].iRun ;
-      Ind[1] =testData[i].iPix ;
-      Ind[2] =testData[i].iEn ;
-      PackUnpacker.setData(i,Dim,SE,Ind);
-    }
-    // testing maximal index and run number
-    Ind[0]=(uint32_t)std::pow(2.,10)-1; //1023=(2^10-1)
-    Ind[1]=(uint32_t)std::pow(2.,32-10)-1; // 4194303 = (2^22-1)
-    PackUnpacker.setData(nPix,Dim,SE,Ind);
-    TS_ASSERT_EQUALS(PackUnpacker.getRunID(nPix), Ind[0]);
-    TS_ASSERT_EQUALS(PackUnpacker.getPixID(nPix), Ind[1]);
-
-    for(i=0;i<nPix;i++)
-    {
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
-      TS_ASSERT_EQUALS(PackUnpacker.getSignal(i),testData[i].S);
-      TS_ASSERT_EQUALS(PackUnpacker.getError(i), testData[i].Err);
-      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
-      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
-
-      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
-
-    }
-  }
-
-  void testHoracePointAccess(){
-   const int nPix = 10;
-    int i;
-    data4D testData[nPix];
-    char   testBuffer[nPix*(4*sizeof(double)+2*sizeof(double)+3*sizeof(uint64_t))];
-
-    build4DTestdata(testData,nPix);
-	MDPointStructure horStruct;
-
-	horStruct.DimIDlength   =4;
-	horStruct.DimLength     =4;
-	horStruct.SignalLength  =4;
-	horStruct.NumPixCompressionBits=0;
-
-	MDPointDescription HorDescription(horStruct,fieldNames4D);
-
-	MDDataPointEqual<float,uint32_t,float> hp(testBuffer,HorDescription);
-
-    float     Dim[4];
-    float     SE[2];
-    uint32_t   Ind[3];
-    for(i=0;i<nPix;i++){
-      Dim[0]=testData[i].q1;
-      Dim[1]=testData[i].q2;
-      Dim[2]=testData[i].q3;
-      Dim[3]=testData[i].En;
-      SE[0] =(float)testData[i].S ;
-      SE[1] =(float)testData[i].Err ;
-      Ind[0] =testData[i].iRun ;
-      Ind[1] =testData[i].iPix ;
-      Ind[2] =testData[i].iEn ;
-      hp.setData(i,Dim,SE,Ind);
-
-    }
-
-   for(i=0;i<nPix;i++)
-    {
-      TS_ASSERT_EQUALS(hp.getDataField(0,i),testData[i].q1);
-      TS_ASSERT_EQUALS(hp.getDataField(1,i),testData[i].q2);
-      TS_ASSERT_EQUALS(hp.getDataField(2,i),testData[i].q3);
-      TS_ASSERT_EQUALS(hp.getDataField(3,i),testData[i].En);
-      TS_ASSERT_EQUALS(hp.getSignal(i),testData[i].S);
-      TS_ASSERT_EQUALS(hp.getError(i), testData[i].Err);
-
-      TS_ASSERT_EQUALS(hp.getIndex(0,i), testData[i].iRun);
-      TS_ASSERT_EQUALS(hp.getIndex(1,i), testData[i].iPix);
-      TS_ASSERT_EQUALS(hp.getIndex(2,i), testData[i].iEn);
-
-    }
-
-
-  }
-  void test4DAccess32bitIndex()
-  {
-    const int nPix = 10;
-    int i;
-    data4D testData[nPix];
-    char   testBuffer[nPix*(4*sizeof(float)+2*sizeof(double)+2*sizeof(uint32_t))];
-
-    build4DTestdata(testData,nPix);
-
-	MDPointDescription descr(*pix4D);
-	descr.PixInfo().DimIDlength = 4;
-
-    MDDataPoint<float,uint32_t>  PackUnpacker(testBuffer,descr);
-
-    float  Dim[4];
-    double SE[2];
-    int    Ind[3];
-    for(i=0;i<nPix;i++){
-      Dim[0]=testData[i].q1;
-      Dim[1]=testData[i].q2;
-      Dim[2]=testData[i].q3;
-      Dim[3]=testData[i].En;
-      SE[0] =testData[i].S ;
-      SE[1] =testData[i].Err ;
-      Ind[0] =testData[i].iRun ;
-      Ind[1] =testData[i].iPix ;
-      Ind[2] =testData[i].iEn ;
-      PackUnpacker.setData(i,Dim,SE,Ind);
-
-    }
-
-    for(i=0;i<nPix;i++){
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
-      TS_ASSERT_EQUALS(PackUnpacker.getSignal(i),testData[i].S);
-      TS_ASSERT_EQUALS(PackUnpacker.getError(i), testData[i].Err);
-      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
-      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
-
-      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
-
-    }
-  }
-
-  void test5DAccess(void)
-  {
-    const int nPix = 10;
-    int i;
-    data5D testData[nPix];
-    char   testBuffer[nPix*(5*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+2*sizeof(uint16_t))];
-    for(i=0;i<10;i++)
-    {
-      testData[i].q1  =(float)(i);
-      testData[i].q2  =(float)(i)*2;
-      testData[i].q3  =(float)(i)*3;
-      testData[i].En  =(float)(i)*4;
-      testData[i].T  =(float)(i)*5;
-      testData[i].S   =(double)(i)*6;
-      testData[i].Err =(double)(i)*7;
-      testData[i].iRun=(i)*8;
-      testData[i].iPix=(i)*9;
-      testData[i].iEn =(i)*10; 
-      testData[i].iT  =(i)*11; 
-    }
-
-    TS_ASSERT_THROWS_NOTHING(pix5D = new MDPointDescription(descriptor5D,fieldNames5D));
-
-    MDDataPoint<float,uint16_t>  PackUnpacker(testBuffer,*pix5D);
-
-    float  Dim[5];
-    double SE[2];
-    int    Ind[4];
-    for(i=0;i<nPix;i++)
-    {
-      Dim[0]=testData[i].q1;
-      Dim[1]=testData[i].q2;
-      Dim[2]=testData[i].q3;
-      Dim[3]=testData[i].En;
-      Dim[4]=testData[i].T;
-      SE[0] =testData[i].S ;
-      SE[1] =testData[i].Err ;
-      Ind[0] =testData[i].iRun ;
-      Ind[1] =testData[i].iPix ;
-      Ind[2] =testData[i].iEn ;
-      Ind[3] =testData[i].iT ;
-      PackUnpacker.setData(i,Dim,SE,Ind);
-    }
-
-    for(i=0;i<nPix;i++)
-    {
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(4,i),testData[i].T);
-      TS_ASSERT_EQUALS(PackUnpacker.getSignal(i),testData[i].S);
-      TS_ASSERT_EQUALS(PackUnpacker.getError(i), testData[i].Err);
-      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
-      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
-
-      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
-      TS_ASSERT_EQUALS(PackUnpacker.getIndex(3,i), testData[i].iT);
-    }
-
-  }
-
-  void testPixelCopying(){
-  const int nPix = 10;
-    int i;
-    data4D testData[nPix];
-    char   sourceBuffer[(nPix)*(4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t))];
-
-    build4DTestdata(testData,nPix);
-
-    TS_ASSERT_THROWS_NOTHING(pix4D = new MDPointDescription(descriptor4D,fieldNames4D));
-
-    MDDataPoint<float,uint16_t>  PackUnpacker(sourceBuffer,*pix4D);
-
-    float  Dim[4];
-    double SE[2];
-    int    Ind[3];
-    for(i=0;i<nPix;i++)
-    {
-      Dim[0]=testData[i].q1;
-      Dim[1]=testData[i].q2;
-      Dim[2]=testData[i].q3;
-      Dim[3]=testData[i].En;
-      SE[0] =testData[i].S ;
-      SE[1] =testData[i].Err ;
-      Ind[0] =testData[i].iRun ;
-      Ind[1] =testData[i].iPix ;
-      Ind[2] =testData[i].iEn ;
-      PackUnpacker.setData(i,Dim,SE,Ind);
-    }
-    char   targetBuffer[(2*nPix)*(4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t))];
-
-	for(i=0;i<nPix;i++){
-		PackUnpacker.copyPixel(i,targetBuffer,2*i);
-	}
-	// initate path-through class to interpret the transformed data
-    MDDataPoint<float,uint16_t>  newUnpacker(targetBuffer,*pix4D);
- // 
-    for(i=0;i<nPix;i++)
-    {
-      TS_ASSERT_EQUALS(newUnpacker.getDataField(0,2*i),testData[i].q1);
-      TS_ASSERT_EQUALS(newUnpacker.getDataField(1,2*i),testData[i].q2);
-      TS_ASSERT_EQUALS(newUnpacker.getDataField(2,2*i),testData[i].q3);
-      TS_ASSERT_EQUALS(newUnpacker.getDataField(3,2*i),testData[i].En);
-      TS_ASSERT_EQUALS(newUnpacker.getSignal(2*i),testData[i].S);
-      TS_ASSERT_EQUALS(newUnpacker.getError(2*i), testData[i].Err);
-      TS_ASSERT_EQUALS(newUnpacker.getRunID(2*i), testData[i].iRun);
-      TS_ASSERT_EQUALS(newUnpacker.getPixID(2*i), testData[i].iPix);
-
-      TS_ASSERT_EQUALS(newUnpacker.getIndex(2,2*i), testData[i].iEn);
-
-    }
-
-  }
-  void testEventData4D(void)
-  {
-    const int nPix = 10;
-    int i;
-    eventData4D testData[nPix];
-    char   testBuffer[nPix*(4*sizeof(float)+sizeof(uint32_t)+sizeof(uint16_t))];
-    for(i=0;i<10;i++)
-    {
-      testData[i].q1  =(float)(i+1);
-      testData[i].q2  =(float)(i+1)*2;
-      testData[i].q3  =(float)(i+1)*3;
-      testData[i].En  =(float)(i+1)*4;
-      testData[i].iRun=(i+1)*7;
-      testData[i].iPix=(i+1)*8;
-      testData[i].iEn =(i+1)*9; 
-    }
-    delete pix4D;
-    descriptor4D.NumDataFields=0;
-    pix4D  = NULL;
-    fieldNames4D.erase(fieldNames4D.begin()+4,fieldNames4D.begin()+6);
-
-    TS_ASSERT_THROWS_NOTHING(pix4D = new MDPointDescription(descriptor4D,fieldNames4D));
-    if(!pix4D)return;
-
-    MDDataPoint<float,uint16_t>  PackUnpacker(testBuffer,*pix4D);
-
-    float  Dim[4];
-    double SE[2];
-    int    Ind[3];
-    for(i=0;i<nPix;i++)
-    {
-      Dim[0]=testData[i].q1;
-      Dim[1]=testData[i].q2;
-      Dim[2]=testData[i].q3;
-      Dim[3]=testData[i].En;
-      Ind[0] =testData[i].iRun ;
-      Ind[1] =testData[i].iPix ;
-      Ind[2] =testData[i].iEn ;
-      PackUnpacker.setData(i,Dim,SE,Ind);
-    }
-
-    for(i=0;i<nPix;i++)
-    {
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
-      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
-      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
-      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
-      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
-    }
-  }
-
-
-  MDDataPointTest()
-  {
-    const char *cfieldNames4D[]={"q1","q2","q3","En","S","Err","iRun","iPix","iEn"};
-    const char *cfieldNames5D[]={"q1","q2","q3","En","T","S","Err","iRun","iPix","iEn","iT"};
-    fieldNames4D.assign(cfieldNames4D,(cfieldNames4D+9));
-    fieldNames5D.assign(cfieldNames5D,(cfieldNames5D+11));
-
-    descriptor5D.NumDimensions=5;
-    descriptor5D.NumDimIDs= 4;
-  }
-
-
-  ~MDDataPointTest()
-  {
-    delete pix4D;
-    delete pix5D;
-  }
-};
-
-#endif
+#ifndef MDDATA_POINT_TEST_H
+#define MDDATA_POINT_TEST_H
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDDataPoints.h"
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <memory>
+
+using namespace Mantid;
+using namespace MDDataObjects;
+
+struct data4D
+{
+  float q1,q2,q3,En;
+  double S,Err;
+  int   iRun,iPix,iEn;
+};
+struct data5D
+{
+  float q1,q2,q3,En,T;
+  double S,Err;
+  int   iRun,iPix,iEn,iT;
+};
+struct eventData4D
+{
+  float q1,q2,q3,En;
+  int   iRun,iPix,iEn;
+};
+
+
+
+
+class MDDataPointTest :    public CxxTest::TestSuite
+{
+  std::vector<std::string> fieldNames4D;
+  std::vector<std::string> fieldNames5D;
+  MDPointStructure descriptor4D;
+  MDPointStructure descriptor5D;
+  MDPointDescription *pix4D,*pix5D;
+  // helper function generating the data for the tests;
+  void build4DTestdata(data4D testData[],unsigned int nPixels)
+  {
+   for(unsigned int i=0;i<nPixels;i++)
+    {
+      testData[i].q1  =(float)(i+1);
+      testData[i].q2  =(float)(i+1)*2;
+      testData[i].q3  =(float)(i+1)*3;
+      testData[i].En  =(float)(i+1)*4;
+      testData[i].S   =(double)(i+1)*5;
+      testData[i].Err =(double)(i+1)*6;
+      testData[i].iRun=(i+1)*7;
+      testData[i].iPix=(i+1)*8;
+      testData[i].iEn =(i+1)*9; 
+    }
+  }
+
+public:
+  void testMDPointDescriptionConstructorsDefault()
+  {
+    // default constructor builing 4x3 pixel description for histohram data and default tags
+    TS_ASSERT_THROWS_NOTHING(MDPointDescription defSig);
+  }
+
+  void testMDPointDescrFromFields()
+  {
+    // and here we have default 4x3 histohram data itself 
+    MDPointStructure defaultPoint;
+    // and build pixel description from the default point using default tags; 
+    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint));
+  }
+
+  void testMDPointDescriptionFromFieldsAndTags()
+  {
+    MDPointStructure defaultPoint;
+    // now let's have "non-default" tags
+    std::vector<std::string> tags = fieldNames4D;
+    // define the pixel from these tags and 
+    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint,tags));
+  }
+
+  void testEventDataDescription()
+  {
+    MDPointStructure defaultPoint;
+    // let's set default point for describing expanded event data
+    defaultPoint.NumDataFields = 0;
+    // should be ok
+    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint));
+  }
+
+  void testTagsFieldConsistency()
+  {
+    // let's set default point for describing expanded event data
+    MDPointStructure defaultPoint;
+    defaultPoint.NumDataFields = 0;
+    // and have "non-default" tags for TOF data
+    std::vector<std::string> tags = fieldNames4D;
+    // names and fields are not-consistent
+    TS_ASSERT_THROWS_ANYTHING(MDPointDescription def(defaultPoint,tags));
+    tags.erase(tags.begin()+4,tags.begin()+6);
+    // now it should work;
+    TS_ASSERT_THROWS_NOTHING(MDPointDescription def(defaultPoint,tags));
+  }
+
+  void testMDPoint4fx1dx2u8Constructors()
+  {
+    MDDataPoint<float,uint8_t>  *pPoints;
+    char *dataBuf(NULL);
+    // this constructor acutally owerwirtes default value for 8-bit fields as a TOF-kind of pixel is constructed which redefines 2 first fields as 32-bit field; MESS!
+
+	// this does not work any more as signature have to be specified manually
+    //TS_ASSERT_THROWS_NOTHING(pPoints = (new MDDataPoint<float,uint8_t>(dataBuf,4,1,2)));
+
+	MDPointStructure ps;
+	// modyfy non-default values for pixel information
+	ps.NumDimIDs     = 1;
+	ps.DimIDlength   = 1;
+	ps.NumDataFields = 1;
+	MDPointDescription pixSignature(ps);
+    TS_ASSERT_THROWS_NOTHING(pPoints = (new MDDataPoint<float,uint8_t>(dataBuf,pixSignature)));
+
+    TS_ASSERT_EQUALS(pPoints->getColumnNames().size(),pPoints->getNumPointFields());
+    TS_ASSERT_EQUALS(pPoints->getNumDimensions(),4);
+    TS_ASSERT_EQUALS(pPoints->getNumSignals(),1);
+    TS_ASSERT_EQUALS(pPoints->getNumDimIndex(),1);
+    TS_ASSERT_EQUALS(pPoints->sizeofMDDataPoint(),4*sizeof(float)+1*sizeof(double)+sizeof(uint32_t));
+
+    delete pPoints;
+    pPoints=NULL;
+  }
+
+
+  void testMDPointDefaultConstructor()
+  {
+    MDDataPoint<float,uint16_t> *pPoint;
+    char *dataBuf(NULL);
+    MDPointStructure defaultPoint;
+    MDPointDescription sig(defaultPoint,fieldNames4D);
+
+    TS_ASSERT_THROWS_NOTHING(pPoint = (new MDDataPoint<float,uint16_t>(dataBuf,sig)));
+
+    TS_ASSERT_EQUALS(pPoint->getColumnNames().size(),pPoint->getNumPointFields());
+    TS_ASSERT_EQUALS(pPoint->getNumDimensions(),4);
+    TS_ASSERT_EQUALS(pPoint->getNumSignals(),2);
+    TS_ASSERT_EQUALS(pPoint->getNumDimIndex(),3);
+    TS_ASSERT_EQUALS(pPoint->sizeofMDDataPoint(),4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t));
+
+    delete pPoint;
+  }
+
+  void test4DAccess()
+  {
+    const int nPix = 10;
+    int i;
+    data4D testData[nPix];
+    char   testBuffer[(nPix+1)*(4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t))];
+
+	build4DTestdata(testData,nPix);
+   
+    TS_ASSERT_THROWS_NOTHING(pix4D = new MDPointDescription(descriptor4D,fieldNames4D));
+
+    MDDataPoint<float,uint16_t>  PackUnpacker(testBuffer,*pix4D);
+
+    float  Dim[4];
+    double SE[2];
+    int    Ind[3];
+    for(i=0;i<nPix;i++)
+    {
+      Dim[0]=testData[i].q1;
+      Dim[1]=testData[i].q2;
+      Dim[2]=testData[i].q3;
+      Dim[3]=testData[i].En;
+      SE[0] =testData[i].S ;
+      SE[1] =testData[i].Err ;
+      Ind[0] =testData[i].iRun ;
+      Ind[1] =testData[i].iPix ;
+      Ind[2] =testData[i].iEn ;
+      PackUnpacker.setData(i,Dim,SE,Ind);
+    }
+    // testing maximal index and run number
+    Ind[0]=(uint32_t)std::pow(2.,10)-1; //1023=(2^10-1)
+    Ind[1]=(uint32_t)std::pow(2.,32-10)-1; // 4194303 = (2^22-1)
+    PackUnpacker.setData(nPix,Dim,SE,Ind);
+    TS_ASSERT_EQUALS(PackUnpacker.getRunID(nPix), Ind[0]);
+    TS_ASSERT_EQUALS(PackUnpacker.getPixID(nPix), Ind[1]);
+
+    for(i=0;i<nPix;i++)
+    {
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
+      TS_ASSERT_EQUALS(PackUnpacker.getSignal(i),testData[i].S);
+      TS_ASSERT_EQUALS(PackUnpacker.getError(i), testData[i].Err);
+      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
+      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
+
+      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
+
+    }
+  }
+
+  void testHoracePointAccess(){
+   const int nPix = 10;
+    int i;
+    data4D testData[nPix];
+    char   testBuffer[nPix*(4*sizeof(double)+2*sizeof(double)+3*sizeof(uint64_t))];
+
+    build4DTestdata(testData,nPix);
+	MDPointStructure horStruct;
+
+	horStruct.DimIDlength   =4;
+	horStruct.DimLength     =4;
+	horStruct.SignalLength  =4;
+	horStruct.NumPixCompressionBits=0;
+
+	MDPointDescription HorDescription(horStruct,fieldNames4D);
+
+	MDDataPointEqual<float,uint32_t,float> hp(testBuffer,HorDescription);
+
+    float     Dim[4];
+    float     SE[2];
+    uint32_t   Ind[3];
+    for(i=0;i<nPix;i++){
+      Dim[0]=testData[i].q1;
+      Dim[1]=testData[i].q2;
+      Dim[2]=testData[i].q3;
+      Dim[3]=testData[i].En;
+      SE[0] =(float)testData[i].S ;
+      SE[1] =(float)testData[i].Err ;
+      Ind[0] =testData[i].iRun ;
+      Ind[1] =testData[i].iPix ;
+      Ind[2] =testData[i].iEn ;
+      hp.setData(i,Dim,SE,Ind);
+
+    }
+
+   for(i=0;i<nPix;i++)
+    {
+      TS_ASSERT_EQUALS(hp.getDataField(0,i),testData[i].q1);
+      TS_ASSERT_EQUALS(hp.getDataField(1,i),testData[i].q2);
+      TS_ASSERT_EQUALS(hp.getDataField(2,i),testData[i].q3);
+      TS_ASSERT_EQUALS(hp.getDataField(3,i),testData[i].En);
+      TS_ASSERT_EQUALS(hp.getSignal(i),testData[i].S);
+      TS_ASSERT_EQUALS(hp.getError(i), testData[i].Err);
+
+      TS_ASSERT_EQUALS(hp.getIndex(0,i), testData[i].iRun);
+      TS_ASSERT_EQUALS(hp.getIndex(1,i), testData[i].iPix);
+      TS_ASSERT_EQUALS(hp.getIndex(2,i), testData[i].iEn);
+
+    }
+
+
+  }
+  void test4DAccess32bitIndex()
+  {
+    const int nPix = 10;
+    int i;
+    data4D testData[nPix];
+    char   testBuffer[nPix*(4*sizeof(float)+2*sizeof(double)+2*sizeof(uint32_t))];
+
+    build4DTestdata(testData,nPix);
+
+	MDPointDescription descr(*pix4D);
+	descr.PixInfo().DimIDlength = 4;
+
+    MDDataPoint<float,uint32_t>  PackUnpacker(testBuffer,descr);
+
+    float  Dim[4];
+    double SE[2];
+    int    Ind[3];
+    for(i=0;i<nPix;i++){
+      Dim[0]=testData[i].q1;
+      Dim[1]=testData[i].q2;
+      Dim[2]=testData[i].q3;
+      Dim[3]=testData[i].En;
+      SE[0] =testData[i].S ;
+      SE[1] =testData[i].Err ;
+      Ind[0] =testData[i].iRun ;
+      Ind[1] =testData[i].iPix ;
+      Ind[2] =testData[i].iEn ;
+      PackUnpacker.setData(i,Dim,SE,Ind);
+
+    }
+
+    for(i=0;i<nPix;i++){
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
+      TS_ASSERT_EQUALS(PackUnpacker.getSignal(i),testData[i].S);
+      TS_ASSERT_EQUALS(PackUnpacker.getError(i), testData[i].Err);
+      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
+      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
+
+      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
+
+    }
+  }
+
+  void test5DAccess(void)
+  {
+    const int nPix = 10;
+    int i;
+    data5D testData[nPix];
+    char   testBuffer[nPix*(5*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+2*sizeof(uint16_t))];
+    for(i=0;i<10;i++)
+    {
+      testData[i].q1  =(float)(i);
+      testData[i].q2  =(float)(i)*2;
+      testData[i].q3  =(float)(i)*3;
+      testData[i].En  =(float)(i)*4;
+      testData[i].T  =(float)(i)*5;
+      testData[i].S   =(double)(i)*6;
+      testData[i].Err =(double)(i)*7;
+      testData[i].iRun=(i)*8;
+      testData[i].iPix=(i)*9;
+      testData[i].iEn =(i)*10; 
+      testData[i].iT  =(i)*11; 
+    }
+
+    TS_ASSERT_THROWS_NOTHING(pix5D = new MDPointDescription(descriptor5D,fieldNames5D));
+
+    MDDataPoint<float,uint16_t>  PackUnpacker(testBuffer,*pix5D);
+
+    float  Dim[5];
+    double SE[2];
+    int    Ind[4];
+    for(i=0;i<nPix;i++)
+    {
+      Dim[0]=testData[i].q1;
+      Dim[1]=testData[i].q2;
+      Dim[2]=testData[i].q3;
+      Dim[3]=testData[i].En;
+      Dim[4]=testData[i].T;
+      SE[0] =testData[i].S ;
+      SE[1] =testData[i].Err ;
+      Ind[0] =testData[i].iRun ;
+      Ind[1] =testData[i].iPix ;
+      Ind[2] =testData[i].iEn ;
+      Ind[3] =testData[i].iT ;
+      PackUnpacker.setData(i,Dim,SE,Ind);
+    }
+
+    for(i=0;i<nPix;i++)
+    {
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(4,i),testData[i].T);
+      TS_ASSERT_EQUALS(PackUnpacker.getSignal(i),testData[i].S);
+      TS_ASSERT_EQUALS(PackUnpacker.getError(i), testData[i].Err);
+      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
+      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
+
+      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
+      TS_ASSERT_EQUALS(PackUnpacker.getIndex(3,i), testData[i].iT);
+    }
+
+  }
+
+  void testPixelCopying(){
+  const int nPix = 10;
+    int i;
+    data4D testData[nPix];
+    char   sourceBuffer[(nPix)*(4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t))];
+
+    build4DTestdata(testData,nPix);
+
+    TS_ASSERT_THROWS_NOTHING(pix4D = new MDPointDescription(descriptor4D,fieldNames4D));
+
+    MDDataPoint<float,uint16_t>  PackUnpacker(sourceBuffer,*pix4D);
+
+    float  Dim[4];
+    double SE[2];
+    int    Ind[3];
+    for(i=0;i<nPix;i++)
+    {
+      Dim[0]=testData[i].q1;
+      Dim[1]=testData[i].q2;
+      Dim[2]=testData[i].q3;
+      Dim[3]=testData[i].En;
+      SE[0] =testData[i].S ;
+      SE[1] =testData[i].Err ;
+      Ind[0] =testData[i].iRun ;
+      Ind[1] =testData[i].iPix ;
+      Ind[2] =testData[i].iEn ;
+      PackUnpacker.setData(i,Dim,SE,Ind);
+    }
+    char   targetBuffer[(2*nPix)*(4*sizeof(float)+2*sizeof(double)+sizeof(uint32_t)+sizeof(uint16_t))];
+
+	for(i=0;i<nPix;i++){
+		PackUnpacker.copyPixel(i,targetBuffer,2*i);
+	}
+	// initate path-through class to interpret the transformed data
+    MDDataPoint<float,uint16_t>  newUnpacker(targetBuffer,*pix4D);
+ // 
+    for(i=0;i<nPix;i++)
+    {
+      TS_ASSERT_EQUALS(newUnpacker.getDataField(0,2*i),testData[i].q1);
+      TS_ASSERT_EQUALS(newUnpacker.getDataField(1,2*i),testData[i].q2);
+      TS_ASSERT_EQUALS(newUnpacker.getDataField(2,2*i),testData[i].q3);
+      TS_ASSERT_EQUALS(newUnpacker.getDataField(3,2*i),testData[i].En);
+      TS_ASSERT_EQUALS(newUnpacker.getSignal(2*i),testData[i].S);
+      TS_ASSERT_EQUALS(newUnpacker.getError(2*i), testData[i].Err);
+      TS_ASSERT_EQUALS(newUnpacker.getRunID(2*i), testData[i].iRun);
+      TS_ASSERT_EQUALS(newUnpacker.getPixID(2*i), testData[i].iPix);
+
+      TS_ASSERT_EQUALS(newUnpacker.getIndex(2,2*i), testData[i].iEn);
+
+    }
+
+  }
+  void testEventData4D(void)
+  {
+    const int nPix = 10;
+    int i;
+    eventData4D testData[nPix];
+    char   testBuffer[nPix*(4*sizeof(float)+sizeof(uint32_t)+sizeof(uint16_t))];
+    for(i=0;i<10;i++)
+    {
+      testData[i].q1  =(float)(i+1);
+      testData[i].q2  =(float)(i+1)*2;
+      testData[i].q3  =(float)(i+1)*3;
+      testData[i].En  =(float)(i+1)*4;
+      testData[i].iRun=(i+1)*7;
+      testData[i].iPix=(i+1)*8;
+      testData[i].iEn =(i+1)*9; 
+    }
+    delete pix4D;
+    descriptor4D.NumDataFields=0;
+    pix4D  = NULL;
+    fieldNames4D.erase(fieldNames4D.begin()+4,fieldNames4D.begin()+6);
+
+    TS_ASSERT_THROWS_NOTHING(pix4D = new MDPointDescription(descriptor4D,fieldNames4D));
+    if(!pix4D)return;
+
+    MDDataPoint<float,uint16_t>  PackUnpacker(testBuffer,*pix4D);
+
+    float  Dim[4];
+    double SE[2];
+    int    Ind[3];
+    for(i=0;i<nPix;i++)
+    {
+      Dim[0]=testData[i].q1;
+      Dim[1]=testData[i].q2;
+      Dim[2]=testData[i].q3;
+      Dim[3]=testData[i].En;
+      Ind[0] =testData[i].iRun ;
+      Ind[1] =testData[i].iPix ;
+      Ind[2] =testData[i].iEn ;
+      PackUnpacker.setData(i,Dim,SE,Ind);
+    }
+
+    for(i=0;i<nPix;i++)
+    {
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(0,i),testData[i].q1);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(1,i),testData[i].q2);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(2,i),testData[i].q3);
+      TS_ASSERT_EQUALS(PackUnpacker.getDataField(3,i),testData[i].En);
+      TS_ASSERT_EQUALS(PackUnpacker.getRunID(i), testData[i].iRun);
+      TS_ASSERT_EQUALS(PackUnpacker.getPixID(i), testData[i].iPix);
+      TS_ASSERT_EQUALS(PackUnpacker.getIndex(2,i), testData[i].iEn);
+    }
+  }
+
+
+  MDDataPointTest()
+  {
+    const char *cfieldNames4D[]={"q1","q2","q3","En","S","Err","iRun","iPix","iEn"};
+    const char *cfieldNames5D[]={"q1","q2","q3","En","T","S","Err","iRun","iPix","iEn","iT"};
+    fieldNames4D.assign(cfieldNames4D,(cfieldNames4D+9));
+    fieldNames5D.assign(cfieldNames5D,(cfieldNames5D+11));
+
+    descriptor5D.NumDimensions=5;
+    descriptor5D.NumDimIDs= 4;
+  }
+
+
+  ~MDDataPointTest()
+  {
+    delete pix4D;
+    delete pix5D;
+  }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDFileTestDataGeneratorTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDFileTestDataGeneratorTest.h
index c9aec264fcb21e29bbeae49e39fdbcca753a6c0c..6ab99c8df9b4c92efecec84a95bf4ceff24ec572 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDFileTestDataGeneratorTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDFileTestDataGeneratorTest.h
@@ -1,71 +1,71 @@
-#ifndef MDFILE_TESTDATAGENERATOR_TEST_H
-#define MDFILE_TESTDATAGENERATOR_TEST_H
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDTestWorkspace.h"
-#include "MDDataObjects/MD_FileTestDataGenerator.h"
-#include "MDDataObjects/MD_FileFormatFactory.h"
-#include "MDDataObjects/MDWorkspace.h"
-
-using namespace Mantid;
-using namespace MDDataObjects;
-
-class MDFileTestDataGeneratorTest : public CxxTest::TestSuite
-{
-
-    // auxiliary variables extracted from workspace;
-    IMD_FileFormat           * pReader;
-    MDDataPoints             * pMDDPoints;
-    MDImage                  * pMDImg;
-  // workspace itself
-    MDWorkspace_sptr spMDWs;
-
- 
-public:
-    void testMDFTDConstructor(){
-        std::auto_ptr<MDTestWorkspace> pMDWS;
-		TSM_ASSERT_THROWS_NOTHING("Initiating test MD workspace should not throw",pMDWS=std::auto_ptr<MDTestWorkspace>(new MDTestWorkspace()));
-
-        spMDWs                    = pMDWS->get_spWS();
-
-        pReader                   = spMDWs->get_pFileReader();
-        pMDImg                    = spMDWs->get_spMDImage().get();
-        pMDDPoints                = spMDWs->get_spMDDPoints().get();
-
- 
-    }
-    void testMDFTDReadData(){
-  
-        // read data;
-        TSM_ASSERT_THROWS_NOTHING("Read MD image should not throw",pReader->read_MDImg_data(*pMDImg));
- //       TSM_ASSERT_THROWS_NOTHING("Init pix loactions should not throw",pMDDPoints->init_pix_locations());
-    }
-    void testWSSizes(){
-        size_t nCells = pMDImg->getDataSize();
-		uint64_t nTpoints = ((uint64_t)nCells)*(nCells+1)/2;
-        uint64_t nPoints = pMDDPoints->getNumPixels();
-        TSM_ASSERT_EQUALS("Test number of pixels shoule be equal to sum of arithmetic progression up to nCells",nTpoints,nPoints);
-    }
-    void testReadCell(){
-        std::vector<size_t> SelectedCells(1);
-        SelectedCells[0] =1000;
-
-        unsigned int pix_size = pMDDPoints->sizeofMDDataPoint();
-        // the buffer to place pixels
-        std::vector<char> data_buffer((SelectedCells[0]+1)*pix_size);
-        size_t n_pix_in_buffer;
-
-        pReader->read_pix_subset(*pMDImg,SelectedCells,0,data_buffer,n_pix_in_buffer);
-
-        TSM_ASSERT_EQUALS("Number of pixels for this datatype should be equal to the cell number",SelectedCells[0]+1,n_pix_in_buffer);
-
-        TSM_ASSERT_EQUALS("data buffer should be reallocated properly",n_pix_in_buffer*pix_size,data_buffer.size());
-
-        MD_image_point *pImgData = pMDImg->get_pData();
-
-        TSM_ASSERT_EQUALS("Number of pixels in cell has to be equal to the number of pixels returned ",pImgData[SelectedCells[0]].npix,n_pix_in_buffer);
-    }
-   
-    
-};
-
+#ifndef MDFILE_TESTDATAGENERATOR_TEST_H
+#define MDFILE_TESTDATAGENERATOR_TEST_H
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDTestWorkspace.h"
+#include "MDDataObjects/MD_FileTestDataGenerator.h"
+#include "MDDataObjects/MD_FileFormatFactory.h"
+#include "MDDataObjects/MDWorkspace.h"
+
+using namespace Mantid;
+using namespace MDDataObjects;
+
+class MDFileTestDataGeneratorTest : public CxxTest::TestSuite
+{
+
+    // auxiliary variables extracted from workspace;
+    IMD_FileFormat           * pReader;
+    MDDataPoints             * pMDDPoints;
+    MDImage                  * pMDImg;
+  // workspace itself
+    MDWorkspace_sptr spMDWs;
+
+ 
+public:
+    void testMDFTDConstructor(){
+        std::auto_ptr<MDTestWorkspace> pMDWS;
+		TSM_ASSERT_THROWS_NOTHING("Initiating test MD workspace should not throw",pMDWS=std::auto_ptr<MDTestWorkspace>(new MDTestWorkspace()));
+
+        spMDWs                    = pMDWS->get_spWS();
+
+        pReader                   = spMDWs->get_pFileReader();
+        pMDImg                    = spMDWs->get_spMDImage().get();
+        pMDDPoints                = spMDWs->get_spMDDPoints().get();
+
+ 
+    }
+    void testMDFTDReadData(){
+  
+        // read data;
+        TSM_ASSERT_THROWS_NOTHING("Read MD image should not throw",pReader->read_MDImg_data(*pMDImg));
+ //       TSM_ASSERT_THROWS_NOTHING("Init pix loactions should not throw",pMDDPoints->init_pix_locations());
+    }
+    void testWSSizes(){
+        size_t nCells = pMDImg->getDataSize();
+		uint64_t nTpoints = ((uint64_t)nCells)*(nCells+1)/2;
+        uint64_t nPoints = pMDDPoints->getNumPixels();
+        TSM_ASSERT_EQUALS("Test number of pixels shoule be equal to sum of arithmetic progression up to nCells",nTpoints,nPoints);
+    }
+    void testReadCell(){
+        std::vector<size_t> SelectedCells(1);
+        SelectedCells[0] =1000;
+
+        unsigned int pix_size = pMDDPoints->sizeofMDDataPoint();
+        // the buffer to place pixels
+        std::vector<char> data_buffer((SelectedCells[0]+1)*pix_size);
+        size_t n_pix_in_buffer;
+
+        pReader->read_pix_subset(*pMDImg,SelectedCells,0,data_buffer,n_pix_in_buffer);
+
+        TSM_ASSERT_EQUALS("Number of pixels for this datatype should be equal to the cell number",SelectedCells[0]+1,n_pix_in_buffer);
+
+        TSM_ASSERT_EQUALS("data buffer should be reallocated properly",n_pix_in_buffer*pix_size,data_buffer.size());
+
+        MD_image_point *pImgData = pMDImg->get_pData();
+
+        TSM_ASSERT_EQUALS("Number of pixels in cell has to be equal to the number of pixels returned ",pImgData[SelectedCells[0]].npix,n_pix_in_buffer);
+    }
+   
+    
+};
+
 #endif
\ No newline at end of file
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDImageTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDImageTest.h
index 9b7808d421e4e2fddb3ee547d2b5a25302ea1af8..a95418a1a41953f0c266fe36cd99a834e4c0fde9 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDImageTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDImageTest.h
@@ -1,181 +1,181 @@
-#ifndef H_TEST_DND
-#define H_TEST_DND
-
-
-#include <cxxtest/TestSuite.h>
-
-#include "MantidAPI/WorkspaceFactory.h"
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
-#include "MDDataObjects/MDImage.h"
-#include "MantidAPI/FileFinder.h"
-#include "MDDataObjects/MDDataPoints.h"
-#include <Poco/Path.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <memory>
-
-using namespace Mantid::MDDataObjects;
-using namespace Mantid::Geometry;
-
-class MDImageTest :    public CxxTest::TestSuite
-{
-
-private:
-
-  class MockFileFormat : public IMD_FileFormat
-  {
-  public:
-  
-	MockFileFormat(const char *file_name):IMD_FileFormat(file_name){};
-    MOCK_CONST_METHOD0(is_open, bool());
-    virtual void read_MDImg_data(Mantid::MDDataObjects::MDImage& dnd)
-    {
-		// this function fills data arrays with values obtained from Hdd
-    }
-    MOCK_METHOD1(read_pix, bool(Mantid::MDDataObjects::MDDataPoints&)); 
-    size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
-    {
-      return 0;
-    }
-    MOCK_METHOD0(getNPix, uint64_t());
-    void write_mdd(const MDImage &)
-    {
-    }
-   MOCK_METHOD1(read_basis,void(Mantid::Geometry::MDGeometryBasis &));
-   void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &description){
-	  using namespace Mantid::Geometry;
-	  for(int i=0;i<description.getNumDims();i++){
-		  description.pDimDescription(i)->nBins=50;
-	  }
-
-   }
-  
-   MOCK_CONST_METHOD0(read_pointDescriptions,Mantid::MDDataObjects::MDPointDescription(void));
-
-    virtual ~MockFileFormat(void){};
-  };
-
-  static std::auto_ptr<MDGeometry> getMDGeometry()
-  {
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("q1", true, 0));
-    basisDimensions.insert(MDBasisDimension("q2", true, 1));
-    basisDimensions.insert(MDBasisDimension("q3", true, 2));
-    basisDimensions.insert(MDBasisDimension("u1", false, 3));
-
-    UnitCell cell;
-    return std::auto_ptr<MDGeometry>(new MDGeometry(MDGeometryBasis(basisDimensions, cell)));
-  } 
-//
-  void setFakeImageValuesIncompletely(){
-	  MD_image_point *pData = pImage->get_pData();
-	  size_t nCells =         pImage->getDataSize();
-      for(size_t  j=0;j<nCells;j++){
-		  	pData[j].s=(double)j;
-			pData[j].npix=j;
-	   }
-
-  }
-
-  std::vector<point3D> img;
-  std::vector<unsigned int> selection;
-  std::auto_ptr<MDImage> pImage;
-
-public:
-	void testMDImageConstructorEmptyDefault(){
-		std::auto_ptr<MDImage> pImg;
-		TSM_ASSERT_THROWS_NOTHING("MDImage constructor builds empty object and should not throw",pImg = std::auto_ptr<MDImage>(new MDImage()));
-
-		TSM_ASSERT_EQUALS("emtpy image should not be initialized",false,pImg->is_initialized());
-	}
-	void testMDImageConstructorFromEmptyGeometry(){
-		// an image initiated by an emtpy geometry is not empty and consists of one cell
-		std::auto_ptr<MDImage> pImg;
-		std::auto_ptr<MDGeometry> pGeom = getMDGeometry();
-		TSM_ASSERT_THROWS_NOTHING("MDImage constructor builds Image object and should not throw",pImg = std::auto_ptr<MDImage>(new MDImage(pGeom.get())));
-		// the responsibility for geometry is now with Image
-		pGeom.release();
-		//
-		TSM_ASSERT_EQUALS("Image with emtpy geometry should be initialized",true,pImg->is_initialized());
-		TSM_ASSERT_EQUALS("An image with empty geometry should be size 1 ",1,pImg->getDataSize());
-	}
-	void testMDImageWrongInitiation(){
-		// this construction wis used nelow
-	    pImage = std::auto_ptr<MDImage>(new MDImage(getMDGeometry().release()));
-		Mantid::Geometry::MDGeometryDescription geom_description(5,3);	
-		TSM_ASSERT_THROWS("Geometry is initiated by 4x3 basis and should not be possible to initiate it with different N-dims",pImage->initialize(geom_description),std::invalid_argument);
-
-		TSM_ASSERT_EQUALS("Image with emtpy geometry should be initialized",true,pImage->is_initialized());
-		TSM_ASSERT_EQUALS("An image with empty geometry should be size 1 ",1,pImage->getDataSize());
-
-
-	}
-	void testMDImageReadDescription(){
-		MockFileFormat file("");
-
-        Mantid::Geometry::MDGeometryDescription geom_description(4,3);
-		file.read_MDGeomDescription(geom_description);
-		TS_ASSERT_THROWS_NOTHING(pImage->initialize(geom_description));
-
-		TSM_ASSERT_EQUALS("An image with this geometry should be specific size ",50*50*50*50,pImage->getDataSize());
-	}
-  void testGet2DData(void){
-
-    this->selection.assign(2,1);
-
-    // returns 2D image 
-  
-    pImage->getPointData(selection,img);
-    TS_ASSERT_EQUALS(img.size(),2500);
-  }
-
-  void testExpandedSelectionFails(){
-
-    // fails as we select 5 dimensions but the dataset is actually 4-D
-    selection.assign(5,20);
-    TS_ASSERT_THROWS_ANYTHING(pImage->getPointData(selection,img) );
-  }
-
-  void testGet3DData(void){
-
-    // returns 3D image with 4-th dimension selected at 20;
-    selection.assign(1,20);
-
-  
-    pImage->getPointData(selection,img);
-    TS_ASSERT_EQUALS(img.size(),50*50*50); 
-  }
-
-  void testGet0Ddata(void){
-    // this should return single point at (20,20,20,20)
-    selection.assign(4,20);
-
-    pImage->getPointData(selection,img);
-    TS_ASSERT_EQUALS(img.size(),1);
-  }
-
-  void testGet1Ddata(void){
-    // this should return line of size 50 
-    selection.assign(3,10);
- 
-    pImage->getPointData(selection,img);
-    TS_ASSERT_EQUALS(img.size(),50);
-  }
-  void testSetValues(){
-	  this->setFakeImageValuesIncompletely();
-	  TSM_ASSERT_THROWS("This validation should throw as the npix control sum has not been set properly",pImage->validateNPix(),std::invalid_argument);
-  }
-  void testValidationSetCorrect(){
-	  TSM_ASSERT_THROWS_NOTHING("This should not throw as the previous check set correct number of pixels contributed",pImage->validateNPix());
-  }
-  void testNpixCorrect(){
-	  size_t nCells = pImage->getDataSize();
-	  uint64_t nPix = ((uint64_t)nCells)*(nCells-1)/2;
-	  TSM_ASSERT_EQUALS("setFakeImage function set number of contributing pixels which is not consistent with the number expected or getNMDDPoints returned wrong number",nPix,pImage->getNMDDPoints());
-  }
-
-private:
-
-};
-#endif
+#ifndef H_TEST_DND
+#define H_TEST_DND
+
+
+#include <cxxtest/TestSuite.h>
+
+#include "MantidAPI/WorkspaceFactory.h"
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MantidGeometry/MDGeometry/MDGeometryDescription.h"
+#include "MDDataObjects/MDImage.h"
+#include "MantidAPI/FileFinder.h"
+#include "MDDataObjects/MDDataPoints.h"
+#include <Poco/Path.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <memory>
+
+using namespace Mantid::MDDataObjects;
+using namespace Mantid::Geometry;
+
+class MDImageTest :    public CxxTest::TestSuite
+{
+
+private:
+
+  class MockFileFormat : public IMD_FileFormat
+  {
+  public:
+  
+	MockFileFormat(const char *file_name):IMD_FileFormat(file_name){};
+    MOCK_CONST_METHOD0(is_open, bool());
+    virtual void read_MDImg_data(Mantid::MDDataObjects::MDImage& dnd)
+    {
+		// this function fills data arrays with values obtained from Hdd
+    }
+    MOCK_METHOD1(read_pix, bool(Mantid::MDDataObjects::MDDataPoints&)); 
+    size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
+    {
+      return 0;
+    }
+    MOCK_METHOD0(getNPix, uint64_t());
+    void write_mdd(const MDImage &)
+    {
+    }
+   MOCK_METHOD1(read_basis,void(Mantid::Geometry::MDGeometryBasis &));
+   void read_MDGeomDescription(Mantid::Geometry::MDGeometryDescription &description){
+	  using namespace Mantid::Geometry;
+	  for(int i=0;i<description.getNumDims();i++){
+		  description.pDimDescription(i)->nBins=50;
+	  }
+
+   }
+  
+   MOCK_CONST_METHOD0(read_pointDescriptions,Mantid::MDDataObjects::MDPointDescription(void));
+
+    virtual ~MockFileFormat(void){};
+  };
+
+  static std::auto_ptr<MDGeometry> getMDGeometry()
+  {
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("q1", true, 0));
+    basisDimensions.insert(MDBasisDimension("q2", true, 1));
+    basisDimensions.insert(MDBasisDimension("q3", true, 2));
+    basisDimensions.insert(MDBasisDimension("u1", false, 3));
+
+    UnitCell cell;
+    return std::auto_ptr<MDGeometry>(new MDGeometry(MDGeometryBasis(basisDimensions, cell)));
+  } 
+//
+  void setFakeImageValuesIncompletely(){
+	  MD_image_point *pData = pImage->get_pData();
+	  size_t nCells =         pImage->getDataSize();
+      for(size_t  j=0;j<nCells;j++){
+		  	pData[j].s=(double)j;
+			pData[j].npix=j;
+	   }
+
+  }
+
+  std::vector<point3D> img;
+  std::vector<unsigned int> selection;
+  std::auto_ptr<MDImage> pImage;
+
+public:
+	void testMDImageConstructorEmptyDefault(){
+		std::auto_ptr<MDImage> pImg;
+		TSM_ASSERT_THROWS_NOTHING("MDImage constructor builds empty object and should not throw",pImg = std::auto_ptr<MDImage>(new MDImage()));
+
+		TSM_ASSERT_EQUALS("emtpy image should not be initialized",false,pImg->is_initialized());
+	}
+	void testMDImageConstructorFromEmptyGeometry(){
+		// an image initiated by an emtpy geometry is not empty and consists of one cell
+		std::auto_ptr<MDImage> pImg;
+		std::auto_ptr<MDGeometry> pGeom = getMDGeometry();
+		TSM_ASSERT_THROWS_NOTHING("MDImage constructor builds Image object and should not throw",pImg = std::auto_ptr<MDImage>(new MDImage(pGeom.get())));
+		// the responsibility for geometry is now with Image
+		pGeom.release();
+		//
+		TSM_ASSERT_EQUALS("Image with emtpy geometry should be initialized",true,pImg->is_initialized());
+		TSM_ASSERT_EQUALS("An image with empty geometry should be size 1 ",1,pImg->getDataSize());
+	}
+	void testMDImageWrongInitiation(){
+		// this construction wis used nelow
+	    pImage = std::auto_ptr<MDImage>(new MDImage(getMDGeometry().release()));
+		Mantid::Geometry::MDGeometryDescription geom_description(5,3);	
+		TSM_ASSERT_THROWS("Geometry is initiated by 4x3 basis and should not be possible to initiate it with different N-dims",pImage->initialize(geom_description),std::invalid_argument);
+
+		TSM_ASSERT_EQUALS("Image with emtpy geometry should be initialized",true,pImage->is_initialized());
+		TSM_ASSERT_EQUALS("An image with empty geometry should be size 1 ",1,pImage->getDataSize());
+
+
+	}
+	void testMDImageReadDescription(){
+		MockFileFormat file("");
+
+        Mantid::Geometry::MDGeometryDescription geom_description(4,3);
+		file.read_MDGeomDescription(geom_description);
+		TS_ASSERT_THROWS_NOTHING(pImage->initialize(geom_description));
+
+		TSM_ASSERT_EQUALS("An image with this geometry should be specific size ",50*50*50*50,pImage->getDataSize());
+	}
+  void testGet2DData(void){
+
+    this->selection.assign(2,1);
+
+    // returns 2D image 
+  
+    pImage->getPointData(selection,img);
+    TS_ASSERT_EQUALS(img.size(),2500);
+  }
+
+  void testExpandedSelectionFails(){
+
+    // fails as we select 5 dimensions but the dataset is actually 4-D
+    selection.assign(5,20);
+    TS_ASSERT_THROWS_ANYTHING(pImage->getPointData(selection,img) );
+  }
+
+  void testGet3DData(void){
+
+    // returns 3D image with 4-th dimension selected at 20;
+    selection.assign(1,20);
+
+  
+    pImage->getPointData(selection,img);
+    TS_ASSERT_EQUALS(img.size(),50*50*50); 
+  }
+
+  void testGet0Ddata(void){
+    // this should return single point at (20,20,20,20)
+    selection.assign(4,20);
+
+    pImage->getPointData(selection,img);
+    TS_ASSERT_EQUALS(img.size(),1);
+  }
+
+  void testGet1Ddata(void){
+    // this should return line of size 50 
+    selection.assign(3,10);
+ 
+    pImage->getPointData(selection,img);
+    TS_ASSERT_EQUALS(img.size(),50);
+  }
+  void testSetValues(){
+	  this->setFakeImageValuesIncompletely();
+	  TSM_ASSERT_THROWS("This validation should throw as the npix control sum has not been set properly",pImage->validateNPix(),std::invalid_argument);
+  }
+  void testValidationSetCorrect(){
+	  TSM_ASSERT_THROWS_NOTHING("This should not throw as the previous check set correct number of pixels contributed",pImage->validateNPix());
+  }
+  void testNpixCorrect(){
+	  size_t nCells = pImage->getDataSize();
+	  uint64_t nPix = ((uint64_t)nCells)*(nCells-1)/2;
+	  TSM_ASSERT_EQUALS("setFakeImage function set number of contributing pixels which is not consistent with the number expected or getNMDDPoints returned wrong number",nPix,pImage->getNMDDPoints());
+  }
+
+private:
+
+};
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDPixelsTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDPixelsTest.h
index 5d512ee5d73b3fd8d3035fc738c5e4de40658eed..ac4a7c826476536627322cd469e723f2237420ef 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDPixelsTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDPixelsTest.h
@@ -1,178 +1,178 @@
-#ifndef H_TEST_SQW
-#define H_TEST_SQW
-
-
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDDataPoints.h"
-#include "MDDataObjects/IMD_FileFormat.h"
-#include "MDDataObjects/MDImage.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include "MantidAPI/FileFinder.h"
-#include "MDDataObjects/MDImageDatatypes.h"
-#include <Poco/Path.h>
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <boost/shared_ptr.hpp>
-
-using namespace Mantid;
-using namespace Mantid::MDDataObjects;
-
-class MDPixelsTest :    public CxxTest::TestSuite
-{
-
-private:
-
-  class  MockFileFormat : public IMD_FileFormat
-  {
-  public:
-	  
-	MockFileFormat(const char *file_name):IMD_FileFormat(file_name){}; 
-
-	bool is_open()const{return false;}
-	//MOCK_CONST_METHOD0(is_open, bool());           //
- //   MOCK_METHOD1(read_MDImg_data, void(MDImage&));  //
-//   MOCK_METHOD1(read_pix, bool(MDDataPoints&));  //
-	void read_MDImg_data(MDImage &){
-	}
-
-	bool read_pix(MDDataPoints&){
-		return false;
-	}
-      
-    size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
-    {
-      return 0;
-    }
-//    MOCK_METHOD0(getNPix, uint64_t());
-	uint64_t getNPix(){
-		return 20000;
-	}
-    void read_MDGeomDescription(Geometry::MDGeometryDescription &){
-	}
-	void read_basis(Geometry::MDGeometryBasis &){
-	}
-	Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const{
-		Mantid::MDDataObjects::MDPointDescription descr;
-		return descr;
-	}
-	void write_mdd(const MDImage &){
-	}
-   //MOCK_METHOD1(read_MDGeomDescription,void(Geometry::MDGeometryDescription &));
-   //MOCK_METHOD1(read_basis,void(Geometry::MDGeometryBasis &));
-   //MOCK_CONST_METHOD0(read_pointDescriptions,Mantid::MDDataObjects::MDPointDescription(void));
-   //MOCK_METHOD1(write_mdd,void(const MDImage &));
-
-
-    virtual ~MockFileFormat(void){};
-  };
-
-  //Helper constructional method.
-  static std::auto_ptr<MDImage> constructMDImage()
-  {
-    using namespace Mantid::Geometry;
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("q0", true, 0));
-    basisDimensions.insert(MDBasisDimension("q1", true, 1));
-    basisDimensions.insert(MDBasisDimension("q2", true, 2));
-    basisDimensions.insert(MDBasisDimension("u3", false, 3));
-
-    UnitCell cell;
-    MDGeometry* pGeometry = new MDGeometry(MDGeometryBasis(basisDimensions, cell));
-    return std::auto_ptr<MDImage>(new MDImage(pGeometry));
-  }
-  // helper variable providing default pixels description
-  MDPointDescription pixDescription;
-  std::auto_ptr<MDDataPoints> points;
-public:
-	void testGetBufferThrow(){
-		points=std::auto_ptr<MDDataPoints>(new MDDataPoints(pixDescription));
-	
-
-		TSM_ASSERT_THROWS("non-initiated pointers should throw while trying get data buffer",points->get_pBuffer(1000),Kernel::Exception::NullPointerException);
-	}
-
-
-	void testInitExistingFile(){
-       boost::shared_ptr<IMD_FileFormat> mockFileFormat = boost::shared_ptr<IMD_FileFormat>(new MockFileFormat("mock"));
-	  // EXPECT_CALL(*dynamic_cast<MockFileFormat*>(mockFileFormat.get()), getNPix()).Times(1).WillOnce(testing::Return(20000));
-	
-	   std::auto_ptr<MDImage> img = constructMDImage();
-	   TSM_ASSERT_THROWS_NOTHING("initialisation should not throw",points->initialize(boost::shared_ptr<MDImage>(img.release()),mockFileFormat));
-
-	    std::vector<char> *data_buf;
-		TSM_ASSERT_THROWS_NOTHING("allocating data buffer from initiated dataPoints should not throw",data_buf  = points->get_pBuffer(1000));
-
-	}
-	void testReallocateBuffer(){
-
-		std::vector<char> *data_buf;
-		TSM_ASSERT_THROWS_NOTHING("retrievimng allocated memory should not throw",data_buf  = points->get_pBuffer(1000));
-		(*data_buf)[0]='B';
-		// this should do nothing as nPoints = 0;
-		std::vector<char> *buf_again;
-	    TSM_ASSERT_THROWS_NOTHING("this should not change the buffer and should not throw",buf_again  = points->get_pBuffer(500));
-		TSM_ASSERT_EQUALS("The data in the buffer should not change too",(*data_buf)[0],(*buf_again)[0]);
-		TSM_ASSERT_EQUALS("The data in the buffer should not change",'B',(*buf_again)[0]);
-
-
-		TSM_ASSERT_THROWS_NOTHING("memory should be re-allocated here and old data copied into it",buf_again  = points->get_pBuffer(2000));
-		// but buffer will be nullified;
-		TSM_ASSERT_EQUALS("The buffers have to be still the same",data_buf,buf_again);
-		//TSM_ASSERT_EQUALS("The buffers size should change after allocation ",1000,points->get_pix_bufSize());
-	}
- void testIsMemoryBased(void)
-  {
-    using namespace Mantid::Geometry;
-    using namespace Mantid::MDDataObjects;
-  
-    MDDataPoints* ppoints=new MDDataPoints(pixDescription);
-
-    TSM_ASSERT_EQUALS("Empty MDDataPoints should be in memory.", true, ppoints->isMemoryBased());
-    delete ppoints;
-  }
-
- /* void t__tGetPixels(void)
-  {
-    using namespace Mantid::Geometry;
-    using namespace Mantid::MDDataObjects;
-
-    MockFileFormat* mockFileFormat = new MockFileFormat("");
-    EXPECT_CALL(*mockFileFormat, getNPix()).Times(1).WillOnce(testing::Return(100));
-
-    MDDataPoints* points=new MDDataPoints(boost::shared_ptr<MDImage>(constructMDGeometry().release()),pixDescription);
-    TSM_ASSERT_EQUALS("The number of pixels returned is not correct.", 100, points->getNumPixels(boost::shared_ptr<IMD_FileFormat>(mockFileFormat)));
-    delete points;
-  }*/
-
- /* void t__tConstructedBufferSize(void)
-  {
-    using namespace Mantid::Geometry;
-    using namespace Mantid::MDDataObjects;
-
-    MockFileFormat* mockFileFormat = new MockFileFormat("");
-    MDDataPoints* points=new MDDataPoints(boost::shared_ptr<MDImage>(constructMDGeometry().release()),pixDescription);
-
-    TSM_ASSERT_EQUALS("The memory buffer size following construction is not correct.", 0, points->getMemorySize());
-    delete points;
-  }*/
-
- 
-
-  //void t__tAllocation(void)
-  //{
-  //  using namespace Mantid::Geometry;
-  //  using namespace Mantid::MDDataObjects;
-
-  //  MockFileFormat* mockFileFormat = new MockFileFormat("");
-  //  EXPECT_CALL(*mockFileFormat, getNPix()).Times(1).WillOnce(testing::Return(2));
-  //  MDDataPoints* points=new MDDataPoints(boost::shared_ptr<MDImage>(constructMDGeometry().release()),pixDescription);
-  //  points->alloc_pix_array(boost::shared_ptr<IMD_FileFormat>(mockFileFormat));
-  //  TSM_ASSERT_EQUALS("The memory size is not the expected value after allocation.", 2, points->getMemorySize());
-  //  delete points;
-  //}
-
-
-
-};
-
-#endif
+#ifndef H_TEST_SQW
+#define H_TEST_SQW
+
+
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDDataPoints.h"
+#include "MDDataObjects/IMD_FileFormat.h"
+#include "MDDataObjects/MDImage.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include "MantidAPI/FileFinder.h"
+#include "MDDataObjects/MDImageDatatypes.h"
+#include <Poco/Path.h>
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <boost/shared_ptr.hpp>
+
+using namespace Mantid;
+using namespace Mantid::MDDataObjects;
+
+class MDPixelsTest :    public CxxTest::TestSuite
+{
+
+private:
+
+  class  MockFileFormat : public IMD_FileFormat
+  {
+  public:
+	  
+	MockFileFormat(const char *file_name):IMD_FileFormat(file_name){}; 
+
+	bool is_open()const{return false;}
+	//MOCK_CONST_METHOD0(is_open, bool());           //
+ //   MOCK_METHOD1(read_MDImg_data, void(MDImage&));  //
+//   MOCK_METHOD1(read_pix, bool(MDDataPoints&));  //
+	void read_MDImg_data(MDImage &){
+	}
+
+	bool read_pix(MDDataPoints&){
+		return false;
+	}
+      
+    size_t read_pix_subset(const MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer)
+    {
+      return 0;
+    }
+//    MOCK_METHOD0(getNPix, uint64_t());
+	uint64_t getNPix(){
+		return 20000;
+	}
+    void read_MDGeomDescription(Geometry::MDGeometryDescription &){
+	}
+	void read_basis(Geometry::MDGeometryBasis &){
+	}
+	Mantid::MDDataObjects::MDPointDescription read_pointDescriptions(void)const{
+		Mantid::MDDataObjects::MDPointDescription descr;
+		return descr;
+	}
+	void write_mdd(const MDImage &){
+	}
+   //MOCK_METHOD1(read_MDGeomDescription,void(Geometry::MDGeometryDescription &));
+   //MOCK_METHOD1(read_basis,void(Geometry::MDGeometryBasis &));
+   //MOCK_CONST_METHOD0(read_pointDescriptions,Mantid::MDDataObjects::MDPointDescription(void));
+   //MOCK_METHOD1(write_mdd,void(const MDImage &));
+
+
+    virtual ~MockFileFormat(void){};
+  };
+
+  //Helper constructional method.
+  static std::auto_ptr<MDImage> constructMDImage()
+  {
+    using namespace Mantid::Geometry;
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("q0", true, 0));
+    basisDimensions.insert(MDBasisDimension("q1", true, 1));
+    basisDimensions.insert(MDBasisDimension("q2", true, 2));
+    basisDimensions.insert(MDBasisDimension("u3", false, 3));
+
+    UnitCell cell;
+    MDGeometry* pGeometry = new MDGeometry(MDGeometryBasis(basisDimensions, cell));
+    return std::auto_ptr<MDImage>(new MDImage(pGeometry));
+  }
+  // helper variable providing default pixels description
+  MDPointDescription pixDescription;
+  std::auto_ptr<MDDataPoints> points;
+public:
+	void testGetBufferThrow(){
+		points=std::auto_ptr<MDDataPoints>(new MDDataPoints(pixDescription));
+	
+
+		TSM_ASSERT_THROWS("non-initiated pointers should throw while trying get data buffer",points->get_pBuffer(1000),Kernel::Exception::NullPointerException);
+	}
+
+
+	void testInitExistingFile(){
+       boost::shared_ptr<IMD_FileFormat> mockFileFormat = boost::shared_ptr<IMD_FileFormat>(new MockFileFormat("mock"));
+	  // EXPECT_CALL(*dynamic_cast<MockFileFormat*>(mockFileFormat.get()), getNPix()).Times(1).WillOnce(testing::Return(20000));
+	
+	   std::auto_ptr<MDImage> img = constructMDImage();
+	   TSM_ASSERT_THROWS_NOTHING("initialisation should not throw",points->initialize(boost::shared_ptr<MDImage>(img.release()),mockFileFormat));
+
+	    std::vector<char> *data_buf;
+		TSM_ASSERT_THROWS_NOTHING("allocating data buffer from initiated dataPoints should not throw",data_buf  = points->get_pBuffer(1000));
+
+	}
+	void testReallocateBuffer(){
+
+		std::vector<char> *data_buf;
+		TSM_ASSERT_THROWS_NOTHING("retrievimng allocated memory should not throw",data_buf  = points->get_pBuffer(1000));
+		(*data_buf)[0]='B';
+		// this should do nothing as nPoints = 0;
+		std::vector<char> *buf_again;
+	    TSM_ASSERT_THROWS_NOTHING("this should not change the buffer and should not throw",buf_again  = points->get_pBuffer(500));
+		TSM_ASSERT_EQUALS("The data in the buffer should not change too",(*data_buf)[0],(*buf_again)[0]);
+		TSM_ASSERT_EQUALS("The data in the buffer should not change",'B',(*buf_again)[0]);
+
+
+		TSM_ASSERT_THROWS_NOTHING("memory should be re-allocated here and old data copied into it",buf_again  = points->get_pBuffer(2000));
+		// but buffer will be nullified;
+		TSM_ASSERT_EQUALS("The buffers have to be still the same",data_buf,buf_again);
+		//TSM_ASSERT_EQUALS("The buffers size should change after allocation ",1000,points->get_pix_bufSize());
+	}
+ void testIsMemoryBased(void)
+  {
+    using namespace Mantid::Geometry;
+    using namespace Mantid::MDDataObjects;
+  
+    MDDataPoints* ppoints=new MDDataPoints(pixDescription);
+
+    TSM_ASSERT_EQUALS("Empty MDDataPoints should be in memory.", true, ppoints->isMemoryBased());
+    delete ppoints;
+  }
+
+ /* void t__tGetPixels(void)
+  {
+    using namespace Mantid::Geometry;
+    using namespace Mantid::MDDataObjects;
+
+    MockFileFormat* mockFileFormat = new MockFileFormat("");
+    EXPECT_CALL(*mockFileFormat, getNPix()).Times(1).WillOnce(testing::Return(100));
+
+    MDDataPoints* points=new MDDataPoints(boost::shared_ptr<MDImage>(constructMDGeometry().release()),pixDescription);
+    TSM_ASSERT_EQUALS("The number of pixels returned is not correct.", 100, points->getNumPixels(boost::shared_ptr<IMD_FileFormat>(mockFileFormat)));
+    delete points;
+  }*/
+
+ /* void t__tConstructedBufferSize(void)
+  {
+    using namespace Mantid::Geometry;
+    using namespace Mantid::MDDataObjects;
+
+    MockFileFormat* mockFileFormat = new MockFileFormat("");
+    MDDataPoints* points=new MDDataPoints(boost::shared_ptr<MDImage>(constructMDGeometry().release()),pixDescription);
+
+    TSM_ASSERT_EQUALS("The memory buffer size following construction is not correct.", 0, points->getMemorySize());
+    delete points;
+  }*/
+
+ 
+
+  //void t__tAllocation(void)
+  //{
+  //  using namespace Mantid::Geometry;
+  //  using namespace Mantid::MDDataObjects;
+
+  //  MockFileFormat* mockFileFormat = new MockFileFormat("");
+  //  EXPECT_CALL(*mockFileFormat, getNPix()).Times(1).WillOnce(testing::Return(2));
+  //  MDDataPoints* points=new MDDataPoints(boost::shared_ptr<MDImage>(constructMDGeometry().release()),pixDescription);
+  //  points->alloc_pix_array(boost::shared_ptr<IMD_FileFormat>(mockFileFormat));
+  //  TSM_ASSERT_EQUALS("The memory size is not the expected value after allocation.", 2, points->getMemorySize());
+  //  delete points;
+  //}
+
+
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MDWorkspaceTest.h b/Code/Mantid/Framework/MDDataObjects/test/MDWorkspaceTest.h
index 802f34c83c9e66d40d280d95cb0bb0e644f6acae..04f992c0b5bf88336ee5c410013738b6cd74b6cf 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MDWorkspaceTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MDWorkspaceTest.h
@@ -1,476 +1,476 @@
-#ifndef H_TEST_MDWORKSPACE
-#define H_TEST_MDWORKSPACE
-
-#include <cxxtest/TestSuite.h>
-#include "MantidKernel/System.h"
-#include "MantidGeometry/MDGeometry/MDGeometry.h"
-#include "MDDataObjects/MDImage.h"
-#include "MDDataObjects/MDDataPoints.h"
-#include "MDDataObjects/MDWorkspace.h"
-#include <gmock/gmock.h>
-#include <gtest/gtest.h>
-#include <boost/scoped_ptr.hpp>
-#include <boost/regex.hpp>
-
-
-using namespace Mantid::API;
-using namespace Mantid::Geometry;
-
-
-class MDWorkspaceTest :    public CxxTest::TestSuite
-{
-private:
-
-  /// Fake geometry. Simply required so that dimensions can be created with ranges on-the-spot.
-  class FakeMDGeometry : public Mantid::Geometry::MDGeometry
-  {
-  public:
-    FakeMDGeometry(const Mantid::Geometry::MDGeometryBasis& basis) : MDGeometry(basis)
-    {
-    }
-    void setNumberOfBins(const int indexOfDimension, const int nBins)
-    {
-      //Range min/max are not important, but the number of bins is!
-      this->getDimension(indexOfDimension)->setRange(0, 10, nBins);
-    }
-    /// Convenience member function for working with cells in a IMDWorkspace.
-    size_t getTotalNumberOfBins()
-    {
-      size_t sum = 0;
-      for(int i = 0; i < this->getDimensions().size(); i++)
-      {
-        sum += this->getDimension(i)->getNBins();
-      }
-      return sum;
-    }
-  };
-
-  //Helper constructional method sets-up a MDGeometry with a valid MDGeometryBasis instance.
-  static Mantid::Geometry::MDGeometry* constructMDGeometry()
-  {
-    using namespace Mantid::Geometry;
-    std::set<MDBasisDimension> basisDimensions;
-    basisDimensions.insert(MDBasisDimension("q0", true, 0));
-    basisDimensions.insert(MDBasisDimension("q1", true, 1));
-    basisDimensions.insert(MDBasisDimension("q2", true, 2));
-    basisDimensions.insert(MDBasisDimension("u3", false, 3));
-
-    UnitCell cell;
-    FakeMDGeometry* geometry = new FakeMDGeometry(MDGeometryBasis(basisDimensions, cell));
-    geometry->setNumberOfBins(0, 4);
-    geometry->setNumberOfBins(1, 4);
-    geometry->setNumberOfBins(2, 4);
-    geometry->setNumberOfBins(3, 4);
-    return geometry;
-  }
-
-  //Helper mock type for file format.
-  class MockFileFormat : public Mantid::MDDataObjects::IMD_FileFormat
-  {
-  private:
-    int m_ncells;
-    int m_npoints;
-  public:
-	MockFileFormat(const char *file_name, int ncells, int npoints):IMD_FileFormat(file_name), m_ncells(ncells), m_npoints(npoints){};
-    MOCK_CONST_METHOD0(getFileName, std::string());
-    MOCK_CONST_METHOD0(is_open, bool());
-    MOCK_METHOD5(read_pix_subset, size_t(const Mantid::MDDataObjects::MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer));
-    MOCK_METHOD1(write_mdd,void(const Mantid::MDDataObjects::MDImage&));
-    MOCK_METHOD1(read_MDGeomDescription,void(Mantid::Geometry::MDGeometryDescription &));
-    MOCK_METHOD1(read_basis,void(Mantid::Geometry::MDGeometryBasis &));
-    MOCK_CONST_METHOD0(read_pointDescriptions,Mantid::MDDataObjects::MDPointDescription(void));
-
-    //Implementation loosely taken from MD_File_hdfMatlab. Enables verification that MDCells can be read out correctly.
-    void read_MDImg_data(Mantid::MDDataObjects::MDImage& image)
-    {
-      using namespace Mantid::MDDataObjects;
-      MD_image_point *pImageCell = new MD_image_point[m_ncells];
-
-      for(int i=0;i<m_ncells;i++)
-      {
-        pImageCell[i].s   = i+1;//Just some computable value.
-        pImageCell[i].err = i; //Just some computable value.
-      }
-      image.get_pMDImgData()->data = pImageCell;
-    }
-
-    //Implementation loosely taken from MD_File_hdfMatlab. Just want to be able to load pixels into workspace
-    bool read_pix(Mantid::MDDataObjects::MDDataPoints& sqw)
-    {
-      using namespace Mantid::MDDataObjects;
-      const int size = 9;
-      std::vector<std::string> dataTags(size);
-      std::string tagNames[] = {"qx","qy","qz","en","S","err","runID","pixID","enID"};
-      std::copy ( tagNames, tagNames + size, dataTags.begin() );
-
-      MDPointStructure defaultPixel;
-      defaultPixel.DimIDlength =4;
-      defaultPixel.SignalLength=4;
-      defaultPixel.NumPixCompressionBits=0;
-
-      MDPointDescription PixSignature(defaultPixel,dataTags);
-      char *buf(NULL);
-      MDDataPointEqual<float,uint32_t,float> packer(buf,PixSignature);
-
-      std::vector<char> *outData = sqw.get_pBuffer(this->getNPix());
-      packer.setBuffer(&(*outData)[0]);
-
-      float    s_dim_fields[6];
-      uint32_t  ind_fields[3];
-
-      for(int i=0;i<this->getNPix();i++)
-      {
-        s_dim_fields[0] =           i;
-        s_dim_fields[1] =           i; // sqw.pix_array[i].qy
-        s_dim_fields[2] =           i; // sqw.pix_array[i].qz
-        s_dim_fields[3] =           i; // sqw.pix_array[i].En
-        ind_fields[0]   =  (uint32_t)i;    // sqw.pix_array[i].irun
-        ind_fields[1]   =  (uint32_t)i;   // sqw.pix_array[i].idet
-        ind_fields[2]   =  (uint32_t)i; // sqw.pix_array[i].ien
-        s_dim_fields[4] =           i+1; // sqw.pix_array[i].s
-        s_dim_fields[5] =           i;  // sqw.pix_array[i].err
-
-        packer.setData(i,s_dim_fields,ind_fields);
-       }
-      return true;
-    }
-    uint64_t getNPix()
-    {
-      return m_npoints;
-    }
-    virtual ~MockFileFormat(void){};
-  };
-
-  //Helper stock constructional method.
-  static Mantid::MDDataObjects::MDWorkspace* constructMDWorkspace()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::Geometry;
-
-    MDWorkspace* workspace = new MDWorkspace;
-    MockFileFormat* mockFile = new MockFileFormat("",256,256);
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
-    return workspace;
-  }
-
-  //Helper constructional method provides mdworkspace as IMDWorkspace in order to test this axis of the implementation.
-  static Mantid::API::IMDWorkspace* constructMDWorkspaceAsIMDWorkspace()
-  {
-    return  constructMDWorkspace();
-  }
-
-public:
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetNPoints()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    TSM_ASSERT_EQUALS("MDWorkspace::getNPoints(). Implementation should return 256 ",256, workspace->getNPoints());
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetDimension()
-  {
-    using namespace Mantid::API;
-
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-
-    std::string id = "q0";
-    boost::shared_ptr<const IMDDimension> dimension = workspace->getDimension(id);
-    TSM_ASSERT_EQUALS("The dimension id does not match", id, dimension->getDimensionId());
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetDimensionThrows()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-
-    std::string id = "::::::";
-    TSM_ASSERT_THROWS("The unknown dimension id should have cause and exception to be thrown.", workspace->getDimension(id), std::invalid_argument);
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetPoint()
-  {
-    using namespace Mantid::API;
-    using namespace Mantid::MDDataObjects;
-
-    //Get as a MDWorkspace so that the read pixels can be called. This uses a fake method on a mock object to
-    //generate an array of pixels to read.
-    MDWorkspace* mdWorkspace = constructMDWorkspace();
-    mdWorkspace->read_pix();
-
-    //Pass workspace over as IMDWorkspace. Ensures we are testing IMDWorkspace aspects.
-    boost::scoped_ptr<IMDWorkspace> workspace(mdWorkspace);
-
-    //There should be 10 pixels available. This is tested elsewhere.
-    //Test that the first and last pixels give the correct results.
-    TSM_ASSERT_EQUALS("The signal value for the first pixel is incorrect", 1, workspace->getPoint(0).getSignal());
-    TSM_ASSERT_EQUALS("The error value for the first pixel is incorrect", 0, workspace->getPoint(0).getError());
-    TSM_ASSERT_EQUALS("The signal value for the pixel is incorrect", 10, workspace->getPoint(9).getSignal());
-    TSM_ASSERT_EQUALS("The error value for the pixel is incorrect", 9, workspace->getPoint(9).getError());
-    TSM_ASSERT_THROWS("Index should be out of bounds", workspace->getPoint(256), std::range_error);
-    TSM_ASSERT_THROWS("Index should be out of bounds", workspace->getPoint(-1), std::range_error);
-  }
-
-
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetCellOneArgument()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    const SignalAggregate& cell = workspace->getCell(0);
-    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0).getSignal());
-    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0).getError());
-    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 4, workspace->getCell(3).getSignal());
-    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 3, workspace->getCell(3).getError());
-    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 2, workspace->getCell(3).getVertexes().size());
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetCellTwoArgument()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    const SignalAggregate& cell = workspace->getCell(0);
-    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0, 0).getSignal());
-    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0, 0).getError());
-    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 2, workspace->getCell(1, 0).getSignal());
-    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 1, workspace->getCell(1, 0).getError());
-    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 4, workspace->getCell(1, 0).getVertexes().size());
-    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(4, 4), std::range_error);
-    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(0,-1), std::runtime_error);
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetCellThreeArgument()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    const SignalAggregate& cell = workspace->getCell(0);
-    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0, 0, 0).getSignal());
-    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0, 0, 0).getError());
-    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 2, workspace->getCell(1, 0, 0).getSignal());
-    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 1, workspace->getCell(1, 0, 0).getError());
-    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 8, workspace->getCell(1, 0, 0).getVertexes().size());
-    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(4, 4, 4), std::range_error);
-    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(0, 0, -1), std::runtime_error);
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetCellFourArgument()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    const SignalAggregate& cell = workspace->getCell(0);
-    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0, 0, 0, 0).getSignal());
-    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0, 0, 0, 0).getError());
-    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 2, workspace->getCell(1, 0, 0, 0).getSignal());
-    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 1, workspace->getCell(1, 0, 0, 0).getError());
-    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 16, workspace->getCell(1, 0, 0, 0).getVertexes().size());
-    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(4, 4, 4, 4), std::range_error);
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetCellNArgument()
-  {
-    using namespace Mantid::API;
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    TSM_ASSERT_THROWS("MDWorkspace::getCell() is not yet implemented. Should have thrown runtime exception", workspace->getCell(1, 1, 1, 1, 1), std::runtime_error);
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetXDimension()
-  {
-    using namespace Mantid::API;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    boost::shared_ptr<const IMDDimension> dimension = workspace->getXDimension();
-    TSM_ASSERT_EQUALS("The x-dimension returned was not the expected alignment.", "q0", dimension->getDimensionId());
-
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetYDimension()
-  {
-    using namespace Mantid::API;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    boost::shared_ptr<const IMDDimension> dimension = workspace->getYDimension();
-    TSM_ASSERT_EQUALS("The y-dimension returned was not the expected alignment.", "q1", dimension->getDimensionId());
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGetZDimension()
-  {
-    using namespace Mantid::API;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    boost::shared_ptr<const IMDDimension> dimension = workspace->getZDimension();
-    TSM_ASSERT_EQUALS("The y-dimension returned was not the expected alignment.", "q2", dimension->getDimensionId());
-  }
-
-  //Test for the IMDWorkspace aspects of MDWorkspace.
-  void testGettDimension()
-  {
-    using namespace Mantid::API;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
-    boost::shared_ptr<const IMDDimension> dimension = workspace->gettDimension();
-    TSM_ASSERT_EQUALS("The t-dimension returned was not the expected alignment.", "u3", dimension->getDimensionId());
-  }
-
-  void testGetMemorySize()
-  {
-    using namespace Mantid::MDDataObjects;
-
-    boost::scoped_ptr<MDWorkspace> workspace(constructMDWorkspace());
-    size_t img_data_size = workspace->get_const_MDImage().getMemorySize();
-    size_t pix_data_size = workspace->get_const_MDDPoints().getMemorySize();
-    TSM_ASSERT_EQUALS("Workspace memory size differs from its parts ",pix_data_size+img_data_size , workspace->getMemorySize());
-  }
-  void testId(){
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(constructMDWorkspace());
-
-    TSM_ASSERT_EQUALS("MD Workspace ID differs from expected ","MD-Workspace", workspace->id());
-  }
-  ///
-  void testGetNumDims(void){
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(constructMDWorkspace());
-    TSM_ASSERT_EQUALS("Default number of dimensions in Workspac differs from expected ",4, workspace->getNumDims());
-  }
-
-  void testReadPixSubset()
-  {
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-
-    MockFileFormat* mockFile = new MockFileFormat("",1,1);
-    EXPECT_CALL(*mockFile, read_pix_subset(testing::_, testing::_, testing::_, testing::_, testing::_)).Times(1);
-
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
-    size_t size_param = 1;
-    std::vector<size_t> empty1;
-    std::vector<char> empty2;
-    workspace->read_pix_selection(empty1, size_param, empty2, size_param);
-    TSM_ASSERT("MDWorkspace::read_pix_selection failed to call appropriate method on nested component.", testing::Mock::VerifyAndClearExpectations(mockFile));
-  }
-
-  void testReadPixSubsetThrows()
-  {
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-    MockFileFormat* mockFile = NULL;
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
-    size_t size_param = 1;
-    std::vector<size_t> empty1;
-    std::vector<char> empty2;
-    TSM_ASSERT_THROWS("The file has not been provided, so should throw bad allocation",
-        workspace->read_pix_selection(empty1, size_param, empty2, size_param), std::runtime_error);
-  }
-
-  void  testReadThrows(void)
-  {
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-    MockFileFormat* mockFile = NULL;
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
-
-    TSM_ASSERT_THROWS("The file reader has not been provided, so should throw bad allocation", workspace->read_pix(), std::runtime_error);
-  }
-
-  void testwriteMDDWriteFile(void)
-  {
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-
-    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
-    EXPECT_CALL(*mockFile, write_mdd(testing::_)).Times(1);
-
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
-
-    workspace->write_mdd();
-    TSM_ASSERT("MDWorkspace::read_pix() failed to call appropriate method on nested component.", testing::Mock::VerifyAndClearExpectations(mockFile));
-  }
-
-  void testwriteMDDthrows()
-  {
-    using namespace Mantid::MDDataObjects;
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-    MockFileFormat* mockFile = NULL;
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
-
-    TSM_ASSERT_THROWS("The file reader has not been provided, so should throw bad allocation", workspace->write_mdd(), std::runtime_error);
-  }
-
-  void testProperInitalisation()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-
-    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
-    MDGeometry* geometry = constructMDGeometry();
-
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), geometry);
-
-    //check that constructed components are now accessible.
-    TSM_ASSERT_THROWS_NOTHING("The const ImageData getter is not wired-up correctly",  workspace->get_const_MDImage());
-    TSM_ASSERT_THROWS_NOTHING("The const MDDataPoints getter is not wired-up correctly", workspace->get_const_MDDPoints());
-
-    TSM_ASSERT_EQUALS("The const geometry getter is not wired-up correctly", workspace->getGeometry(), geometry);
-    TSM_ASSERT("The ImageData getter is not wired-up correctly", workspace->get_spMDImage().get() != NULL);
-    TSM_ASSERT("The MDDataPoints getter is not wired-up correctly", workspace->get_spMDDPoints().get() != NULL);
-  }
-
-  void testGetWorkspaceLocation()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-
-    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
-    EXPECT_CALL(*mockFile, getFileName()).Times(1).WillOnce(testing::Return("somelocalfile.sqw"));
-    MDGeometry* geometry = constructMDGeometry();
-
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), geometry);
-
-    TSM_ASSERT_EQUALS("Workspace location is empty", "somelocalfile.sqw", workspace->getWSLocation());
-  }
-
-  void testGetWorkspaceGeometry()
-  {
-    using namespace Mantid::MDDataObjects;
-    using namespace Mantid::Geometry;
-
-    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
-
-    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
-    MDGeometry* geometry = constructMDGeometry();
-
-    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), geometry);
-
-
-    static const boost::regex condition("^<(.)*>$");
-    //Quick test for xml like string.
-    TSM_ASSERT("Geometry xml string returned does not look like xml", regex_match(workspace->getGeometryXML(), condition));
-    //Test against geometry xml to ensure pass through.
-    TSM_ASSERT_EQUALS("Geometry xml does not match xml provided by workspace.", geometry->toXMLString(), workspace->getGeometryXML());
-
-  }
-
-
-};
-
-#endif
+#ifndef H_TEST_MDWORKSPACE
+#define H_TEST_MDWORKSPACE
+
+#include <cxxtest/TestSuite.h>
+#include "MantidKernel/System.h"
+#include "MantidGeometry/MDGeometry/MDGeometry.h"
+#include "MDDataObjects/MDImage.h"
+#include "MDDataObjects/MDDataPoints.h"
+#include "MDDataObjects/MDWorkspace.h"
+#include <gmock/gmock.h>
+#include <gtest/gtest.h>
+#include <boost/scoped_ptr.hpp>
+#include <boost/regex.hpp>
+
+
+using namespace Mantid::API;
+using namespace Mantid::Geometry;
+
+
+class MDWorkspaceTest :    public CxxTest::TestSuite
+{
+private:
+
+  /// Fake geometry. Simply required so that dimensions can be created with ranges on-the-spot.
+  class FakeMDGeometry : public Mantid::Geometry::MDGeometry
+  {
+  public:
+    FakeMDGeometry(const Mantid::Geometry::MDGeometryBasis& basis) : MDGeometry(basis)
+    {
+    }
+    void setNumberOfBins(const int indexOfDimension, const int nBins)
+    {
+      //Range min/max are not important, but the number of bins is!
+      this->getDimension(indexOfDimension)->setRange(0, 10, nBins);
+    }
+    /// Convenience member function for working with cells in a IMDWorkspace.
+    size_t getTotalNumberOfBins()
+    {
+      size_t sum = 0;
+      for(int i = 0; i < this->getDimensions().size(); i++)
+      {
+        sum += this->getDimension(i)->getNBins();
+      }
+      return sum;
+    }
+  };
+
+  //Helper constructional method sets-up a MDGeometry with a valid MDGeometryBasis instance.
+  static Mantid::Geometry::MDGeometry* constructMDGeometry()
+  {
+    using namespace Mantid::Geometry;
+    std::set<MDBasisDimension> basisDimensions;
+    basisDimensions.insert(MDBasisDimension("q0", true, 0));
+    basisDimensions.insert(MDBasisDimension("q1", true, 1));
+    basisDimensions.insert(MDBasisDimension("q2", true, 2));
+    basisDimensions.insert(MDBasisDimension("u3", false, 3));
+
+    UnitCell cell;
+    FakeMDGeometry* geometry = new FakeMDGeometry(MDGeometryBasis(basisDimensions, cell));
+    geometry->setNumberOfBins(0, 4);
+    geometry->setNumberOfBins(1, 4);
+    geometry->setNumberOfBins(2, 4);
+    geometry->setNumberOfBins(3, 4);
+    return geometry;
+  }
+
+  //Helper mock type for file format.
+  class MockFileFormat : public Mantid::MDDataObjects::IMD_FileFormat
+  {
+  private:
+    int m_ncells;
+    int m_npoints;
+  public:
+	MockFileFormat(const char *file_name, int ncells, int npoints):IMD_FileFormat(file_name), m_ncells(ncells), m_npoints(npoints){};
+    MOCK_CONST_METHOD0(getFileName, std::string());
+    MOCK_CONST_METHOD0(is_open, bool());
+    MOCK_METHOD5(read_pix_subset, size_t(const Mantid::MDDataObjects::MDImage &dnd,const std::vector<size_t> &selected_cells,size_t starting_cell,std::vector<char> &pix_buf, size_t &n_pix_in_buffer));
+    MOCK_METHOD1(write_mdd,void(const Mantid::MDDataObjects::MDImage&));
+    MOCK_METHOD1(read_MDGeomDescription,void(Mantid::Geometry::MDGeometryDescription &));
+    MOCK_METHOD1(read_basis,void(Mantid::Geometry::MDGeometryBasis &));
+    MOCK_CONST_METHOD0(read_pointDescriptions,Mantid::MDDataObjects::MDPointDescription(void));
+
+    //Implementation loosely taken from MD_File_hdfMatlab. Enables verification that MDCells can be read out correctly.
+    void read_MDImg_data(Mantid::MDDataObjects::MDImage& image)
+    {
+      using namespace Mantid::MDDataObjects;
+      MD_image_point *pImageCell = new MD_image_point[m_ncells];
+
+      for(int i=0;i<m_ncells;i++)
+      {
+        pImageCell[i].s   = i+1;//Just some computable value.
+        pImageCell[i].err = i; //Just some computable value.
+      }
+      image.get_pMDImgData()->data = pImageCell;
+    }
+
+    //Implementation loosely taken from MD_File_hdfMatlab. Just want to be able to load pixels into workspace
+    bool read_pix(Mantid::MDDataObjects::MDDataPoints& sqw)
+    {
+      using namespace Mantid::MDDataObjects;
+      const int size = 9;
+      std::vector<std::string> dataTags(size);
+      std::string tagNames[] = {"qx","qy","qz","en","S","err","runID","pixID","enID"};
+      std::copy ( tagNames, tagNames + size, dataTags.begin() );
+
+      MDPointStructure defaultPixel;
+      defaultPixel.DimIDlength =4;
+      defaultPixel.SignalLength=4;
+      defaultPixel.NumPixCompressionBits=0;
+
+      MDPointDescription PixSignature(defaultPixel,dataTags);
+      char *buf(NULL);
+      MDDataPointEqual<float,uint32_t,float> packer(buf,PixSignature);
+
+      std::vector<char> *outData = sqw.get_pBuffer(this->getNPix());
+      packer.setBuffer(&(*outData)[0]);
+
+      float    s_dim_fields[6];
+      uint32_t  ind_fields[3];
+
+      for(int i=0;i<this->getNPix();i++)
+      {
+        s_dim_fields[0] =           i;
+        s_dim_fields[1] =           i; // sqw.pix_array[i].qy
+        s_dim_fields[2] =           i; // sqw.pix_array[i].qz
+        s_dim_fields[3] =           i; // sqw.pix_array[i].En
+        ind_fields[0]   =  (uint32_t)i;    // sqw.pix_array[i].irun
+        ind_fields[1]   =  (uint32_t)i;   // sqw.pix_array[i].idet
+        ind_fields[2]   =  (uint32_t)i; // sqw.pix_array[i].ien
+        s_dim_fields[4] =           i+1; // sqw.pix_array[i].s
+        s_dim_fields[5] =           i;  // sqw.pix_array[i].err
+
+        packer.setData(i,s_dim_fields,ind_fields);
+       }
+      return true;
+    }
+    uint64_t getNPix()
+    {
+      return m_npoints;
+    }
+    virtual ~MockFileFormat(void){};
+  };
+
+  //Helper stock constructional method.
+  static Mantid::MDDataObjects::MDWorkspace* constructMDWorkspace()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::Geometry;
+
+    MDWorkspace* workspace = new MDWorkspace;
+    MockFileFormat* mockFile = new MockFileFormat("",256,256);
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
+    return workspace;
+  }
+
+  //Helper constructional method provides mdworkspace as IMDWorkspace in order to test this axis of the implementation.
+  static Mantid::API::IMDWorkspace* constructMDWorkspaceAsIMDWorkspace()
+  {
+    return  constructMDWorkspace();
+  }
+
+public:
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetNPoints()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    TSM_ASSERT_EQUALS("MDWorkspace::getNPoints(). Implementation should return 256 ",256, workspace->getNPoints());
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetDimension()
+  {
+    using namespace Mantid::API;
+
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+
+    std::string id = "q0";
+    boost::shared_ptr<const IMDDimension> dimension = workspace->getDimension(id);
+    TSM_ASSERT_EQUALS("The dimension id does not match", id, dimension->getDimensionId());
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetDimensionThrows()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+
+    std::string id = "::::::";
+    TSM_ASSERT_THROWS("The unknown dimension id should have cause and exception to be thrown.", workspace->getDimension(id), std::invalid_argument);
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetPoint()
+  {
+    using namespace Mantid::API;
+    using namespace Mantid::MDDataObjects;
+
+    //Get as a MDWorkspace so that the read pixels can be called. This uses a fake method on a mock object to
+    //generate an array of pixels to read.
+    MDWorkspace* mdWorkspace = constructMDWorkspace();
+    mdWorkspace->read_pix();
+
+    //Pass workspace over as IMDWorkspace. Ensures we are testing IMDWorkspace aspects.
+    boost::scoped_ptr<IMDWorkspace> workspace(mdWorkspace);
+
+    //There should be 10 pixels available. This is tested elsewhere.
+    //Test that the first and last pixels give the correct results.
+    TSM_ASSERT_EQUALS("The signal value for the first pixel is incorrect", 1, workspace->getPoint(0).getSignal());
+    TSM_ASSERT_EQUALS("The error value for the first pixel is incorrect", 0, workspace->getPoint(0).getError());
+    TSM_ASSERT_EQUALS("The signal value for the pixel is incorrect", 10, workspace->getPoint(9).getSignal());
+    TSM_ASSERT_EQUALS("The error value for the pixel is incorrect", 9, workspace->getPoint(9).getError());
+    TSM_ASSERT_THROWS("Index should be out of bounds", workspace->getPoint(256), std::range_error);
+    TSM_ASSERT_THROWS("Index should be out of bounds", workspace->getPoint(-1), std::range_error);
+  }
+
+
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetCellOneArgument()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    const SignalAggregate& cell = workspace->getCell(0);
+    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0).getSignal());
+    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0).getError());
+    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 4, workspace->getCell(3).getSignal());
+    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 3, workspace->getCell(3).getError());
+    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 2, workspace->getCell(3).getVertexes().size());
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetCellTwoArgument()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    const SignalAggregate& cell = workspace->getCell(0);
+    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0, 0).getSignal());
+    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0, 0).getError());
+    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 2, workspace->getCell(1, 0).getSignal());
+    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 1, workspace->getCell(1, 0).getError());
+    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 4, workspace->getCell(1, 0).getVertexes().size());
+    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(4, 4), std::range_error);
+    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(0,-1), std::runtime_error);
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetCellThreeArgument()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    const SignalAggregate& cell = workspace->getCell(0);
+    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0, 0, 0).getSignal());
+    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0, 0, 0).getError());
+    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 2, workspace->getCell(1, 0, 0).getSignal());
+    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 1, workspace->getCell(1, 0, 0).getError());
+    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 8, workspace->getCell(1, 0, 0).getVertexes().size());
+    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(4, 4, 4), std::range_error);
+    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(0, 0, -1), std::runtime_error);
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetCellFourArgument()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    const SignalAggregate& cell = workspace->getCell(0);
+    TSM_ASSERT_EQUALS("The first MDCell's signal value is incorrect", 1, workspace->getCell(0, 0, 0, 0).getSignal());
+    TSM_ASSERT_EQUALS("The first MDCell's error value is incorrect", 0, workspace->getCell(0, 0, 0, 0).getError());
+    TSM_ASSERT_EQUALS("The MDCell's signal value is incorrect", 2, workspace->getCell(1, 0, 0, 0).getSignal());
+    TSM_ASSERT_EQUALS("The MDCell's error value is incorrect", 1, workspace->getCell(1, 0, 0, 0).getError());
+    TSM_ASSERT_EQUALS("Wrong number of vertexes generated.", 16, workspace->getCell(1, 0, 0, 0).getVertexes().size());
+    TSM_ASSERT_THROWS("The cell requested should be out of bounds", workspace->getCell(4, 4, 4, 4), std::range_error);
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetCellNArgument()
+  {
+    using namespace Mantid::API;
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    TSM_ASSERT_THROWS("MDWorkspace::getCell() is not yet implemented. Should have thrown runtime exception", workspace->getCell(1, 1, 1, 1, 1), std::runtime_error);
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetXDimension()
+  {
+    using namespace Mantid::API;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    boost::shared_ptr<const IMDDimension> dimension = workspace->getXDimension();
+    TSM_ASSERT_EQUALS("The x-dimension returned was not the expected alignment.", "q0", dimension->getDimensionId());
+
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetYDimension()
+  {
+    using namespace Mantid::API;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    boost::shared_ptr<const IMDDimension> dimension = workspace->getYDimension();
+    TSM_ASSERT_EQUALS("The y-dimension returned was not the expected alignment.", "q1", dimension->getDimensionId());
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGetZDimension()
+  {
+    using namespace Mantid::API;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    boost::shared_ptr<const IMDDimension> dimension = workspace->getZDimension();
+    TSM_ASSERT_EQUALS("The y-dimension returned was not the expected alignment.", "q2", dimension->getDimensionId());
+  }
+
+  //Test for the IMDWorkspace aspects of MDWorkspace.
+  void testGettDimension()
+  {
+    using namespace Mantid::API;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<IMDWorkspace> workspace(constructMDWorkspaceAsIMDWorkspace());
+    boost::shared_ptr<const IMDDimension> dimension = workspace->gettDimension();
+    TSM_ASSERT_EQUALS("The t-dimension returned was not the expected alignment.", "u3", dimension->getDimensionId());
+  }
+
+  void testGetMemorySize()
+  {
+    using namespace Mantid::MDDataObjects;
+
+    boost::scoped_ptr<MDWorkspace> workspace(constructMDWorkspace());
+    size_t img_data_size = workspace->get_const_MDImage().getMemorySize();
+    size_t pix_data_size = workspace->get_const_MDDPoints().getMemorySize();
+    TSM_ASSERT_EQUALS("Workspace memory size differs from its parts ",pix_data_size+img_data_size , workspace->getMemorySize());
+  }
+  void testId(){
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(constructMDWorkspace());
+
+    TSM_ASSERT_EQUALS("MD Workspace ID differs from expected ","MD-Workspace", workspace->id());
+  }
+  ///
+  void testGetNumDims(void){
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(constructMDWorkspace());
+    TSM_ASSERT_EQUALS("Default number of dimensions in Workspac differs from expected ",4, workspace->getNumDims());
+  }
+
+  void testReadPixSubset()
+  {
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+
+    MockFileFormat* mockFile = new MockFileFormat("",1,1);
+    EXPECT_CALL(*mockFile, read_pix_subset(testing::_, testing::_, testing::_, testing::_, testing::_)).Times(1);
+
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
+    size_t size_param = 1;
+    std::vector<size_t> empty1;
+    std::vector<char> empty2;
+    workspace->read_pix_selection(empty1, size_param, empty2, size_param);
+    TSM_ASSERT("MDWorkspace::read_pix_selection failed to call appropriate method on nested component.", testing::Mock::VerifyAndClearExpectations(mockFile));
+  }
+
+  void testReadPixSubsetThrows()
+  {
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+    MockFileFormat* mockFile = NULL;
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
+    size_t size_param = 1;
+    std::vector<size_t> empty1;
+    std::vector<char> empty2;
+    TSM_ASSERT_THROWS("The file has not been provided, so should throw bad allocation",
+        workspace->read_pix_selection(empty1, size_param, empty2, size_param), std::runtime_error);
+  }
+
+  void  testReadThrows(void)
+  {
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+    MockFileFormat* mockFile = NULL;
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
+
+    TSM_ASSERT_THROWS("The file reader has not been provided, so should throw bad allocation", workspace->read_pix(), std::runtime_error);
+  }
+
+  void testwriteMDDWriteFile(void)
+  {
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+
+    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
+    EXPECT_CALL(*mockFile, write_mdd(testing::_)).Times(1);
+
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
+
+    workspace->write_mdd();
+    TSM_ASSERT("MDWorkspace::read_pix() failed to call appropriate method on nested component.", testing::Mock::VerifyAndClearExpectations(mockFile));
+  }
+
+  void testwriteMDDthrows()
+  {
+    using namespace Mantid::MDDataObjects;
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+    MockFileFormat* mockFile = NULL;
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), constructMDGeometry());
+
+    TSM_ASSERT_THROWS("The file reader has not been provided, so should throw bad allocation", workspace->write_mdd(), std::runtime_error);
+  }
+
+  void testProperInitalisation()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+
+    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
+    MDGeometry* geometry = constructMDGeometry();
+
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), geometry);
+
+    //check that constructed components are now accessible.
+    TSM_ASSERT_THROWS_NOTHING("The const ImageData getter is not wired-up correctly",  workspace->get_const_MDImage());
+    TSM_ASSERT_THROWS_NOTHING("The const MDDataPoints getter is not wired-up correctly", workspace->get_const_MDDPoints());
+
+    TSM_ASSERT_EQUALS("The const geometry getter is not wired-up correctly", workspace->getGeometry(), geometry);
+    TSM_ASSERT("The ImageData getter is not wired-up correctly", workspace->get_spMDImage().get() != NULL);
+    TSM_ASSERT("The MDDataPoints getter is not wired-up correctly", workspace->get_spMDDPoints().get() != NULL);
+  }
+
+  void testGetWorkspaceLocation()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+
+    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
+    EXPECT_CALL(*mockFile, getFileName()).Times(1).WillOnce(testing::Return("somelocalfile.sqw"));
+    MDGeometry* geometry = constructMDGeometry();
+
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), geometry);
+
+    TSM_ASSERT_EQUALS("Workspace location is empty", "somelocalfile.sqw", workspace->getWSLocation());
+  }
+
+  void testGetWorkspaceGeometry()
+  {
+    using namespace Mantid::MDDataObjects;
+    using namespace Mantid::Geometry;
+
+    boost::scoped_ptr<MDWorkspace> workspace(new MDWorkspace());
+
+    MockFileFormat* mockFile = new MockFileFormat("", 1, 1);
+    MDGeometry* geometry = constructMDGeometry();
+
+    workspace->init(boost::shared_ptr<IMD_FileFormat>(mockFile), geometry);
+
+
+    static const boost::regex condition("^<(.)*>$");
+    //Quick test for xml like string.
+    TSM_ASSERT("Geometry xml string returned does not look like xml", regex_match(workspace->getGeometryXML(), condition));
+    //Test against geometry xml to ensure pass through.
+    TSM_ASSERT_EQUALS("Geometry xml does not match xml provided by workspace.", geometry->toXMLString(), workspace->getGeometryXML());
+
+  }
+
+
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/MD_FileFactoryTest.h b/Code/Mantid/Framework/MDDataObjects/test/MD_FileFactoryTest.h
index 6d6f478aec673310a8acd255347ac6735fa6330e..1ef3e131acc2723b75d2c7ca4955b37d566ea1df 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/MD_FileFactoryTest.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/MD_FileFactoryTest.h
@@ -1,84 +1,84 @@
-#ifndef MD_FILE_FACTORY_TEST_H
-#define MD_FILE_FACTORY_TEST_H
-
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MD_FileFormatFactory.h"
-#include "MantidAPI/FileFinder.h"
-#include <Poco/Path.h>
-#include <boost/algorithm/string/case_conv.hpp>
-
-// existing file formats
-#include "MDDataObjects/MD_File_hdfV1.h"
-#include "MDDataObjects/MD_File_hdfMatlab.h"
-#include "MDDataObjects/MD_FileHoraceReader.h"
-#include "MDDataObjects/MD_FileTestDataGenerator.h"
-
-using namespace Mantid;
-using namespace MDDataObjects;
-class MD_FileFactoryTest :    public CxxTest::TestSuite
-{
-
-public:
-  void testFormatImplemented(){
-    std::auto_ptr<IMD_FileFormat> testFormat;
-    TSM_ASSERT_THROWS_NOTHING("test data format should be initiated without throwing",testFormat=MD_FileFormatFactory::getFileReader("testFile",test_data));
-
-    TSM_ASSERT("FileFormat factory returned a pointer to a wrong file reader, should be test data ",dynamic_cast<MD_FileTestDataGenerator*>(testFormat.get())!=0);	
-  }
-  void testGetUniqueFileName(){
-    std::vector<std::string> f_names(2);
-    f_names[0] = "tmp_data_0.sqw";
-    f_names[1] = "tmp_data_1.sqw";
-    // create temporary files
-    for(size_t i=0;i<f_names.size();i++){
-      std::ofstream tmp_file(f_names[i].c_str());
-      tmp_file.close();
-    }
-    // get the file name which is not among the above
-    std::string new_tmp_file = get_unique_tmp_fileName();
-
-    TSM_ASSERT_EQUALS("next temporary file has to be tmp_data_2.sqw but it is not it","tmp_data_2.sqw",new_tmp_file);
-    // delete temporary files (not to leave rubbish)
-    for(size_t i=0;i<f_names.size();i++){
-      std::remove(f_names[i].c_str());
-    }
-
-  }
-  void testReturnsNewHDFV1format(){
-    std::auto_ptr<IMD_FileFormat> newFormat;
-
-    std::string new_sqw_file("newDataFile.sqw");
-
-    TS_ASSERT_THROWS_NOTHING(newFormat=MD_FileFormatFactory::getFileReader(best_fit,new_sqw_file.c_str()));
-    TSM_ASSERT("FileFormat factory should returned a pointer to new file format ",dynamic_cast<MD_File_hdfV1*>(newFormat.get())!=0);
-    // clear the pointer and deleted test file for future tests not to fail or work independently;
-    newFormat.reset();
-    std::remove(new_sqw_file.c_str());
-  }
-  void testReturnsMatlabReader(){
-    std::auto_ptr<IMD_FileFormat> oldFormat;
-    std::string testFile = API::FileFinder::Instance().getFullPath("fe_demo.sqw");
-    TS_ASSERT_THROWS_NOTHING(oldFormat=MD_FileFormatFactory::getFileReader(testFile.c_str()));
-
-    TSM_ASSERT("FileFormat factory returned a pointer to a wrong file reader ",dynamic_cast<MD_File_hdfMatlab*>(oldFormat.get())!=0);
-  }
-  //void t__tReturnsOldMatlabReader(){
-  //	std::auto_ptr<IMD_FileFormat> oldFormat;
-  //	std::string testFile = findTestFileLocation("../../../../Test/VATES/fe_demo.sqw","fe_demo.sqw");
-  //	TS_ASSERT_THROWS_NOTHING(oldFormat=MD_FileFormatFactory::getFileReader(testFile.c_str(),old_4DMatlabReader));
-
-  //	TSM_ASSERT("FileFormat factory returned a pointer to a wrong file reader ",dynamic_cast<MD_File_hdfMatlab4D*>(oldFormat.get())!=0);
-  //}
-  void testHoraceFileFound(){
-    std::auto_ptr<IMD_FileFormat> horaceFormat;
-    std::string testFile = API::FileFinder::Instance().getFullPath("fe_demo_bin.sqw");
-
-    TS_ASSERT_THROWS_NOTHING(horaceFormat= MD_FileFormatFactory::getFileReader(testFile.c_str()));
-
-    TSM_ASSERT("FileFormat factory have not returned a pointer to a Horace file reader ",dynamic_cast<HoraceReader::MD_FileHoraceReader*>(horaceFormat.get())!=0);
-  }
-
-};
-
-
-#endif
+#ifndef MD_FILE_FACTORY_TEST_H
+#define MD_FILE_FACTORY_TEST_H
+
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MD_FileFormatFactory.h"
+#include "MantidAPI/FileFinder.h"
+#include <Poco/Path.h>
+#include <boost/algorithm/string/case_conv.hpp>
+
+// existing file formats
+#include "MDDataObjects/MD_File_hdfV1.h"
+#include "MDDataObjects/MD_File_hdfMatlab.h"
+#include "MDDataObjects/MD_FileHoraceReader.h"
+#include "MDDataObjects/MD_FileTestDataGenerator.h"
+
+using namespace Mantid;
+using namespace MDDataObjects;
+class MD_FileFactoryTest :    public CxxTest::TestSuite
+{
+
+public:
+  void testFormatImplemented(){
+    std::auto_ptr<IMD_FileFormat> testFormat;
+    TSM_ASSERT_THROWS_NOTHING("test data format should be initiated without throwing",testFormat=MD_FileFormatFactory::getFileReader("testFile",test_data));
+
+    TSM_ASSERT("FileFormat factory returned a pointer to a wrong file reader, should be test data ",dynamic_cast<MD_FileTestDataGenerator*>(testFormat.get())!=0);	
+  }
+  void testGetUniqueFileName(){
+    std::vector<std::string> f_names(2);
+    f_names[0] = "tmp_data_0.sqw";
+    f_names[1] = "tmp_data_1.sqw";
+    // create temporary files
+    for(size_t i=0;i<f_names.size();i++){
+      std::ofstream tmp_file(f_names[i].c_str());
+      tmp_file.close();
+    }
+    // get the file name which is not among the above
+    std::string new_tmp_file = get_unique_tmp_fileName();
+
+    TSM_ASSERT_EQUALS("next temporary file has to be tmp_data_2.sqw but it is not it","tmp_data_2.sqw",new_tmp_file);
+    // delete temporary files (not to leave rubbish)
+    for(size_t i=0;i<f_names.size();i++){
+      std::remove(f_names[i].c_str());
+    }
+
+  }
+  void testReturnsNewHDFV1format(){
+    std::auto_ptr<IMD_FileFormat> newFormat;
+
+    std::string new_sqw_file("newDataFile.sqw");
+
+    TS_ASSERT_THROWS_NOTHING(newFormat=MD_FileFormatFactory::getFileReader(best_fit,new_sqw_file.c_str()));
+    TSM_ASSERT("FileFormat factory should returned a pointer to new file format ",dynamic_cast<MD_File_hdfV1*>(newFormat.get())!=0);
+    // clear the pointer and deleted test file for future tests not to fail or work independently;
+    newFormat.reset();
+    std::remove(new_sqw_file.c_str());
+  }
+  void testReturnsMatlabReader(){
+    std::auto_ptr<IMD_FileFormat> oldFormat;
+    std::string testFile = API::FileFinder::Instance().getFullPath("fe_demo.sqw");
+    TS_ASSERT_THROWS_NOTHING(oldFormat=MD_FileFormatFactory::getFileReader(testFile.c_str()));
+
+    TSM_ASSERT("FileFormat factory returned a pointer to a wrong file reader ",dynamic_cast<MD_File_hdfMatlab*>(oldFormat.get())!=0);
+  }
+  //void t__tReturnsOldMatlabReader(){
+  //	std::auto_ptr<IMD_FileFormat> oldFormat;
+  //	std::string testFile = findTestFileLocation("../../../../Test/VATES/fe_demo.sqw","fe_demo.sqw");
+  //	TS_ASSERT_THROWS_NOTHING(oldFormat=MD_FileFormatFactory::getFileReader(testFile.c_str(),old_4DMatlabReader));
+
+  //	TSM_ASSERT("FileFormat factory returned a pointer to a wrong file reader ",dynamic_cast<MD_File_hdfMatlab4D*>(oldFormat.get())!=0);
+  //}
+  void testHoraceFileFound(){
+    std::auto_ptr<IMD_FileFormat> horaceFormat;
+    std::string testFile = API::FileFinder::Instance().getFullPath("fe_demo_bin.sqw");
+
+    TS_ASSERT_THROWS_NOTHING(horaceFormat= MD_FileFormatFactory::getFileReader(testFile.c_str()));
+
+    TSM_ASSERT("FileFormat factory have not returned a pointer to a Horace file reader ",dynamic_cast<HoraceReader::MD_FileHoraceReader*>(horaceFormat.get())!=0);
+  }
+
+};
+
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/testPoint3D.h b/Code/Mantid/Framework/MDDataObjects/test/testPoint3D.h
index 53ae2ddb7e76756de12dca486e29a68554984300..bdafda6be8c2914d27c9dc859af8a363c163bd24 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/testPoint3D.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/testPoint3D.h
@@ -1,27 +1,27 @@
-#ifndef H_TEST_POINT3D
-#define H_TEST_POINT3D
-
-
-#include <cxxtest/TestSuite.h>
-#include "MDDataObjects/MDImage.h"
-
-
-using namespace Mantid;
-using namespace API;
-using namespace MDDataObjects;
-
-class testPoint3D :    public CxxTest::TestSuite
-{
-
-public:
-
-    void testPoint3DGetPosistion(void)
-	{
-			MDDataObjects::point3D point(0,1,2);
-			TSM_ASSERT_EQUALS("GetX getter not wired-up correctly.", 0, point.GetX());
-			TSM_ASSERT_EQUALS("GetY getter not wired-up correctly.", 1, point.GetY());
-			TSM_ASSERT_EQUALS("GetZ getter not wired-up correctly.", 2, point.GetZ());
-    }
-};
-
-#endif
+#ifndef H_TEST_POINT3D
+#define H_TEST_POINT3D
+
+
+#include <cxxtest/TestSuite.h>
+#include "MDDataObjects/MDImage.h"
+
+
+using namespace Mantid;
+using namespace API;
+using namespace MDDataObjects;
+
+class testPoint3D :    public CxxTest::TestSuite
+{
+
+public:
+
+    void testPoint3DGetPosistion(void)
+	{
+			MDDataObjects::point3D point(0,1,2);
+			TSM_ASSERT_EQUALS("GetX getter not wired-up correctly.", 0, point.GetX());
+			TSM_ASSERT_EQUALS("GetY getter not wired-up correctly.", 1, point.GetY());
+			TSM_ASSERT_EQUALS("GetZ getter not wired-up correctly.", 2, point.GetZ());
+    }
+};
+
+#endif
diff --git a/Code/Mantid/Framework/MDDataObjects/test/test_sqw.h b/Code/Mantid/Framework/MDDataObjects/test/test_sqw.h
index 88099738444433a72826981cad74e00cd0b09eac..c4547e382d1c7571d93d8d4f58354de44fd002fb 100644
--- a/Code/Mantid/Framework/MDDataObjects/test/test_sqw.h
+++ b/Code/Mantid/Framework/MDDataObjects/test/test_sqw.h
@@ -1,19 +1,19 @@
-#ifndef H_TEST_MAIN_SQW
-#define H_TEST_MAIN_SQW
-
-#include "MantidKernel/System.h"
-
-
-#include <cxxtest/TestSuite.h>
-class test_sqw: public CxxTest::TestSuite
-{
-public:
-      void testTMain(void)
-      {
-           TS_WARN( "Main suite for sqw tests invoked" );
-      }
-};
-
-
-
-#endif
+#ifndef H_TEST_MAIN_SQW
+#define H_TEST_MAIN_SQW
+
+#include "MantidKernel/System.h"
+
+
+#include <cxxtest/TestSuite.h>
+class test_sqw: public CxxTest::TestSuite
+{
+public:
+      void testTMain(void)
+      {
+           TS_WARN( "Main suite for sqw tests invoked" );
+      }
+};
+
+
+
+#endif
diff --git a/Code/Mantid/Framework/Nexus/inc/MantidNexus/LoadEventNexus.h b/Code/Mantid/Framework/Nexus/inc/MantidNexus/LoadEventNexus.h
index 008438967e59e4c5050dc3d65eb6c1f7eb824ed9..f3c0c2e60094b57cd5fc43de14fa9caf8629dbc7 100644
--- a/Code/Mantid/Framework/Nexus/inc/MantidNexus/LoadEventNexus.h
+++ b/Code/Mantid/Framework/Nexus/inc/MantidNexus/LoadEventNexus.h
@@ -75,9 +75,9 @@ namespace Mantid
       /// Algorithm's category for identification overriding a virtual method
       virtual const std::string category() const { return "Nexus";}
 
-      /// do a quick check that this file can be loaded 
-      bool quickFileCheck(const std::string& filePath,size_t nread,const file_header& header);
-      /// check the structure of the file and  return a value between 0 and 100 of how much this file can be loaded
+      /// do a quick check that this file can be loaded 
+      bool quickFileCheck(const std::string& filePath,size_t nread,const file_header& header);
+      /// check the structure of the file and  return a value between 0 and 100 of how much this file can be loaded
       int fileCheck(const std::string& filePath);
 
       /** Sets whether the pixel counts will be pre-counted.
diff --git a/Code/Mantid/Framework/Nexus/test/SaveNXSPETest.h b/Code/Mantid/Framework/Nexus/test/SaveNXSPETest.h
index ed16ed8a072ac2ea27e407ca0f7671f066f2bea3..2b7ba63bd508af712fdb561e58dee0feccd80b7b 100644
--- a/Code/Mantid/Framework/Nexus/test/SaveNXSPETest.h
+++ b/Code/Mantid/Framework/Nexus/test/SaveNXSPETest.h
@@ -31,7 +31,7 @@ static const int DEFAU_Y = 2;
 class SaveNXSPETest : public CxxTest::TestSuite
 {
 public:
-  static SaveNXSPETest *createSuite() { return new SaveNXSPETest(); }
+  static SaveNXSPETest *createSuite() { return new SaveNXSPETest(); }
   static void destroySuite(SaveNXSPETest *suite) { delete suite; }
 
   SaveNXSPETest()